<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.30 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-ccamp-flexigrid-yang-19" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title abbrev="Flexi-Grid YANG">A YANG Data Model for Flexi-Grid Optical Networks</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-flexigrid-yang-19"/>
    <author initials="J. E." surname="Lopez de Vergara" fullname="Jorge E. Lopez de Vergara Mendez">
      <organization>Naudit HPCN</organization>
      <address>
        <email>jorge.lopez_vergara@uam.es</email>
      </address>
    </author>
    <author initials="D." surname="Perdices Burrero" fullname="Daniel Perdices Burrero">
      <organization>Universidad Autonoma de Madrid</organization>
      <address>
        <email>daniel.perdices@uam.es</email>
      </address>
    </author>
    <author initials="D." surname="King" fullname="Daniel King">
      <organization>Old Dog Consulting</organization>
      <address>
        <email>daniel@olddog.co.uk</email>
      </address>
    </author>
    <author initials="Y." surname="Lee" fullname="Young Lee">
      <organization>Samsung</organization>
      <address>
        <email>younglee.tx@gmail.com</email>
      </address>
    </author>
    <author initials="H." surname="Zheng" fullname="Haomian Zheng">
      <organization>Huawei Technologies</organization>
      <address>
        <email>zhenghaomian@huawei.com</email>
      </address>
    </author>
    <date year="2026" month="February" day="02"/>
    <area>Routing</area>
    <workgroup>CCAMP Working Group</workgroup>
    <keyword>next generation</keyword>
    <keyword>unicorn</keyword>
    <keyword>sparkling distributed ledger</keyword>
    <abstract>
      <?line 102?>

<t>This document defines a YANG module for managing flexi-grid optical
networks.  The model defined in this document specifies a flexi-grid
traffic engineering database that is used to describe the topology of
a flexi-grid network.  It is based on and augments existing YANG
models that describe network and traffic engineering topologies.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://ietf-ccamp-wg.github.io/draft-ietf-ccamp-flexigrid-yang/draft-ietf-ccamp-flexigrid-yang.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-ccamp-flexigrid-yang/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Common Control and Measurement Plane Working Group mailing list (<eref target="mailto:ccamp@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/ccamp/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/ccamp/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/ietf-ccamp-wg/draft-ietf-ccamp-flexigrid-yang"/>.</t>
    </note>
  </front>
  <middle>
    <?line 110?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The flexible grid (flexi-grid) optical network technology defined by
the International Telecommunication Union Telecommunication
Standardization Sector (ITU-T) and documented in Recommendation ITU-
T_G.694.1 <xref target="ITU-T_G.694.1"/> and ITU-T_G.872 <xref target="ITU-T_G.872"/> provides an
enhanced Dense Wavelength Division Multiplexing (DWDM) grid by
defining a set of nominal central frequencies, slot widths, and the
concept of the "frequency slot".  This technology increases both
transport network scalability and flexibility, allowing the
optimization of bandwidth usage.</t>
      <t><xref target="RFC7698"/> provides a framework for GMPLS-Based control of flexi-grid
DWDM networks while <xref target="RFC7699"/> defines generalized labels for the use
of GMPLS in flexi-grid networks.</t>
      <t><xref target="RFC8363"/> provides extensions to the OSPF-TE protocol so as to
support GMPLS control of flexi-grid networks.</t>
      <t>This document presents a YANG data model <xref target="RFC7950"/> for flexi-grid
objects in the dynamic optical network, including nodes, transponders
and links, as well as how such links interconnect nodes.  This model
is independent of control plane protocols.</t>
      <t>This document identifies the flexi-grid components, parameters, and
their values.  It characterizes the features and the performances of
the flexi-grid elements.  For this, it augments <xref target="RFC8795"/>, and
imports the generic Layer 0 types and use of "media-channel" defined
in <xref target="I-D.ietf-ccamp-rfc9093-bis"/>.</t>
      <t>An application example in <xref target="example"/> is also provided to better
understand the utility of this YANG model.</t>
      <t>A partner document defines a second YANG module that described flexi-
grid tunnels, i.e., the paths from source to destination through a
number of intermediate nodes <xref target="I-D.ietf-ccamp-flexigrid-tunnel-yang"/>.</t>
      <t>Impairment-aware traffic engineering topology is described in
<xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/>.</t>
      <t>The YANG data model defined in this document conforms to the Network
Management Datastore Architecture (NMDA) <xref target="RFC8342"/>.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>Refer to <xref target="RFC7698"/> and <xref target="RFC7699"/> for the key terms used in this
document.</t>
      <t>The following terms are defined in <xref target="RFC7950"/> and are not redefined
here:</t>
      <ul spacing="normal">
        <li>
          <t>client</t>
        </li>
        <li>
          <t>server</t>
        </li>
        <li>
          <t>augment</t>
        </li>
        <li>
          <t>data model</t>
        </li>
        <li>
          <t>data node</t>
        </li>
      </ul>
      <t>The following terms are defined in <xref target="RFC6241"/> and are not redefined
here:</t>
      <ul spacing="normal">
        <li>
          <t>configuration data</t>
        </li>
        <li>
          <t>state data</t>
        </li>
      </ul>
      <t>The terminology for describing YANG data models is found in
<xref target="RFC7950"/>.</t>
    </section>
    <section anchor="tree-diagram">
      <name>Tree Diagram</name>
      <t>A simplified graphical representation of the data model is used in
this document.  The meaning of the symbols in these diagrams is
defined in <xref target="RFC8340"/>.</t>
      <section anchor="prefixes-in-data-node-names">
        <name>Prefixes in Data Node Names</name>
        <t>In this document, names of data nodes and other data model objects
are prefixed using the standard prefix associated with the
corresponding YANG imported modules, as shown in <xref target="tab-prefixes"/>.  It uses
prefixes from <xref target="I-D.ietf-ccamp-rfc9093-bis"/>, <xref target="RFC8345"/>, and <xref target="RFC8795"/>.</t>
        <table anchor="tab-prefixes">
          <name>Prefixes and corresponding YANG modules</name>
          <thead>
            <tr>
              <th align="left">Prefix</th>
              <th align="left">YANG module</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">l0-types</td>
              <td align="left">ietf-layer0-types</td>
              <td align="left">[RFCYYYY]</td>
            </tr>
            <tr>
              <td align="left">flexgt</td>
              <td align="left">ietf-flexi-grid-topology</td>
              <td align="left">RFC XXXX</td>
            </tr>
            <tr>
              <td align="left">nw</td>
              <td align="left">ietf-network</td>
              <td align="left">
                <xref target="RFC8345"/></td>
            </tr>
            <tr>
              <td align="left">nt</td>
              <td align="left">ietf-network-topology</td>
              <td align="left">
                <xref target="RFC8345"/></td>
            </tr>
            <tr>
              <td align="left">tet</td>
              <td align="left">ietf-te-topology</td>
              <td align="left">
                <xref target="RFC8795"/></td>
            </tr>
          </tbody>
        </table>
        <t>RFC Editor Note:
Please replace XXXX with the RFC number assigned to this document.
Please replace YYYY with the RFC numbers assigned to <xref target="I-D.ietf-ccamp-rfc9093-bis"/>.
Please remove this note.</t>
      </section>
    </section>
    <section anchor="example">
      <name>Example of Use</name>
      <t>In order to explain how this model is used, we provide the following
example.  An optical network usually has multiple transponders,
switches (nodes) and links.  <xref target="fig-topo"/> shows a simple topology.</t>
      <figure anchor="fig-topo">
        <name>Topology Example</name>
        <artwork type="ascii-art"><![CDATA[
      +----------+                                        +----------+
      |  Flexi-  |                                        | Flexi-   |
      |   grid   |                                        |  grid    |
      |  node A  |                                        | node E   |
      |          |        +------+        +------+        |          |
      |          | Link 1 |Flexi-| Link 2 |Flexi-| Link 3 |          |
      |          |<------>| grid |<------>| grid |<------>|          |
      |......... |        |node B|        |node C|        | .........|
      | Trans- : |        +------+        +------+        | : Trans- |
      | ponder : |                                        | : ponder |
      |    A   : |              +----------+              | :    E   |
      |........: |     Link 4   |Flexi-grid|   Link 5     | :........|
      |          |<------------>|   node   |<------------>|          |
      |          |              |    D     |              |          |
      |          |              +----------+              |          |
      +----------+                                        +----------+
]]></artwork>
      </figure>
      <t>In order to configure a flexi-grid network to interconnect transponders A and E, first of all we have to populate the flexi-grid topology YANG model with all elements in the network:</t>
      <ul spacing="normal">
        <li>
          <t>We define the transponders within nodes A and E as tunnel
termination points (TTPs) and provide their internal local link
connectivity towards the node interfaces.  We also provide the
identifiers, addresses and interfaces of nodes A and B.</t>
        </li>
        <li>
          <t>We do the same for the nodes B, C and D, providing their
identifiers, addresses and interfaces, as well as the internal
connectivity matrix between interfaces.</t>
        </li>
        <li>
          <t>Then, we also define the links 1 to 5 that interconnect nodes,
indicating which flexi-grid labels are available.</t>
        </li>
        <li>
          <t>Other information, such as the slot frequency and granularity are
