<?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.29 (Ruby 3.4.4) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-deleg-03" category="std" consensus="true" submissionType="IETF" updates="1034, 1035, 6672, 6840" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.30.1 -->
  <front>
    <title abbrev="DELEG">Extensible Delegation for DNS</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-deleg-03"/>
    <author initials="T." surname="April" fullname="Tim April">
      <organization>Google, LLC</organization>
      <address>
        <email>ietf@tapril.net</email>
      </address>
    </author>
    <author initials="P." surname="Špaček" fullname="Petr Špaček">
      <organization>ISC</organization>
      <address>
        <email>pspacek@isc.org</email>
      </address>
    </author>
    <author initials="R." surname="Weber" fullname="Ralf Weber">
      <organization>Akamai Technologies</organization>
      <address>
        <email>rweber@akamai.com</email>
      </address>
    </author>
    <author initials="D." surname="Lawrence" fullname="David C Lawrence">
      <organization>Salesforce</organization>
      <address>
        <email>tale@dd.org</email>
      </address>
    </author>
    <date year="2025" month="September" day="16"/>
    <area>Internet</area>
    <workgroup>deleg</workgroup>
    <keyword>Internet-Draft</keyword>
    <keyword>DNS</keyword>
    <keyword>delegation</keyword>
    <abstract>
      <?line 51?>
<t>This document proposes a new extensible method for the delegation of authority for a domain in the Domain Name System (DNS) using DELEG and DELEGI records.</t>
      <t>A delegation in the DNS enables efficient and distributed management of the DNS namespace.
The traditional DNS delegation is based on NS records which contain only hostnames of servers and no other parameters.
The new delegation records are extensible, can be secured with DNSSEC, and eliminate the problem of having two sources of truth for delegation information.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://github.com/ietf-wg-deleg/draft-ietf-deleg-base/tree/gh-pages"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-deleg/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        deleg Working Group mailing list (<eref target="mailto:dd@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/dd/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/dd/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/ietf-wg-deleg/draft-ietf-deleg-base/"/>.</t>
    </note>
  </front>
  <middle>
    <?line 58?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>In the Domain Name System, responsibility for each subdomain within the domain name hierarchy can be delegated to different servers, which makes them authoritative for their portion of the namespace.</t>
      <t>The original DNS record that does this, called an NS record, contains only the hostname of a single name server and no other parameters.
The resolver needs to resolve these names into usable addresses and infer other required parameters, such as the transport protocol and any other protocol features.
Moreover, the NS record set exists in two places--one at the delegation point, and the other, possibly different, in the child zone.
The DNS Security Extensions (DNSSEC) protect only one copy, those in the child zone.</t>
      <t>These properties of NS records limit resolvers to unencrypted UDP and TCP port 53, and this initial contact cannot be protected with DNSSEC.
Even if these two problems were somehow solved, the NS record does not offer extensibility for any other parameters.
This limitation is a barrier for the efficient introduction of new DNS technology.</t>
      <t>The proposed DELEG and DELEGI resource record (RR) types remedy this problem by providing extensible parameters to indicate server capabilities and additional information, such as other transport protocols that a resolver may use.</t>
      <t>The DELEG record creates a new delegation.
It is authoritative in the parent side of delegation and thus can be signed with DNSSEC.
This makes it possible to validate all delegation parameters, including those of future extensions.</t>
      <t>The DELEGI record is an auxiliary record which does not create a delegation by itself but provides an optional layer of indirection.
It can be used to share the same delegation information across any number of zones.
DELEGI is treated like regular authoritative record.</t>
      <t>The DELEG record can be used instead of or alongside a NS record to create a delegation.
The combination of DELEG+NS is fully compatible with old resolvers, facilitating the incremental rollout of this new method of delegation.</t>
      <t>Future documents can use the extensibility mechanism for more advanced features like connecting to a name server with an encrypted transport.</t>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>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 <br/>
BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they appear in
all capitals, as shown here.</t>
        <t>Terminology regarding the Domain Name System comes from <xref target="BCP219"/>, with addition terms defined here:</t>
        <ul spacing="normal">
          <li>
            <t>legacy delegation: A delegation that is done with an NS resouce record set (RR set)</t>
          </li>
          <li>
            <t>legacy response: A response that does not take the special semantics of the DELEG record into account</t>
          </li>
          <li>
            <t>legacy referral response: A response with an NS RR set in the AUTHORITY section, plus all relevant DNSSEC records</t>
          </li>
          <li>
            <t>legacy resolver: A resolver which does not follow the DELEG protocol</t>
          </li>
          <li>
            <t>DELEG-aware: An authoritative server or resolver that follows the protocol defined in this document</t>
          </li>
          <li>
            <t>DELEG-unaware: An authoritative server or resolver that does not follow the protocol defined in this document</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="deleg-and-delegi-resource-record-types">
      <name>DELEG and DELEGI Resource Record Types</name>
      <t>The DELEG record, RR type TBD, and the DELEGI record, RR type TBD2 (different from that of DELEG), have the same wire and presentation formats,
but their semantics are different as described in a following section.</t>
      <t>TODO: Decide about class: IN or class independent? SVCB is IN-specific.</t>
      <t>The record format is based on the extensible key=value list that was originally defined as "SvcParams" for the SVCB record type <xref target="RFC9460"/>.
