Cisco-IOS-XR-um-router-static-cfg

This module contains a collection of YANG definitions for Cisco IOS-XR router-static package configuration. This YANG module au...

  • Version: 2021-01-19

    Cisco-IOS-XR-um-router-static-cfg@2021-01-19


    
      module Cisco-IOS-XR-um-router-static-cfg {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XR-um-router-static-cfg";
    
        prefix um-router-static-cfg;
    
        import cisco-semver {
          prefix semver;
        }
        import Cisco-IOS-XR-types {
          prefix xr;
        }
        import ietf-inet-types {
          prefix inet;
        }
    
        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 router-static package configuration.
         
         This YANG module augments the
         modules with configuration data.
         
         Copyright (c) 2019-2021 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2021-01-19" {
          description
            "Added must constraints under list node prefix and vrf.
           2021-01-19
             Added new node prefer-rib-over-ldp.";
        }
    
        revision "2019-06-10" {
          description
            "Establish semantic version baseline.";
        }
    
        revision "2019-04-04" {
          description "Initial version";
        }
    
        semver:module-version "2.0.0";
        semver:module-version "1.1.0";
    
        container router {
          description "Enable a routing process";
          container static {
            description
              "Static route configuration subcommands";
            container address-family {
              description
                "Static route address family configuration subcommands";
              container ipv4 {
                description "IPv4 commands";
                container unicast {
                  description "Unicast commands";
                  container prefixes {
                    description
                      "Destination prefix";
                    list prefix {
                      must
                        "segment-routing/mpls/path/names/name or
                       sr-policies/sr-policy or
                       nexthop-interfaces/nexthop-interface or
                       nexthop-interface-addresses/nexthop-interface-address or
                       nexthop-addresses/nexthop-address or
                       nexthop-addresses/nexthop-address-segment-routing or
                       vrfs/vrf-only or vrfs/vrf/sr-policies/sr-policy or
                       vrfs/vrf/nexthop-interfaces/nexthop-interface or
                       vrfs/vrf/nexthop-interface-addresses/nexthop-interface-address or
                       vrfs/vrf/nexthop-addresses/nexthop-address";
                      key "prefix-address prefix-length";
                      description
                        "Destination prefix";
                      leaf prefix-address {
                        type inet:ipv4-address-no-zone;
                        description
                          "Destination prefix";
                      }
    
                      leaf prefix-length {
                        type uint32 {
                          range "0..128";
                        }
                        description
                          "Destination prefix length";
                      }
    
                      container segment-routing {
                        description
                          "Configure Static Segment Routing";
                        container mpls {
                          description
                            "Configure mpls path name";
                          container path {
                            description
                              "Configure path name";
                            container names {
                              description
                                "Configure path name";
                              list name {
                                key "path-name";
                                description
                                  "Configure path name";
                                leaf path-name {
                                  type xr:Cisco-ios-xr-string {
                                    length
                                      "1..1024";
                                  }
                                  description
                                    "Configure path name";
                                }
    
                                leaf distance-metric {
                                  type uint32 {
                                    range
                                      "1..254";
                                  }
                                  description
                                    "Distance metric for this route";
                                }
    
                                leaf tag {
                                  type uint32 {
                                    range
                                      "1..4294967295";
                                  }
                                  description
                                    "Set tag for this route";
                                }
    
                                leaf description {
                                  type string {
                                    length
                                      "1..30";
                                  }
                                  description
                                    "description of the static route";
                                }
    
                                leaf metric {
                                  type uint32 {
                                    range
                                      "1..16777214";
                                  }
                                  description
                                    "Set metric for this route";
                                }
                              }  // list name
                            }  // container names
                          }  // container path
                        }  // container mpls
                      }  // container segment-routing
    
                      container sr-policies {
                        description
                          "segment routing policy";
                        list sr-policy {
                          key "sr-policy-name";
                          description
                            "segment routing policy";
                          leaf sr-policy-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..1024";
                            }
                            description
                              "segment routing policy";
                          }
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type xr:Cisco-ios-xr-string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list sr-policy
                      }  // container sr-policies
    
                      container nexthop-interfaces {
                        description
                          "Forwarding interface";
                        list nexthop-interface {
                          key "interface-name";
                          description
                            "Forwarding interface";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Forwarding interface";
                          }
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list nexthop-interface
                      }  // container nexthop-interfaces
    
                      container nexthop-interface-addresses {
                        description
                          "Forwarding interface";
                        list nexthop-interface-address {
                          key "interface-name address";
                          description
                            "Forwarding interface";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Forwarding interface";
                          }
    
                          leaf address {
                            type inet:ipv4-address-no-zone;
                            description
                              "Forwarding router's address";
                          }
    
                          container bfd {
                            description
                              "Configure BFD paramenters";
                            container fast-detect {
                              presence
                                "Indicates a fast-detect node is configured.";
                              description
                                "Enable Fast detection";
                              leaf minimum-interval {
                                type uint32 {
                                  range
                                    "3..30000";
                                }
                                description
                                  "Hello interval";
                              }
    
                              leaf multiplier {
                                type uint32 {
                                  range "1..10";
                                }
                                description
                                  "Detect multiplier";
                              }
                            }  // container fast-detect
                          }  // container bfd
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list nexthop-interface-address
                      }  // container nexthop-interface-addresses
    
                      container nexthop-addresses {
                        description
                          "Forwarding router's address";
                        list nexthop-address {
                          key "address";
                          description
                            "Forwarding router's address";
                          leaf address {
                            type inet:ipv4-address-no-zone;
                            description
                              "Forwarding router's address";
                          }
    
                          container bfd {
                            description
                              "Configure BFD paramenters";
                            container fast-detect {
                              presence
                                "Indicates a fast-detect node is configured.";
                              description
                                "Enable Fast detection";
                              leaf minimum-interval {
                                type uint32 {
                                  range
                                    "3..30000";
                                }
                                description
                                  "Hello interval";
                              }
    
                              leaf multiplier {
                                type uint32 {
                                  range "1..10";
                                }
                                description
                                  "Detect multiplier";
                              }
    
                              container multihop {
                                presence
                                  "Indicates a multihop node is configured.";
                                description
                                  "Enable BFD Multihop";
                                leaf address {
                                  type inet:ipv4-address-no-zone;
                                  mandatory
                                    true;
                                  description
                                    "Source address";
                                }
                              }  // container multihop
                            }  // container fast-detect
                          }  // container bfd
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list nexthop-address
    
                        list nexthop-address-segment-routing {
                          key "address mpls-path-name";
                          description
                            "Forwarding router's address";
                          leaf address {
                            type inet:ipv4-address-no-zone;
                            description
                              "Forwarding router's address";
                          }
    
                          leaf mpls-path-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..1024";
                            }
                            description
                              "Configure path name";
                          }
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
                        }  // list nexthop-address-segment-routing
                      }  // container nexthop-addresses
    
                      container vrfs {
                        description
                          "Destination VRF";
                        list vrf-only {
                          key "vrf-name";
                          description
                            "Destination only VRF";
                          leaf vrf-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Destination VRF";
                          }
                        }  // list vrf-only
    
                        list vrf {
                          must
                            "sr-policies/sr-policy or
                           nexthop-interfaces/nexthop-interface or
                           nexthop-interface-addresses/nexthop-interface-address or
                           nexthop-addresses/nexthop-address";
                          key "vrf-name";
                          description
                            "Destination VRF";
                          leaf vrf-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Destination VRF";
                          }
    
                          container sr-policies {
                            description
                              "segment routing policy";
                            list sr-policy {
                              key "sr-policy-name";
                              description
                                "segment routing policy";
                              leaf sr-policy-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "segment routing policy";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list sr-policy
                          }  // container sr-policies
    
                          container nexthop-interfaces {
                            description
                              "Forwarding interface";
                            list nexthop-interface {
                              key "interface-name";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface
                          }  // container nexthop-interfaces
    
                          container nexthop-interface-addresses {
                            description
                              "Forwarding interface";
                            list nexthop-interface-address {
                              key "interface-name address";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf address {
                                type inet:ipv4-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface-address
                          }  // container nexthop-interface-addresses
    
                          container nexthop-addresses {
                            description
                              "Forwarding router's address";
                            list nexthop-address {
                              key "address";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv4-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
    
                                  container multihop {
                                    presence
                                      "Indicates a multihop node is configured.";
                                    description
                                      "Enable BFD Multihop";
                                    leaf address {
                                      type inet:ipv4-address-no-zone;
                                      mandatory
                                        true;
                                      description
                                        "Source address";
                                    }
                                  }  // container multihop
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-address
                          }  // container nexthop-addresses
                        }  // list vrf
                      }  // container vrfs
                    }  // list prefix
                  }  // container prefixes
    
                  container topologies {
                    description
                      "Topology static route configuration subcommands";
                    list topology {
                      key "topology-name";
                      description
                        "Topology static route configuration subcommands";
                      leaf topology-name {
                        type xr:Cisco-ios-xr-string {
                          length "1..63";
                        }
                        description
                          "Topology static route configuration subcommands";
                      }
                    }  // list topology
                  }  // container topologies
                }  // container unicast
    
                container multicast {
                  description
                    "Multicast commands";
                  container prefixes {
                    description
                      "Destination prefix";
                    list prefix {
                      must
                        "segment-routing/mpls/path/names/name or
                       sr-policies/sr-policy or
                       nexthop-interfaces/nexthop-interface or
                       nexthop-interface-addresses/nexthop-interface-address or
                       nexthop-addresses/nexthop-address or
                       nexthop-addresses/nexthop-address-segment-routing or
                       vrfs/vrf-only or vrfs/vrf/sr-policies/sr-policy or
                       vrfs/vrf/nexthop-interfaces/nexthop-interface or
                       vrfs/vrf/nexthop-interface-addresses/nexthop-interface-address or
                       vrfs/vrf/nexthop-addresses/nexthop-address";
                      key "prefix-address prefix-length";
                      description
                        "Destination prefix";
                      leaf prefix-address {
                        type inet:ipv4-address-no-zone;
                        description
                          "Destination prefix";
                      }
    
                      leaf prefix-length {
                        type uint32 {
                          range "0..128";
                        }
                        description
                          "Destination prefix length";
                      }
    
                      container segment-routing {
                        description
                          "Configure Static Segment Routing";
                        container mpls {
                          description
                            "Configure mpls path name";
                          container path {
                            description
                              "Configure path name";
                            container names {
                              description
                                "Configure path name";
                              list name {
                                key "path-name";
                                description
                                  "Configure path name";
                                leaf path-name {
                                  type xr:Cisco-ios-xr-string {
                                    length
                                      "1..1024";
                                  }
                                  description
                                    "Configure path name";
                                }
    
                                leaf distance-metric {
                                  type uint32 {
                                    range
                                      "1..254";
                                  }
                                  description
                                    "Distance metric for this route";
                                }
    
                                leaf tag {
                                  type uint32 {
                                    range
                                      "1..4294967295";
                                  }
                                  description
                                    "Set tag for this route";
                                }
    
                                leaf description {
                                  type string {
                                    length
                                      "1..30";
                                  }
                                  description
                                    "description of the static route";
                                }
    
                                leaf metric {
                                  type uint32 {
                                    range
                                      "1..16777214";
                                  }
                                  description
                                    "Set metric for this route";
                                }
                              }  // list name
                            }  // container names
                          }  // container path
                        }  // container mpls
                      }  // container segment-routing
    
                      container sr-policies {
                        description
                          "segment routing policy";
                        list sr-policy {
                          key "sr-policy-name";
                          description
                            "segment routing policy";
                          leaf sr-policy-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..1024";
                            }
                            description
                              "segment routing policy";
                          }
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list sr-policy
                      }  // container sr-policies
    
                      container nexthop-interfaces {
                        description
                          "Forwarding interface";
                        list nexthop-interface {
                          key "interface-name";
                          description
                            "Forwarding interface";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Forwarding interface";
                          }
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list nexthop-interface
                      }  // container nexthop-interfaces
    
                      container nexthop-interface-addresses {
                        description
                          "Forwarding interface";
                        list nexthop-interface-address {
                          key "interface-name address";
                          description
                            "Forwarding interface";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Forwarding interface";
                          }
    
                          leaf address {
                            type inet:ipv4-address-no-zone;
                            description
                              "Forwarding router's address";
                          }
    
                          container bfd {
                            description
                              "Configure BFD paramenters";
                            container fast-detect {
                              presence
                                "Indicates a fast-detect node is configured.";
                              description
                                "Enable Fast detection";
                              leaf minimum-interval {
                                type uint32 {
                                  range
                                    "3..30000";
                                }
                                description
                                  "Hello interval";
                              }
    
                              leaf multiplier {
                                type uint32 {
                                  range "1..10";
                                }
                                description
                                  "Detect multiplier";
                              }
                            }  // container fast-detect
                          }  // container bfd
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list nexthop-interface-address
                      }  // container nexthop-interface-addresses
    
                      container nexthop-addresses {
                        description
                          "Forwarding router's address";
                        list nexthop-address {
                          key "address";
                          description
                            "Forwarding router's address";
                          leaf address {
                            type inet:ipv4-address-no-zone;
                            description
                              "Forwarding router's address";
                          }
    
                          container bfd {
                            description
                              "Configure BFD paramenters";
                            container fast-detect {
                              presence
                                "Indicates a fast-detect node is configured.";
                              description
                                "Enable Fast detection";
                              leaf minimum-interval {
                                type uint32 {
                                  range
                                    "3..30000";
                                }
                                description
                                  "Hello interval";
                              }
    
                              leaf multiplier {
                                type uint32 {
                                  range "1..10";
                                }
                                description
                                  "Detect multiplier";
                              }
    
                              container multihop {
                                presence
                                  "Indicates a multihop node is configured.";
                                description
                                  "Enable BFD Multihop";
                                leaf address {
                                  type inet:ipv4-address-no-zone;
                                  mandatory
                                    true;
                                  description
                                    "Source address";
                                }
                              }  // container multihop
                            }  // container fast-detect
                          }  // container bfd
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list nexthop-address
    
                        list nexthop-address-segment-routing {
                          key "address mpls-path-name";
                          description
                            "Forwarding router's address";
                          leaf address {
                            type inet:ipv4-address-no-zone;
                            description
                              "Forwarding router's address";
                          }
    
                          leaf mpls-path-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..1024";
                            }
                            description
                              "Configure path name";
                          }
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
                        }  // list nexthop-address-segment-routing
                      }  // container nexthop-addresses
    
                      container vrfs {
                        description
                          "Destination VRF";
                        list vrf-only {
                          key "vrf-name";
                          description
                            "Destination only VRF";
                          leaf vrf-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Destination VRF";
                          }
                        }  // list vrf-only
    
                        list vrf {
                          must
                            "sr-policies/sr-policy or
                           nexthop-interfaces/nexthop-interface or
                           nexthop-interface-addresses/nexthop-interface-address or
                           nexthop-addresses/nexthop-address";
                          key "vrf-name";
                          description
                            "Destination VRF";
                          leaf vrf-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Destination VRF";
                          }
    
                          container sr-policies {
                            description
                              "segment routing policy";
                            list sr-policy {
                              key "sr-policy-name";
                              description
                                "segment routing policy";
                              leaf sr-policy-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "segment routing policy";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list sr-policy
                          }  // container sr-policies
    
                          container nexthop-interfaces {
                            description
                              "Forwarding interface";
                            list nexthop-interface {
                              key "interface-name";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface
                          }  // container nexthop-interfaces
    
                          container nexthop-interface-addresses {
                            description
                              "Forwarding interface";
                            list nexthop-interface-address {
                              key "interface-name address";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf address {
                                type inet:ipv4-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface-address
                          }  // container nexthop-interface-addresses
    
                          container nexthop-addresses {
                            description
                              "Forwarding router's address";
                            list nexthop-address {
                              key "address";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv4-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
    
                                  container multihop {
                                    presence
                                      "Indicates a multihop node is configured.";
                                    description
                                      "Enable BFD Multihop";
                                    leaf address {
                                      type inet:ipv4-address-no-zone;
                                      mandatory
                                        true;
                                      description
                                        "Source address";
                                    }
                                  }  // container multihop
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-address
                          }  // container nexthop-addresses
                        }  // list vrf
                      }  // container vrfs
                    }  // list prefix
                  }  // container prefixes
    
                  container topologies {
                    description
                      "Topology static route configuration subcommands";
                    list topology {
                      key "topology-name";
                      description
                        "Topology static route configuration subcommands";
                      leaf topology-name {
                        type xr:Cisco-ios-xr-string {
                          length "1..63";
                        }
                        description
                          "Topology static route configuration subcommands";
                      }
    
                      container prefixes {
                        description
                          "Destination prefix";
                        list prefix {
                          must
                            "sr-policies/sr-policy or
                           nexthop-interfaces/nexthop-interface or
                           nexthop-interface-addresses/nexthop-interface-address or
                           nexthop-addresses/nexthop-address or
                           nexthop-addresses/nexthop-address-segment-routing or
                           vrfs/vrf-only or vrfs/vrf/sr-policies/sr-policy or
                           vrfs/vrf/nexthop-interfaces/nexthop-interface or
                           vrfs/vrf/nexthop-interface-addresses/nexthop-interface-address or
                           vrfs/vrf/nexthop-addresses/nexthop-address";
                          key "prefix-address prefix-length";
                          description
                            "Destination prefix";
                          leaf prefix-address {
                            type inet:ipv4-address-no-zone;
                            description
                              "Destination prefix";
                          }
    
                          leaf prefix-length {
                            type uint32 {
                              range "0..128";
                            }
                            description
                              "Destination prefix length";
                          }
    
                          container sr-policies {
                            description
                              "segment routing policy";
                            list sr-policy {
                              key "sr-policy-name";
                              description
                                "segment routing policy";
                              leaf sr-policy-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "segment routing policy";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list sr-policy
                          }  // container sr-policies
    
                          container nexthop-interfaces {
                            description
                              "Forwarding interface";
                            list nexthop-interface {
                              key "interface-name";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface
                          }  // container nexthop-interfaces
    
                          container nexthop-interface-addresses {
                            description
                              "Forwarding interface";
                            list nexthop-interface-address {
                              key "interface-name address";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf address {
                                type inet:ipv4-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface-address
                          }  // container nexthop-interface-addresses
    
                          container nexthop-addresses {
                            description
                              "Forwarding router's address";
                            list nexthop-address {
                              key "address";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv4-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
    
                                  container multihop {
                                    presence
                                      "Indicates a multihop node is configured.";
                                    description
                                      "Enable BFD Multihop";
                                    leaf address {
                                      type inet:ipv4-address-no-zone;
                                      mandatory
                                        true;
                                      description
                                        "Source address";
                                    }
                                  }  // container multihop
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-address
    
                            list nexthop-address-segment-routing {
                              key "address mpls-path-name";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv4-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              leaf mpls-path-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "Configure path name";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
                            }  // list nexthop-address-segment-routing
                          }  // container nexthop-addresses
    
                          container vrfs {
                            description
                              "Destination VRF";
                            list vrf-only {
                              key "vrf-name";
                              description
                                "Destination only VRF";
                              leaf vrf-name {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Destination VRF";
                              }
                            }  // list vrf-only
    
                            list vrf {
                              must
                                "sr-policies/sr-policy or
                               nexthop-interfaces/nexthop-interface or
                               nexthop-interface-addresses/nexthop-interface-address or
                               nexthop-addresses/nexthop-address";
                              key "vrf-name";
                              description
                                "Destination VRF";
                              leaf vrf-name {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Destination VRF";
                              }
    
                              container sr-policies {
                                description
                                  "segment routing policy";
                                list sr-policy {
                                  key "sr-policy-name";
                                  description
                                    "segment routing policy";
                                  leaf sr-policy-name {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..1024";
                                    }
                                    description
                                      "segment routing policy";
                                  }
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list sr-policy
                              }  // container sr-policies
    
                              container nexthop-interfaces {
                                description
                                  "Forwarding interface";
                                list nexthop-interface {
                                  key "interface-name";
                                  description
                                    "Forwarding interface";
                                  leaf interface-name {
                                    type xr:Interface-name;
                                    description
                                      "Forwarding interface";
                                  }
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-interface
                              }  // container nexthop-interfaces
    
                              container nexthop-interface-addresses {
                                description
                                  "Forwarding interface";
                                list nexthop-interface-address {
                                  key "interface-name address";
                                  description
                                    "Forwarding interface";
                                  leaf interface-name {
                                    type xr:Interface-name;
                                    description
                                      "Forwarding interface";
                                  }
    
                                  leaf address {
                                    type inet:ipv4-address-no-zone;
                                    description
                                      "Forwarding router's address";
                                  }
    
                                  container bfd {
                                    description
                                      "Configure BFD paramenters";
                                    container fast-detect {
                                      presence
                                        "Indicates a fast-detect node is configured.";
                                      description
                                        "Enable Fast detection";
                                      leaf minimum-interval {
                                        type uint32 {
                                          range
                                            "3..30000";
                                        }
                                        description
                                          "Hello interval";
                                      }
    
                                      leaf multiplier {
                                        type uint32 {
                                          range
                                            "1..10";
                                        }
                                        description
                                          "Detect multiplier";
                                      }
                                    }  // container fast-detect
                                  }  // container bfd
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-interface-address
                              }  // container nexthop-interface-addresses
    
                              container nexthop-addresses {
                                description
                                  "Forwarding router's address";
                                list nexthop-address {
                                  key "address";
                                  description
                                    "Forwarding router's address";
                                  leaf address {
                                    type inet:ipv4-address-no-zone;
                                    description
                                      "Forwarding router's address";
                                  }
    
                                  container bfd {
                                    description
                                      "Configure BFD paramenters";
                                    container fast-detect {
                                      presence
                                        "Indicates a fast-detect node is configured.";
                                      description
                                        "Enable Fast detection";
                                      leaf minimum-interval {
                                        type uint32 {
                                          range
                                            "3..30000";
                                        }
                                        description
                                          "Hello interval";
                                      }
    
                                      leaf multiplier {
                                        type uint32 {
                                          range
                                            "1..10";
                                        }
                                        description
                                          "Detect multiplier";
                                      }
    
                                      container multihop {
                                        presence
                                          "Indicates a multihop node is configured.";
                                        description
                                          "Enable BFD Multihop";
                                        leaf address {
                                          type inet:ipv4-address-no-zone;
                                          mandatory
                                            true;
                                          description
                                            "Source address";
                                        }
                                      }  // container multihop
                                    }  // container fast-detect
                                  }  // container bfd
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-address
                              }  // container nexthop-addresses
                            }  // list vrf
                          }  // container vrfs
                        }  // list prefix
                      }  // container prefixes
                    }  // list topology
                  }  // container topologies
                }  // container multicast
              }  // container ipv4
    
              container ipv6 {
                description "IPv6 commands";
                container unicast {
                  description "Unicast commands";
                  container prefixes {
                    description
                      "Destination prefix";
                    list prefix {
                      must
                        "segment-routing/mpls/path/names/name or
                       sr-policies/sr-policy or
                       nexthop-interfaces/nexthop-interface or
                       nexthop-interface-addresses/nexthop-interface-address or
                       nexthop-addresses/nexthop-address or
                       nexthop-addresses/nexthop-address-segment-routing or
                       vrfs/vrf-only or vrfs/vrf/sr-policies/sr-policy or
                       vrfs/vrf/nexthop-interfaces/nexthop-interface or
                       vrfs/vrf/nexthop-interface-addresses/nexthop-interface-address or
                       vrfs/vrf/nexthop-addresses/nexthop-address";
                      key "prefix-address prefix-length";
                      description
                        "Destination prefix";
                      leaf prefix-address {
                        type inet:ipv6-address-no-zone;
                        description
                          "Destination prefix";
                      }
    
                      leaf prefix-length {
                        type uint32 {
                          range "0..128";
                        }
                        description
                          "Destination prefix length";
                      }
    
                      container segment-routing {
                        description
                          "Configure Static Segment Routing";
                        container mpls {
                          description
                            "Configure mpls path name";
                          container path {
                            description
                              "Configure path name";
                            container names {
                              description
                                "Configure path name";
                              list name {
                                key "path-name";
                                description
                                  "Configure path name";
                                leaf path-name {
                                  type xr:Cisco-ios-xr-string {
                                    length
                                      "1..1024";
                                  }
                                  description
                                    "Configure path name";
                                }
    
                                leaf distance-metric {
                                  type uint32 {
                                    range
                                      "1..254";
                                  }
                                  description
                                    "Distance metric for this route";
                                }
    
                                leaf tag {
                                  type uint32 {
                                    range
                                      "1..4294967295";
                                  }
                                  description
                                    "Set tag for this route";
                                }
    
                                leaf description {
                                  type string {
                                    length
                                      "1..30";
                                  }
                                  description
                                    "description of the static route";
                                }
    
                                leaf metric {
                                  type uint32 {
                                    range
                                      "1..16777214";
                                  }
                                  description
                                    "Set metric for this route";
                                }
                              }  // list name
                            }  // container names
                          }  // container path
                        }  // container mpls
                      }  // container segment-routing
    
                      container sr-policies {
                        description
                          "segment routing policy";
                        list sr-policy {
                          key "sr-policy-name";
                          description
                            "segment routing policy";
                          leaf sr-policy-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..1024";
                            }
                            description
                              "segment routing policy";
                          }
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list sr-policy
                      }  // container sr-policies
    
                      container nexthop-interfaces {
                        description
                          "Forwarding interface";
                        list nexthop-interface {
                          key "interface-name";
                          description
                            "Forwarding interface";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Forwarding interface";
                          }
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list nexthop-interface
                      }  // container nexthop-interfaces
    
                      container nexthop-interface-addresses {
                        description
                          "Forwarding interface";
                        list nexthop-interface-address {
                          key "interface-name address";
                          description
                            "Forwarding interface";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Forwarding interface";
                          }
    
                          leaf address {
                            type inet:ipv6-address-no-zone;
                            description
                              "Forwarding router's address";
                          }
    
                          container bfd {
                            description
                              "Configure BFD paramenters";
                            container fast-detect {
                              presence
                                "Indicates a fast-detect node is configured.";
                              description
                                "Enable Fast detection";
                              leaf minimum-interval {
                                type uint32 {
                                  range
                                    "3..30000";
                                }
                                description
                                  "Hello interval";
                              }
    
                              leaf multiplier {
                                type uint32 {
                                  range "1..10";
                                }
                                description
                                  "Detect multiplier";
                              }
                            }  // container fast-detect
                          }  // container bfd
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list nexthop-interface-address
                      }  // container nexthop-interface-addresses
    
                      container nexthop-addresses {
                        description
                          "Forwarding router's address";
                        list nexthop-address {
                          key "address";
                          description
                            "Forwarding router's address";
                          leaf address {
                            type inet:ipv6-address-no-zone;
                            description
                              "Forwarding router's address";
                          }
    
                          container bfd {
                            description
                              "Configure BFD paramenters";
                            container fast-detect {
                              presence
                                "Indicates a fast-detect node is configured.";
                              description
                                "Enable Fast detection";
                              leaf minimum-interval {
                                type uint32 {
                                  range
                                    "3..30000";
                                }
                                description
                                  "Hello interval";
                              }
    
                              leaf multiplier {
                                type uint32 {
                                  range "1..10";
                                }
                                description
                                  "Detect multiplier";
                              }
    
                              container multihop {
                                presence
                                  "Indicates a multihop node is configured.";
                                description
                                  "Enable BFD Multihop";
                                leaf address {
                                  type inet:ipv6-address-no-zone;
                                  mandatory
                                    true;
                                  description
                                    "Source address";
                                }
                              }  // container multihop
                            }  // container fast-detect
                          }  // container bfd
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list nexthop-address
    
                        list nexthop-address-segment-routing {
                          key "address mpls-path-name";
                          description
                            "Forwarding router's address";
                          leaf address {
                            type inet:ipv6-address-no-zone;
                            description
                              "Forwarding router's address";
                          }
    
                          leaf mpls-path-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..1024";
                            }
                            description
                              "Configure path name";
                          }
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
                        }  // list nexthop-address-segment-routing
                      }  // container nexthop-addresses
    
                      container vrfs {
                        description
                          "Destination VRF";
                        list vrf-only {
                          key "vrf-name";
                          description
                            "Destination only VRF";
                          leaf vrf-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Destination VRF";
                          }
                        }  // list vrf-only
    
                        list vrf {
                          must
                            "sr-policies/sr-policy or
                           nexthop-interfaces/nexthop-interface or
                           nexthop-interface-addresses/nexthop-interface-address or
                           nexthop-addresses/nexthop-address";
                          key "vrf-name";
                          description
                            "Destination VRF";
                          leaf vrf-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Destination VRF";
                          }
    
                          container sr-policies {
                            description
                              "segment routing policy";
                            list sr-policy {
                              key "sr-policy-name";
                              description
                                "segment routing policy";
                              leaf sr-policy-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "segment routing policy";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list sr-policy
                          }  // container sr-policies
    
                          container nexthop-interfaces {
                            description
                              "Forwarding interface";
                            list nexthop-interface {
                              key "interface-name";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface
                          }  // container nexthop-interfaces
    
                          container nexthop-interface-addresses {
                            description
                              "Forwarding interface";
                            list nexthop-interface-address {
                              key "interface-name address";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf address {
                                type inet:ipv6-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface-address
                          }  // container nexthop-interface-addresses
    
                          container nexthop-addresses {
                            description
                              "Forwarding router's address";
                            list nexthop-address {
                              key "address";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv6-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
    
                                  container multihop {
                                    presence
                                      "Indicates a multihop node is configured.";
                                    description
                                      "Enable BFD Multihop";
                                    leaf address {
                                      type inet:ipv6-address-no-zone;
                                      mandatory
                                        true;
                                      description
                                        "Source address";
                                    }
                                  }  // container multihop
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-address
                          }  // container nexthop-addresses
                        }  // list vrf
                      }  // container vrfs
                    }  // list prefix
                  }  // container prefixes
    
                  container topologies {
                    description
                      "Topology static route configuration subcommands";
                    list topology {
                      key "topology-name";
                      description
                        "Topology static route configuration subcommands";
                      leaf topology-name {
                        type xr:Cisco-ios-xr-string {
                          length "1..63";
                        }
                        description
                          "Topology static route configuration subcommands";
                      }
                    }  // list topology
                  }  // container topologies
                }  // container unicast
    
                container multicast {
                  description
                    "Multicast commands";
                  container prefixes {
                    description
                      "Destination prefix";
                    list prefix {
                      must
                        "segment-routing/mpls/path/names/name or
                       sr-policies/sr-policy or
                       nexthop-interfaces/nexthop-interface or
                       nexthop-interface-addresses/nexthop-interface-address or
                       nexthop-addresses/nexthop-address or
                       nexthop-addresses/nexthop-address-segment-routing or
                       vrfs/vrf-only or vrfs/vrf/sr-policies/sr-policy or
                       vrfs/vrf/nexthop-interfaces/nexthop-interface or
                       vrfs/vrf/nexthop-interface-addresses/nexthop-interface-address or
                       vrfs/vrf/nexthop-addresses/nexthop-address";
                      key "prefix-address prefix-length";
                      description
                        "Destination prefix";
                      leaf prefix-address {
                        type inet:ipv6-address-no-zone;
                        description
                          "Destination prefix";
                      }
    
                      leaf prefix-length {
                        type uint32 {
                          range "0..128";
                        }
                        description
                          "Destination prefix length";
                      }
    
                      container segment-routing {
                        description
                          "Configure Static Segment Routing";
                        container mpls {
                          description
                            "Configure mpls path name";
                          container path {
                            description
                              "Configure path name";
                            container names {
                              description
                                "Configure path name";
                              list name {
                                key "path-name";
                                description
                                  "Configure path name";
                                leaf path-name {
                                  type xr:Cisco-ios-xr-string {
                                    length
                                      "1..1024";
                                  }
                                  description
                                    "Configure path name";
                                }
    
                                leaf distance-metric {
                                  type uint32 {
                                    range
                                      "1..254";
                                  }
                                  description
                                    "Distance metric for this route";
                                }
    
                                leaf tag {
                                  type uint32 {
                                    range
                                      "1..4294967295";
                                  }
                                  description
                                    "Set tag for this route";
                                }
    
                                leaf description {
                                  type string {
                                    length
                                      "1..30";
                                  }
                                  description
                                    "description of the static route";
                                }
    
                                leaf metric {
                                  type uint32 {
                                    range
                                      "1..16777214";
                                  }
                                  description
                                    "Set metric for this route";
                                }
                              }  // list name
                            }  // container names
                          }  // container path
                        }  // container mpls
                      }  // container segment-routing
    
                      container sr-policies {
                        description
                          "segment routing policy";
                        list sr-policy {
                          key "sr-policy-name";
                          description
                            "segment routing policy";
                          leaf sr-policy-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..1024";
                            }
                            description
                              "segment routing policy";
                          }
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list sr-policy
                      }  // container sr-policies
    
                      container nexthop-interfaces {
                        description
                          "Forwarding interface";
                        list nexthop-interface {
                          key "interface-name";
                          description
                            "Forwarding interface";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Forwarding interface";
                          }
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list nexthop-interface
                      }  // container nexthop-interfaces
    
                      container nexthop-interface-addresses {
                        description
                          "Forwarding interface";
                        list nexthop-interface-address {
                          key "interface-name address";
                          description
                            "Forwarding interface";
                          leaf interface-name {
                            type xr:Interface-name;
                            description
                              "Forwarding interface";
                          }
    
                          leaf address {
                            type inet:ipv6-address-no-zone;
                            description
                              "Forwarding router's address";
                          }
    
                          container bfd {
                            description
                              "Configure BFD paramenters";
                            container fast-detect {
                              presence
                                "Indicates a fast-detect node is configured.";
                              description
                                "Enable Fast detection";
                              leaf minimum-interval {
                                type uint32 {
                                  range
                                    "3..30000";
                                }
                                description
                                  "Hello interval";
                              }
    
                              leaf multiplier {
                                type uint32 {
                                  range "1..10";
                                }
                                description
                                  "Detect multiplier";
                              }
                            }  // container fast-detect
                          }  // container bfd
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list nexthop-interface-address
                      }  // container nexthop-interface-addresses
    
                      container nexthop-addresses {
                        description
                          "Forwarding router's address";
                        list nexthop-address {
                          key "address";
                          description
                            "Forwarding router's address";
                          leaf address {
                            type inet:ipv6-address-no-zone;
                            description
                              "Forwarding router's address";
                          }
    
                          container bfd {
                            description
                              "Configure BFD paramenters";
                            container fast-detect {
                              presence
                                "Indicates a fast-detect node is configured.";
                              description
                                "Enable Fast detection";
                              leaf minimum-interval {
                                type uint32 {
                                  range
                                    "3..30000";
                                }
                                description
                                  "Hello interval";
                              }
    
                              leaf multiplier {
                                type uint32 {
                                  range "1..10";
                                }
                                description
                                  "Detect multiplier";
                              }
    
                              container multihop {
                                presence
                                  "Indicates a multihop node is configured.";
                                description
                                  "Enable BFD Multihop";
                                leaf address {
                                  type inet:ipv6-address-no-zone;
                                  mandatory
                                    true;
                                  description
                                    "Source address";
                                }
                              }  // container multihop
                            }  // container fast-detect
                          }  // container bfd
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          container permanent {
                            presence
                              "Indicates a permanent node is configured.";
                            description
                              "Permanent route";
                          }  // container permanent
    
                          leaf vrflabel {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "VRF label";
                          }
    
                          leaf tunnel-id {
                            type uint32 {
                              range
                                "0..4294967295";
                            }
                            description
                              "Tunnel ID";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf track {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Enable object tracking for static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
    
                          container prefer-rib-over-ldp {
                            presence
                              "Indicates a prefer-rib-over-ldp node is configured.";
                            description
                              "Flag passed to rib to prefer rib over ldp";
                          }  // container prefer-rib-over-ldp
                        }  // list nexthop-address
    
                        list nexthop-address-segment-routing {
                          key "address mpls-path-name";
                          description
                            "Forwarding router's address";
                          leaf address {
                            type inet:ipv6-address-no-zone;
                            description
                              "Forwarding router's address";
                          }
    
                          leaf mpls-path-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..1024";
                            }
                            description
                              "Configure path name";
                          }
    
                          leaf distance-metric {
                            type uint32 {
                              range "1..254";
                            }
                            description
                              "Distance metric for this route";
                          }
    
                          leaf tag {
                            type uint32 {
                              range
                                "1..4294967295";
                            }
                            description
                              "Set tag for this route";
                          }
    
                          leaf description {
                            type string {
                              length "1..30";
                            }
                            description
                              "description of the static route";
                          }
    
                          leaf metric {
                            type uint32 {
                              range
                                "1..16777214";
                            }
                            description
                              "Set metric for this route";
                          }
                        }  // list nexthop-address-segment-routing
                      }  // container nexthop-addresses
    
                      container vrfs {
                        description
                          "Destination VRF";
                        list vrf-only {
                          key "vrf-name";
                          description
                            "Destination only VRF";
                          leaf vrf-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Destination VRF";
                          }
                        }  // list vrf-only
    
                        list vrf {
                          must
                            "sr-policies/sr-policy or
                           nexthop-interfaces/nexthop-interface or
                           nexthop-interface-addresses/nexthop-interface-address or
                           nexthop-addresses/nexthop-address";
                          key "vrf-name";
                          description
                            "Destination VRF";
                          leaf vrf-name {
                            type xr:Cisco-ios-xr-string {
                              length "1..32";
                            }
                            description
                              "Destination VRF";
                          }
    
                          container sr-policies {
                            description
                              "segment routing policy";
                            list sr-policy {
                              key "sr-policy-name";
                              description
                                "segment routing policy";
                              leaf sr-policy-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "segment routing policy";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list sr-policy
                          }  // container sr-policies
    
                          container nexthop-interfaces {
                            description
                              "Forwarding interface";
                            list nexthop-interface {
                              key "interface-name";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface
                          }  // container nexthop-interfaces
    
                          container nexthop-interface-addresses {
                            description
                              "Forwarding interface";
                            list nexthop-interface-address {
                              key "interface-name address";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf address {
                                type inet:ipv6-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface-address
                          }  // container nexthop-interface-addresses
    
                          container nexthop-addresses {
                            description
                              "Forwarding router's address";
                            list nexthop-address {
                              key "address";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv6-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
    
                                  container multihop {
                                    presence
                                      "Indicates a multihop node is configured.";
                                    description
                                      "Enable BFD Multihop";
                                    leaf address {
                                      type inet:ipv6-address-no-zone;
                                      mandatory
                                        true;
                                      description
                                        "Source address";
                                    }
                                  }  // container multihop
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-address
                          }  // container nexthop-addresses
                        }  // list vrf
                      }  // container vrfs
                    }  // list prefix
                  }  // container prefixes
    
                  container topologies {
                    description
                      "Topology static route configuration subcommands";
                    list topology {
                      key "topology-name";
                      description
                        "Topology static route configuration subcommands";
                      leaf topology-name {
                        type xr:Cisco-ios-xr-string {
                          length "1..63";
                        }
                        description
                          "Topology static route configuration subcommands";
                      }
    
                      container prefixes {
                        description
                          "Destination prefix";
                        list prefix {
                          must
                            "sr-policies/sr-policy or
                           nexthop-interfaces/nexthop-interface or
                           nexthop-interface-addresses/nexthop-interface-address or
                           nexthop-addresses/nexthop-address or
                           nexthop-addresses/nexthop-address-segment-routing or
                           vrfs/vrf-only or vrfs/vrf/sr-policies/sr-policy or
                           vrfs/vrf/nexthop-interfaces/nexthop-interface or
                           vrfs/vrf/nexthop-interface-addresses/nexthop-interface-address or
                           vrfs/vrf/nexthop-addresses/nexthop-address";
                          key "prefix-address prefix-length";
                          description
                            "Destination prefix";
                          leaf prefix-address {
                            type inet:ipv6-address-no-zone;
                            description
                              "Destination prefix";
                          }
    
                          leaf prefix-length {
                            type uint32 {
                              range "0..128";
                            }
                            description
                              "Destination prefix length";
                          }
    
                          container sr-policies {
                            description
                              "segment routing policy";
                            list sr-policy {
                              key "sr-policy-name";
                              description
                                "segment routing policy";
                              leaf sr-policy-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "segment routing policy";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list sr-policy
                          }  // container sr-policies
    
                          container nexthop-interfaces {
                            description
                              "Forwarding interface";
                            list nexthop-interface {
                              key "interface-name";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface
                          }  // container nexthop-interfaces
    
                          container nexthop-interface-addresses {
                            description
                              "Forwarding interface";
                            list nexthop-interface-address {
                              key "interface-name address";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf address {
                                type inet:ipv6-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface-address
                          }  // container nexthop-interface-addresses
    
                          container nexthop-addresses {
                            description
                              "Forwarding router's address";
                            list nexthop-address {
                              key "address";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv6-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
    
                                  container multihop {
                                    presence
                                      "Indicates a multihop node is configured.";
                                    description
                                      "Enable BFD Multihop";
                                    leaf address {
                                      type inet:ipv6-address-no-zone;
                                      mandatory
                                        true;
                                      description
                                        "Source address";
                                    }
                                  }  // container multihop
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-address
    
                            list nexthop-address-segment-routing {
                              key "address mpls-path-name";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv6-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              leaf mpls-path-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "Configure path name";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
                            }  // list nexthop-address-segment-routing
                          }  // container nexthop-addresses
    
                          container vrfs {
                            description
                              "Destination VRF";
                            list vrf-only {
                              key "vrf-name";
                              description
                                "Destination only VRF";
                              leaf vrf-name {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Destination VRF";
                              }
                            }  // list vrf-only
    
                            list vrf {
                              must
                                "sr-policies/sr-policy or
                               nexthop-interfaces/nexthop-interface or
                               nexthop-interface-addresses/nexthop-interface-address or
                               nexthop-addresses/nexthop-address";
                              key "vrf-name";
                              description
                                "Destination VRF";
                              leaf vrf-name {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Destination VRF";
                              }
    
                              container sr-policies {
                                description
                                  "segment routing policy";
                                list sr-policy {
                                  key "sr-policy-name";
                                  description
                                    "segment routing policy";
                                  leaf sr-policy-name {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..1024";
                                    }
                                    description
                                      "segment routing policy";
                                  }
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list sr-policy
                              }  // container sr-policies
    
                              container nexthop-interfaces {
                                description
                                  "Forwarding interface";
                                list nexthop-interface {
                                  key "interface-name";
                                  description
                                    "Forwarding interface";
                                  leaf interface-name {
                                    type xr:Interface-name;
                                    description
                                      "Forwarding interface";
                                  }
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-interface
                              }  // container nexthop-interfaces
    
                              container nexthop-interface-addresses {
                                description
                                  "Forwarding interface";
                                list nexthop-interface-address {
                                  key "interface-name address";
                                  description
                                    "Forwarding interface";
                                  leaf interface-name {
                                    type xr:Interface-name;
                                    description
                                      "Forwarding interface";
                                  }
    
                                  leaf address {
                                    type inet:ipv6-address-no-zone;
                                    description
                                      "Forwarding router's address";
                                  }
    
                                  container bfd {
                                    description
                                      "Configure BFD paramenters";
                                    container fast-detect {
                                      presence
                                        "Indicates a fast-detect node is configured.";
                                      description
                                        "Enable Fast detection";
                                      leaf minimum-interval {
                                        type uint32 {
                                          range
                                            "3..30000";
                                        }
                                        description
                                          "Hello interval";
                                      }
    
                                      leaf multiplier {
                                        type uint32 {
                                          range
                                            "1..10";
                                        }
                                        description
                                          "Detect multiplier";
                                      }
                                    }  // container fast-detect
                                  }  // container bfd
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-interface-address
                              }  // container nexthop-interface-addresses
    
                              container nexthop-addresses {
                                description
                                  "Forwarding router's address";
                                list nexthop-address {
                                  key "address";
                                  description
                                    "Forwarding router's address";
                                  leaf address {
                                    type inet:ipv6-address-no-zone;
                                    description
                                      "Forwarding router's address";
                                  }
    
                                  container bfd {
                                    description
                                      "Configure BFD paramenters";
                                    container fast-detect {
                                      presence
                                        "Indicates a fast-detect node is configured.";
                                      description
                                        "Enable Fast detection";
                                      leaf minimum-interval {
                                        type uint32 {
                                          range
                                            "3..30000";
                                        }
                                        description
                                          "Hello interval";
                                      }
    
                                      leaf multiplier {
                                        type uint32 {
                                          range
                                            "1..10";
                                        }
                                        description
                                          "Detect multiplier";
                                      }
    
                                      container multihop {
                                        presence
                                          "Indicates a multihop node is configured.";
                                        description
                                          "Enable BFD Multihop";
                                        leaf address {
                                          type inet:ipv6-address-no-zone;
                                          mandatory
                                            true;
                                          description
                                            "Source address";
                                        }
                                      }  // container multihop
                                    }  // container fast-detect
                                  }  // container bfd
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-address
                              }  // container nexthop-addresses
                            }  // list vrf
                          }  // container vrfs
                        }  // list prefix
                      }  // container prefixes
                    }  // list topology
                  }  // container topologies
                }  // container multicast
              }  // container ipv6
            }  // container address-family
    
            container vrfs {
              description
                "VRF Static route configuration subcommands";
              list vrf {
                key "vrf-name";
                description
                  "VRF Static route configuration subcommands";
                leaf vrf-name {
                  type xr:Cisco-ios-xr-string {
                    length "1..32";
                  }
                  description
                    "VRF Static route configuration subcommands";
                }
    
                container address-family {
                  description
                    "Static route address family configuration subcommands";
                  container ipv4 {
                    description "IPv4 commands";
                    container unicast {
                      description
                        "Unicast commands";
                      container prefixes {
                        description
                          "Destination prefix";
                        list prefix {
                          must
                            "segment-routing/mpls/path/names/name or
                           sr-policies/sr-policy or
                           nexthop-interfaces/nexthop-interface or
                           nexthop-interface-addresses/nexthop-interface-address or
                           nexthop-addresses/nexthop-address or
                           nexthop-addresses/nexthop-address-segment-routing or
                           vrfs/vrf-only or vrfs/vrf/sr-policies/sr-policy or
                           vrfs/vrf/nexthop-interfaces/nexthop-interface or
                           vrfs/vrf/nexthop-interface-addresses/nexthop-interface-address or
                           vrfs/vrf/nexthop-addresses/nexthop-address";
                          key "prefix-address prefix-length";
                          description
                            "Destination prefix";
                          leaf prefix-address {
                            type inet:ipv4-address-no-zone;
                            description
                              "Destination prefix";
                          }
    
                          leaf prefix-length {
                            type uint32 {
                              range "0..128";
                            }
                            description
                              "Destination prefix length";
                          }
    
                          container segment-routing {
                            description
                              "Configure Static Segment Routing";
                            container mpls {
                              description
                                "Configure mpls path name";
                              container path {
                                description
                                  "Configure path name";
                                container names {
                                  description
                                    "Configure path name";
                                  list name {
                                    key "path-name";
                                    description
                                      "Configure path name";
                                    leaf path-name {
                                      type xr:Cisco-ios-xr-string {
                                        length
                                          "1..1024";
                                      }
                                      description
                                        "Configure path name";
                                    }
    
                                    leaf distance-metric {
                                      type uint32 {
                                        range
                                          "1..254";
                                      }
                                      description
                                        "Distance metric for this route";
                                    }
    
                                    leaf tag {
                                      type uint32 {
                                        range
                                          "1..4294967295";
                                      }
                                      description
                                        "Set tag for this route";
                                    }
    
                                    leaf description {
                                      type string {
                                        length
                                          "1..30";
                                      }
                                      description
                                        "description of the static route";
                                    }
    
                                    leaf metric {
                                      type uint32 {
                                        range
                                          "1..16777214";
                                      }
                                      description
                                        "Set metric for this route";
                                    }
                                  }  // list name
                                }  // container names
                              }  // container path
                            }  // container mpls
                          }  // container segment-routing
    
                          container sr-policies {
                            description
                              "segment routing policy";
                            list sr-policy {
                              key "sr-policy-name";
                              description
                                "segment routing policy";
                              leaf sr-policy-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "segment routing policy";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list sr-policy
                          }  // container sr-policies
    
                          container nexthop-interfaces {
                            description
                              "Forwarding interface";
                            list nexthop-interface {
                              key "interface-name";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface
                          }  // container nexthop-interfaces
    
                          container nexthop-interface-addresses {
                            description
                              "Forwarding interface";
                            list nexthop-interface-address {
                              key "interface-name address";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf address {
                                type inet:ipv4-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface-address
                          }  // container nexthop-interface-addresses
    
                          container nexthop-addresses {
                            description
                              "Forwarding router's address";
                            list nexthop-address {
                              key "address";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv4-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
    
                                  container multihop {
                                    presence
                                      "Indicates a multihop node is configured.";
                                    description
                                      "Enable BFD Multihop";
                                    leaf address {
                                      type inet:ipv4-address-no-zone;
                                      mandatory
                                        true;
                                      description
                                        "Source address";
                                    }
                                  }  // container multihop
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-address
    
                            list nexthop-address-segment-routing {
                              key "address mpls-path-name";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv4-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              leaf mpls-path-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "Configure path name";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
                            }  // list nexthop-address-segment-routing
                          }  // container nexthop-addresses
    
                          container vrfs {
                            description
                              "Destination VRF";
                            list vrf-only {
                              key "vrf-name";
                              description
                                "Destination only VRF";
                              leaf vrf-name {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Destination VRF";
                              }
                            }  // list vrf-only
    
                            list vrf {
                              must
                                "sr-policies/sr-policy or
                               nexthop-interfaces/nexthop-interface or
                               nexthop-interface-addresses/nexthop-interface-address or
                               nexthop-addresses/nexthop-address";
                              key "vrf-name";
                              description
                                "Destination VRF";
                              leaf vrf-name {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Destination VRF";
                              }
    
                              container sr-policies {
                                description
                                  "segment routing policy";
                                list sr-policy {
                                  key "sr-policy-name";
                                  description
                                    "segment routing policy";
                                  leaf sr-policy-name {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..1024";
                                    }
                                    description
                                      "segment routing policy";
                                  }
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list sr-policy
                              }  // container sr-policies
    
                              container nexthop-interfaces {
                                description
                                  "Forwarding interface";
                                list nexthop-interface {
                                  key "interface-name";
                                  description
                                    "Forwarding interface";
                                  leaf interface-name {
                                    type xr:Interface-name;
                                    description
                                      "Forwarding interface";
                                  }
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-interface
                              }  // container nexthop-interfaces
    
                              container nexthop-interface-addresses {
                                description
                                  "Forwarding interface";
                                list nexthop-interface-address {
                                  key "interface-name address";
                                  description
                                    "Forwarding interface";
                                  leaf interface-name {
                                    type xr:Interface-name;
                                    description
                                      "Forwarding interface";
                                  }
    
                                  leaf address {
                                    type inet:ipv4-address-no-zone;
                                    description
                                      "Forwarding router's address";
                                  }
    
                                  container bfd {
                                    description
                                      "Configure BFD paramenters";
                                    container fast-detect {
                                      presence
                                        "Indicates a fast-detect node is configured.";
                                      description
                                        "Enable Fast detection";
                                      leaf minimum-interval {
                                        type uint32 {
                                          range
                                            "3..30000";
                                        }
                                        description
                                          "Hello interval";
                                      }
    
                                      leaf multiplier {
                                        type uint32 {
                                          range
                                            "1..10";
                                        }
                                        description
                                          "Detect multiplier";
                                      }
                                    }  // container fast-detect
                                  }  // container bfd
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-interface-address
                              }  // container nexthop-interface-addresses
    
                              container nexthop-addresses {
                                description
                                  "Forwarding router's address";
                                list nexthop-address {
                                  key "address";
                                  description
                                    "Forwarding router's address";
                                  leaf address {
                                    type inet:ipv4-address-no-zone;
                                    description
                                      "Forwarding router's address";
                                  }
    
                                  container bfd {
                                    description
                                      "Configure BFD paramenters";
                                    container fast-detect {
                                      presence
                                        "Indicates a fast-detect node is configured.";
                                      description
                                        "Enable Fast detection";
                                      leaf minimum-interval {
                                        type uint32 {
                                          range
                                            "3..30000";
                                        }
                                        description
                                          "Hello interval";
                                      }
    
                                      leaf multiplier {
                                        type uint32 {
                                          range
                                            "1..10";
                                        }
                                        description
                                          "Detect multiplier";
                                      }
    
                                      container multihop {
                                        presence
                                          "Indicates a multihop node is configured.";
                                        description
                                          "Enable BFD Multihop";
                                        leaf address {
                                          type inet:ipv4-address-no-zone;
                                          mandatory
                                            true;
                                          description
                                            "Source address";
                                        }
                                      }  // container multihop
                                    }  // container fast-detect
                                  }  // container bfd
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-address
                              }  // container nexthop-addresses
                            }  // list vrf
                          }  // container vrfs
                        }  // list prefix
                      }  // container prefixes
                    }  // container unicast
    
                    container multicast {
                      description
                        "Multicast commands";
                      container prefixes {
                        description
                          "Destination prefix";
                        list prefix {
                          must
                            "segment-routing/mpls/path/names/name or
                           sr-policies/sr-policy or
                           nexthop-interfaces/nexthop-interface or
                           nexthop-interface-addresses/nexthop-interface-address or
                           nexthop-addresses/nexthop-address or
                           nexthop-addresses/nexthop-address-segment-routing or
                           vrfs/vrf-only or vrfs/vrf/sr-policies/sr-policy or
                           vrfs/vrf/nexthop-interfaces/nexthop-interface or
                           vrfs/vrf/nexthop-interface-addresses/nexthop-interface-address or
                           vrfs/vrf/nexthop-addresses/nexthop-address";
                          key "prefix-address prefix-length";
                          description
                            "Destination prefix";
                          leaf prefix-address {
                            type inet:ipv4-address-no-zone;
                            description
                              "Destination prefix";
                          }
    
                          leaf prefix-length {
                            type uint32 {
                              range "0..128";
                            }
                            description
                              "Destination prefix length";
                          }
    
                          container segment-routing {
                            description
                              "Configure Static Segment Routing";
                            container mpls {
                              description
                                "Configure mpls path name";
                              container path {
                                description
                                  "Configure path name";
                                container names {
                                  description
                                    "Configure path name";
                                  list name {
                                    key "path-name";
                                    description
                                      "Configure path name";
                                    leaf path-name {
                                      type xr:Cisco-ios-xr-string {
                                        length
                                          "1..1024";
                                      }
                                      description
                                        "Configure path name";
                                    }
    
                                    leaf distance-metric {
                                      type uint32 {
                                        range
                                          "1..254";
                                      }
                                      description
                                        "Distance metric for this route";
                                    }
    
                                    leaf tag {
                                      type uint32 {
                                        range
                                          "1..4294967295";
                                      }
                                      description
                                        "Set tag for this route";
                                    }
    
                                    leaf description {
                                      type string {
                                        length
                                          "1..30";
                                      }
                                      description
                                        "description of the static route";
                                    }
    
                                    leaf metric {
                                      type uint32 {
                                        range
                                          "1..16777214";
                                      }
                                      description
                                        "Set metric for this route";
                                    }
                                  }  // list name
                                }  // container names
                              }  // container path
                            }  // container mpls
                          }  // container segment-routing
    
                          container sr-policies {
                            description
                              "segment routing policy";
                            list sr-policy {
                              key "sr-policy-name";
                              description
                                "segment routing policy";
                              leaf sr-policy-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "segment routing policy";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list sr-policy
                          }  // container sr-policies
    
                          container nexthop-interfaces {
                            description
                              "Forwarding interface";
                            list nexthop-interface {
                              key "interface-name";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface
                          }  // container nexthop-interfaces
    
                          container nexthop-interface-addresses {
                            description
                              "Forwarding interface";
                            list nexthop-interface-address {
                              key "interface-name address";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf address {
                                type inet:ipv4-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface-address
                          }  // container nexthop-interface-addresses
    
                          container nexthop-addresses {
                            description
                              "Forwarding router's address";
                            list nexthop-address {
                              key "address";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv4-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
    
                                  container multihop {
                                    presence
                                      "Indicates a multihop node is configured.";
                                    description
                                      "Enable BFD Multihop";
                                    leaf address {
                                      type inet:ipv4-address-no-zone;
                                      mandatory
                                        true;
                                      description
                                        "Source address";
                                    }
                                  }  // container multihop
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-address
    
                            list nexthop-address-segment-routing {
                              key "address mpls-path-name";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv4-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              leaf mpls-path-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "Configure path name";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
                            }  // list nexthop-address-segment-routing
                          }  // container nexthop-addresses
    
                          container vrfs {
                            description
                              "Destination VRF";
                            list vrf-only {
                              key "vrf-name";
                              description
                                "Destination only VRF";
                              leaf vrf-name {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Destination VRF";
                              }
                            }  // list vrf-only
    
                            list vrf {
                              must
                                "sr-policies/sr-policy or
                               nexthop-interfaces/nexthop-interface or
                               nexthop-interface-addresses/nexthop-interface-address or
                               nexthop-addresses/nexthop-address";
                              key "vrf-name";
                              description
                                "Destination VRF";
                              leaf vrf-name {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Destination VRF";
                              }
    
                              container sr-policies {
                                description
                                  "segment routing policy";
                                list sr-policy {
                                  key "sr-policy-name";
                                  description
                                    "segment routing policy";
                                  leaf sr-policy-name {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..1024";
                                    }
                                    description
                                      "segment routing policy";
                                  }
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list sr-policy
                              }  // container sr-policies
    
                              container nexthop-interfaces {
                                description
                                  "Forwarding interface";
                                list nexthop-interface {
                                  key "interface-name";
                                  description
                                    "Forwarding interface";
                                  leaf interface-name {
                                    type xr:Interface-name;
                                    description
                                      "Forwarding interface";
                                  }
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-interface
                              }  // container nexthop-interfaces
    
                              container nexthop-interface-addresses {
                                description
                                  "Forwarding interface";
                                list nexthop-interface-address {
                                  key "interface-name address";
                                  description
                                    "Forwarding interface";
                                  leaf interface-name {
                                    type xr:Interface-name;
                                    description
                                      "Forwarding interface";
                                  }
    
                                  leaf address {
                                    type inet:ipv4-address-no-zone;
                                    description
                                      "Forwarding router's address";
                                  }
    
                                  container bfd {
                                    description
                                      "Configure BFD paramenters";
                                    container fast-detect {
                                      presence
                                        "Indicates a fast-detect node is configured.";
                                      description
                                        "Enable Fast detection";
                                      leaf minimum-interval {
                                        type uint32 {
                                          range
                                            "3..30000";
                                        }
                                        description
                                          "Hello interval";
                                      }
    
                                      leaf multiplier {
                                        type uint32 {
                                          range
                                            "1..10";
                                        }
                                        description
                                          "Detect multiplier";
                                      }
                                    }  // container fast-detect
                                  }  // container bfd
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-interface-address
                              }  // container nexthop-interface-addresses
    
                              container nexthop-addresses {
                                description
                                  "Forwarding router's address";
                                list nexthop-address {
                                  key "address";
                                  description
                                    "Forwarding router's address";
                                  leaf address {
                                    type inet:ipv4-address-no-zone;
                                    description
                                      "Forwarding router's address";
                                  }
    
                                  container bfd {
                                    description
                                      "Configure BFD paramenters";
                                    container fast-detect {
                                      presence
                                        "Indicates a fast-detect node is configured.";
                                      description
                                        "Enable Fast detection";
                                      leaf minimum-interval {
                                        type uint32 {
                                          range
                                            "3..30000";
                                        }
                                        description
                                          "Hello interval";
                                      }
    
                                      leaf multiplier {
                                        type uint32 {
                                          range
                                            "1..10";
                                        }
                                        description
                                          "Detect multiplier";
                                      }
    
                                      container multihop {
                                        presence
                                          "Indicates a multihop node is configured.";
                                        description
                                          "Enable BFD Multihop";
                                        leaf address {
                                          type inet:ipv4-address-no-zone;
                                          mandatory
                                            true;
                                          description
                                            "Source address";
                                        }
                                      }  // container multihop
                                    }  // container fast-detect
                                  }  // container bfd
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-address
                              }  // container nexthop-addresses
                            }  // list vrf
                          }  // container vrfs
                        }  // list prefix
                      }  // container prefixes
                    }  // container multicast
                  }  // container ipv4
    
                  container ipv6 {
                    description "IPv6 commands";
                    container unicast {
                      description
                        "Unicast commands";
                      container prefixes {
                        description
                          "Destination prefix";
                        list prefix {
                          must
                            "segment-routing/mpls/path/names/name or
                           sr-policies/sr-policy or
                           nexthop-interfaces/nexthop-interface or
                           nexthop-interface-addresses/nexthop-interface-address or
                           nexthop-addresses/nexthop-address or
                           nexthop-addresses/nexthop-address-segment-routing or
                           vrfs/vrf-only or vrfs/vrf/sr-policies/sr-policy or
                           vrfs/vrf/nexthop-interfaces/nexthop-interface or
                           vrfs/vrf/nexthop-interface-addresses/nexthop-interface-address or
                           vrfs/vrf/nexthop-addresses/nexthop-address";
                          key "prefix-address prefix-length";
                          description
                            "Destination prefix";
                          leaf prefix-address {
                            type inet:ipv6-address-no-zone;
                            description
                              "Destination prefix";
                          }
    
                          leaf prefix-length {
                            type uint32 {
                              range "0..128";
                            }
                            description
                              "Destination prefix length";
                          }
    
                          container segment-routing {
                            description
                              "Configure Static Segment Routing";
                            container mpls {
                              description
                                "Configure mpls path name";
                              container path {
                                description
                                  "Configure path name";
                                container names {
                                  description
                                    "Configure path name";
                                  list name {
                                    key "path-name";
                                    description
                                      "Configure path name";
                                    leaf path-name {
                                      type xr:Cisco-ios-xr-string {
                                        length
                                          "1..1024";
                                      }
                                      description
                                        "Configure path name";
                                    }
    
                                    leaf distance-metric {
                                      type uint32 {
                                        range
                                          "1..254";
                                      }
                                      description
                                        "Distance metric for this route";
                                    }
    
                                    leaf tag {
                                      type uint32 {
                                        range
                                          "1..4294967295";
                                      }
                                      description
                                        "Set tag for this route";
                                    }
    
                                    leaf description {
                                      type string {
                                        length
                                          "1..30";
                                      }
                                      description
                                        "description of the static route";
                                    }
    
                                    leaf metric {
                                      type uint32 {
                                        range
                                          "1..16777214";
                                      }
                                      description
                                        "Set metric for this route";
                                    }
                                  }  // list name
                                }  // container names
                              }  // container path
                            }  // container mpls
                          }  // container segment-routing
    
                          container sr-policies {
                            description
                              "segment routing policy";
                            list sr-policy {
                              key "sr-policy-name";
                              description
                                "segment routing policy";
                              leaf sr-policy-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "segment routing policy";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list sr-policy
                          }  // container sr-policies
    
                          container nexthop-interfaces {
                            description
                              "Forwarding interface";
                            list nexthop-interface {
                              key "interface-name";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface
                          }  // container nexthop-interfaces
    
                          container nexthop-interface-addresses {
                            description
                              "Forwarding interface";
                            list nexthop-interface-address {
                              key "interface-name address";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf address {
                                type inet:ipv6-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface-address
                          }  // container nexthop-interface-addresses
    
                          container nexthop-addresses {
                            description
                              "Forwarding router's address";
                            list nexthop-address {
                              key "address";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv6-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
    
                                  container multihop {
                                    presence
                                      "Indicates a multihop node is configured.";
                                    description
                                      "Enable BFD Multihop";
                                    leaf address {
                                      type inet:ipv6-address-no-zone;
                                      mandatory
                                        true;
                                      description
                                        "Source address";
                                    }
                                  }  // container multihop
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-address
    
                            list nexthop-address-segment-routing {
                              key "address mpls-path-name";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv6-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              leaf mpls-path-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "Configure path name";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
                            }  // list nexthop-address-segment-routing
                          }  // container nexthop-addresses
    
                          container vrfs {
                            description
                              "Destination VRF";
                            list vrf-only {
                              key "vrf-name";
                              description
                                "Destination only VRF";
                              leaf vrf-name {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Destination VRF";
                              }
                            }  // list vrf-only
    
                            list vrf {
                              must
                                "sr-policies/sr-policy or
                               nexthop-interfaces/nexthop-interface or
                               nexthop-interface-addresses/nexthop-interface-address or
                               nexthop-addresses/nexthop-address";
                              key "vrf-name";
                              description
                                "Destination VRF";
                              leaf vrf-name {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Destination VRF";
                              }
    
                              container sr-policies {
                                description
                                  "segment routing policy";
                                list sr-policy {
                                  key "sr-policy-name";
                                  description
                                    "segment routing policy";
                                  leaf sr-policy-name {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..1024";
                                    }
                                    description
                                      "segment routing policy";
                                  }
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list sr-policy
                              }  // container sr-policies
    
                              container nexthop-interfaces {
                                description
                                  "Forwarding interface";
                                list nexthop-interface {
                                  key "interface-name";
                                  description
                                    "Forwarding interface";
                                  leaf interface-name {
                                    type xr:Interface-name;
                                    description
                                      "Forwarding interface";
                                  }
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-interface
                              }  // container nexthop-interfaces
    
                              container nexthop-interface-addresses {
                                description
                                  "Forwarding interface";
                                list nexthop-interface-address {
                                  key "interface-name address";
                                  description
                                    "Forwarding interface";
                                  leaf interface-name {
                                    type xr:Interface-name;
                                    description
                                      "Forwarding interface";
                                  }
    
                                  leaf address {
                                    type inet:ipv6-address-no-zone;
                                    description
                                      "Forwarding router's address";
                                  }
    
                                  container bfd {
                                    description
                                      "Configure BFD paramenters";
                                    container fast-detect {
                                      presence
                                        "Indicates a fast-detect node is configured.";
                                      description
                                        "Enable Fast detection";
                                      leaf minimum-interval {
                                        type uint32 {
                                          range
                                            "3..30000";
                                        }
                                        description
                                          "Hello interval";
                                      }
    
                                      leaf multiplier {
                                        type uint32 {
                                          range
                                            "1..10";
                                        }
                                        description
                                          "Detect multiplier";
                                      }
                                    }  // container fast-detect
                                  }  // container bfd
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-interface-address
                              }  // container nexthop-interface-addresses
    
                              container nexthop-addresses {
                                description
                                  "Forwarding router's address";
                                list nexthop-address {
                                  key "address";
                                  description
                                    "Forwarding router's address";
                                  leaf address {
                                    type inet:ipv6-address-no-zone;
                                    description
                                      "Forwarding router's address";
                                  }
    
                                  container bfd {
                                    description
                                      "Configure BFD paramenters";
                                    container fast-detect {
                                      presence
                                        "Indicates a fast-detect node is configured.";
                                      description
                                        "Enable Fast detection";
                                      leaf minimum-interval {
                                        type uint32 {
                                          range
                                            "3..30000";
                                        }
                                        description
                                          "Hello interval";
                                      }
    
                                      leaf multiplier {
                                        type uint32 {
                                          range
                                            "1..10";
                                        }
                                        description
                                          "Detect multiplier";
                                      }
    
                                      container multihop {
                                        presence
                                          "Indicates a multihop node is configured.";
                                        description
                                          "Enable BFD Multihop";
                                        leaf address {
                                          type inet:ipv6-address-no-zone;
                                          mandatory
                                            true;
                                          description
                                            "Source address";
                                        }
                                      }  // container multihop
                                    }  // container fast-detect
                                  }  // container bfd
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-address
                              }  // container nexthop-addresses
                            }  // list vrf
                          }  // container vrfs
                        }  // list prefix
                      }  // container prefixes
                    }  // container unicast
    
                    container multicast {
                      description
                        "Multicast commands";
                      container prefixes {
                        description
                          "Destination prefix";
                        list prefix {
                          must
                            "segment-routing/mpls/path/names/name or
                           sr-policies/sr-policy or
                           nexthop-interfaces/nexthop-interface or
                           nexthop-interface-addresses/nexthop-interface-address or
                           nexthop-addresses/nexthop-address or
                           nexthop-addresses/nexthop-address-segment-routing or
                           vrfs/vrf-only or vrfs/vrf/sr-policies/sr-policy or
                           vrfs/vrf/nexthop-interfaces/nexthop-interface or
                           vrfs/vrf/nexthop-interface-addresses/nexthop-interface-address or
                           vrfs/vrf/nexthop-addresses/nexthop-address";
                          key "prefix-address prefix-length";
                          description
                            "Destination prefix";
                          leaf prefix-address {
                            type inet:ipv6-address-no-zone;
                            description
                              "Destination prefix";
                          }
    
                          leaf prefix-length {
                            type uint32 {
                              range "0..128";
                            }
                            description
                              "Destination prefix length";
                          }
    
                          container segment-routing {
                            description
                              "Configure Static Segment Routing";
                            container mpls {
                              description
                                "Configure mpls path name";
                              container path {
                                description
                                  "Configure path name";
                                container names {
                                  description
                                    "Configure path name";
                                  list name {
                                    key "path-name";
                                    description
                                      "Configure path name";
                                    leaf path-name {
                                      type xr:Cisco-ios-xr-string {
                                        length
                                          "1..1024";
                                      }
                                      description
                                        "Configure path name";
                                    }
    
                                    leaf distance-metric {
                                      type uint32 {
                                        range
                                          "1..254";
                                      }
                                      description
                                        "Distance metric for this route";
                                    }
    
                                    leaf tag {
                                      type uint32 {
                                        range
                                          "1..4294967295";
                                      }
                                      description
                                        "Set tag for this route";
                                    }
    
                                    leaf description {
                                      type string {
                                        length
                                          "1..30";
                                      }
                                      description
                                        "description of the static route";
                                    }
    
                                    leaf metric {
                                      type uint32 {
                                        range
                                          "1..16777214";
                                      }
                                      description
                                        "Set metric for this route";
                                    }
                                  }  // list name
                                }  // container names
                              }  // container path
                            }  // container mpls
                          }  // container segment-routing
    
                          container sr-policies {
                            description
                              "segment routing policy";
                            list sr-policy {
                              key "sr-policy-name";
                              description
                                "segment routing policy";
                              leaf sr-policy-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "segment routing policy";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list sr-policy
                          }  // container sr-policies
    
                          container nexthop-interfaces {
                            description
                              "Forwarding interface";
                            list nexthop-interface {
                              key "interface-name";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface
                          }  // container nexthop-interfaces
    
                          container nexthop-interface-addresses {
                            description
                              "Forwarding interface";
                            list nexthop-interface-address {
                              key "interface-name address";
                              description
                                "Forwarding interface";
                              leaf interface-name {
                                type xr:Interface-name;
                                description
                                  "Forwarding interface";
                              }
    
                              leaf address {
                                type inet:ipv6-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-interface-address
                          }  // container nexthop-interface-addresses
    
                          container nexthop-addresses {
                            description
                              "Forwarding router's address";
                            list nexthop-address {
                              key "address";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv6-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              container bfd {
                                description
                                  "Configure BFD paramenters";
                                container fast-detect {
                                  presence
                                    "Indicates a fast-detect node is configured.";
                                  description
                                    "Enable Fast detection";
                                  leaf minimum-interval {
                                    type uint32 {
                                      range
                                        "3..30000";
                                    }
                                    description
                                      "Hello interval";
                                  }
    
                                  leaf multiplier {
                                    type uint32 {
                                      range
                                        "1..10";
                                    }
                                    description
                                      "Detect multiplier";
                                  }
    
                                  container multihop {
                                    presence
                                      "Indicates a multihop node is configured.";
                                    description
                                      "Enable BFD Multihop";
                                    leaf address {
                                      type inet:ipv6-address-no-zone;
                                      mandatory
                                        true;
                                      description
                                        "Source address";
                                    }
                                  }  // container multihop
                                }  // container fast-detect
                              }  // container bfd
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              container permanent {
                                presence
                                  "Indicates a permanent node is configured.";
                                description
                                  "Permanent route";
                              }  // container permanent
    
                              leaf vrflabel {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "VRF label";
                              }
    
                              leaf tunnel-id {
                                type uint32 {
                                  range
                                    "0..4294967295";
                                }
                                description
                                  "Tunnel ID";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf track {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Enable object tracking for static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
    
                              container prefer-rib-over-ldp {
                                presence
                                  "Indicates a prefer-rib-over-ldp node is configured.";
                                description
                                  "Flag passed to rib to prefer rib over ldp";
                              }  // container prefer-rib-over-ldp
                            }  // list nexthop-address
    
                            list nexthop-address-segment-routing {
                              key "address mpls-path-name";
                              description
                                "Forwarding router's address";
                              leaf address {
                                type inet:ipv6-address-no-zone;
                                description
                                  "Forwarding router's address";
                              }
    
                              leaf mpls-path-name {
                                type xr:Cisco-ios-xr-string {
                                  length
                                    "1..1024";
                                }
                                description
                                  "Configure path name";
                              }
    
                              leaf distance-metric {
                                type uint32 {
                                  range "1..254";
                                }
                                description
                                  "Distance metric for this route";
                              }
    
                              leaf tag {
                                type uint32 {
                                  range
                                    "1..4294967295";
                                }
                                description
                                  "Set tag for this route";
                              }
    
                              leaf description {
                                type string {
                                  length "1..30";
                                }
                                description
                                  "description of the static route";
                              }
    
                              leaf metric {
                                type uint32 {
                                  range
                                    "1..16777214";
                                }
                                description
                                  "Set metric for this route";
                              }
                            }  // list nexthop-address-segment-routing
                          }  // container nexthop-addresses
    
                          container vrfs {
                            description
                              "Destination VRF";
                            list vrf-only {
                              key "vrf-name";
                              description
                                "Destination only VRF";
                              leaf vrf-name {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Destination VRF";
                              }
                            }  // list vrf-only
    
                            list vrf {
                              must
                                "sr-policies/sr-policy or
                               nexthop-interfaces/nexthop-interface or
                               nexthop-interface-addresses/nexthop-interface-address or
                               nexthop-addresses/nexthop-address";
                              key "vrf-name";
                              description
                                "Destination VRF";
                              leaf vrf-name {
                                type xr:Cisco-ios-xr-string {
                                  length "1..32";
                                }
                                description
                                  "Destination VRF";
                              }
    
                              container sr-policies {
                                description
                                  "segment routing policy";
                                list sr-policy {
                                  key "sr-policy-name";
                                  description
                                    "segment routing policy";
                                  leaf sr-policy-name {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..1024";
                                    }
                                    description
                                      "segment routing policy";
                                  }
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list sr-policy
                              }  // container sr-policies
    
                              container nexthop-interfaces {
                                description
                                  "Forwarding interface";
                                list nexthop-interface {
                                  key "interface-name";
                                  description
                                    "Forwarding interface";
                                  leaf interface-name {
                                    type xr:Interface-name;
                                    description
                                      "Forwarding interface";
                                  }
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-interface
                              }  // container nexthop-interfaces
    
                              container nexthop-interface-addresses {
                                description
                                  "Forwarding interface";
                                list nexthop-interface-address {
                                  key "interface-name address";
                                  description
                                    "Forwarding interface";
                                  leaf interface-name {
                                    type xr:Interface-name;
                                    description
                                      "Forwarding interface";
                                  }
    
                                  leaf address {
                                    type inet:ipv6-address-no-zone;
                                    description
                                      "Forwarding router's address";
                                  }
    
                                  container bfd {
                                    description
                                      "Configure BFD paramenters";
                                    container fast-detect {
                                      presence
                                        "Indicates a fast-detect node is configured.";
                                      description
                                        "Enable Fast detection";
                                      leaf minimum-interval {
                                        type uint32 {
                                          range
                                            "3..30000";
                                        }
                                        description
                                          "Hello interval";
                                      }
    
                                      leaf multiplier {
                                        type uint32 {
                                          range
                                            "1..10";
                                        }
                                        description
                                          "Detect multiplier";
                                      }
                                    }  // container fast-detect
                                  }  // container bfd
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-interface-address
                              }  // container nexthop-interface-addresses
    
                              container nexthop-addresses {
                                description
                                  "Forwarding router's address";
                                list nexthop-address {
                                  key "address";
                                  description
                                    "Forwarding router's address";
                                  leaf address {
                                    type inet:ipv6-address-no-zone;
                                    description
                                      "Forwarding router's address";
                                  }
    
                                  container bfd {
                                    description
                                      "Configure BFD paramenters";
                                    container fast-detect {
                                      presence
                                        "Indicates a fast-detect node is configured.";
                                      description
                                        "Enable Fast detection";
                                      leaf minimum-interval {
                                        type uint32 {
                                          range
                                            "3..30000";
                                        }
                                        description
                                          "Hello interval";
                                      }
    
                                      leaf multiplier {
                                        type uint32 {
                                          range
                                            "1..10";
                                        }
                                        description
                                          "Detect multiplier";
                                      }
    
                                      container multihop {
                                        presence
                                          "Indicates a multihop node is configured.";
                                        description
                                          "Enable BFD Multihop";
                                        leaf address {
                                          type inet:ipv6-address-no-zone;
                                          mandatory
                                            true;
                                          description
                                            "Source address";
                                        }
                                      }  // container multihop
                                    }  // container fast-detect
                                  }  // container bfd
    
                                  leaf distance-metric {
                                    type uint32 {
                                      range
                                        "1..254";
                                    }
                                    description
                                      "Distance metric for this route";
                                  }
    
                                  leaf tag {
                                    type uint32 {
                                      range
                                        "1..4294967295";
                                    }
                                    description
                                      "Set tag for this route";
                                  }
    
                                  container permanent {
                                    presence
                                      "Indicates a permanent node is configured.";
                                    description
                                      "Permanent route";
                                  }  // container permanent
    
                                  leaf vrflabel {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "VRF label";
                                  }
    
                                  leaf tunnel-id {
                                    type uint32 {
                                      range
                                        "0..4294967295";
                                    }
                                    description
                                      "Tunnel ID";
                                  }
    
                                  leaf description {
                                    type string {
                                      length
                                        "1..30";
                                    }
                                    description
                                      "description of the static route";
                                  }
    
                                  leaf track {
                                    type xr:Cisco-ios-xr-string {
                                      length
                                        "1..32";
                                    }
                                    description
                                      "Enable object tracking for static route";
                                  }
    
                                  leaf metric {
                                    type uint32 {
                                      range
                                        "1..16777214";
                                    }
                                    description
                                      "Set metric for this route";
                                  }
    
                                  container prefer-rib-over-ldp {
                                    presence
                                      "Indicates a prefer-rib-over-ldp node is configured.";
                                    description
                                      "Flag passed to rib to prefer rib over ldp";
                                  }  // container prefer-rib-over-ldp
                                }  // list nexthop-address
                              }  // container nexthop-addresses
                            }  // list vrf
                          }  // container vrfs
                        }  // list prefix
                      }  // container prefixes
                    }  // container multicast
                  }  // container ipv6
                }  // container address-family
              }  // list vrf
            }  // container vrfs
    
            container maximum {
              description
                "Limit the number of static paths which may be configured";
              container path {
                description
                  "Limit the number of static paths which may be configured";
                container ipv4 {
                  description "IPv4 commands";
                  leaf maximum-number {
                    type uint32 {
                      range "1..140000";
                    }
                    description
                      "The maximum number of static paths which can be configured";
                  }
                }  // container ipv4
    
                container ipv6 {
                  description "IPv6 commands";
                  leaf maximum-number {
                    type uint32 {
                      range "1..140000";
                    }
                    description
                      "The maximum number of static paths which can be configured";
                  }
                }  // container ipv6
              }  // container path
            }  // container maximum
          }  // container static
        }  // container router
      }  // module Cisco-IOS-XR-um-router-static-cfg
    

© 2023 YumaWorks, Inc. All rights reserved.