also provided.</t>
        </li>
      </ul>
    </section>
    <section anchor="yang-data-model-for-flexi-grid-topology">
      <name>YANG Data Model for Flexi-Grid Topology</name>
      <section anchor="flexi-grid-topology-data-model-overview">
        <name>Flexi-Grid Topology Data Model Overview</name>
        <t>This document describes the data model for flexi-grid topology.  As a
classic traffic engineering (TE) technology, flexi-grid provides WDM
switching in transport network.  Therefore the YANG module presented
in this document augments from a more generic TE network topology
data model, i.e., the ietf-te-topology, as specified in <xref target="RFC8795"/>,
following the guidelines provided in section 6 of <xref target="RFC8795"/>.</t>
        <t>Common types, identities, and groupings defined in <xref target="I-D.ietf-ccamp-rfc9093-bis"/> are
reused in this document.</t>
        <t>The figure below shows the augmentation relationship between YANG
models.</t>
        <figure anchor="fig-model-hierachy">
          <name>Relationship between Flexi-Grid and TE topology models</name>
          <artwork type="ascii-art"><![CDATA[
                        +-------------------------+
           TE generic   |    ietf-te-topology     |
                        +-------------------------+
                                     ^
                                     |
                                     | Augments
                                     |
                        +------------+-------------+
           Flexi-Grid   | ietf-flexi-grid-topology |
                        +--------------------------+
]]></artwork>
        </figure>
        <t>The entities and TE attributes, such as node, termination points and
links, are still applicable for describing a flexi-grid topology and
the model presented in this document only specifies the technology-
specific attributes/information.</t>
        <t>The flexi-grid specific attributes and label format is defined in
<xref target="RFC7699"/>, including the grid type, nominal central frequency granularity, slot width
granularity, n and m parameters.  A collection of common data types
have also been specified in <xref target="I-D.ietf-ccamp-rfc9093-bis"/>, and used in this document for
augmentation of the generic TE topology model.</t>
        <t>The YANG module ietf-flexi-grid-topology defined in this document
conforms to the Network Management Datastore Architecture (NMDA)
defined in <xref target="RFC8342"/>.</t>
      </section>
      <section anchor="augmentations-for-flexi-grid-topology-and-node">
        <name>Augmentations for Flexi-Grid Topology and Node</name>
        <t>There are a few characteristics augmenting to the generic TE
topology.</t>
        <t>Following the guidelines in <xref target="RFC8795"/>, a flexi-grid-topology network-
type is specified as the indicator of flexi-grid in the topology as
shown in <xref target="fig-network-type"/>.</t>
        <figure anchor="fig-network-type">
          <name>Flexi-Grid Topology Augmentation</name>
          <artwork type="ascii-art"><![CDATA[
       augment /nw:networks/nw:network/nw:network-types/tet:te-topology:
         +--rw flexi-grid-topology!
]]></artwork>
        </figure>
        <t>A flexi-grid-node presence container is specified, augmenting the
generic TE node attributes, to indicate that the TE node is a Flexi-
Grid node as shown in <xref target="fig-node-type"/>.</t>
        <figure anchor="fig-node-type">
          <name>Flex-Grid Node Augmentation</name>
          <artwork type="ascii-art"><![CDATA[
          augment /nw:networks/nw:network/nw:node/tet:te
                  /tet:te-node-attributes:
            +--rw flexi-grid-node!
]]></artwork>
        </figure>
        <t>It is assumed that all the flexi-grid nodes are reconfigurable.</t>
      </section>
      <section anchor="bandwidth-augmentation">
        <name>Bandwidth Augmentation</name>
        <t>No bandwidth augmentations are needed for this YANG module.</t>
        <t>As described in Section 4.2 of <xref target="RFC7699"/>, there is some overlap
between bandwidth and label in Layer 0.</t>
        <t>The flexi-grid label resource information described in <xref target="flexi-label"/>,
is sufficient to also describe the spectrum resources within a flexi-
grid network.  Therefore, the model does not define any augmentation
for the te-bandwidth containers defined in <xref target="RFC8795"/>.</t>
      </section>
      <section anchor="flexi-label">
        <name>Label Augmentation</name>
        <t>The model augments all the occurrences of the label-restriction list
in <xref target="RFC8795"/> with flexi-grid technology specific attributes using the
flexi-grid-label-range-info grouping defined in <xref target="I-D.ietf-ccamp-rfc9093-bis"/>.</t>
        <t>Moreover, following the guidelines in <xref target="RFC8795"/>, the model augments