Unlike SVCB, the DELEG protocol does not have "SvcPriority" and "TargetName" fields.
The keys in the DELEG protocol are different than those used in SVCB.
To avoid confusion between the two protocols, the list of key=value parameters used by the DELEG protocol are called DelegInfos and will be tracked in their own IANA registy for Delegation Information.</t>
      <t>The following rules are adapted from SVCB, but with changed names:</t>
      <ul spacing="normal">
        <li>
          <t>The whole RDATA consists of a single list called "DelegInfos".</t>
        </li>
        <li>
          <t>DelegInfos consists of individual DelegInfo key=value pairs.</t>
        </li>
        <li>
          <t>Each DelegInfo pair has DelegInfoKey and a possibly optional DelegInfoValue.</t>
        </li>
        <li>
          <t>Each DelegInfo has a specified presentation format and wire encoding.</t>
        </li>
        <li>
          <t>Each DelegInfoKey has a presentation name and a registered key number.</t>
        </li>
        <li>
          <t>Each DelegInfoValue is in a format specific to its DelegInfoKey.</t>
        </li>
      </ul>
      <t>Implementations can reuse the same code to parse SvcParams and DelegInfos and only plug in a different list of key=value pairs for SVCB/HTTPS and DELEG/DELEGI record families.</t>
      <t>The initial set of DelegInfoKeys and their formats are defined in <xref target="nameserver-info"/>.</t>
      <section anchor="presentation-format">
        <name>Presentation Format</name>
        <t>The RDATA presentation format of the record consists of a single list, DelegInfos.</t>
        <t>The DelegInfos presentation format is defined exactly the same as SvcParams in Section 2.1 of <xref target="RFC9460"/>. The following rules are adapted from SVCB, but with changed names:</t>
        <ul spacing="normal">
          <li>
            <t>DelegInfos is a whitespace-separated list with each DelegInfo consisting of a DelegInfoKey=DelegInfoValue pair, or a standalone DelegInfoKey.</t>
          </li>
          <li>
            <t>Individual element definitions are the same as <xref target="RFC9460"/>:
            </t>
            <ul spacing="normal">
              <li>
                <t>The DelegInfo syntax is the same as SvcParam, but it references DelegInfo elements instead of SvcParam elements.</t>
              </li>
              <li>
                <t>DelegInfoKey syntax is the same as SvcParamKey.</t>
              </li>
              <li>
                <t>The syntax for unknown keys in Section 2.1 of <xref target="RFC9460"/> applies.</t>
              </li>
              <li>
                <t>The DelegInfoValue syntax is the same as SvcParamValue.</t>
              </li>
              <li>
                <t>The rules from Appendix A of <xref target="RFC9460"/> apply.</t>
              </li>
            </ul>
          </li>
          <li>
            <t>All the requirements in Section 2.1 of <xref target="RFC9460"/> apply.</t>
          </li>
        </ul>
        <t>TODO: SVCB allows an empty list. I guess it is not a problem, it is small and will simply be ignored?</t>
      </section>
      <section anchor="rdata-wire-format">
        <name>RDATA Wire Format</name>
        <t>The RDATA portion of the RR types has variable length and entirely consists of a single "DelegInfos" element:</t>
        <artwork><![CDATA[
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    /                         DelegInfos                            /
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        <t>The format of the DelegInfos element is identical to the format of the SvcParams element defined in <xref target="RFC9460"/> Section 2.2,
including the requirements for strictly increasing numeric order to keys and no key duplication allowed.</t>
        <t>All the requirements in Section 2.2 of <xref target="RFC9460"/> apply.</t>
        <t>The DelegInfos element is a sequence of individual DelegInfo elements.
The wire format of an individual DelegInfo element is the same as for a SvcParam element,
but it references DelegInfo elements instead of SvcParam elements.
Note that though SVCB allows SvcParams to be absent, DELEG will always require at least one DelegInfo in DelegInfos.</t>
        <artwork><![CDATA[
                +0 (MSB)                            +1 (LSB)
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0:  |                          DelegInfoKey                         |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
2:  |                length of DelegInfoValue                       |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
4:  /                          DelegInfoValue ...                   /
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        <t>The permissible lengths depend on the DelegInfoKey value.
Some future keys may have no DelegInfoValue, which would be indicated with an explicit 0 length.</t>
      </section>
      <section anchor="overview-of-differences-between-deleg-and-delegi-semantics">
        <name>Overview of Differences between DELEG and DELEGI Semantics</name>
        <t>The following is a brief summary of semantic differences between the DELEG and DELEGI types.</t>
        <ul spacing="normal">
          <li>
            <t>DELEG creates a delegation for its owner name, similar to the NS RR type.</t>
          </li>
          <li>
            <t>DELEG and NS RR types can coexist at the same owner name.</t>
          </li>
          <li>
            <t>DELEG is authoritative in the parent zone of the delegated zone, similar to the DS RR type, and unlike the NS RR type.</t>
          </li>
          <li>
            <t>DELEG is signed by the parent zone of the delegated zone when using DNSSEC, similar to the DS RR type, and unlike the NS RR type.</t>
          </li>
          <li>
            <t>DELEG cannot be present at the apex of the delegated zone, similar to the DS RR type, and unlike the NS RR type.</t>
          </li>
          <li>
            <t>DELEG has special processing for being included in answers.</t>
          </li>
        </ul>
        <t>Conversely,</t>
        <ul spacing="normal">
          <li>
            <t>DELEGI is like any normal RR and doesn't require any special processing.</t>
          </li>
          <li>
            <t>DELEGI does not create a delegation for its owner name.</t>
          </li>
          <li>
            <t>DELEGI cannot coexist at the same owner name with DELEG or NS RR types.</t>
          </li>
          <li>
            <t>DELEGI DNSSEC signing and record placement rules are the same as for any ordinary RR type.</t>
          </li>
          <li>
            <t>DELEGI is used as the target of the DELEG protocol's "include" mechanism, as described in section <xref target="slist"/>.</t>
          </li>
        </ul>
        <t>TODO: Add some introduction comparing how resolvers see legacy delegation (set of NS and A/AAAA records) and DELEG delegation (DELEG and DELEGI records with server-ipv4 and server-ipv6 keys)</t>
      </section>
    </section>
    <section anchor="use-of-deleg-records">
      <name>Use of DELEG Records</name>
      <t>The DELEG RR set MAY contain multiple records.
A DELEG RR set MAY be present with or without NS or DS RR sets at the delegation point, though without NS records then DELEG-unaware software will not be able to resolve records in the the delegated zone.</t>
      <t>DELEG RR sets MUST NOT appear at a zone's apex.
The erroneous inclusion of DELEG RR set at zone's apex will cause DNSSEC validation failures.
Servers MAY refuse to load such an invalid zone, similar to the DS RR type.</t>
      <section anchor="resolvers">
        <name>Resolvers</name>
        <section anchor="signaling-deleg-support">
          <name>Signaling DELEG Support</name>
          <t>There will be both DELEG and NS needed for delegation for a long time.
Both legacy delegation and the DELEG protocol enable recursive resolution.
This document defines a new EDNS flag to signal that a resolver is DELEG-aware and therefore does not need NS records or glue information in a referral response.</t>
          <t>A resolver that is DELEG-aware MUST signal in queries that it supports the DELEG protocol by setting a bit in the OPT RR TTL as described in <xref target="RFC6891"/>.
This bit referred to as the "DELEG" (DE) bit, expected to be assigned by IANA at Bit 2 in the EDNS Header Flags registry, as follows:</t>
          <artwork><![CDATA[
            +0 (MSB)                +1 (LSB)
     +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
  0: |   EXTENDED-RCODE      |       VERSION         |
     +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
  2: |DO|CO|DE|              Z                       |
     +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
]]></artwork>
          <t>Setting the DE bit to one in a query indicates the resolver understands the DELEG semantics and does not need NS records to follow a referral.
The DE bit set to 0 indicates the resolver is not DELEG-aware, and therefore can only be served referrals with NS records and other data according to pre-DELEG specifications.</t>
        </section>
        <section anchor="referral">
          <name>Referral</name>
          <t>The DELEG record creates a zone cut similar to the NS record.</t>
          <t>If one or more DELEG records exist at a given delegation point, a DELEG-aware resolver MUST treat the name servers from those DELEG records as authoritative for the child zone.
In such a case, a DELEG-aware resolver MUST NOT use NS records for the zone if they are present, even if resolution using DELEG records has failed.
Such fallback from DELEG to NS would invalidate the security guarantees of the DELEG protocol.</t>
          <t>If no DELEG record exists at a given delegation point, DELEG-aware resolvers MUST use NS records as specified by <xref target="RFC1034"/>.
See <xref target="dnssec-validators"/> for more information about protection from downgrade attacks.</t>
        </section>
        <section anchor="parent-side-types-qtypedeleg">
          <name>Parent-side types, QTYPE=DELEG</name>
          <t>Record types defined as authoritative on the parent side of zone cut, currently the DS and DELEG types, retain the same special handling as described in Section 2.6 of <xref target="RFC4035"/>.</t>
          <t>DELEG-unaware resolvers can get different types of answers for QTYPE=DELEG queries based on the configuration of the server, such as whether it is DELEG-aware and whether it also is authoritative for subdomains.
For example, a DELEG-unaware authoritative name server which has loaded DELEG records via the <xref target="RFC3597"/> unknown types mechanism would answer with them only if there were no NS records at the owner name, and answer with an NS delegation otherwise.</t>
        </section>
        <section anchor="finding-best">
          <name>Algorithm for "Finding the Best Servers to Ask"</name>
          <t>This document updates instructions for finding the best servers to ask.
That information currently is covered in Section 5.3.3 of <xref target="RFC1034"/> and Section 3.4.1 of <xref target="RFC6672"/> with the text "2. Find the best servers to ask."
Section 3.1.4.1 of <xref target="RFC4035"/> should have explicitly updated Section 5.3.3 of <xref target="RFC1034"/> for the DS RR type, but failed to do so.
This document simply extends this existing behavior to DELEG RR type as well, and makes this special case explicit.</t>
          <t>When a DELEG RR set exists for a delegation in a zone, DELEG-aware resolvers ignore any NS RR set for the delegated zone, whether from the parent or from the apex of the child.</t>
          <t>Each delegation level can have a mixture of DELEG and NS RR types, and DELEG-aware resolvers MUST be able to follow chains of delegations which combines both types in arbitrary ways.</t>
          <t>An example of a valid delegation tree:</t>
          <artwork><![CDATA[
; root zone with NS-only delegations
. SOA ...
test. NS ...

; test. zone with NS+DELEG delegations
test. SOA ...
sld.test. NS ...
sld.test. DELEG ...

; sld.test. zone with NS-only delegation
sld.test. SOA ...
nssub.sld.test. NS ...

; nssub.sld.test. zone with DELEG-only delegation
delegsub.sub.sld.test. DELEG ...
]]></artwork>
          <t>TODO: after the text below, refer back to this figure and show the order that a DELEG-aware resolver would take when there is a failure to find any good DELEG addresses at sub.sld.test, then any usable name servers at sub.sld.test, and then maybe a good DELEG record at test.</t>
          <t>The terms SNAME and SLIST used here are defined in Section 5.3.2 of <xref target="RFC1034"/>:</t>
          <t>SNAME is the domain name we are searching for.</t>
          <t>SLIST is a structure which describes the name servers and the zone which the resolver is currently trying to query.
Neither <xref target="RFC1034"/> nor this document define how a resolver uses SLIST; they only define how to populate it.</t>
          <t>A DELEG-aware SLIST needs to be able to hold two types of information, delegations defined by NS records and delegations defined by DELEG records.
DELEG and NS delegations can create cyclic dependencies and/or lead to duplicate entries which point to the same server.
Resolvers need to enforce suitable limits to prevent damage even if someone has incorrectly configured some of the data used to create an SLIST.</t>
          <t>This leads to a modifications of the description from earlier documents for DELEG-aware resolvers can find the best servers to ask.
That description becomes:</t>
          <ol spacing="normal" type="1"><li>
              <t>Determine deepest possible zone cut which can potentially hold the answer for a given (query name, type, class) combination:  </t>
              <ol spacing="normal" type="1"><li>
                  <t>Start with SNAME equal to QNAME.</t>
                </li>
                <li>
                  <t>If QTYPE is a type that is authoritative at the parent side of a zone cut (currently, DS or DELEG), remove the leftmost label from SNAME.
For example, if the QNAME is "test.example." and the QTYPE is DELEG or DS, set SNAME to "example.".</t>
                </li>
              </ol>
            </li>
            <li>
              <t>Look for locally-available DELEG and NS RR sets, starting at current SNAME.  </t>
              <ol spacing="normal" type="1"><li>
                  <t>For a given SNAME, check for the existence of a DELEG RR set.
If it exists, the resolver MUST use its content to populate SLIST.
However, if the DELEG RR set is known to exist but is unusable (for example, if it is found in DNSSEC BAD cache), the resolver MUST NOT instead use an NS RR set; instead, the resolver MUST treat this case as if no servers were available.</t>
                </li>
                <li>
                  <t>If a given SNAME is proven to not have a DELEG RR set but does have an NS RR set, the resolver MUST copy the NS RR set into SLIST.</t>
                </li>
                <li>
                  <t>If SLIST is now populated, stop walking up the DNS tree.
However, if SLIST is not populated, remove the leftmost label from SNAME and go back to the first step, using the newly shortened SNAME.
Do not go back to the first step if doing so would exceed the amount of work that the resolver is configured to do when processing names; see <xref target="too-much-work"/>.</t>
                </li>
              </ol>
            </li>
          </ol>
          <t>The rest of Step 2's description is not affected by this document.</t>
          <t>TODO: Determine what to do about "QNAME=. QTYPE=DELEG" or "QNAME=. QTYPE=DS" queries, which by definition do not have answers in the DNS.</t>
        </section>
        <section anchor="nameserver-info">
          <name>Name Server Information for Delegation</name>
          <t>The DELEG and DELEGI records have four keys that describe information about name servers.
The purpose of this information is to populate the SLIST with IP addresses of the name servers for a zone.
The types of information defined in this document are:</t>
          <ul spacing="normal">
            <li>
              <t>server-ipv4: a set of IPv4 addresses for name servers</t>
            </li>
            <li>
              <t>server-ipv6: a set of IPv6 addresses for name servers</t>
            </li>
            <li>
              <t>server-name: a set of hostnames of name servers; the addresses must be fetched</t>
            </li>
            <li>
              <t>include-delegi: a set of domain names that point to a DELEGI RR sets, which in turn have more information about the delegation</t>
            </li>
          </ul>
          <t>These keys MUST have a non-empty DelegInfoValue.</t>
          <t>The presentation values for server-ipv4 and server-ipv6 are comma-separated list of one or more IP addresses of the appropriate family in standard textual format <xref target="RFC5952"/> <xref target="RFC4001"/>.
The wire formats for server-ipv4 and server-ipv6 are a sequence of IP addresses, in network byte order, for the respective address family.</t>
          <t>The presentation values for server-name and include-delegi are sets of fully-qualified domain names, separated by commas.
The wire format for server-name and include-delegi are each a concatenated set of a wire-format domain names, where the root label provides the separation between names.
The names in the wire format MUST NOT be compressed.</t>
          <t>TODO: Are they? Are we going to forbid normal zone file expansion where names without trailing . get current origin appended to them?</t>
          <t>A DELEG or DELEGI record MUST have one, and only one, set of server information, chosen from the following:</t>
          <ul spacing="normal">
            <li>
              <t>one server-ipv4 key</t>
            </li>
            <li>
              <t>one server-ipv6 key</t>
            </li>
            <li>
              <t>a pair consisting of one server-ipv4 key and one server-ipv6 key</t>
            </li>
            <li>
              <t>one server-name key</t>
            </li>
            <li>
              <t>one include-delegi key</t>
            </li>
          </ul>
          <t>This restriction only applies to a single DELEG or DELEGI record; a DELEG or DELEGI RR set can have records with different server information keys.</t>
          <t>When using server-name, the addresses for all the names in the set must be fetched using normal DNS resolution.
This means the names in the value of the server-name key or the include-delegi key MUST NOT be inside the delegated domain.</t>
          <t>With this initial DELEG specification, servers are still expected to be reached on the standard DNS port for both UDP and TCP, 53.  While a future specification is expected to address other transports using other ports, its eventual semantics are not covered here.</t>
        </section>
        <section anchor="slist">
          <name>Populating the SLIST from DELEG and DELEGI Records</name>
          <t>Each individual DELEG record inside a DELEG RR set, or each individual DELEGI record in a DELEGI RR set, can cause the addition of zero or more entries to SLIST.</t>
          <t>A resolver processes each individual DELEG record within a DELEG RR set, or each individual DELEGI record in a DELEGI RR set, using the following steps:</t>
          <ol spacing="normal" type="1"><li>
              <t>If a record has more than one type of server information key (excluding the IPv4/IPV6 case), or has multiple server information keys of the same type, that record is malformed.
Stop processing this record.</t>
            </li>
            <li>
              <t>If server-ipv4 and/or server-ipv6 keys are present inside the record, copy all of the address values into SLIST.
Stop processing this record.</t>
            </li>
            <li>
              <t>If a server-name key is present in the record, resolve each name in the value into IPv4 and/or IPv6 addresses.
Copy these addresses into SLIST.
Stop processing this record.</t>
            </li>
            <li>
              <t>If an include-delegi key is present in the record, resolve each name in the value using the DELEGI RR type.
Recursively apply the algorithm described in this section, after checking that the maximum loop count described in <xref target="too-much-work"/> has not been reached.</t>
            </li>
            <li>
              <t>If none of the above applies, SLIST is not modified by this particular record.</t>
            </li>
          </ol>
          <t>A DELEG-aware resolver MAY implement lazy filling of SLIST, such as by deferring processing remaining records if SLIST already has what the resolver considers a sufficiently large pool of addresses to contact.</t>
          <t>The order in which to try the servers in the final SLIST is outside the scope of this document.</t>
        </section>
      </section>
      <section anchor="authoritative-servers">
        <name>Authoritative Servers</name>
        <t>DELEG-aware authoritative servers act differently when handling queries from DELEG-unaware clients (those with DE=0) than from DELEG-aware clients (those with DE=1).</t>
        <t>The server MUST copy the value of the DE bit from the query into the response, to signal that it is a DELEG-aware server.</t>
        <section anchor="deleg-unaware-clients">
          <name>DELEG-unaware Clients</name>
          <t>DELEG-unaware clients do not use DELEG records for delegation.
When a DELEG-aware authoritative server responds to a DELEG-unaware client, any DELEG record in the response would not signal a zone cut, is not returned in referral responses, and is not considered authoritative on the parent side of a zone cut.
Because of this, DELEG-aware authoritative servers MUST answer as if they are DELEG-unaware to DELEG-unaware clients.
Please note this instruction does not affect DNSSEC signing, i.e. no special handling for NSEC type bitmap is necessary and DELEG RR type is accurately represented even for DELEG-unaware clients.</t>
          <t>Two specific cases of DELEG-aware authoritative servers responding in a DELEG-unaware manner are described here.</t>
          <section anchor="deleg-unaware-clients-requesting-qtypedeleg">
            <name>DELEG-unaware Clients Requesting QTYPE=DELEG</name>
            <t>From the perspective of DELEG-unaware clients, the DELEG RR type does not have special semantics and should behave like an old ordinary RR type, e.g. TXT.
Thus, queries with DE=0 and QTYPE=DELEG MUST result in a normal legacy response.
This would be a legacy referral response if there are NS records, or the actual DELEG RR type if the owner name does not have NS records.</t>
            <t>TODO: Should we have an example with auth having parent+child zone at the same time, and DE=0 QTYPE=DELEG query?</t>
          </section>
          <section anchor="deleg-unaware-clients-with-deleg-rrs-present-but-no-ns-rrs">
            <name>DELEG-unaware Clients with DELEG RRs Present but No NS RRs</name>
            <t>DELEG-unaware clients might ask for a name which belongs to a zone delegated only with DELEG RRs (that is, without any NS RRs).
Such a zone is not resolvable for DELEG-unaware clients.
In this case, the DELEG record itself cannot create a zone cut, and the DELEG-aware authoritative server MUST return a legacy response.</t>
            <t>An example of a legacy response using NXDOMAIN is in <xref target="legacynxdomain"/>.
This legacy response might be confusing for subdomains of zones which actually exist because DELEG-aware clients would get a different answer, namely a delegation.
TODO: debate response code in WG.</t>
            <t>The authoritative server is RECOMMENDED to supplement these responses to DELEG-unaware resolvers with an <xref target="RFC8914"/> Extended DNS Error using the (IANA-TBD) value "New Delegation Only" from the Extended DNS Error Codes registry.</t>
          </section>
        </section>
        <section anchor="deleg-aware-clients">
          <name>DELEG-aware Clients</name>
          <t>When the client indicates that it is DELEG-aware by setting DE=1 in the query, DELEG-aware authoritative servers treat DELEG records as zone cuts, and the servers are authoritative on the parent side of the zone cut.
This new zone cut has priority over a legacy delegation with NS RR set.</t>
          <section anchor="deleg-aware-clients-requesting-qtypedeleg">
            <name>DELEG-aware Clients Requesting QTYPE=DELEG</name>
            <t>An explicit query for the DELEG RR type at a delegation point behaves much like query for the DS RR type: the server answers authoritatively from the parent zone.
All previous specifications for special handling queries with QTYPE=DS apply equally to QTYPE=DELEG.
In summary, the server either provides an authoritative DELEG RR set or declares its non-existence, with relevant DNSSEC proofs when requested and available.</t>
          </section>
          <section anchor="delegation-with-deleg">
            <name>Delegation with DELEG</name>
            <t>If the delegation has a DELEG RR set, the authoritative server MUST put the DELEG RR set into the Authority section of the referral.
In this case, the server MUST NOT include the NS RR set in the Authority section.
Include the covering RRSIG following the normal DNSSEC procedure for answers with authoritative zone data.</t>
            <t>Similarly, rules for DS RR set inclusion in referrals apply as specified by the DNSSEC protocol.</t>
          </section>
          <section anchor="deleg-aware-clients-with-ns-rrs-present-but-no-deleg-rrs">
            <name>DELEG-aware Clients with NS RRs Present but No DELEG RRs</name>
            <t>If the delegation does not have a DELEG RR set, the authoritative server MUST put the NS RR set into the authority section of the referral.
The absence of the DELEG RR set MUST be proven as specified by the DNSSEC protocol for authoritative data.</t>
            <t>Similarly, rules for DS RR set inclusion into referrals apply as specified by the DNSSEC protocol.
Please note, in practice the same process and records are used to prove the non-existence of both DELEG and DS RR sets.</t>
          </section>
        </section>
      </section>
      <section anchor="dnssec-signers">
        <name>DNSSEC Signers</name>
        <t>The DELEG record is authoritative on the parent side of a zone cut and needs to be signed as such.
Existing rules from the DNSSEC specifications apply.
In summary: for DNSSEC signing, treat the DELEG RR type the same way as the DS RR type.</t>
        <t>In order to protect validators from downgrade attacks this draft introduces a new DNSKEY flag ADT (Authoritative Delegation Types).
In zones which contain a DELEG RR set, this flag MUST be set to 1 in at least one of the DNSKEY records published in the zone.</t>
      </section>
      <section anchor="dnssec-validators">
        <name>DNSSEC Validators</name>
        <t>DELEG awareness introduces additional requirements on validators.</t>
        <section anchor="clarifications-on-nonexistence-proofs">
          <name>Clarifications on Nonexistence Proofs</name>
          <t>This document updates Section 4.1 of <xref target="RFC6840"/> to include "NS or DELEG" types in the type bitmap as indication of a delegation point, and generalizes applicability of ancestor delegation proof to all RR types that are authoritative at the parent (that is, both DS and DELEG).
The text in that section is updated as follows:</t>
          <t>An "ancestor delegation" NSEC RR (or NSEC3 RR) is one with:</t>
          <ul spacing="normal">
            <li>
              <t>the NS and/or DELEG bit set,</t>
            </li>
            <li>
              <t>the Start of Authority (SOA) bit clear, and</t>
            </li>
            <li>
              <t>a signer field that is shorter than the owner name of the NSEC RR,
or the original owner name for the NSEC3 RR.</t>
            </li>
          </ul>
          <t>Ancestor delegation NSEC or NSEC3 RRs MUST NOT be used to assume
nonexistence of any RRs below that zone cut, which include all RRs at
that (original) owner name, other than types authoritative at the parent-side of a
zone cut (DS and DELEG), and all RRs below that owner name regardless of
type.</t>
        </section>
        <section anchor="insecure-delegation-proofs">
          <name>Insecure Delegation Proofs</name>
          <t>This document updates Section 4.4 of <xref target="RFC6840"/> to include securing DELEG records, and explicitly states that Opt-Out is not applicable to the DELEG protocol.
The first paragraph of that section is updated to read:</t>
          <t>Section 5.2 of <xref target="RFC4035"/> specifies that a validator, when proving a
delegation is not secure, needs to check for the absence of the DS
and SOA bits in the NSEC (or NSEC3) type bitmap.
The validator also
MUST check for the presence of the NS or the DELEG bit in the matching NSEC (or
NSEC3) RR (proving that there is, indeed, a delegation).
Alternately, the validator must make sure that the delegation with an NS record is covered by an NSEC3
RR with the Opt-Out flag set.
Opt-Out is not applicable to DELEG RR type
because DELEG records are authoritative at the parent side of a zone cut in the same
way that DS RR types are.</t>
        </section>
        <section anchor="referral-downgrade-protection">
          <name>Referral downgrade protection</name>
          <t>If the zone is DNSSEC-secure, and if any DNSKEY of the zone has the ADT flag set to 1, a DELEG-aware validator MUST prove the absence of a DELEG RR set in referral responses from this particular zone.</t>
          <t>Without this check, an attacker could strip the DELEG RR set from a referral response and replace it with an unsigned (and potentially malicious) NS RR set.
A referral response with an unsigned NS and signed DS RR sets does not require additional proofs of nonexistence according to pre-DELEG DNSSEC specification, and it would have been accepted as a delegation without the DELEG RR set.</t>
        </section>
        <section anchor="chaining">
          <name>Chaining</name>
          <t>A Validating Stub Resolver that is DELEG-aware has to use a Security-Aware Resolver that is DELEG-aware and, if it is behind a forwarder, that forwarder has to be security-aware and DELEG-aware as well.</t>
        </section>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TODO: Add more here</t>
      <section anchor="too-much-work">
        <name>Preventing Over-work Attacks</name>
        <t>Resolvers MUST prevent situations where accidental misconfiguration of zones or malicious attacks cause them to perform too much work when resolving.
This document describes two sets of actions that, if not controlled, could lead to over-work attacks:</t>
        <ul spacing="normal">
          <li>
            <t>Names with many subdomains can cause walking up the tree to populate SLIST (<xref target="finding-best"/>) to be burdensome.
To prevent this, the resolver SHOULD NOT walk up more than %%TODO: come up with a number%% labels in order to contribute to SLIST.</t>
          </li>
          <li>
            <t>Long chains of include-delegi information (<xref target="nameserver-info"/>), and those with circular chains of include-delegi information, can be burdensome.
To prevent this, the resolver SHOULD NOT follow more than 3 include-delegi chains in an RR set when populating SLIST.
Note that include-delegi chains can have CNAME steps in them; in such a case, a CNAME step is counted the same as a DELEGI step when determining when to stop following a chain.</t>
          </li>
        </ul>
      </section>
      <section anchor="preventing-downgrade-attacks">
        <name>Preventing Downgrade Attacks</name>
        <t>TODO: this section is a bit redundant with "Referral Downgrade Protection" above; harmonize them.</t>
        <t>During the rollout of the DELEG protocol, the operator of an authoritative server can upgrade the server software to be DELEG-aware before changing any DNS zones.
Such deployment should work and provide DELEG-aware clients with correct DELEG-aware answers.
However, the deployment will not be protected from downgrade attacks against the DELEG protocol.</t>
        <t>To protect DNSSEC-secure DNS zones that use DELEG delegations, the delegating zone needs to have at least one DNSKEY with the ADT flag set to 1.
Failure to set this flag in a DNSKEY record in the zone allows an attacker to remove the DELEG RR set from referrals which contain the DS RR set, and replace the original signed DELEG RR set with an arbitrary unsigned NS set.
Doing so would be a downgrade from the strong protection offered by DNSSEC for DELEG.
That is, the DELEG protocol when used with upgraded DNSKEY records gives the same protection to DELEG that the zone's DS RR set has.
Without DELEG, there are no security guarantees for the legacy NS RR set on the parent side of the zone cut.</t>
        <t>Please note that a full DNSKEY rollover is not necessary to achieve the downgrade protection for DELEG.
Any single DNSKEY with the ADT flag set to 1 is sufficient; the zone can introduce an otherwise unused record into the DNSKEY RR set.
This DNSKEY RR can even use an unknown signing algorithm and zero-length key material to minimize size increase of the DNSKEY RR set.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="changes-to-existing-registries">
        <name>Changes to Existing Registries</name>
        <t>IANA is requested to allocate the DELEG RR and the DELEGI RR in the Resource Record (RR) TYPEs registry, with the meaning "enhanced delegation information" and referencing this document.</t>
        <t>IANA is requested to assign a new bit in the DNSKEY RR Flags registry (<xref target="RFC4034"/>) for the ADT bit (N), with the description "Authoritative Delegation Types" and referencing this document.
For compatibility reasons, we request the bit 14 to be used.
This value has been proven to work whereas bit 0 was proven to break in practical deployments (because of bugs).</t>
        <t>IANA is requested to assign a bit from the EDNS Header Flags registry (<xref target="RFC6891"/>), with the abbreviation DE, the description "DELEG enabled", and referencing this document.</t>
        <t>IANA is requested to assign a value from the Extended DNS Error Codes (<xref target="RFC8914"/>), with the Purpose "New Delegation Only" and referencing this document.</t>
      </section>
      <section anchor="new-registry-for-delegation-information">
        <name>New Registry for Delegation Information</name>
        <t>IANA is requested to create the "DELEG Delegation Information" registry.
This registry defines the namespace for delegation information keys, including string representations and numeric key values.</t>
        <section anchor="procedure">
          <name>Procedure</name>
          <t>A registration MUST include the following fields:</t>
          <t>Number:  Wire-format numeric identifier (range 0-65535)
Name:  Unique presentation name
Meaning:  A short description
Reference:  Location of specification or registration source
Change Controller:  Person or entity, with contact information if appropriate</t>
          <t>To enable code reuse from SVCB parsers, the requirements for registered Name exactly copy requirements set by <xref target="RFC9460"/> section 14.3.1:
The characters in the registered Name field entry MUST be lowercase alphanumeric or "-".
The name MUST NOT start with "key" or "invalid".</t>
          <t>The registration policy for new entries is Expert Review (<xref target="RFC8126"/>).
The designated expert MUST ensure that the reference is stable and publicly available and that it specifies how to convert the delegation information's presentation format to wire format.
The reference MAY be any individual's Internet-Draft or a document from any other source with similar assurances of stability and availability.
An entry MAY specify a reference of the form "Same as (other key name)" if it uses the same presentation and wire formats as an existing key.</t>
          <t>This arrangement supports the development of new parameters while ensuring that zone files can be made interoperable.</t>
        </section>
        <section anchor="initial-contents">
          <name>Initial Contents</name>
          <t>The "DELEG Delegation Information" registry should be populated with the following initial registrations:</t>
          <artwork><![CDATA[
Number:  1
Name:  server-ipv4
Meaning:  A set of IPv4 addresses of name servers
Reference:  {{nameserver-info}} of this document
Change Controller:  IETF

Number:  2
Name:  server-ipv6
Meaning:  A set of IPv6 addresses of name servers
Reference:  {{nameserver-info}} of this document
Change Controller:  IETF

Number:  3
Name:  server-name
Meaning:  A set of hostnames of name servers
Reference:  {{nameserver-info}} of this document
Change Controller:  IETF

Number:  4
Name:  include-delegi
Meaning:  A set of domain names of DELEGI records
Reference:  {{nameserver-info}} of this document
Change Controller:  IETF

The registration for numbers 65280-65534 is reserved for private use.
The registration for number 65535 is reserved.
]]></artwork>
        </section>
      </section>
      <section anchor="temporary-assignments">
        <name>Temporary Assignments</name>
        <t>This section gives the values that can be used for interoperability testing before IANA makes permanent assignments.
The section will be removed when IANA makes permanent assignments.</t>
        <ul spacing="normal">
          <li>
            <t>DELEG RR type code is 61440</t>
          </li>
          <li>
            <t>DELEGI RR type code is 65433</t>
          </li>
          <li>
            <t>DELEG EDNS DE flag bit is 2</t>
          </li>
          <li>
            <t>DNSKEY ADT (Authoritative Delegation Types) flag bit is 14</t>
          </li>
        </ul>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC9460">
          <front>
            <title>Service Binding and Parameter Specification via the DNS (SVCB and HTTPS Resource Records)</title>
            <author fullname="B. Schwartz" initials="B." surname="Schwartz"/>
            <author fullname="M. Bishop" initials="M." surname="Bishop"/>
            <author fullname="E. Nygren" initials="E." surname="Nygren"/>
            <date month="November" year="2023"/>
            <abstract>
              <t>This document specifies the "SVCB" ("Service Binding") and "HTTPS" DNS resource record (RR) types to facilitate the lookup of information needed to make connections to network services, such as for HTTP origins. SVCB records allow a service to be provided from multiple alternative endpoints, each with associated parameters (such as transport protocol configuration), and are extensible to support future uses (such as keys for encrypting the TLS ClientHello). They also enable aliasing of apex domains, which is not possible with CNAME. The HTTPS RR is a variation of SVCB for use with HTTP (see RFC 9110, "HTTP Semantics"). By providing more information to the client before it attempts to establish a connection, these records offer potential benefits to both performance and privacy.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9460"/>
          <seriesInfo name="DOI" value="10.17487/RFC9460"/>
        </reference>
        <reference anchor="RFC6891">
          <front>
            <title>Extension Mechanisms for DNS (EDNS(0))</title>
            <author fullname="J. Damas" initials="J." surname="Damas"/>
            <author fullname="M. Graff" initials="M." surname="Graff"/>
            <author fullname="P. Vixie" initials="P." surname="Vixie"/>
            <date month="April" year="2013"/>
            <abstract>
              <t>The Domain Name System's wire protocol includes a number of fixed fields whose range has been or soon will be exhausted and does not allow requestors to advertise their capabilities to responders. This document describes backward-compatible mechanisms for allowing the protocol to grow.</t>
              <t>This document updates the Extension Mechanisms for DNS (EDNS(0)) specification (and obsoletes RFC 2671) based on feedback from deployment experience in several implementations. It also obsoletes RFC 2673 ("Binary Labels in the Domain Name System") and adds considerations on the use of extended labels in the DNS.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="75"/>
          <seriesInfo name="RFC" value="6891"/>
          <seriesInfo name="DOI" value="10.17487/RFC6891"/>
        </reference>
        <reference anchor="RFC1034">
          <front>
            <title>Domain names - concepts and facilities</title>
            <author fullname="P. Mockapetris" initials="P." surname="Mockapetris"/>
            <date month="November" year="1987"/>
            <abstract>
              <t>This RFC is the revised basic definition of The Domain Name System. It obsoletes RFC-882. This memo describes the domain style names and their used for host address look up and electronic mail forwarding. It discusses the clients and servers in the domain name system and the protocol used between them.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="13"/>
          <seriesInfo name="RFC" value="1034"/>
          <seriesInfo name="DOI" value="10.17487/RFC1034"/>
        </reference>
        <reference anchor="RFC4035">
          <front>
            <title>Protocol Modifications for the DNS Security Extensions</title>
            <author fullname="R. Arends" initials="R." surname="Arends"/>
            <author fullname="R. Austein" initials="R." surname="Austein"/>
            <author fullname="M. Larson" initials="M." surname="Larson"/>
            <author fullname="D. Massey" initials="D." surname="Massey"/>
            <author fullname="S. Rose" initials="S." surname="Rose"/>
            <date month="March" year="2005"/>
            <abstract>
              <t>This document is part of a family of documents that describe the DNS Security Extensions (DNSSEC). The DNS Security Extensions are a collection of new resource records and protocol modifications that add data origin authentication and data integrity to the DNS. This document describes the DNSSEC protocol modifications. This document defines the concept of a signed zone, along with the requirements for serving and resolving by using DNSSEC. These techniques allow a security-aware resolver to authenticate both DNS resource records and authoritative DNS error indications.</t>
              <t>This document obsoletes RFC 2535 and incorporates changes from all updates to RFC 2535. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4035"/>
          <seriesInfo name="DOI" value="10.17487/RFC4035"/>
        </reference>
        <reference anchor="RFC6672">
          <front>
            <title>DNAME Redirection in the DNS</title>
            <author fullname="S. Rose" initials="S." surname="Rose"/>
            <author fullname="W. Wijngaards" initials="W." surname="Wijngaards"/>
            <date month="June" year="2012"/>
            <abstract>
              <t>The DNAME record provides redirection for a subtree of the domain name tree in the DNS. That is, all names that end with a particular suffix are redirected to another part of the DNS. This document obsoletes the original specification in RFC 2672 as well as updates the document on representing IPv6 addresses in DNS (RFC 3363). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6672"/>
          <seriesInfo name="DOI" value="10.17487/RFC6672"/>
        </reference>
        <reference anchor="RFC8914">
          <front>
            <title>Extended DNS Errors</title>
            <author fullname="W. Kumari" initials="W." surname="Kumari"/>
            <author fullname="E. Hunt" initials="E." surname="Hunt"/>
            <author fullname="R. Arends" initials="R." surname="Arends"/>
            <author fullname="W. Hardaker" initials="W." surname="Hardaker"/>
            <author fullname="D. Lawrence" initials="D." surname="Lawrence"/>
            <date month="October" year="2020"/>
            <abstract>
              <t>This document defines an extensible method to return additional information about the cause of DNS errors. Though created primarily to extend SERVFAIL to provide additional information about the cause of DNS and DNSSEC failures, the Extended DNS Errors option defined in this document allows all response types to contain extended error information. Extended DNS Error information does not change the processing of RCODEs.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8914"/>
          <seriesInfo name="DOI" value="10.17487/RFC8914"/>
        </reference>
        <reference anchor="RFC6840">
          <front>
            <title>Clarifications and Implementation Notes for DNS Security (DNSSEC)</title>
            <author fullname="S. Weiler" initials="S." role="editor" surname="Weiler"/>
            <author fullname="D. Blacka" initials="D." role="editor" surname="Blacka"/>
            <date month="February" year="2013"/>
            <abstract>
              <t>This document is a collection of technical clarifications to the DNS Security (DNSSEC) document set. It is meant to serve as a resource to implementors as well as a collection of DNSSEC errata that existed at the time of writing.</t>
              <t>This document updates the core DNSSEC documents (RFC 4033, RFC 4034, and RFC 4035) as well as the NSEC3 specification (RFC 5155). It also defines NSEC3 and SHA-2 (RFC 4509 and RFC 5702) as core parts of the DNSSEC specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6840"/>
          <seriesInfo name="DOI" value="10.17487/RFC6840"/>
        </reference>
        <reference anchor="RFC4034">
          <front>
            <title>Resource Records for the DNS Security Extensions</title>
            <author fullname="R. Arends" initials="R." surname="Arends"/>
            <author fullname="R. Austein" initials="R." surname="Austein"/>
            <author fullname="M. Larson" initials="M." surname="Larson"/>
            <author fullname="D. Massey" initials="D." surname="Massey"/>
            <author fullname="S. Rose" initials="S." surname="Rose"/>
            <date month="March" year="2005"/>
            <abstract>
              <t>This document is part of a family of documents that describe the DNS Security Extensions (DNSSEC). The DNS Security Extensions are a collection of resource records and protocol modifications that provide source authentication for the DNS. This document defines the public key (DNSKEY), delegation signer (DS), resource record digital signature (RRSIG), and authenticated denial of existence (NSEC) resource records. The purpose and format of each resource record is described in detail, and an example of each resource record is given.</t>
              <t>This document obsoletes RFC 2535 and incorporates changes from all updates to RFC 2535. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4034"/>
          <seriesInfo name="DOI" value="10.17487/RFC4034"/>
        </reference>
        <reference anchor="RFC8126">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <date month="June" year="2017"/>
            <abstract>
              <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <referencegroup anchor="BCP219" target="https://www.rfc-editor.org/info/bcp219">
          <reference anchor="RFC9499" target="https://www.rfc-editor.org/info/rfc9499">
            <front>
              <title>DNS Terminology</title>
              <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
              <author fullname="K. Fujiwara" initials="K." surname="Fujiwara"/>
              <date month="March" year="2024"/>
              <abstract>
                <t>The Domain Name System (DNS) is defined in literally dozens of different RFCs. The terminology used by implementers and developers of DNS protocols, and by operators of DNS systems, has changed in the decades since the DNS was first defined. This document gives current definitions for many of the terms used in the DNS in a single document.</t>
                <t>This document updates RFC 2308 by clarifying the definitions of "forwarder" and "QNAME". It obsoletes RFC 8499 by adding multiple terms and clarifications. Comprehensive lists of changed and new definitions can be found in Appendices A and B.</t>
              </abstract>
            </front>
            <seriesInfo name="BCP" value="219"/>
            <seriesInfo name="RFC" value="9499"/>
            <seriesInfo name="DOI" value="10.17487/RFC9499"/>
          </reference>
        </referencegroup>
        <reference anchor="RFC3597">
          <front>
            <title>Handling of Unknown DNS Resource Record (RR) Types</title>
            <author fullname="A. Gustafsson" initials="A." surname="Gustafsson"/>
            <date month="September" year="2003"/>
            <abstract>
              <t>Extending the Domain Name System (DNS) with new Resource Record (RR) types currently requires changes to name server software. This document specifies the changes necessary to allow future DNS implementations to handle new RR types transparently. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3597"/>
          <seriesInfo name="DOI" value="10.17487/RFC3597"/>
        </reference>
        <reference anchor="RFC5952">
          <front>
            <title>A Recommendation for IPv6 Address Text Representation</title>
            <author fullname="S. Kawamura" initials="S." surname="Kawamura"/>
            <author fullname="M. Kawashima" initials="M." surname="Kawashima"/>
            <date month="August" year="2010"/>
            <abstract>
              <t>As IPv6 deployment increases, there will be a dramatic increase in the need to use IPv6 addresses in text. While the IPv6 address architecture in Section 2.2 of RFC 4291 describes a flexible model for text representation of an IPv6 address, this flexibility has been causing problems for operators, system engineers, and users. This document defines a canonical textual representation format. It does not define a format for internal storage, such as within an application or database. It is expected that the canonical format will be followed by humans and systems when representing IPv6 addresses as text, but all implementations must accept and be able to handle any legitimate RFC 4291 format. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5952"/>
          <seriesInfo name="DOI" value="10.17487/RFC5952"/>
        </reference>
        <reference anchor="RFC4001">
          <front>
            <title>Textual Conventions for Internet Network Addresses</title>
            <author fullname="M. Daniele" initials="M." surname="Daniele"/>
            <author fullname="B. Haberman" initials="B." surname="Haberman"/>
            <author fullname="S. Routhier" initials="S." surname="Routhier"/>
            <author fullname="J. Schoenwaelder" initials="J." surname="Schoenwaelder"/>
            <date month="February" year="2005"/>
            <abstract>
              <t>This MIB module defines textual conventions to represent commonly used Internet network layer addressing information. The intent is that these textual conventions will be imported and used in MIB modules that would otherwise define their own representations. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4001"/>
          <seriesInfo name="DOI" value="10.17487/RFC4001"/>
        </reference>
        <reference anchor="I-D.tapril-ns2">
          <front>
            <title>Parameterized Nameserver Delegation with NS2 and NS2T</title>
            <author fullname="Tim April" initials="T." surname="April">
              <organization>Akamai Technologies</organization>
            </author>
            <date day="13" month="July" year="2020"/>
            <abstract>
              <t>   Within the DNS, there is no mechanism for authoritative servers to
   advertise which transport methods they are capable of.  If secure
   transport methods are adopted by authoritative operators, transport
   signaling would be required to negotiate how authoritative servers
   would be contacted by resolvers.  This document provides two new
   Resource Record Types, NS2 and NS2T, to facilitate this negotiation
   by allowing zone owners to signal how the authoritative nameserver(s)
   for their zone(s) may accept queries.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-tapril-ns2-01"/>
        </reference>
      </references>
    </references>
    <?line 616?>

<section anchor="examples">
      <name>Examples</name>
      <section anchor="root-zone-file">
        <name>Root zone file</name>
        <t>The following example shows an excerpt from a signed root zone.
It shows the delegation point for "example." and "test."</t>
        <t>The "example." delegation has DELEG and NS records.
The "test." delegation has DELEG but no NS records.</t>
        <t>TODO: Add examples that have server-name and include-delegi being sets of more than one name.</t>
        <t>TODO: Examples that show DELEGI records in ns2.example.net and ns3.example.org.</t>
        <artwork><![CDATA[
example.   DELEG server-ipv4=192.0.2.1 server-ipv6=2001:DB8::1
example.   DELEG server-name=ns2.example.net.,ns3.example.org.
example.   RRSIG DELEG 13 4 300 20260101000000 (
                        20250101000000 33333 . SigExampleDELEG/ )

example.   NS    a.example.
example.   NS    b.example.net.
example.   NS    c.example.org.

example.   DS    44444 13 2 ABCDEF01234567...
example.   RRSIG DS 13 4 300 20260101000000 (
                        20250101000000 33333 . SigExampleDS )

example.   NSEC  net. NS DS RRSIG NSEC DELEG
example.   RRSIG NSEC 13 4 300 20260101000000 (
                        20250101000000 33333 . SigExampleNSEC+/ )

; unsigned glue for legacy (NS) delegation
a.example. A     192.0.2.1
a.example. AAAA  2001:DB8::1
]]></artwork>
        <t>The "test." delegation point has a DELEG record and no NS or DS records.</t>
        <t>Please note:
This is an example of unnecessairly complicated setup to demonstrate capabilities of DELEG and DELEGI RR types.</t>
        <artwork><![CDATA[
test.      DELEG server-ipv6=3fff::33
test.      DELEG include-delegi=Acfg.example.org.
test.      DELEG include-delegi=config2.example.net.
test.      RRSIG DELEG 13 4 300 20260101000000 (
                        20250101000000 33333 . SigTestDELEG )

test.      NSEC  . RRSIG NSEC DELEG
test.      RRSIG NSEC 13 4 300 20260101000000 (
                        20250101000000 33333 . SigTestNSEC/ )
]]></artwork>
        <t>Delegations to org and net zones omitted for brevity.</t>
      </section>
      <section anchor="exampleorg-zone-file">
        <name>Example.org zone file</name>
        <t>The following example shows an excerpt from an unsigned example.org zone.</t>
        <artwork><![CDATA[
Acfg.example.org.    DELEGI server-ipv6=2001:DB8::6666
Acfg.example.org.    DELEGI server-name=c.example.org.
Acfg.example.org.    DELEGI include-delegi=subcfg.example.org.

c.example.org.       AAAA   3fff::33

subcfg.example.org.  DELEGI server-ipv4=203.0.113.1 server-ipv6=3fff::2
]]></artwork>
      </section>
      <section anchor="examplenet-zone-file">
        <name>Example.net zone file</name>
        <t>The following example shows an excerpt from an unsigned example.net zone.</t>
        <artwork><![CDATA[
b.example.net.       A      198.51.100.1

config2.example.net. DELEGI server-name=b.example.org.
]]></artwork>
      </section>
      <section anchor="responses">
        <name>Responses</name>
        <t>The following sections show referral examples:</t>
        <section anchor="do-bit-clear-de-bit-clear">
          <name>DO bit clear, DE bit clear</name>
          <section anchor="query-for-fooexample">
            <name>Query for foo.example</name>
            <artwork><![CDATA[
;; Header: QR RCODE=NOERROR
;;

;; Question
foo.example.  IN MX

;; Answer
;; (empty)

;; Authority
example.   NS    a.example.
example.   NS    b.example.net.
example.   NS    c.example.org.

;; Additional
a.example. A     192.0.2.1
a.example. AAAA  2001:DB8::1
]]></artwork>
          </section>
          <section anchor="query-for-footest">
            <name>Query for foo.test</name>
            <artwork><![CDATA[
;; Header: QR AA RCODE=NXDOMAIN
;;

;; Question
foo.test.   IN MX

;; Answer
;; (empty)

;; Authority
.   SOA ...

;; Additional
;; OPT with Extended DNS Error: New Delegation Only
]]></artwork>
          </section>
        </section>
        <section anchor="do-bit-set-de-bit-clear">
          <name>DO bit set, DE bit clear</name>
          <section anchor="query-for-fooexample-1">
            <name>Query for foo.example</name>
            <artwork><![CDATA[
;; Header: QR DO RCODE=NOERROR
;;

;; Question
foo.example.   IN MX

;; Answer
;; (empty)

;; Authority

example.   NS    a.example.
example.   NS    b.example.net.
example.   NS    c.example.org.
example.   DS    44444 13 2 ABCDEF01234567...
example.   RRSIG DS 13 4 300 20260101000000 (
                        20250101000000 33333 . SigExampleDS )
;; Additional
a.example. A     192.0.2.1
a.example. AAAA  2001:DB8::1
]]></artwork>
          </section>
          <section anchor="legacynxdomain">
            <name>Query for foo.test</name>
            <artwork><![CDATA[
;; Header: QR DO AA RCODE=NXDOMAIN
;;

;; Question
foo.test.      IN MX

;; Answer
;; (empty)

;; Authority
.          SOA ...
.          RRSIG SOA ...
test.      NSEC  . RRSIG NSEC DELEG
test.      RRSIG NSEC 13 4 300 20260101000000 (
                        20250101000000 33333 . SigTestNSEC/ )

;; Additional
;; OPT with Extended DNS Error: New Delegation Only
]]></artwork>
          </section>
        </section>
        <section anchor="do-bit-clear-de-bit-set">
          <name>DO bit clear, DE bit set</name>
          <section anchor="query-for-fooexample-2">
            <name>Query for foo.example</name>
            <artwork><![CDATA[
;; Header: QR DE RCODE=NOERROR
;;

;; Question
foo.example.  IN MX

;; Answer
;; (empty)

;; Authority
example.   DELEG server-ipv4=192.0.2.1 server-ipv6=2001:DB8::1
example.   DELEG server-name=ns2.example.net.,ns3.example.org.

;; Additional
;; (empty)
]]></artwork>
          </section>
          <section anchor="query-for-footest-1">
            <name>Query for foo.test</name>
            <artwork><![CDATA[
;; Header: QR AA RCODE=NOERROR
;;

;; Question
foo.test.   IN MX

;; Answer
;; (empty)

;; Authority
test.      DELEG server-ipv6=3fff::33
test.      DELEG include-delegi=Acfg.example.org.
test.      DELEG include-delegi=config2.example.net.

;; Additional
;; (empty)
]]></artwork>
            <t>Follow-up example in <xref target="delegi-example"/> explains ultimate meaning of this response.</t>
          </section>
        </section>
        <section anchor="do-bit-set-de-bit-set">
          <name>DO bit set, DE bit set</name>
          <section anchor="query-for-fooexample-3">
            <name>Query for foo.example</name>
            <artwork><![CDATA[
;; Header: QR DO DE RCODE=NOERROR
;;

;; Question
foo.example.  IN MX

;; Answer
;; (empty)

;; Authority
example.   DELEG server-ipv4=192.0.2.1 server-ipv6=2001:DB8::1
example.   DELEG server-name=ns2.example.net.,ns3.example.org.
example.   RRSIG DELEG 13 4 300 20260101000000 (
                        20250101000000 33333 . SigExampleDELEG/ )
example.   DS    44444 13 2 ABCDEF01234567...
example.   RRSIG DS 13 4 300 20260101000000 (
                        20250101000000 33333 . SigExampleDS )

;; Additional
a.example. A     192.0.2.1
a.example. AAAA  2001:DB8::1
]]></artwork>
          </section>
          <section anchor="query-for-footest-2">
            <name>Query for foo.test</name>
            <artwork><![CDATA[
;; Header: QR DO DE AA RCODE=NOERROR
;;

;; Question
foo.test.      IN MX

;; Answer
;; (empty)

;; Authority
test.      DELEG server-ipv6=3fff::33
test.      DELEG include-delegi=Acfg.example.org.
test.      DELEG include-delegi=config2.example.net.
test.      RRSIG DELEG 13 4 300 20260101000000 (
                        20250101000000 33333 . SigTestDELEG )
test.      NSEC  . RRSIG NSEC DELEG
test.      RRSIG NSEC 13 4 300 20260101000000 (
                        20250101000000 33333 . SigTestNSEC/ )

;; Additional
;; (empty)
]]></artwork>
            <t>Follow-up example in <xref target="delegi-example"/> explains the ultimate meaning of this response.</t>
          </section>
        </section>
      </section>
      <section anchor="delegi-example">
        <name>DELEGI Interpretation</name>
        <t>In the examples above, the test. DELEG record uses indirection and points to other domain names with DELEGI, A, and AAAA records.
During resolution, a resolver will gradually build set of name servers to contact, as defined in <xref target="slist"/>.</t>
        <t>To visualize end result of this process we represent full set of name servers in form of a 'virtual' DELEG RR set.</t>
        <artwork><![CDATA[
test. DELEG server-ipv4=198.51.100.1
test. DELEG server-ipv4=203.0.113.1
test. DELEG server-ipv6=2001:DB8::6666
test. DELEG server-ipv6=3fff::2
; IPv6 address 3fff::33 was de-duplicated (input RR sets listed it twice)
test. DELEG server-ipv6=3fff::33
]]></artwork>
        <t>Implementations are free to use arbitrary representation for this data as it is not directly exposed via DNS protocol.</t>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>This document is heavily based on past work done by Tim April in
<xref target="I-D.tapril-ns2"/> and thus extends the thanks to the people helping on this which are:
John Levine, Erik Nygren, Jon Reed, Ben Kaduk, Mashooq Muhaimen, Jason Moreau, Jerrod Wiesman, Billy Tiemann, Gordon Marx and Brian Wellington.</t>
      <t>Work on DELEG protocol has started at IETF 118 Hackaton.
Hackaton participants: Christian Elmerot, David Blacka, David Lawrence, Edward Lewis, Erik Nygren, George Michaelson, Jan Včelák, Klaus Darilion, Libor Peltan, Manu Bretelle, Peter van Dijk, Petr Špaček, Philip Homburg, Ralf Weber, Roy Arends, Shane Kerr, Shumon Huque, Vandan Adhvaryu, Vladimír Čunát, Andreas Schulze.</t>
      <t>Other people joined the effort after the initial hackaton: Ben Schwartz, Bob Halley, Paul Hoffman, Miek Gieben ...</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+V9aXYbR5rgf5wiBn71TLYBiJtom3p6LkikbLYlkiZpuzyv
/ySQASCbiUw4F1IwrTrB9B26DzCnqOp7zbfFlpmgaHmpmhlWPZkEMmP54tu3
GA6HvSqpUn2kTt5WOiuTSarVsU71PKqSPFOzvFDHZ1e9aDIp9O2ROj55ffJl
bxpVep4X6yNVVnGvF+fTLFrCGHERzaphoqvZMMYxhjv7vbKeLJOyhMGq9Qqe
OT25ftWrVzEMUR6p3Z39gwH++3SgDg8/3YN/PzvY6WX1cqKLox4+ddSb5lkJ
a6vh+aqodQ/Wsd+LCh3BaFmli0xXvbu8uJkXeb2CVeDUvRu9hs/io54a2qeG
x7hA/AT3BP+J7U57tzqrYS6lglGU4lV/D8Mn2Vx9iV/Cp8soSeGZ+M+42VFe
4JNRMV0cqUVVrcqjJ0/wCfwkudUj89AT/ODJpMjvSv0kjp/gbEm1qCdHioB2
N2e4PWkBchLBG/B4imCr3Cz8+miaL588ZoSq0PrJfDFcRXNd9nrJqiCQltXe
zs7nO3u9XlRXixwAP4S5lEoyAPn1SI1XRZLSJ3zO18nS+ww2FmXJTwTGI/Vl
ns9TPVCvX7+kbzWDClfy5yrCl0Z4Xt4EF6P//s9V9Pf/0DfeFBe6KlTweTjN
6VUw/KpcRVN98+eknNJpeMNfjr7XgEze2JdROlPuw3Dg8U0EQ6prPV1keZrP
EwCUN1Fxh+/9OaKnEO7+VMej19FdobOp9mY7jm6TWL1UwVfhnFdRqksgNflS
pqrg0z/HMe2nNxwOVTQpqyKaVr3rRVIqoLp6qbNKrYp8lZe6VJHK9J3SjpCX
Gk4zJiKuFtrDdpXPFB91Uq3p+wjGg2kz2Ag9e8x/ncEW1NW6rPRSbQHRbKu6
RDogPqCiLObfTlWhp0Bt5ajXG/vzmNHOrpTOIlhTqfRslkwTXDi+Hiewp2RS
VzoGosoAL2lPsD7zHkKRTncE+9aArlGc4NhRSl/7k5UKsTxW8Dt8I0tSd4tk
ulDARCrcUZ6la7XIy4rGxYlKXdzqoqTlZLnKYeJCraICvge2UfK0CFlvKjM2
cCEP4AM1jTI10TDktC5gIXdAnrjKq5OXAxpfp8kyyYCIaXtwcvDWEhexACwB
uFZ3uSrzGjCBlga0CQPg+QQwhQ+W9PuIEWOZxHGqe72PkNMVeVxPiaX1Tjed
5QA2UK5yXHWSGhTQEYAJ2LUgAq5djk8+QYipRaILZGNrs1dZGey2yuE4ZzNd
4AkKVAcC/mV0A1uCwZYW8WAHt9ogZwIgzwuDmzipd+50AvDKPDGnzvCH56IK
VkcjJyWCP01hIZF3/gNz8iUfPQ5tjp/IQCFCpzyfrPphVADQ5Sk+lWkNKAC7
lk9w7FIWDqcEX9Ql4ryK4hgeIRKFgeH84GUeu9A/1gliiptkAGcAAIsIWoju
WYmQQWSp8mme0hhRtjarMx/PdFQB0sEi3+SFzmGBAxrBQavUFSArEFxJdAmo
tkoBvuVwmGewyKrJJFY5bILxFr+h+QbwaYnIvnZnPTBkDtIujdVPMBpDCk/q
CkkBUUwUDEA64iRAEtu0eD2t+GRwEdN8tcZlAz/rGhRHLYluVhqQhYnEI3Wk
rsoeEJ1NnQHTLdYrRNBvjy9oN9cvLwjb1NN9s70EYQJ8BfCL8AUWBfid5RWi
uCwzJOhR7wR0BpXM5NgJnkzQwHMAMEDIS73I7xStJm6eBqEtTpAjGC0XcfTo
nXGAgYns0zK9CNheUQBdWk7veGziMQQEFvIxPJbKyLe1kJdIkbiLtTNHMgvf
urzcJrWohE+WOl4z+Awzm6zxV5B5yM88YeQ2gceSZHGCaqShuGm0imjviVAJ
0Ixh8x7Dc8TBkGmTR8lMIXJkuozWQIiGjfD2ZCtTUCIrKzkd6o96pxVBNmBV
gpCwEWJwSUwMxCMYRqW6tGIgmWdNpKHzY24IqCrEpBEkt1GaoMKrgIkFZOix
hiSbpjVBlmkE5p/VSPYG0kBe/kaNYKbNwALrtwDjqFibj5k5W1RkeKAy4KaH
80yqUoPKBFJajpbOSOUrOaA0WiNHm9GpwsgWhAKHumTpUC5QXiIMS2S23TJN
RdMCoELoz3YAjoz0DzuTTcFuKlpqDKRwg5g5r0HbbpwX77Hz3L11gWSodBTj
JEh0aZ7N6Wgjj1Zh7R2gYSYHOuAERboQGM3zCbwKa5zVKfA1eGAFX+MpEybk
wM4sixqoWTRFvIcn6FQRzaYFaUEA2SJP07wWfQhGRDQVrS5APdjkK8YDoxYy
EtYlwzvkLksgflA/yyUxjCWICyC32wiU09iKEQYs8MIMzxOXliOZeEKSNgNz
OP5qqRGW89FHoEMXoOwQk+EzAJtM3RGj7r/59uq6P+D/qrNz+v3y5JtvTy9P
jvH3q6/Gr1/bX/iJHvxx/u1r+R5/c2++PH/z5uTsmF+GT1XjozfjH/rE63v9
84vr0/Oz8es+E7SvShN65ogaCZqMq0LjtoDbAMZPQU0ldFH/9m+9FyBBdg/U
/f0Xl69e7u3ufv7unfzx2e6nB/DH3UJnLFtItvGfcBJrFa1WGlA1yXpI58D3
4OxTwAOYpQRpkSnga8SsHPQQv6MiNgjSoZsDjsGRzYp8icuA1e3hkgZyRsJK
gekXS9zLLEG2hPMc9Xr/ohCJpmsPm8AK8omTGCqBKdP21Ik4QDA4uYDqBcgG
/O+2G1UUTY1jmt89vQ25TgXckLnCSk9RApdgAWVVMi2tHeATL2lW0XSa11nl
zwNStECS6ZrQWzWv0DDz8bfXX51fnl7/gDo7S5hVChwcz6YAEABVVMK7jZYR
7I2oWKZicdNgqTOk4DtvF0ZQwTD0wTC6A7SDIbIG+xIyyws3NsGNRyyNBcHa
nznUJkrbWersl87TtYX3zwdGSEuDuDQaxCWf4DUqD222PMCzQcVCXb84dnpn
IMiCZ/bUljM4CPlp4YYLbw/QrPIEzl2CnA6GBcIukcEaHxdInnLQQ/nGpohD
QOQIbo4mJ4gENkiZpZF7vevz43Ow+wGXUYxMkH9P06gsj9TpGYKZ/kBZqVca
/smqL9TVdy9fIImdng2JCEB9E7klSM+LDExcn6+nxFyfgwpRa+DcZcWQuENF
Sewm1Njl0ODT/tXt9AIVi7JvtUZahJF4CGLmaJ8fHO68ezfqfZuRSMCnBh34
7PCFgE4TFAl5GPoE9P51VMx1hWwL5kx0GotBBSsvracgHDMEP+wpE8VHRDet
BkYBhnCbJzHKq1ldktqiqzuteVBRzVk/5LUTjABRHNQ8/ZQGn6w3LUisTHKT
noLiwgrrXQIsY0IW2/TGUAYiE/L00/EZsog5zMrKvedjPQ3seQSIQ6qiRpdJ
RAI6IhlLaM5ngPhKjA2l+Ry+I8sTWPpQ4Sh3ixzQ4vJ4fD1GuJRk+PkWL8FA
NtN3u+mPYABvc/67qOCB/lejGW6eCGCYoI0yVCfoS3BP4OeAFqX76GuUhKjm
O3vSqpP2oe9w0I7hcKRICaHoTnKWI0HFOJvmKDrb4+AaeKhgANJxeG18YhoN
dNRdWB1tD0TrVGRCEkugBRg6JmunCrcO53y6XKWs5VVkE6O2VmijrxG7gnWT
OgKYCR9bgmXOGiIfKRkguOa8BEcyXXgOZ0Q4iFj05Kvr64srx6yfhGbDLFqC
yqiNTWFMZBSgyGW9LZWGXyeF4ahMvU5Q3N8TgpK4GaLGj1wFFcULH/yv6GWe
j5G363hFMTD6/Cb0HniAMoaAg1zXwIlTkPTbaFqJy4gOBHDFnQIyH2b5am+0
izMH7FL9NoTsrZYsfdAuKnaLDUuNLIttoFIG0CGhCFxwAQQZ/8CeN9AX8WJA
JpAqKzhLtIR0A2sxlGIZgGb8ZXAljMWBfQfg8kGCwRXmTG6B5RrA/5bsuQ4g
M2TIo0PojF5R967MX/oWnHnTfjmiSQOSf3hO2qdZqDyKxFJnNxlyciOsHjh7
VPGZaFobZlA/vALheuZdxhzClvEKFYbkLaibXVPSAY1BCjFlkGfRQOi9611b
xYXUgIh1TDTvliuQWYhiI3Wq5rUuyXORsKyPjN9nIB+WS1SdrUAsE+Bza7Ko
5hkYmvEXRPFM2N8jf+6g99ARLApfSbz6NioS8qmmOpuTTg90Cqoa6Orrbjbg
SzaDFkBaSn4+Gf7K/9mRnqhNPx4RP/Dz5Ddck6gRPqv0FmEoFyUW6p8JKAEo
aKrWS47dBdRu+LmHQw6/9gY9303VQEWkJQz5EGclV0dEESWQrRo+BQYUowGS
M6GJIx6Fb1wDUU3FRYTYqdG1835039uM7huhAsgD4yHD2aj0OAZDuhZisgNd
lD34UpPyOQDX5F1skPxK7neWV2Jug95czxcBdbvTZadHNCnJnc86L9FvlN5F
69KAF4MEKRxYpQLZgAAP5GwXen+yo7beXL3YfogEPtlVW6/hmd+YOneOlPp5
86yBdNj08/NvvKa9rjUJU/NVK5YYf8yaDo4e4mLNNY1Go46HfnMutkI/mHjJ
GT6ooaEgNEZwcH63LD2vciAtcY0TJ8EoABmmwE7CjZgQ5V1epzH7/jg2ETsX
51vkPUCKO7IE1lvPQZG9TfQdHZio3EilxvZsOUKujF+haedxFKdI9EyV9XKJ
HnqKTPPjVp/3B3fGqTcBCcoRKY70lQtweP48ZDdokYA6g1FMYEIDlNOYr2Kk
APvJcLSRHQuncZ+zxTLNKaBogofE0Nyw7t33xFLQu29Ejosn46etlR3bFbCH
qGavxKZFo0bCURix5987I/lqTZqDhO5/3Rr8QCIZHAZc0Uq//X22jaqS8aaC
ggZ4Q/vBk59oQjiS0OLFyso7ii32XuYZBiVAlxpYHKJoC01GERmUcSlOSNkb
uS6zjysnHuCJ9rQjN9SDkaY2XnpvChAfRjgJtREIYDAPW72RxJuLaIGQwH2I
GUnhcBLQzlxryWmMyqIvHmm0CXeCFXmPTPieXF6hG9v4kj4uVV+Ooe9CMoOW
k1Eci6DDlKiFk9HMmvo4jinIHEZ5Kd5U4NYw+OyC4aXWbVe/2hJb/oydAOMn
Y/gxru5tx1uCdzal/zD8jYW/uj2gZ9zfh8SLt9FJ/C1HL3mkS/Gsey5hcdO/
Gf9gU3eWdVolq9RY/XCm4/bDHpVxtI0DVeiEhS2i582EAMrNKQ+iK3kvmg1W
C8PXjUcdTmBW0S+kMAmlRxLUNakh5n3he22Kh0P191IqExkzASMKauOTgDfI
OFjx1EUBH+V1yRRd+lFIA5ao8t/jZU4jdDUJKUjkmWgwSlLOIrmStCgEKmig
5JnKVZqDqskxeNRx6c33cSwWlpcGEfGvj9QVkB+8bHPJruoV2n2EAgaWAMdJ
bgla5A9m3ei4mRTFKjQGb1WVION4gS+20T0IKji3Lien4SnVRcmxY1htbaK8
foyQDSCTM3CCyRSzNKL4aEl7aiUgwNtepMcsAWCaU7xWOCLuy8c02NCc3Ipe
aJyce61IFyXdhbGbxpSES7I6GANMmyLRkikBWk3JsC+7IANiE3CIXEigoSQ2
cHZ+cY3ne339usWw7u//Bxhbh599vou8iqA3MWZMwZkAwh77NFkfGco2PjNA
TYszbcQiKZ30Jh86LPgFjLVnlkHw/wrsH9j5KziGUny2xXrAHJssnaO2SbLJ
HGmZIKDHDn/Z/+VVsDpQwT/5yzVFoYeXL8+PT0Rxl6G/O7m8Oj0/61DoP3hW
sCt+Pj7/+eX5z8cnDfvif27Q63/VrMAnKpu6APvDk4azQ0WKsBVxbW1V6lKM
dcHVOoNzI2+jj3te9C2LNxMIzCKRSUcTknfGy0DeBw/tbJpdXFgeoQwaxIkq
LrnWJxImje1MIuu89ZAfnrKSgJdGFKGWmD1Gn/RQNidhAXb7j5gZXsqgD6Yo
kXI6rasOXd1mupzOCPImq8MfqVRWc4rUPMHctY5cv4BtWEgR/6CMG5uaadNm
Je6KQblwuqip85s4o5/Rd5qJNAFYl/rhBaAwRDHkwdwMSbDhVLw1qW2iAwBD
kSQ9x9CDFGYzECrMKPvQqXSFC5pFaTqJpje8P34YAA5zs50oss+k8pYmzXFe
RwVgr9Zlt9bHh4RGqH/Kkpb54Nl0AUbUhAZUjPJPwTHgnMyQsdYCGfKVxshu
nJWw5qFsIi/Kd+9cNlCQjkUBbEmBJFGLAIlB6Z4XEQa4qwrAZDD5gsyrIWVQ
keI9UN9c/3Bx8pwrR3qXLrxc+vHoEFPyzkw7QwAD+KfAbyQ2c+zFr8ykhSaV
0WrvxioBJTsmraMptJzD8JAdhgiyg539p6Rvhxqfgz4yCFTwvRg17Yx8gGRV
EVA9EFjhG8TxMW6dzOsi8h3fTGEu5REMU2IvSUu+k7vdfQvcKW+b3OR5Nend
cF6vMOf7bYRxSEd3Zovhq0HaFzlLkF5QF7QJowb3bpOIFs8e1/2nn38KiGWC
Jwwcl37GpMSQYn5aYYY4sVymZlQF8Z8sDxCc+ZDvwOCsaDcQJ/v4JQ842l1S
asHUcTrHDS44Ca7/CoWEiLEXGvik0X+B6MflTV/dfzTjR4YT+Ppdr6EWSkkT
uWMLtsT47GfewPimZZykBt2gxEItzKM4h90JRt9vKf7soejT0f5o3yEp0zUB
wDyxPzowYR5SxQ4/3cOcNAGwqvTbSvX3Rgo3vXFh/Z4bbjcckOkC89Xw/Mit
ZlxksGoGRfye9RrW7Xs20OHNXJiKCbAWoql+S0CJEl9izvtn7okwnmiso8hJ
NFoTiFJZkHx0mjKemGKExDlJUPrYPQCGfI92XhTaUcKkpVwmKHKJxAbq5tEc
+iLXgUtAa1TlWMePoWORq5YL5t5HvuOIpCmsmFISvFWlIPlSYlB0PpFaJm/J
HWrNw4ZDb+C4aLeU8cxaUbyAjqmwwk9FdQU3mBeLjA4tMaZ8hFQBqlmBzhMM
LKDpkhkuxGE7Nin99MNCa1Hgn6kiz8V5J+rXkJiFNz09OFJX52P0UNNfWDM3
wq3iBzIQf+aP9EnTz1F6L/vDlQDvYMjwQx7Gm8p99dDCG6P4E4Koriej1rQy
fPNbNwmfZdc89Ce9FrzqLZ09TNGs0oXjGRMNpz5gHViRdkQ6KKY6o/RiQYRZ
rMyeOZTH1nCnWsf8n/I/yevKDJ+c4eKIIGRLpOJlnue2PsGV1KD96jYxYBcN
Pi7VN4G22npaFP4MAwSI4P4kopyhtEHwsHbOSbRXZ+M3J8xzX5+yBsYZtc2k
F58J7jWZIKA1DyQBQb/Q6o6HKjVVkbLzFpbA03GMkgQNAklyTkWfKdtKunF7
iIMbn26aQp5OVazFbCHjbdQ70wmxpPt7x74zYl9txwg5HT3nR41nRIt+xtq5
oKN9Fq2jfFVjZasi1jsOcIX3a0utPB60wER6TO2zKldQKOJzJHMek3XTYNvw
VKDTSNmB4Zf+KxQDYVf2dD1NMVQjSZ1TKWR5AnBKMT6LAk1C2JiUVpESyEdB
Cr4x50p3bqOedZqx9QuP6IwKRQGLQTmjmBjWApViZN7SQUTLaK6t5YMeYjx2
VNmSDHaEFRqcLcFUK05kE4hA49VUbBg3fcbnMBKtBzfEegLYC7EzZ10wAzFx
5cwFQOIUC5RcdQIlQXbKGoTp7CHFhDUmf46JpgR4IKddYGKYxLlE9Io1HEbp
VdlYE1pEVITGVYUZEJQfyxiF8pUVSZb0bI9tsSODlU3WViiPd9svABExBYu4
qqJCPNBM4frHmpMsvsE/R/ZBMAbJOmCSJl3FePBCHVx03oZN5LkFtiwFD1Cp
MvDdRn69zCUPOtWzapkDTNIImLkkofGKAnuAtW9eLK6lTxxQvh71LUOxa7dB
l+OrAek3vG3YcN++NaLzeZ3nNwTaNMfk0/UwusVaeeo80NBL0BE+wHS0gh2Q
leFSZs0Giq+8k6Kv4HQWenrjKuJQdzMJHaFeN0KDPDHq3SBkjNa8RhrDQIRm
SrUsS+jiq/xOk7GW+Ea/qTUoldg/uThhKLOjBLtIZNTWrAF8tvFmeU0Fo8ZR
/2J8DEgLO9vuWib6R0w2CC7Zr3d4Zr7petF4dlAKoB6MjIJ8FIbwyASzxxQg
bwB1xXWA+Dds1eaCN/Ro3Dx59fhLb5Vdi8OSUC/OybUbMLphSG4pVjQCrO0B
xYg/+Qq0zZQ6ONQrPh+sgQTFMjw5b4TKH+ExBERoO889tQhM7qRA9lXp1UC8
TiSZ9R0wG1CTCsAmtJMYl48ZYhuHwAXGOZUa5KI56bdTEgvIspZYD4PYja0w
TMpPQ8Q7js/mFSldXnyY8k6fUaTw/r7K8+Gyni6GOCBHHXk8muUKV7T3cRnw
YZMUOJuxE3+yDnUErzjC8Og7Wiithj1NfeI5z0e+06SPjKX5xVXf+FJMBsdk
7SWj4ogOA8UZ4/oRiBeAi6jYs+El4jdz9O8/aqYu+67ajkAozQrkW3D2SeUk
1qTLveYra+zDXtXFSio8pTrZCwOVAQuiRD3CXJI3pxeeduwV0zuPLTFLV6bd
pT9tLPBBpZSqxrwo7xElzBFanF5g0NdOj1P5cwfvHYbvHT7qPW6qYd8LOjn4
bzxjqrAjLuuSArMzXQH/jGFAib1zf5TEG9PTwuXkrIIW2ZImI5wY8xBKdSGm
9gYXahhqNrXshB7E6IRVZnk25JzbZh2E1Gl7OeuU7CQ5lQ8E3aloJV8uo2bO
eB6GC7owJ1phZXiRIKJRNcCachIoQxwduWAWomIjuY/s9Xv6+dM9WxB5sLMj
ccAgTfJxqw4TMf31UdOBTFfE7SbrSszNgZX4GB1F2+vWYoGs/3GAtFUgIZqI
TcY5xlTfO0TFjl3tPuKgEmRgPVkz+DuSRR85I+X1R8jA0XzIaFTB1ojGG8p4
4RLuyCIlaKDfhEWWLeFmHzMt0q+Yonel64m0sqBH/WVbfWNCmLWiM4ldYgrP
uv6CfgNLdp6LRQnvT5LYpBGR7jpLUnK9RVS+LmvmmU0CRlWA6oEjjMjbbpRA
Lm2jBIksZqGG/uMvrA1plWBb0OIojZxttnaGMxgYouLoDqzJKQa4MueBs6l7
VKWB2/BRGYi69emhfBpxNVRYmtExgKytawjvU0Ia92kDdfALtthQbGPSNXnC
ccNSo8BMTVLlu2H2zOpv7htRxKx3Mcj/aTaBCXgh8jvjX2WVyNvJoMG0SVJJ
hneAizh5g6PLaIJZx1KfHORwLDXgWHswrosKgi4Wrkq4SRuwAQ2Ack0Rr8Cf
y7SIm2XHu9djpCMWPHDOGmQxFSbANLIhCmQDLmhkmTBulppgUH4fulu9TicD
9XR/pNT3CySzyOTEBlMr8qG7qQy/bPTYKAXE0pQEPxmQXURuhzoo3I4oZlPZ
8IUUtVOIkPUWow2z5uJFWYPCYUar+4849U283H5ufVgZLp0bfHODapp012uu
OUbWFOzcyYmTpAQlExOa+0kXuRWZxpHjGSReLo6o1tj16qF1S6ul32Tdzszw
SpNBVxfnCFls8jo6hGgTVFeL7IPcD50ckDB+C+wNr64Ddb0npxffHZLVuE0L
pjFNnt4G8rekhjTGrhTSslyrEqBgfIWC8Wi8eSZKxdxM8h14Rw0t4kmgWBxK
JYlLCvCp1TWJAisTWY1Re4QERDHwLc7HrChq8ZGk9KYPpjYpgnTW9HzAl2hq
Vqt5a6GqPOq9FAO59DnnL15w1sXiPnjRDgsdenIq4KVJsRMZxLZ9ZIOxQVCe
Q3SmMQMHI8ivw6OLibuM3ibLeqnSHPZJbSGa+WgNU5awlBM1dWa4qgVF5qWG
g+Z+q42sHIT+AfZ8elbuCt1UU2pEY6E77nRyUlJlYiqAQS/7aY1qUCraAE3j
4v5s1uqCcnq9cyywUWDGv0l2qXFhRCnsKuby5ruWK4B0j5hEDUxiekXBUaSY
rgycPSc6cNhU5aYrlm3GFhNhm1hCjkEDT35a2Tqjlm0WbqDMWdIrgeacfeu5
CDA4H7g+JRRv0jC6MhSs7Jx6yRjSeMUlfZjcCydtbMLDNE3IL73FqUwSP3u+
s83c0Xvjwed3twVCwvtCF1agaUiWmlUpTaacOH5MduegmVmaSImavxoTLyAB
G27sJS+0mcNi1i9ekrqVvhUm2I6CiPgDRyDrNuGBrkkHFJ1rSO5gz+LewoXJ
ziMv+0for9BocjOJt3JiJZotjxqEx1yjRyQauclGvReatQDB08F7ASDWvIQQ
2JVq09JCcJgsheahjHoXWGVHGpQ2iqNNK3EZkexnaxQ0AHxGekTe22bO04xq
IuBRkvOAfMtoRSDSyFIwJu/yqEziBKLadIqZScixCy3yAMvj0c3rwjitPfSu
73LXBQFVhNLmHjwIP8EgLlNp4RBomJj1w2FWw+WderkB/UGVBPpieytISHtl
0yxgauMwsMtsbMrve2IAFLY9abcwkpA415bRM1JMQ43AmqUkA6VH85G6/ss1
2iw1zGh4luVINKKfUUb4BkADtYsBJjZQowOTGEG2zC3a2DrJ5V7h3l3EdGCs
IeCyTom1mDJrJGU1QOPGcaXmDJc7bUMBJhWEc7iw+6l0RmUS/cTljgYlQJjz
b/JXAELNfLv1Fw/ihlc1dHlZmnYUFKc4yznusJF/LpP5AhsD3YhblWP37I7W
1EyOGSEt2dmG3BUsnHdLAn8D6/ewGUPltqSlykCWBaJEpwjSA4R4mrnYjo/B
hvdydz9TYGUKsxy/DWomHmL9gojkCY3a6NdK9Wk8IVrj2V+Oz9+MT8+kocr9
PT+WvWV72tYUNN/mk5ho0wRIGJ5LebR9BOV8GIspmYxicsLpu6Q8Ew36nvzm
KszjB3TmqM6GvQEJw2M9QXDaRVJPF9jV91+KntAJSNid17+OFIB6ZbRFVvWt
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

-->

</rfc>