all the occurrences of the te-label container with the flexi-grid
technology specific attributes using the flexi-grid-label-start-end,
flexi-grid-label-hop and flexi-grid-label-step groupings defined in
<xref target="I-D.ietf-ccamp-rfc9093-bis"/>.</t>
      </section>
    </section>
    <section anchor="yang-model-tree-structure-for-flexi-grid-topology">
      <name>YANG Model (Tree Structure) for Flexi-Grid Topology</name>
      <figure anchor="fig-flexig-topo-tree">
        <artwork type="ascii-art" name="ietf-flexi-grid-topology.tree"><![CDATA[
module: ietf-flexi-grid-topology

  augment /nw:networks/nw:network/nw:network-types/tet:te-topology:
    +--rw flexi-grid-topology!
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes:
    +--rw flexi-grid-node!
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction:
    +--rw flexi-grid-label-range!
       +--rw grid-type?    identityref
       +--rw priority?     uint8
       +--rw flexi-grid
          +--rw slot-width-granularity?   identityref
          +--rw min-slot-width-factor?    uint16
          +--rw max-slot-width-factor?    uint16
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction:
    +--rw flexi-grid-label-range!
       +--rw grid-type?    identityref
       +--rw priority?     uint8
       +--rw flexi-grid
          +--rw slot-width-granularity?   identityref
          +--rw min-slot-width-factor?    uint16
          +--rw max-slot-width-factor?    uint16
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction:
    +--rw flexi-grid-label-range!
       +--rw grid-type?    identityref
       +--rw priority?     uint8
       +--rw flexi-grid
          +--rw slot-width-granularity?   identityref
          +--rw min-slot-width-factor?    uint16
          +--rw max-slot-width-factor?    uint16
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction:
    +--ro flexi-grid-label-range!
       +--ro grid-type?    identityref
       +--ro priority?     uint8
       +--ro flexi-grid
          +--ro slot-width-granularity?   identityref
          +--ro min-slot-width-factor?    uint16
          +--ro max-slot-width-factor?    uint16
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction:
    +--ro flexi-grid-label-range!
       +--ro grid-type?    identityref
       +--ro priority?     uint8
       +--ro flexi-grid
          +--ro slot-width-granularity?   identityref
          +--ro min-slot-width-factor?    uint16
          +--ro max-slot-width-factor?    uint16
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction:
    +--ro flexi-grid-label-range!
       +--ro grid-type?    identityref
       +--ro priority?     uint8
       +--ro flexi-grid
          +--ro slot-width-granularity?   identityref
          +--ro min-slot-width-factor?    uint16
          +--ro max-slot-width-factor?    uint16
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:label-restrictions
            /tet:label-restriction:
    +--rw flexi-grid-label-range!
       +--rw grid-type?    identityref
       +--rw priority?     uint8
       +--rw flexi-grid
          +--rw slot-width-granularity?   identityref
          +--rw min-slot-width-factor?    uint16
          +--rw max-slot-width-factor?    uint16
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:label-restrictions
            /tet:label-restriction:
    +--rw flexi-grid-label-range!
       +--rw grid-type?    identityref
       +--rw priority?     uint8
       +--rw flexi-grid
          +--rw slot-width-granularity?   identityref
          +--rw min-slot-width-factor?    uint16
          +--rw max-slot-width-factor?    uint16
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction:
    +--rw flexi-grid-label-range!
       +--rw grid-type?    identityref
       +--rw priority?     uint8
       +--rw flexi-grid
          +--rw slot-width-granularity?   identityref
          +--rw min-slot-width-factor?    uint16
          +--rw max-slot-width-factor?    uint16
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:label-restrictions
            /tet:label-restriction:
    +--ro flexi-grid-label-range!
       +--ro grid-type?    identityref
       +--ro priority?     uint8
       +--ro flexi-grid
          +--ro slot-width-granularity?   identityref
          +--ro min-slot-width-factor?    uint16
          +--ro max-slot-width-factor?    uint16
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction:
    +--rw flexi-grid-label-range!
       +--rw grid-type?    identityref
       +--rw priority?     uint8
       +--rw flexi-grid
          +--rw slot-width-granularity?   identityref
          +--rw min-slot-width-factor?    uint16
          +--rw max-slot-width-factor?    uint16
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction
            /tet:label-start/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction
            /tet:label-end/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction
            /tet:label-step/tet:technology:
    +--:(flexi-grid)
       o--rw flexi-grid-channel-spacing?   identityref
       +--rw flexi-ncfg?                   identityref
       +--rw flexi-n-step?                 uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:underlay/tet:primary-path/tet:path-element/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:underlay/tet:backup-path/tet:path-element/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:optimizations/tet:algorithm/tet:metric
            /tet:optimization-metric
            /tet:explicit-route-exclude-objects
            /tet:route-object-exclude-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:optimizations/tet:algorithm/tet:metric
            /tet:optimization-metric
            /tet:explicit-route-include-objects
            /tet:route-object-include-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:path-properties/tet:path-route-objects
            /tet:path-route-object/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro (single-or-super-channel)?
          +--:(single)
          |  +--ro flexi-n?              flexi-n
          |  +--ro flexi-m?              flexi-m
          o--:(super)
          |  o--ro subcarrier-flexi-n* [flexi-n]
          |     +--ro flexi-n    flexi-n
          |     +--ro flexi-m?   flexi-m
          +--:(multi)
             +--ro frequency-slots
                +--ro frequency-slot* [flexi-n]
                   +--ro flexi-n    flexi-n
                   +--ro flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--rw flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--rw flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(flexi-grid)
       o--rw flexi-grid-channel-spacing?   identityref
       +--rw flexi-ncfg?                   identityref
       +--rw flexi-n-step?                 uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--rw flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--rw flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(flexi-grid)
       o--rw flexi-grid-channel-spacing?   identityref
       +--rw flexi-ncfg?                   identityref
       +--rw flexi-n-step?                 uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:underlay/tet:primary-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:underlay/tet:backup-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:optimizations/tet:algorithm
            /tet:metric/tet:optimization-metric
            /tet:explicit-route-exclude-objects
            /tet:route-object-exclude-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:optimizations/tet:algorithm
            /tet:metric/tet:optimization-metric
            /tet:explicit-route-include-objects
            /tet:route-object-include-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:path-properties
            /tet:path-route-objects/tet:path-route-object/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro (single-or-super-channel)?
          +--:(single)
          |  +--ro flexi-n?              flexi-n
          |  +--ro flexi-m?              flexi-m
          o--:(super)
          |  o--ro subcarrier-flexi-n* [flexi-n]
          |     +--ro flexi-n    flexi-n
          |     +--ro flexi-m?   flexi-m
          +--:(multi)
             +--ro frequency-slots
                +--ro frequency-slot* [flexi-n]
                   +--ro flexi-n    flexi-n
                   +--ro flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction
            /tet:label-start/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction
            /tet:label-end/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction
            /tet:label-step/tet:technology:
    +--:(flexi-grid)
       o--ro flexi-grid-channel-spacing?   identityref
       +--ro flexi-ncfg?                   identityref
       +--ro flexi-n-step?                 uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:underlay/tet:primary-path/tet:path-element/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro (single-or-super-channel)?
          +--:(single)
          |  +--ro flexi-n?              flexi-n
          |  +--ro flexi-m?              flexi-m
          o--:(super)
          |  o--ro subcarrier-flexi-n* [flexi-n]
          |     +--ro flexi-n    flexi-n
          |     +--ro flexi-m?   flexi-m
          +--:(multi)
             +--ro frequency-slots
                +--ro frequency-slot* [flexi-n]
                   +--ro flexi-n    flexi-n
                   +--ro flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:underlay/tet:backup-path/tet:path-element/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro (single-or-super-channel)?
          +--:(single)
          |  +--ro flexi-n?              flexi-n
          |  +--ro flexi-m?              flexi-m
          o--:(super)
          |  o--ro subcarrier-flexi-n* [flexi-n]
          |     +--ro flexi-n    flexi-n
          |     +--ro flexi-m?   flexi-m
          +--:(multi)
             +--ro frequency-slots
                +--ro frequency-slot* [flexi-n]
                   +--ro flexi-n    flexi-n
                   +--ro flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:optimizations/tet:algorithm/tet:metric
            /tet:optimization-metric
            /tet:explicit-route-exclude-objects
            /tet:route-object-exclude-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro (single-or-super-channel)?
          +--:(single)
          |  +--ro flexi-n?              flexi-n
          |  +--ro flexi-m?              flexi-m
          o--:(super)
          |  o--ro subcarrier-flexi-n* [flexi-n]
          |     +--ro flexi-n    flexi-n
          |     +--ro flexi-m?   flexi-m
          +--:(multi)
             +--ro frequency-slots
                +--ro frequency-slot* [flexi-n]
                   +--ro flexi-n    flexi-n
                   +--ro flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:optimizations/tet:algorithm/tet:metric
            /tet:optimization-metric
            /tet:explicit-route-include-objects
            /tet:route-object-include-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro (single-or-super-channel)?
          +--:(single)
          |  +--ro flexi-n?              flexi-n
          |  +--ro flexi-m?              flexi-m
          o--:(super)
          |  o--ro subcarrier-flexi-n* [flexi-n]
          |     +--ro flexi-n    flexi-n
          |     +--ro flexi-m?   flexi-m
          +--:(multi)
             +--ro frequency-slots
                +--ro frequency-slot* [flexi-n]
                   +--ro flexi-n    flexi-n
                   +--ro flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:path-properties/tet:path-route-objects
            /tet:path-route-object/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro (single-or-super-channel)?
          +--:(single)
          |  +--ro flexi-n?              flexi-n
          |  +--ro flexi-m?              flexi-m
          o--:(super)
          |  o--ro subcarrier-flexi-n* [flexi-n]
          |     +--ro flexi-n    flexi-n
          |     +--ro flexi-m?   flexi-m
          +--:(multi)
             +--ro frequency-slots
                +--ro frequency-slot* [flexi-n]
                   +--ro flexi-n    flexi-n
                   +--ro flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--ro flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--ro flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(flexi-grid)
       o--ro flexi-grid-channel-spacing?   identityref
       +--ro flexi-ncfg?                   identityref
       +--ro flexi-n-step?                 uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--ro flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--ro flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(flexi-grid)
       o--ro flexi-grid-channel-spacing?   identityref
       +--ro flexi-ncfg?                   identityref
       +--ro flexi-n-step?                 uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:underlay/tet:primary-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro (single-or-super-channel)?
          +--:(single)
          |  +--ro flexi-n?              flexi-n
          |  +--ro flexi-m?              flexi-m
          o--:(super)
          |  o--ro subcarrier-flexi-n* [flexi-n]
          |     +--ro flexi-n    flexi-n
          |     +--ro flexi-m?   flexi-m
          +--:(multi)
             +--ro frequency-slots
                +--ro frequency-slot* [flexi-n]
                   +--ro flexi-n    flexi-n
                   +--ro flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:underlay/tet:backup-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro (single-or-super-channel)?
          +--:(single)
          |  +--ro flexi-n?              flexi-n
          |  +--ro flexi-m?              flexi-m
          o--:(super)
          |  o--ro subcarrier-flexi-n* [flexi-n]
          |     +--ro flexi-n    flexi-n
          |     +--ro flexi-m?   flexi-m
          +--:(multi)
             +--ro frequency-slots
                +--ro frequency-slot* [flexi-n]
                   +--ro flexi-n    flexi-n
                   +--ro flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:optimizations/tet:algorithm
            /tet:metric/tet:optimization-metric
            /tet:explicit-route-exclude-objects
            /tet:route-object-exclude-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro (single-or-super-channel)?
          +--:(single)
          |  +--ro flexi-n?              flexi-n
          |  +--ro flexi-m?              flexi-m
          o--:(super)
          |  o--ro subcarrier-flexi-n* [flexi-n]
          |     +--ro flexi-n    flexi-n
          |     +--ro flexi-m?   flexi-m
          +--:(multi)
             +--ro frequency-slots
                +--ro frequency-slot* [flexi-n]
                   +--ro flexi-n    flexi-n
                   +--ro flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:optimizations/tet:algorithm
            /tet:metric/tet:optimization-metric
            /tet:explicit-route-include-objects
            /tet:route-object-include-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro (single-or-super-channel)?
          +--:(single)
          |  +--ro flexi-n?              flexi-n
          |  +--ro flexi-m?              flexi-m
          o--:(super)
          |  o--ro subcarrier-flexi-n* [flexi-n]
          |     +--ro flexi-n    flexi-n
          |     +--ro flexi-m?   flexi-m
          +--:(multi)
             +--ro frequency-slots
                +--ro frequency-slot* [flexi-n]
                   +--ro flexi-n    flexi-n
                   +--ro flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:path-properties
            /tet:path-route-objects/tet:path-route-object/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro (single-or-super-channel)?
          +--:(single)
          |  +--ro flexi-n?              flexi-n
          |  +--ro flexi-m?              flexi-m
          o--:(super)
          |  o--ro subcarrier-flexi-n* [flexi-n]
          |     +--ro flexi-n    flexi-n
          |     +--ro flexi-m?   flexi-m
          +--:(multi)
             +--ro frequency-slots
                +--ro frequency-slot* [flexi-n]
                   +--ro flexi-n    flexi-n
                   +--ro flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--rw flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--rw flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(flexi-grid)
       o--rw flexi-grid-channel-spacing?   identityref
       +--rw flexi-ncfg?                   identityref
       +--rw flexi-n-step?                 uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:underlay
            /tet:primary-path/tet:path-element/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:underlay
            /tet:backup-path/tet:path-element/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:optimizations
            /tet:algorithm/tet:metric/tet:optimization-metric
            /tet:explicit-route-exclude-objects
            /tet:route-object-exclude-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:optimizations
            /tet:algorithm/tet:metric/tet:optimization-metric
            /tet:explicit-route-include-objects
            /tet:route-object-include-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:path-properties
            /tet:path-route-objects/tet:path-route-object/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro (single-or-super-channel)?
          +--:(single)
          |  +--ro flexi-n?              flexi-n
          |  +--ro flexi-m?              flexi-m
          o--:(super)
          |  o--ro subcarrier-flexi-n* [flexi-n]
          |     +--ro flexi-n    flexi-n
          |     +--ro flexi-m?   flexi-m
          +--:(multi)
             +--ro frequency-slots
                +--ro frequency-slot* [flexi-n]
                   +--ro flexi-n    flexi-n
                   +--ro flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--rw flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--rw flexi-n?   flexi-n
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(flexi-grid)
       o--rw flexi-grid-channel-spacing?   identityref
       +--rw flexi-ncfg?                   identityref
       +--rw flexi-n-step?                 uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:underlay
            /tet:primary-path/tet:path-element/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:underlay/tet:backup-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:optimizations
            /tet:algorithm/tet:metric/tet:optimization-metric
            /tet:explicit-route-exclude-objects
            /tet:route-object-exclude-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:optimizations
            /tet:algorithm/tet:metric/tet:optimization-metric
            /tet:explicit-route-include-objects
            /tet:route-object-include-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:path-properties
            /tet:path-route-objects/tet:path-route-object/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--ro (single-or-super-channel)?
          +--:(single)
          |  +--ro flexi-n?              flexi-n
          |  +--ro flexi-m?              flexi-m
          o--:(super)
          |  o--ro subcarrier-flexi-n* [flexi-n]
          |     +--ro flexi-n    flexi-n
          |     +--ro flexi-m?   flexi-m
          +--:(multi)
             +--ro frequency-slots
                +--ro frequency-slot* [flexi-n]
                   +--ro flexi-n    flexi-n
                   +--ro flexi-m?   flexi-m
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:underlay/tet:primary-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:underlay/tet:backup-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--rw flexi-n?   flexi-n
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--rw flexi-n?   flexi-n
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(flexi-grid)
       o--rw flexi-grid-channel-spacing?   identityref
       +--rw flexi-ncfg?                   identityref
       +--rw flexi-n-step?                 uint8
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--ro flexi-n?   flexi-n
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--ro flexi-n?   flexi-n
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(flexi-grid)
       o--ro flexi-grid-channel-spacing?   identityref
       +--ro flexi-ncfg?                   identityref
       +--ro flexi-n-step?                 uint8
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:underlay/tet:primary-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:underlay/tet:backup-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(flexi-grid)
       +--rw (single-or-super-channel)?
          +--:(single)
          |  +--rw flexi-n?              flexi-n
          |  +--rw flexi-m?              flexi-m
          o--:(super)
          |  o--rw subcarrier-flexi-n* [flexi-n]
          |     +--rw flexi-n    flexi-n
          |     +--rw flexi-m?   flexi-m
          +--:(multi)
             +--rw frequency-slots
                +--rw frequency-slot* [flexi-n]
                   +--rw flexi-n    flexi-n
                   +--rw flexi-m?   flexi-m
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--rw flexi-n?   flexi-n
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(flexi-grid)
       +--rw flexi-n?   flexi-n
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(flexi-grid)
       o--rw flexi-grid-channel-spacing?   identityref
       +--rw flexi-ncfg?                   identityref
       +--rw flexi-n-step?                 uint8
]]></artwork>
      </figure>
    </section>
    <section anchor="the-yang-code-for-flexi-grid-topology">
      <name>The YANG Code for Flexi-grid topology</name>
      <figure anchor="fig-flexig-topo-yang">
        <sourcecode type="yang" markers="true" name="ietf-flexi-grid-topology@2023-12-15.yang"><![CDATA[
module ietf-flexi-grid-topology {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-flexi-grid-topology";
  prefix "flexgt";

  import ietf-network {
    prefix "nw";
    reference
      "RFC 8345: A YANG Data Model for Network Topologies";
  }

  import ietf-network-topology {
    prefix "nt";
    reference
      "RFC 8345: A YANG Data Model for Network Topologies";
  }

  import ietf-te-topology {
    prefix "tet";
    reference
      "RFC 8795: YANG Data Model for Traffic Engineering
       (TE) Topologies";
  }

  import ietf-layer0-types {
    prefix "l0-types";
    reference
      "RFC YYYY: A YANG Data Model for Layer 0 Types";
  }
  /* Note: The RFC Editor will replace YYYY with the number assigned
     to the RFC once draft-ietf-ccamp-rfc9093-bis becomes an RFC.*/

  organization
     "IETF CCAMP Working Group";
  contact
    "WG Web: <https://datatracker.ietf.org/wg/ccamp/>

     WG List: <mailto:ccamp@ietf.org>

     Editor: Jorge E. Lopez de Vergara
             <mailto:jorge.lopez_vergara@uam.es>

     Editor: Daniel Perdices
             <mailto:daniel.perdices@uam.es>

     Editor: Haomian Zheng
             <mailto:zhenghaomian@huawei.com>

     Editor: Daniel King
             <mailto:d.king@lancaster.ac.uk>

     Editor: Young Lee
             <mailto:younglee.tx@gmail.com>";

  description
    "This YANG module defines a topology model for flexi-grid 
     optical networks. The model augments the technology-agnostic 
     TE topology model with flexi-grid technology specific 
     definitions, based on RFC 7698 and RFC 7699.

     The model fully conforms to the Network Management Datastore 
     Architecture (NMDA).

     Copyright (c) 2023 IETF Trust and the persons identified
     as authors of the code.  All rights reserved.

     Redistribution and use in source and binary forms, with
     or without modification, is permitted pursuant to, and
     subject to the license terms contained in, the Revised
     BSD License set forth in Section 4.c of the IETF Trust's
     Legal Provisions Relating to IETF Documents
     (https://trustee.ietf.org/license-info).

     This version of this YANG module is part of RFC XXXX; see
     the RFC itself for full legal notices.

     The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL
     NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED',
     'MAY', and 'OPTIONAL' in this document are to be interpreted as
     described in BCP 14 (RFC 2119) (RFC 8174) when, and only when,
     they appear in all capitals, as shown here.";
    reference
      "RFC 7698: Framework and Requirements for GMPLS-Based Control 
        of Flexi-Grid Dense Wavelength Division Multiplexing 
        (DWDM) Networks;
      RFC 7699: Generalized Labels for the Flexi-Grid in Lambda 
        Switch Capable (LSC) Label Switching Routers.";

  revision 2023-12-15 {
    description
      "Initial Version";
    reference
      "RFC XXXX: A YANG Data Model for Flexi-Grid Optical Networks";
    // RFC Ed.: replace XXXX with actual RFC number, update date
    // information and remove this note
  }

  /*
   * Groupings
   */

  grouping label-range-info {
    description
      "Flexi-grid-specific label range related information with a 
      presence container indicating whether the label range is a 
      flexi-grid label range.";
    container flexi-grid-label-range {
      presence
        "Indicates the label range is a flexi-grid label range.
        
        This container MUST NOT be present if there are other 
        presence containers or attributes indicating another type 
        of label range.";
      description
        "Flexi-grid-specific label range related information.";
      uses l0-types:flexi-grid-label-range-info;
    }
  }

  /*
   * Data nodes
   */

  augment "/nw:networks/nw:network/nw:network-types"
        + "/tet:te-topology" {
    description
      "Augment network types to define flexi-grid topology type.";
    container flexi-grid-topology {
      presence
        "Its presence identifies the flexi-grid topology type.";
      description
        "Introduce new network type for flexi-grid topology.";
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te"
        + "/tet:te-node-attributes" {
    when "/nw:networks/nw:network/nw:network-types"
       + "/tet:te-topology/flexgt:flexi-grid-topology" {
      description
      "Augmentation parameters apply only for networks with
       flexi-grid topology type.";
    }
    description "Augment TE node attributes.";
    container flexi-grid-node {
      presence "The TE node is a flexi-grid node.";
      description
        "Introduce new TE node type for flexi-grid node.";
    }
  }

  /*
   * Augment TE label range information
   */

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:label-restrictions/tet:label-restriction" {
    when "../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range information for the TE node
       connectivity matrices.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:from/"
        + "tet:label-restrictions/tet:label-restriction" {
    when "../../../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range information for the source Link
       Termination Point (LTP) of the connectivity matrix entry.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:to/"
        + "tet:label-restrictions/tet:label-restriction" {
    when "../../../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range information for the destination LTP
       of the connectivity matrix entry.";
    uses label-range-info;
  }
  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/"
        + "tet:connectivity-matrices/tet:label-restrictions/"
        + "tet:label-restriction" {
    when "../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range information for the TE node
       connectivity matrices information source.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:from/tet:label-restrictions/tet:label-restriction" {
    when "../../../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range information for the source LTP
       of the connectivity matrix entry information source.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:to/tet:label-restrictions/tet:label-restriction" {
    when "../../../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range information for the destination LTP
       of the connectivity matrix entry information source.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:label-restrictions/tet:label-restriction" {
    when "../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range information for the Tunnel
      Termination Point (TTP) Local Link Connectivities.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:label-restrictions/tet:label-restriction" {
    when "../../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range information for the TTP
       Local Link Connectivity entry.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction" {
    when "../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range information for the TE link.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:information-source-entry/"
        + "tet:label-restrictions/tet:label-restriction" {
    when "../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range information for the TE link
       information source.";
    uses label-range-info;
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction" {
    description
      "Augment TE label range information for the TE link template.";
    uses label-range-info;
  }

  /*
   * Augment TE label
   */

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range start for the TE node
       connectivity matrices.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:label-restrictions/"
        + "tet:label-restriction/tet:label-end/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range end for the TE node
       connectivity matrices.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:label-restrictions/"
        + "tet:label-restriction/tet:label-step/"
        + "tet:technology" {
    when "../../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range step for the TE node
       connectivity matrices.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:underlay/tet:primary-path/tet:path-element/"
        + "tet:type/tet:label/tet:label-hop/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path of the
       TE node connectivity matrices.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:underlay/tet:backup-path/tet:path-element/"
        + "tet:type/tet:label/tet:label-hop/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path of the
       TE node connectivity matrices.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-exclude-objects/"
        + "tet:route-object-exclude-object/"
        + "tet:type/tet:label/tet:label-hop/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the TE node connectivity
       matrices.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-include-objects/"
        + "tet:route-object-include-object/"
        + "tet:type/tet:label/tet:label-hop/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the TE node connectivity
       matrices.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:path-properties/tet:path-route-objects/"
        + "tet:path-route-object/tet:type/tet:label/tet:label-hop/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the TE node connectivity matrices.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:from/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range start for the source LTP
       of the connectivity matrix entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:from/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range end for the source LTP
       of the connectivity matrix entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:from/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/"
        + "tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range step for the source LTP
       of the connectivity matrix entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:to/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range start for the destination LTP
       of the connectivity matrix entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:to/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range end for the destination LTP
       of the connectivity matrix entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:to/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/"
        + "tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range step for the destination LTP
       of the connectivity matrix entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:underlay/tet:primary-path/tet:path-element/"
        + "tet:type/tet:label/tet:label-hop/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the connectivity matrix entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:underlay/tet:backup-path/tet:path-element/"
        + "tet:type/tet:label/tet:label-hop/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the connectivity matrix entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:optimizations/"
        + "tet:algorithm/tet:metric/tet:optimization-metric/"
        + "tet:explicit-route-exclude-objects/"
        + "tet:route-object-exclude-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the connectivity matrix entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:optimizations/"
        + "tet:algorithm/tet:metric/tet:optimization-metric/"
        + "tet:explicit-route-include-objects/"
        + "tet:route-object-include-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the connectivity matrix entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:path-properties/tet:path-route-objects/"
        + "tet:path-route-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the connectivity matrix entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/"
        + "tet:connectivity-matrices/tet:label-restrictions/"
        + "tet:label-restriction/"
        + "tet:label-start/tet:te-label/tet:technology" {
    when "../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range start for the TE node connectivity
       matrices information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/"
        + "tet:connectivity-matrices/tet:label-restrictions/"
        + "tet:label-restriction/"
        + "tet:label-end/tet:te-label/tet:technology" {
    when "../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range end for the TE node connectivity
       matrices information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/"
        + "tet:connectivity-matrices/tet:label-restrictions/"
        + "tet:label-restriction/"
        + "tet:label-step/tet:technology" {
    when "../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range step for the TE node connectivity
       matrices information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:underlay/tet:primary-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the TE node connectivity matrices of the information
       source entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the TE node connectivity matrices of the information
       source entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-exclude-objects/"
        + "tet:route-object-exclude-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the TE node connectivity matrices
       information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-include-objects/"
        + "tet:route-object-include-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the TE node connectivity matrices
       information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:path-properties/tet:path-route-objects/"
        + "tet:path-route-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the TE node connectivity matrices information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:from/tet:label-restrictions/"
        + "tet:label-restriction/"
        + "tet:label-start/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range start for the source LTP
       of the connectivity matrix entry information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }
  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:from/tet:label-restrictions/"
        + "tet:label-restriction/"
        + "tet:label-end/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range end for the source LTP
       of the connectivity matrix entry information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:from/tet:label-restrictions/"
        + "tet:label-restriction/"
        + "tet:label-step/tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range step for the source LTP
       of the connectivity matrix entry information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:to/tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range start for the destination LTP
       of the connectivity matrix entry information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:to/tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range end for the destination LTP
       of the connectivity matrix entry information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:to/tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range step for the destination LTP
       of the connectivity matrix entry information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:underlay/tet:primary-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the connectivity matrix entry information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the connectivity matrix entry information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-exclude-objects/"
        + "tet:route-object-exclude-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the connectivity matrix entry
       information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-include-objects/"
        + "tet:route-object-include-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the connectivity matrix entry
       information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:path-properties/tet:path-route-objects/"
        + "tet:path-route-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the connectivity matrix entry information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
      + "tet:tunnel-termination-point/"
      + "tet:local-link-connectivities/"
      + "tet:label-restrictions/tet:label-restriction/"
      + "tet:label-start/"
      + "tet:te-label/tet:technology" {
    when "../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range start for the TTP
       Local Link Connectivities.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/"
        + "tet:te-label/tet:technology"{
    when "../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range end for the TTP
       Local Link Connectivities.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/"
        + "tet:technology"{
    when "../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range step for the TTP
       Local Link Connectivities.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:underlay/tet:primary-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the TTP Local Link Connectivities.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the TTP Local Link Connectivities.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-exclude-objects/"
        + "tet:route-object-exclude-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the TTP Local Link
       Connectivities.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-include-objects/"
        + "tet:route-object-include-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the TTP Local Link
       Connectivities.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:path-properties/tet:path-route-objects/"
        + "tet:path-route-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the TTP Local Link Connectivities.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/tet:te-label/tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range start for the TTP
       Local Link Connectivity entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/tet:te-label/tet:technology" {
    when "../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range end for the TTP
       Local Link Connectivity entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/tet:technology" {
    when "../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range step for the TTP
       Local Link Connectivity entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:underlay/tet:primary-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the TTP Local Link Connectivity entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the TTP Local Link Connectivity entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-exclude-objects/"
        + "tet:route-object-exclude-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the TTP Local Link
       Connectivity entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-include-objects/"
        + "tet:route-object-include-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the TTP Local Link
       Connectivity entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:path-properties/tet:path-route-objects/"
        + "tet:path-route-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the TTP Local Link Connectivity entry.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }
  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:underlay/tet:primary-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the TE link.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../"
       + "nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the TE link.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/tet:te-label/tet:technology" {
    when "../../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range start for the TE link.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/tet:te-label/tet:technology" {
    when "../../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range end for the TE link.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/tet:technology" {
    when "../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range step for the TE link.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-step;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:information-source-entry/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/tet:te-label/tet:technology" {
    when "../../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range start for the TE link
       information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:information-source-entry/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/tet:te-label/tet:technology" {
    when "../../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range end for the TE link
       information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:information-source-entry/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/tet:technology" {
    when "../../../../../../nw:network-types/tet:te-topology/"
       + "flexgt:flexi-grid-topology" {
      description
        "Augmentation parameters apply only for networks with
         flexi-grid topology type.";
    }
    description
      "Augment TE label range step for the TE link
       information source.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-step;
    }
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:underlay/tet:primary-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    description
      "Augment TE label hop for the underlay primary path
       of the TE link template.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    description
      "Augment TE label hop for the underlay backup path
       of the TE link template.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-hop;
    }
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/tet:te-label/tet:technology" {
    description
      "Augment TE label range start for the TE link template.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/tet:te-label/tet:technology" {
    description
      "Augment TE label range end for the TE link template.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-start-end;
    }
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/tet:technology" {
    description
      "Augment TE label range step for the TE link template.";
    case flexi-grid {
      uses l0-types:flexi-grid-label-step;
    }
  }
}
]]></sourcecode>
      </figure>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The YANG module specified in this document defines a schema for data
that is designed to be accessed via network management protocols such
as NETCONF <xref target="RFC6241"/> or RESTCONF <xref target="RFC8040"/>.  The lowest NETCONF layer
is the secure transport layer, and the mandatory-to-implement secure
transport is Secure Shell (SSH) <xref target="RFC6242"/>.  The lowest RESTCONF layer
is HTTPS, and the mandatory-to-implement secure transport is
Transport Layer Security (TLS) <xref target="RFC8446"/>.</t>
      <t>The NETCONF access control model <xref target="RFC8341"/> provides the means to
restrict access for particular NETCONF users to a preconfigured
subset of all available NETCONF protocol operations and content.  The
NETCONF Protocol SSH <xref target="RFC6242"/> describes a method for invoking and
running NETCONF within a SSH session as an SSH subsystem.  The
Network Configuration Access Control Model (NACM) <xref target="RFC8341"/> provides
the means to restrict access for particular NETCONF or RESTCONF users
to a preconfigured subset of all available NETCONF or RESTCONF
protocol operations and content.</t>
      <t>A number of configuration data nodes defined in this document are
writable/deletable (i.e., "config true").  These data nodes may be
considered sensitive or vulnerable in some network environments.</t>
      <t>There are a number of data nodes defined in this YANG module that are
writable/creatable/deletable (i.e., config true, which is the
default).  These data nodes may be considered sensitive or vulnerable
in some network environments.  Write operations (e.g., edit-config)
to these data nodes without proper protection can have a negative
effect on network operations.  These are the subtrees and data nodes
and their sensitivity/vulnerability:</t>
      <artwork type="ascii-art"><![CDATA[
      /nw:networks/nw:network/nw:network-types/tet:te-topology
      /nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes
      /nw:networks/nw:network/nw:node/nt:termination-point/tet:te
      /nw:networks/nw:network/nw:node/tet:te/tet:te-node-attributes
      /te-connectivity-matrices/te-connectivity-matrix/tet:path-
      constraints/tet:te-bandwidth/tet:technology
      /nw:networks/nw:network/nw:node/tet:te
      /tet:tunnel-termination-point/tet:local-link-connectivities
      /tet:label-restrictions/tet:label-restriction
]]></artwork>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>IANA is requested to assigned a new URI from the "IETF XML Registry"
<xref target="RFC3688"/> as follows:</t>
      <artwork type="ascii-art"><![CDATA[
         URI: urn:ietf:params:xml:ns:yang:ietf-flexi-grid-topology
         Registrant Contact: The IESG
         XML: N/A; the requested URI is an XML namespace.
]]></artwork>
      <t>IANA is requested to assign a new YANG module name in the "YANG
Module Names" registry <xref target="RFC6020"/> as follows:</t>
      <artwork type="ascii-art"><![CDATA[
         Name: ietf-flexi-grid-topology
         Namespace: urn:ietf:params:xml:ns:yang:ietf-flexi-grid-topology
         Prefix: flexgt
         Reference: RFC XXXX
]]></artwork>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="ITU-T_G.694.1">
          <front>
            <title>Spectral grids for WDM applications: DWDM frequency grid</title>
            <author>
              <organization>ITU-T Recommendation G.694.1</organization>
            </author>
            <date year="2020" month="October"/>
          </front>
          <seriesInfo name="ITU-T G.694.1" value=""/>
        </reference>
        <reference anchor="ITU-T_G.872">
          <front>
            <title>Architecture of optical transport networks</title>
            <author>
              <organization>International Telecommunication Union</organization>
            </author>
            <date year="2021" month="January"/>
          </front>
          <seriesInfo name="ITU-T G.872 Amendment 1" value=""/>
        </reference>
        <reference anchor="RFC7699">
          <front>
            <title>Generalized Labels for the Flexi-Grid in Lambda Switch Capable (LSC) Label Switching Routers</title>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <author fullname="D. King" initials="D." surname="King"/>
            <author fullname="Y. Li" initials="Y." surname="Li"/>
            <author fullname="F. Zhang" initials="F." surname="Zhang"/>
            <date month="November" year="2015"/>
            <abstract>
              <t>GMPLS supports the description of optical switching by identifying entries in fixed lists of switchable wavelengths (called grids) through the encoding of lambda labels. Work within the ITU-T Study Group 15 has defined a finer-granularity grid, and the facility to flexibly select different widths of spectrum from the grid. This document defines a new GMPLS lambda label format to support this flexi-grid.</t>
              <t>This document updates RFCs 3471 and 6205 by introducing a new label format.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7699"/>
          <seriesInfo name="DOI" value="10.17487/RFC7699"/>
        </reference>
        <reference anchor="RFC8363">
          <front>
            <title>GMPLS OSPF-TE Extensions in Support of Flexi-Grid Dense Wavelength Division Multiplexing (DWDM) Networks</title>
            <author fullname="X. Zhang" initials="X." surname="Zhang"/>
            <author fullname="H. Zheng" initials="H." surname="Zheng"/>
            <author fullname="R. Casellas" initials="R." surname="Casellas"/>
            <author fullname="O. Gonzalez de Dios" initials="O." surname="Gonzalez de Dios"/>
            <author fullname="D. Ceccarelli" initials="D." surname="Ceccarelli"/>
            <date month="May" year="2018"/>
            <abstract>
              <t>The International Telecommunication Union Telecommunication standardization sector (ITU-T) has extended its Recommendations G.694.1 and G.872 to include a new Dense Wavelength Division Multiplexing (DWDM) grid by defining channel spacings, a set of nominal central frequencies, and the concept of the "frequency slot". Corresponding techniques for data-plane connections are known as "flexi-grid".</t>
              <t>Based on the characteristics of flexi-grid defined in G.694.1 and in RFCs 7698 and 7699, this document describes the Open Shortest Path First - Traffic Engineering (OSPF-TE) extensions in support of GMPLS control of networks that include devices that use the new flexible optical grid.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8363"/>
          <seriesInfo name="DOI" value="10.17487/RFC8363"/>
        </reference>
        <reference anchor="RFC7950">
          <front>
            <title>The YANG 1.1 Data Modeling Language</title>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <date month="August" year="2016"/>
            <abstract>
              <t>YANG is a data modeling language used to model configuration data, state data, Remote Procedure Calls, and notifications for network management protocols. This document describes the syntax and semantics of version 1.1 of the YANG language. YANG version 1.1 is a maintenance release of the YANG language, addressing ambiguities and defects in the original specification. There are a small number of backward incompatibilities from YANG version 1. This document also specifies the YANG mappings to the Network Configuration Protocol (NETCONF).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7950"/>
          <seriesInfo name="DOI" value="10.17487/RFC7950"/>
        </reference>
        <reference anchor="RFC8795">
          <front>
            <title>YANG Data Model for Traffic Engineering (TE) Topologies</title>
            <author fullname="X. Liu" initials="X." surname="Liu"/>
            <author fullname="I. Bryskin" initials="I." surname="Bryskin"/>
            <author fullname="V. Beeram" initials="V." surname="Beeram"/>
            <author fullname="T. Saad" initials="T." surname="Saad"/>
            <author fullname="H. Shah" initials="H." surname="Shah"/>
            <author fullname="O. Gonzalez de Dios" initials="O." surname="Gonzalez de Dios"/>
            <date month="August" year="2020"/>
            <abstract>
              <t>This document defines a YANG data model for representing, retrieving, and manipulating Traffic Engineering (TE) Topologies. The model serves as a base model that other technology-specific TE topology models can augment.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8795"/>
          <seriesInfo name="DOI" value="10.17487/RFC8795"/>
        </reference>
        <reference anchor="I-D.ietf-ccamp-rfc9093-bis">
          <front>
            <title>Common YANG Data Types for Layer 0 Optical Networks</title>
            <author fullname="Sergio Belotti" initials="S." surname="Belotti">
              <organization>Nokia</organization>
            </author>
            <author fullname="Italo Busi" initials="I." surname="Busi">
              <organization>Huawei</organization>
            </author>
            <author fullname="Dieter Beller" initials="D." surname="Beller">
              <organization>Nokia</organization>
            </author>
            <author fullname="Esther Le Rouzic" initials="E." surname="Le Rouzic">
              <organization>Orange</organization>
            </author>
            <author fullname="Aihua Guo" initials="A." surname="Guo">
              <organization>Futurewei Technologies</organization>
            </author>
            <date day="3" month="November" year="2025"/>
            <abstract>
              <t>   This document defines a collection of common data types, identities,
   and groupings in the YANG data modeling language.  These common types
   and groupings, derived from the built-in YANG data types, identities,
   and groupings are intended to be imported by modules that model
   Optical Layer 0 configuration and state capabilities, such as
   Wavelength Switched Optical Networks (WSONs) and flexi-grid Dense
   Wavelength Division Multiplexing (DWDM) networks.

   This document obsoletes RFC 9093 by replacing the YANG module it
   contained with a new revision that includes additional YANG data
   types, identities and groupings.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-rfc9093-bis-19"/>
        </reference>
        <reference anchor="RFC8342">
          <front>
            <title>Network Management Datastore Architecture (NMDA)</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="J. Schoenwaelder" initials="J." surname="Schoenwaelder"/>
            <author fullname="P. Shafer" initials="P." surname="Shafer"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <author fullname="R. Wilton" initials="R." surname="Wilton"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>Datastores are a fundamental concept binding the data models written in the YANG data modeling language to network management protocols such as the Network Configuration Protocol (NETCONF) and RESTCONF. This document defines an architectural framework for datastores based on the experience gained with the initial simpler model, addressing requirements that were not well supported in the initial model. This document updates RFC 7950.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8342"/>
          <seriesInfo name="DOI" value="10.17487/RFC8342"/>
        </reference>
        <reference anchor="RFC6241">
          <front>
            <title>Network Configuration Protocol (NETCONF)</title>
            <author fullname="R. Enns" initials="R." role="editor" surname="Enns"/>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <author fullname="J. Schoenwaelder" initials="J." role="editor" surname="Schoenwaelder"/>
            <author fullname="A. Bierman" initials="A." role="editor" surname="Bierman"/>
            <date month="June" year="2011"/>
            <abstract>
              <t>The Network Configuration Protocol (NETCONF) defined in this document provides mechanisms to install, manipulate, and delete the configuration of network devices. It uses an Extensible Markup Language (XML)-based data encoding for the configuration data as well as the protocol messages. The NETCONF protocol operations are realized as remote procedure calls (RPCs). This document obsoletes RFC 4741. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6241"/>
          <seriesInfo name="DOI" value="10.17487/RFC6241"/>
        </reference>
        <reference anchor="RFC8345">
          <front>
            <title>A YANG Data Model for Network Topologies</title>
            <author fullname="A. Clemm" initials="A." surname="Clemm"/>
            <author fullname="J. Medved" initials="J." surname="Medved"/>
            <author fullname="R. Varga" initials="R." surname="Varga"/>
            <author fullname="N. Bahadur" initials="N." surname="Bahadur"/>
            <author fullname="H. Ananthakrishnan" initials="H." surname="Ananthakrishnan"/>
            <author fullname="X. Liu" initials="X." surname="Liu"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document defines an abstract (generic, or base) YANG data model for network/service topologies and inventories. The data model serves as a base model that is augmented with technology-specific details in other, more specific topology and inventory data models.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8345"/>
          <seriesInfo name="DOI" value="10.17487/RFC8345"/>
        </reference>
        <reference anchor="RFC8040">
          <front>
            <title>RESTCONF Protocol</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <date month="January" year="2017"/>
            <abstract>
              <t>This document describes an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8040"/>
          <seriesInfo name="DOI" value="10.17487/RFC8040"/>
        </reference>
        <reference anchor="RFC6242">
          <front>
            <title>Using the NETCONF Protocol over Secure Shell (SSH)</title>
            <author fullname="M. Wasserman" initials="M." surname="Wasserman"/>
            <date month="June" year="2011"/>
            <abstract>
              <t>This document describes a method for invoking and running the Network Configuration Protocol (NETCONF) within a Secure Shell (SSH) session as an SSH subsystem. This document obsoletes RFC 4742. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6242"/>
          <seriesInfo name="DOI" value="10.17487/RFC6242"/>
        </reference>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="RFC8341">
          <front>
            <title>Network Configuration Access Control Model</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>The standardization of network configuration interfaces for use with the Network Configuration Protocol (NETCONF) or the RESTCONF protocol requires a structured and secure operating environment that promotes human usability and multi-vendor interoperability. There is a need for standard mechanisms to restrict NETCONF or RESTCONF protocol access for particular users to a preconfigured subset of all available NETCONF or RESTCONF protocol operations and content. This document defines such an access control model.</t>
              <t>This document obsoletes RFC 6536.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="91"/>
          <seriesInfo name="RFC" value="8341"/>
          <seriesInfo name="DOI" value="10.17487/RFC8341"/>
        </reference>
        <reference anchor="RFC3688">
          <front>
            <title>The IETF XML Registry</title>
            <author fullname="M. Mealling" initials="M." surname="Mealling"/>
            <date month="January" year="2004"/>
            <abstract>
              <t>This document describes an IANA maintained registry for IETF standards which use Extensible Markup Language (XML) related items such as Namespaces, Document Type Declarations (DTDs), Schemas, and Resource Description Framework (RDF) Schemas.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="81"/>
          <seriesInfo name="RFC" value="3688"/>
          <seriesInfo name="DOI" value="10.17487/RFC3688"/>
        </reference>
        <reference anchor="RFC6020">
          <front>
            <title>YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)</title>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <date month="October" year="2010"/>
            <abstract>
              <t>YANG is a data modeling language used to model configuration and state data manipulated by the Network Configuration Protocol (NETCONF), NETCONF remote procedure calls, and NETCONF notifications. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6020"/>
          <seriesInfo name="DOI" value="10.17487/RFC6020"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC7698">
          <front>
            <title>Framework and Requirements for GMPLS-Based Control of Flexi-Grid Dense Wavelength Division Multiplexing (DWDM) Networks</title>
            <author fullname="O. Gonzalez de Dios" initials="O." role="editor" surname="Gonzalez de Dios"/>
            <author fullname="R. Casellas" initials="R." role="editor" surname="Casellas"/>
            <author fullname="F. Zhang" initials="F." surname="Zhang"/>
            <author fullname="X. Fu" initials="X." surname="Fu"/>
            <author fullname="D. Ceccarelli" initials="D." surname="Ceccarelli"/>
            <author fullname="I. Hussain" initials="I." surname="Hussain"/>
            <date month="November" year="2015"/>
            <abstract>
              <t>To allow efficient allocation of optical spectral bandwidth for systems that have high bit-rates, the International Telecommunication Union Telecommunication Standardization Sector (ITU-T) has extended its Recommendations G.694.1 and G.872 to include a new Dense Wavelength Division Multiplexing (DWDM) grid by defining a set of nominal central frequencies, channel spacings, and the concept of the "frequency slot". In such an environment, a data-plane connection is switched based on allocated, variable-sized frequency ranges within the optical spectrum, creating what is known as a flexible grid (flexi-grid).</t>
              <t>Given the specific characteristics of flexi-grid optical networks and their associated technology, this document defines a framework and the associated control-plane requirements for the application of the existing GMPLS architecture and control-plane protocols to the control of flexi-grid DWDM networks. The actual extensions to the GMPLS protocols will be defined in companion documents.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7698"/>
          <seriesInfo name="DOI" value="10.17487/RFC7698"/>
        </reference>
        <reference anchor="I-D.ietf-ccamp-flexigrid-tunnel-yang">
          <front>
            <title>A YANG Data Model for Flexi-Grid Tunnels</title>
            <author fullname="Universidad Autonoma de Madrid" initials="U. A." surname="de Madrid">
              <organization>Naudit HPCN</organization>
            </author>
            <author fullname="Daniel Perdices Burrero" initials="D. P." surname="Burrero">
              <organization>Universidad Autonoma de Madrid</organization>
            </author>
            <author fullname="Daniel King" initials="D." surname="King">
              <organization>Old Dog Consulting</organization>
            </author>
            <author fullname="Victor Lopez" initials="V." surname="Lopez">
              <organization>Nokia</organization>
            </author>
            <author fullname="Italo Busi" initials="I." surname="Busi">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Sergio Belotti" initials="S." surname="Belotti">
              <organization>Nokia</organization>
            </author>
            <author fullname="Gabriele Galimberti" initials="G." surname="Galimberti">
              <organization>Cisco</organization>
            </author>
            <date day="10" month="July" year="2023"/>
            <abstract>
              <t>   This document defines a YANG model for managing flexi-grid optical
   tunnels (media-channels), complementing the information provided by
   the flexi-grid topology model.

   The YANG data model defined in this document conforms to the Network
   Management Datastore Architecture (NMDA).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-flexigrid-tunnel-yang-03"/>
        </reference>
        <reference anchor="I-D.ietf-ccamp-optical-impairment-topology-yang">
          <front>
            <title>A YANG Data Model for Optical Impairment-aware Topology</title>
            <author fullname="Dieter Beller" initials="D." surname="Beller">
              <organization>Nokia</organization>
            </author>
            <author fullname="Esther Le Rouzic" initials="E." surname="Le Rouzic">
              <organization>Orange</organization>
            </author>
            <author fullname="Sergio Belotti" initials="S." surname="Belotti">
              <organization>Nokia</organization>
            </author>
            <author fullname="Gabriele Galimberti" initials="G." surname="Galimberti">
              <organization>Nokia</organization>
            </author>
            <author fullname="Italo Busi" initials="I." surname="Busi">
              <organization>Huawei Technologies</organization>
            </author>
            <date day="10" month="October" year="2025"/>
            <abstract>
              <t>   In order to provision an optical connection through optical networks,
   a combination of path continuity, resource availability, and
   impairment constraints must be met to determine viable and optimal
   paths through the network.  The determination of appropriate paths is
   known as Impairment-Aware Routing and Wavelength Assignment (IA-RWA)
   for a Wavelength Switched Optical Network (WSON), while it is known
   as Impairment-Aware Routing and Spectrum Assignment (IA-RSA) for a
   Spectrum Switched Optical Network (SSON).

   This document provides a YANG data model for the impairment-aware TE
   topology in optical networks.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-optical-impairment-topology-yang-20"/>
        </reference>
        <reference anchor="RFC8340">
          <front>
            <title>YANG Tree Diagrams</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="L. Berger" initials="L." role="editor" surname="Berger"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document captures the current syntax used in YANG module tree diagrams. The purpose of this document is to provide a single location for this definition. This syntax may be updated from time to time based on the evolution of the YANG language.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="215"/>
          <seriesInfo name="RFC" value="8340"/>
          <seriesInfo name="DOI" value="10.17487/RFC8340"/>
        </reference>
      </references>
    </references>
    <?line 3121?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The work presented in this document has been partially funded by the
European Commission under the project H2020 METRO-HAUL (Metro High
bandwidth, 5G Application-aware optical network, with edge storage,
compUte and low Latency), Grant Agreement number: 761727.</t>
      <t>This work is also partially funded by the Spanish State Research
Agency under the project AgileMon (AEI PID2019-104451RB-C21) and by
the Spanish Ministry of Science, Innovation and Universities under
the program for the training of university lecturers (Grant number:
FPU19/05678).</t>
      <t>Thanks to Adrian Farrel for reviewing this document and assisting
with conversion to XML.</t>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact initials="O." surname="Gonzalez de Dios" fullname="Oscar Gonzalez de Dios">
        <organization>Telefonica</organization>
        <address>
          <email>oscar.gonzalezdedios@telefonica.com</email>
        </address>
      </contact>
      <contact initials="G." surname="Galimberti" fullname="Gabriele Galimberti">
        <organization/>
        <address>
          <email>ggalimbe56@gmail.com</email>
        </address>
      </contact>
      <contact initials="S." surname="Belotti" fullname="Sergio Belotti">
        <organization>Nokia</organization>
        <address>
          <email>sergio.belotti@nokia.com</email>
        </address>
      </contact>
      <contact initials="Z." surname="Ali" fullname="Zafar Ali">
        <organization>Cisco</organization>
        <address>
          <email>zali@cisco.com</email>
        </address>
      </contact>
      <contact initials="D. M." surname="Vallinoto" fullname="Daniel Michaud Vallinoto">
        <organization>Universidad Autonoma de Madrid</organization>
        <address>
          <email>daniel.michaud@estudiante.uam.es</email>
        </address>
      </contact>
      <contact initials="S." surname="Hill" fullname="Steven Hill">
        <organization>MTN Group Technology</organization>
        <address>
          <email>Steven.Hill@mtn.com</email>
        </address>
      </contact>
      <contact initials="V." surname="Lopez" fullname="Victor Lopez">
        <organization>Nokia</organization>
        <address>
          <email>victor.lopez@nokia.com</email>
        </address>
      </contact>
      <contact initials="I." surname="Busi" fullname="Italo Busi">
        <organization>Huawei Technologies</organization>
        <address>
          <email>italo.busi@huawei.com</email>
        </address>
      </contact>
      <contact initials="A." surname="Guo" fullname="Aihua Guo">
        <organization>Futurewei</organization>
        <address>
          <email>aihuaguo.ietf@gmail.com</email>
        </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
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
gJKKBplg0+HYJF+G4ry1CMa4TMsFNj13jh2kZ021n5HiAhMGHlEuGwQWjoAd
4EFaAXoTHpNzGmSCE/CUkA5hbADX9kWTYhSjWqLNhsAqoI8xPcRFBbjdynhg
xsK3Ar0DgR4Og8EiJ/e5CiWgjO/fJRt8hEqXwwkQgviP6ASC8mOxLJVjAwZR
Iq0RZL/UBUZBjEFLO0cH1AeUD929trGqi/vey8cvn7g9nnz/DkLbCc2EAqAJ
jcAcRF/1BQACgsWigIawiDo9loJUnExoO9WygMW9sHXhQqCbjpyQWsJgKO8U
plMXYxPwraFfCrWluKN8h+sIoaYZThYF2WbtDakGCs4MnEE0AvPJYo+p2Ajh
TE4uHUJuOhgSqsoVyKQAoBBgyiQAYeK/VYRWLIXlsGJFLMR3OBpTHuNMXHpB
IdWZERAnKMZiNjx0pkdSNubygq7uXQyKcbNqz40JBggVwZm7GlVTco4xhZEV
DyxEJRD4WDlrWzs53ttZ1+h88nRbDP4I4mgMgUUm98571gdBAu2Sc0Y0lDyq
dpuf2ISgwFXyorh1NLdqcv0oDwyiLQrWmGDJd4nsJUbdpSRmGvtDFkN67bjE
CzjQxb8gHYSlEP6lDA//LCSYf0MQXIGN59tPt+ZgA7TAB5msXolxBEspok5+
wwHTQrJCYgosOh0zuE0QS31Y5CscFQKRKooZLqPpALwbml0CeArQGfqQL9Dx
UPjxmKn4kIdc4e0LTPFcS04JUzqzZVQkHKpjMhn1okBHDXBNvhwfWXVKYvtN
4kkx+4icxnD3MxNdRVH0BIYnJ+CYE7CwCqA3xDIM/WyhLukOIQFBz1Lwr+IY
Vh4xFOIY6DRVwkESlf2pexCdkshDP+BDYgRph8yIYpARhrRcCdI3QyPppGR4
SyCuhXJ2kKS7ajR0sSKIgBgTR1+ULuoS17xR2J2OCqU4AZL7pgQn10zfSp6z
9PlGhJVCIqdvfHO+uean/O2SW7/AyMFjV8YhQV5MIsD4ZFyWt/77v4DlP+Dz
P/nIwo8PUt1CdC7CZe7vkO2DXfJ3+JCCbRJemBMTnXWuWZ6zKb+8c9rUuRi2
sXPK0mrnlJX6lUcWepKdv3bIIxMXcpX811aOfFRvDdYUxFrfwdGCLPZFCR7M
A4vspwEm3mjFAQXFCjlp3ArJqSAHsOaDUMbsshlXSaCa6kgkJRqX5hQ51VF0
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
fRbXsQLUoOQ5gGA1fv80nkZW36upbyOfdGUO6GIdYrJcXx3No8loPk1Gl2ky
atZkdC1NRlfVZHRfNLlsj231fr/0vhi/bbW+hDgtDxwbdXZX1NlrFIPb0y5W
3l1DzZw1OGkbku86JC9AtfM2nVgM3BEGQKKgi1lpuNBVJQ23mlo5Tc0MvzZw
3k7glMpR/4zG4uUXUrhoRPqSNbMVNrOVqCY29RSl6xwxeEl90bXwXPkd81Hl
Oj2FKBf1572XCwt9K5UatLDxlSQRVZ2GembTTcbU4+GgwWBLAvT6g9/I9Oey
boLZ6Y7azdytIsQzpAGVsRT84IjGExcf55QX4A9XnQOWg4EvbdCJoZ1hNL4p
ZtdwkytgbhS7STZmsdbX+m9l19hRDdeNy99qgG98Chto6DCq7TAyOkRiYOSr
Mq6EWZL1PBrHHNhWg/1M/kv99T/lDlWwNDJIanicZkxIRDxds15Sk+6rDz6J
WDJ9KK+uVT3r1S6zuK9tW5nACllBj3qfsrE1groO1gh+XCMw3wIiO9JggHnx
UBamRwx7zu7nNjXCZwq5x1NYggBfLvuMRzUB2eo54an2spm8XWmd22BhbE1p
grVBa4PWBkm9Dcrj0vPaYLm1tcHiirXBapf7bYMi3xvH0RjfU6m6imumPTT1
M9vUGEnZLuqrZdcykmgRRhJd1UiixRhJdA0jieY1kugGRhLNZSTVVnMYySXc
17ZdKSNZzjGGmfXAuinc8zLY0qVYrR5aGV4HibbWuLJHF63HWKgMH7C/WBgK
rbdYqp4adywaMvJq5fYWknG7YrUr1pUzFWNbw1qKtRRrKaalzKi7ThOR9VW7
95E3tbZpbfPHsE27J1ILHmubM1o9ZNus7JU0JJaljZNL9koaTGaRxmP3Suxe
yeo+wtvUcwEHpEuYXVw9bhWkc+Nj0j+wbK5Vkiw9GDN/STIX49VKknm3JZck
F6GO1TwybYOaDWp3bAurcnDamoI1hds3BXt82lqitcSHZon3pWBoLdFa4u1b
oj1KbU2FWFNZkWOsiz0eucIFs3t2rPohS9LWJm9FXyt6xPoeIn8lD1o/XDla
/3Er2roHh65t2m7T9hU1mJU8em3txdrL6tiLPYBtLdRaqLVQu6uSf6yFWgu1
h7FNwFgTsiaU3u3vciyxGLqstyWsiLjux6slVkRY9i0SC1eJrsjUhMW5znDf
Qjppn+prioX2qb67Mo65DnVb27C2MdXlR7GNUuFjunPd2dIfvjRprdFa449v
jfelDGmt0Vrj3VijLTnakmPR15Yc7/T3Yh9kbfJ25fpQipi3jVZb7bwr3dmy
qE1vbXq7KCuqlkwbEmL7pl1rRNaIqkZkC63WbK3ZWrM1e9uKrDVbs68120WZ
rS3d2tJt0ff+lm4BW4DvZrtiEv+V917fgwdabQyxMWTxWLfFCQv1ma3uNdR/
lH2zu5n9auxu3ZXmH84e1CUSnvmM2qpZ2HVffXOXMliNl//cLQp+7Nf2yKmp
f0bjgOZuCl2XvmRXK/pjU7gfJIVbJvDt0sXifmarHwf3q5ZlXSWXXzFR3N2i
ZsUE8cOscP4NH+drhzzq84H0WgM3jcaRm8aMEQA+it8N6Yj9tcVZ2neNKWA7
nHkb27a+O84j0h0y8sfOyRuyG/mMQNJLDvL2RLd3xKhkQsOBM4r8LGCkiTT5
ClPChu45ixPQAdlqb/0ZriFHKDpGWlkcdrA/hK2YjpLO51HQCZMO9uo00W0h
jTFIjH8mLbw/SOESXOOjcRSnkh8FPsFD0Tq8EJ0Jge8sBn+pUdd6f7BLXjx5
+qxDdqQQ9mhKyTFIIhCiOFH0upIJzhJB6XvDuGUhGAyky2YAjKZhbID8zMF/
fQmD1w3djWm/zz2yHw54yFgMkNdgXevur1/KEuQtLH7sYiKSVHgK1OVZjP0B
nyapHCFp8ph0cyLf4b/Nn8lJlLKOgDSS2Pd5Cq0veBDAGOBuAHtIFq6kQ5JC
qzAb9YASTRI+CJkvx08jcQ8pRMAU8UEQqSvm5Hl0NHbjvvfy8csnbo8npMe8
CHBNaIgd2j9vohiieEBDtbcvabYO97sHZHd35/iUfASFgjDJmzjKxoJ7LwpT
6snNztbHN+Qj63XIX4ZpOk46m5s+TD6NIftjcRu5aAP5zYvBpmBm8z8cOQJ0
O+JJCv1GlAdp1BG3X+kOupmUSYf8Da4xst8mR9GYfSFg+r8z4Dqm5XRAE/sX
Nm8H2Paf57Lhq4yO2iypEt6DmYOaTlnsT72/Jyfni0btsWrUQOotjUYcBPuP
ISuwVyb0BW8NZbtXw4xeMN4GhTQw9Z+8iY7fRpW8CmjoUXC+cZt67exTlcwf
UQZ6O2KsnsgEbweMtdPPrwZ4TbAivZTPEi/m4xwRre4Q0CPArRyqD7YRIpJy
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

-->

</rfc>
