<?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.43 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-munizaga-quic-alternative-server-address-02" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title>QUIC Alternative Server Address Frames</title>
    <seriesInfo name="Internet-Draft" value="draft-munizaga-quic-alternative-server-address-02"/>
    <author fullname="Marco Munizaga">
      <organization>Ethereum Foundation</organization>
      <address>
        <email>marco@marcopolo.io</email>
      </address>
    </author>
    <author fullname="Marten Seemann">
      <organization/>
      <address>
        <email>martenseemann@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="September" day="25"/>
    <area>Transport</area>
    <workgroup>QUIC</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 35?>

<t>This document specifies an extension to QUIC that allows a server to advertise
a prioritized set of alternative addresses. This allows a client to migrate the
connection as the availability of, or preference among, server addresses
changes.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://marcopolo.github.io/alternative-server-address/draft-munizaga-quic-alternative-server-address.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-munizaga-quic-alternative-server-address/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        QUIC Working Group mailing list (<eref target="mailto:quic@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/quic/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/quic/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/MarcoPolo/alternative-server-address"/>.</t>
    </note>
  </front>
  <middle>
    <?line 42?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>QUIC supports client-initiated connection migration, allowing a connection to
survive changes to the client's address and enabling the client to select among
available paths (<xref section="9" sectionFormat="of" target="RFC9000"/>). A server can advertise a preferred
address during the handshake (<xref section="9.6" sectionFormat="of" target="RFC9000"/>), but cannot update
that address or advertise additional addresses during the connection.</t>
      <t>Some deployments have multiple server addresses whose availability or relative
preference can change over the lifetime of a connection. These include
multihomed endpoints, relays, proxies, and peer-to-peer systems.</t>
      <t>This document defines an extension that allows a server to advertise a
prioritized and replaceable set of alternative addresses. The client remains
responsible for validating these addresses and initiating any connection
migration.</t>
      <t>Address discovery and NAT traversal mechanisms, including hole punching, are
out of scope of this document.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="negotiation">
      <name>Negotiating Extension Use</name>
      <t>Clients advertise support for ALTERNATIVE_ADDRESS frames by sending the
alternative_address (0xff0969d85c) transport parameter (<xref section="7.4" sectionFormat="of" target="RFC9000"/>). CURRENT_PATH, IPv4, and IPv6 are implicitly supported. The value is
a possibly empty sequence of QUIC variable-length integers (<xref section="16" sectionFormat="of" target="RFC9000"/>) listing additional supported Address Types, read to the end of the
parameter value. Values <bcp14>MUST</bcp14> be in strictly increasing order and <bcp14>MUST NOT</bcp14>
contain duplicates.</t>
      <t>Servers <bcp14>MUST</bcp14> ignore unknown Address Types in the list and <bcp14>MUST</bcp14> treat a truncated
integer as a connection error of type TRANSPORT_PARAMETER_ERROR.</t>
      <t>Servers <bcp14>MUST NOT</bcp14> send ALTERNATIVE_ADDRESS frames without this transport
parameter or include Address Types not supported by the client.</t>
      <t>Servers <bcp14>MUST NOT</bcp14> send this transport parameter. A client that supports this
extension and receives this transport parameter <bcp14>MUST</bcp14> abort the connection with a
TRANSPORT_PARAMETER_ERROR.</t>
      <t>A server <bcp14>MUST NOT</bcp14> remember this transport parameter for 0-RTT in a subsequent
connection.</t>
    </section>
    <section anchor="path-validation">
      <name>Path Validation</name>
      <t>Advertising an alternative address does not create a new path or initiate
connection migration. As in <xref section="9" sectionFormat="of" target="RFC9000"/>, clients remain responsible
for initiating all connection migrations. A client initiates path validation by
sending probing packets to an advertised address and only migrates after
validation succeeds. Packets from unadvertised server addresses are handled as
specified by RFC 9000, except while validating an advertised address as
described below. Such packets do not create new paths.</t>
      <t>The response to a client-initiated PATH_CHALLENGE can arrive from a server
address other than the address being validated. <xref section="8.2.2" sectionFormat="of" target="RFC9000"/>
requires the server to send the PATH_RESPONSE on the path where it received the
PATH_CHALLENGE, but prohibits the client from enforcing this requirement. A
matching PATH_RESPONSE received on any path validates the path on which the
PATH_CHALLENGE was sent (<xref section="8.2.3" sectionFormat="of" target="RFC9000"/>). The server <bcp14>MUST</bcp14> also
validate the path in its sending direction before sending non-probing packets
on that path, following <xref section="9.6.2" sectionFormat="of" target="RFC9000"/>.
Consequently, while validating an advertised address, a client <bcp14>MUST NOT</bcp14> discard
a successfully authenticated probing packet solely because it was received from
an unadvertised server address. Processing the packet does not validate its
source address or make that address eligible for migration.</t>
    </section>
    <section anchor="alternative-address-frame">
      <name>Alternative Address Frame</name>
      <t>A server uses an ALTERNATIVE_ADDRESS frame to advertise its complete set of
alternative addresses and their priority hints. Frames with higher Sequence
Numbers supersede those with lower Sequence Numbers.</t>
      <t>The frame uses the following format, following the conventions described in
<xref section="12.4" sectionFormat="of" target="RFC9000"/>:</t>
      <artwork><![CDATA[
ALTERNATIVE_ADDRESS Frame {
  Type (i) = 0x1d5845e2,
  Sequence Number (i),
  Entry Count (i),
  Address Entry (..) ...,
}
]]></artwork>
      <t>The Entry Count field contains the number of Address Entries in the frame.
An Address Entry starts with a variable-length integer Address Type
(<xref target="iana-address-types"/>). Except for CURRENT_PATH, each entry <bcp14>MUST</bcp14> include a
Priority Hint immediately after the Address Type. This document defines the
following entry types:</t>
      <artwork><![CDATA[
CURRENT_PATH Entry {
  Address Type (i) = 0x00,
}

IPv4 Entry {
  Address Type (i) = 0x01,
  Priority Hint (i),
  IPv4 Address (32),
  IPv4 Port (16),
}

IPv6 Entry {
  Address Type (i) = 0x02,
  Priority Hint (i),
  IPv6 Address (128),
  IPv6 Port (16),
}
]]></artwork>
      <t>The CURRENT_PATH entry is a sentinel that separates the address entries into two
sets.</t>
      <t>When multipath has not been negotiated, entries before CURRENT_PATH have higher
priority than the current path. The client <bcp14>SHOULD</bcp14> promptly validate these
addresses and migrate to a validated address. Entries after CURRENT_PATH are
backup addresses. The client <bcp14>MAY</bcp14> validate paths to these addresses, but <bcp14>SHOULD
NOT</bcp14> migrate to one solely because it was advertised. The corresponding behavior
when multipath has been negotiated is described in <xref target="multipath"/>.</t>
      <t>The Priority Hint field is a QUIC variable-length integer. On each side of the
CURRENT_PATH entry, lower values indicate higher priority and entries with the
same value form a priority group in which the server expresses no preference.
Entries on each side <bcp14>MUST</bcp14> appear in nondecreasing Priority Hint order. Priority
Hint values have meaning only relative to other values on the same side of the
CURRENT_PATH entry; values on opposite sides are unrelated. A server can assign
the same value to every entry.</t>
      <t>A frame <bcp14>MUST</bcp14> contain exactly one CURRENT_PATH entry. Receipt of a frame that
fails this requirement, does not order entries as required, or contains an
unknown or unnegotiated Address Type (<xref target="negotiation"/>) <bcp14>MUST</bcp14> be treated as a
connection error of type FRAME_ENCODING_ERROR.</t>
      <t>Priority hints are advisory. A client <bcp14>MAY</bcp14> use them to decide which addresses to
validate, which validations to perform in parallel, and which validated address
to use. A client <bcp14>MAY</bcp14> disregard priority hints based on local policy.</t>
      <t>A server <bcp14>MUST</bcp14> increment the Sequence Number on each ALTERNATIVE_ADDRESS frame it
sends. A client <bcp14>MUST</bcp14> ignore an ALTERNATIVE_ADDRESS frame whose Sequence Number
is not greater than that of the most recently processed ALTERNATIVE_ADDRESS
frame. Therefore, a newer frame atomically replaces an older address set even if
the frames are received out of order. An address omitted from the newer frame is
no longer advertised by this extension. The client <bcp14>SHOULD</bcp14> stop probing or using
a non-current path associated with an address that is no longer advertised.</t>
      <t>ALTERNATIVE_ADDRESS frames are ack-eliciting and <bcp14>MUST</bcp14> be sent only in the
application data packet number space. Clients <bcp14>MUST NOT</bcp14> send ALTERNATIVE_ADDRESS
frames. A server <bcp14>MUST</bcp14> treat receipt of an ALTERNATIVE_ADDRESS frame as a
connection error of type PROTOCOL_VIOLATION.</t>
      <section anchor="address-selection-and-reachability">
        <name>Address Selection and Reachability</name>
        <t>The mechanism by which a server discovers and selects addresses to advertise is
outside the scope of this document. An advertised address is a candidate and
does not imply reachability from the client. A server <bcp14>SHOULD</bcp14> limit the
advertised set to addresses that it has reason to believe might be reachable,
and <bcp14>SHOULD</bcp14> update the set when it learns that an address is no longer usable.</t>
        <t>Advertised addresses can include private-use IPv4 addresses, unique local IPv6
unicast addresses, and other addresses with limited scope. A client <bcp14>MAY</bcp14> decline
to probe an address according to local policy. A client <bcp14>MUST</bcp14> successfully
validate a path before sending non-probing frames on it. The request forgery
considerations in Sections <xref target="RFC9000" section="21.5.3" sectionFormat="bare"/> and <xref target="RFC9000" section="21.5.6" sectionFormat="bare"/> of <xref target="RFC9000"/> apply.</t>
      </section>
    </section>
    <section anchor="connection-id-management">
      <name>Connection ID Management</name>
      <t>Each endpoint <bcp14>SHOULD</bcp14> advertise an active_connection_id_limit that allows its
peer to supply enough connection IDs for all paths that the endpoint might probe
concurrently. This applies in both directions.</t>
      <t>The server <bcp14>SHOULD</bcp14> ensure that the client has a sufficient number of available
and unused connection IDs, as the client will be unable to probe paths without
an unused connection ID. The server <bcp14>MAY</bcp14> bundle one or more NEW_CONNECTION_ID
frames with an ALTERNATIVE_ADDRESS frame. Likewise, the client <bcp14>SHOULD</bcp14> ensure
that the server has enough connection IDs to probe new paths.</t>
    </section>
    <section anchor="multipath">
      <name>Interaction with Managing Multiple Paths for a QUIC Connection</name>
      <t>The mechanism described in <xref target="I-D.ietf-quic-multipath"/> enables a QUIC connection
to use multiple paths simultaneously. This extension complements that mechanism
by allowing the server to advertise addresses for alternative paths.</t>
      <t>When multipath has been negotiated, the client <bcp14>SHOULD</bcp14> promptly establish paths
to addresses in IPv4 and IPv6 entries before CURRENT_PATH, as described in
<xref section="3.1" sectionFormat="of" target="I-D.ietf-quic-multipath"/>. The endpoints' multipath scheduling
and path management determine how these paths are used and whether they
supplement or replace existing paths.</t>
      <t>Entries after CURRENT_PATH remain backup addresses. The client <bcp14>MAY</bcp14> validate
paths to these addresses, but <bcp14>SHOULD NOT</bcp14> start using them for application data
solely because they were advertised.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="request-forgery-attacks">
        <name>Request Forgery Attacks</name>
        <t>The same considerations from <xref section="21.5" sectionFormat="of" target="RFC9000"/> apply here as
well.</t>
      </section>
      <section anchor="ddos-thundering-herd">
        <name>DDoS - Thundering herd</name>
        <t>A malicious server could establish connections with a large number of clients
and advertise a victim endpoint as a higher-priority alternative to all of them
at the same time. If the clients all migrate at the same time, they may overload
or otherwise negatively impact the victim endpoint.</t>
        <t>Clients may mitigate this by randomly delaying the migration.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="quic-transport-parameter">
        <name>QUIC Transport Parameter</name>
        <t>This document registers the alternative_address transport parameter in the "QUIC
Transport Parameters" registry established in <xref section="22.3" sectionFormat="of" target="RFC9000"/>. The following fields are registered:</t>
        <dl>
          <dt>Value:</dt>
          <dd>
            <t>0xff0969d85c</t>
          </dd>
          <dt>Parameter Name:</dt>
          <dd>
            <t>alternative_address</t>
          </dd>
          <dt>Status:</dt>
          <dd>
            <t>Provisional (note that, prior to publication, the value will be replaced by a
new value that encodes in two bytes)</t>
          </dd>
          <dt>Specification:</dt>
          <dd>
            <t>This document</t>
          </dd>
          <dt>Change Controller:</dt>
          <dd>
            <t>IETF (iesg@ietf.org)</t>
          </dd>
          <dt>Contact:</dt>
          <dd>
            <t>Marco Munizaga (marco@marcopolo.io)</t>
          </dd>
        </dl>
      </section>
      <section anchor="quic-frame-types">
        <name>QUIC Frame Types</name>
        <t>This document registers the ALTERNATIVE_ADDRESS frame in the "QUIC Frame Types"
registry established in <xref section="22.4" sectionFormat="of" target="RFC9000"/>. The following fields are
registered:</t>
        <dl>
          <dt>Value:</dt>
          <dd>
            <t>0x1d5845e2</t>
          </dd>
          <dt>Frame Type Name:</dt>
          <dd>
            <t>ALTERNATIVE_ADDRESS</t>
          </dd>
          <dt>Status:</dt>
          <dd>
            <t>Provisional (note that, prior to publication, the value will be replaced by a
new value that encodes in two bytes)</t>
          </dd>
          <dt>Specification:</dt>
          <dd>
            <t>This document</t>
          </dd>
          <dt>Change Controller:</dt>
          <dd>
            <t>IETF (iesg@ietf.org)</t>
          </dd>
          <dt>Contact:</dt>
          <dd>
            <t>Marco Munizaga (marco@marcopolo.io)</t>
          </dd>
        </dl>
      </section>
      <section anchor="iana-address-types">
        <name>QUIC Alternative Address Types</name>
        <t>This document creates the "QUIC Alternative Address Types" registry under the
"QUIC" registry group, following <xref section="22.1" sectionFormat="of" target="RFC9000"/>. It covers 62-bit
values, recorded in hexadecimal. Permanent registrations also include an Address
Type Name field containing a short mnemonic.</t>
        <t>The initial entries are:</t>
        <table>
          <thead>
            <tr>
              <th align="left">Value</th>
              <th align="left">Address Type Name</th>
              <th align="left">Specification</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0x00</td>
              <td align="left">CURRENT_PATH</td>
              <td align="left">
                <xref target="alternative-address-frame"/></td>
            </tr>
            <tr>
              <td align="left">0x01</td>
              <td align="left">IPv4</td>
              <td align="left">
                <xref target="alternative-address-frame"/></td>
            </tr>
            <tr>
              <td align="left">0x02</td>
              <td align="left">IPv6</td>
              <td align="left">
                <xref target="alternative-address-frame"/></td>
            </tr>
          </tbody>
        </table>
        <t>These entries are permanent, with IETF as Change Controller and quic@ietf.org
as Contact. All other values are unassigned.</t>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
      <name>Normative References</name>
      <reference anchor="RFC9000">
        <front>
          <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
          <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar"/>
          <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson"/>
          <date month="May" year="2021"/>
          <abstract>
            <t>This document defines the core of the QUIC transport protocol. QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances. Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9000"/>
        <seriesInfo name="DOI" value="10.17487/RFC9000"/>
      </reference>
      <reference anchor="I-D.ietf-quic-multipath">
        <front>
          <title>Managing multiple paths for a QUIC connection</title>
          <author fullname="Yanmei Liu" initials="Y." surname="Liu">
            <organization>Alibaba Inc.</organization>
          </author>
          <author fullname="Yunfei Ma" initials="Y." surname="Ma">
            <organization>Uber Technologies Inc.</organization>
          </author>
          <author fullname="Quentin De Coninck" initials="Q." surname="De Coninck">
            <organization>University of Mons (UMONS)</organization>
          </author>
          <author fullname="Olivier Bonaventure" initials="O." surname="Bonaventure">
            <organization>UCLouvain and WELRI</organization>
          </author>
          <author fullname="Christian Huitema" initials="C." surname="Huitema">
            <organization>Private Octopus Inc.</organization>
          </author>
          <author fullname="Mirja Kühlewind" initials="M." surname="Kühlewind">
            <organization>Ericsson</organization>
          </author>
          <date day="17" month="March" year="2026"/>
          <abstract>
            <t>   This document specifies a multipath extension for the QUIC protocol
   to enable the simultaneous usage of multiple paths for a single
   connection.  It introduces explicit path identifiers to create,
   delete, and manage multiple paths.  This document does not specify
   address discovery or management, nor how applications using QUIC
   schedule traffic over multiple paths.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-quic-multipath-21"/>
      </reference>
      <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>
    </references>
    <?line 344?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO acknowledge.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
XerxK5qG+Rfl4akC1YG+xMOmFdYsgJbu9VseH+PzmIgJIH2YcbAhhDxXGY/k
Zc1ubnWhQjm7ibWBD+r3XNdq2AKm5ZAXouG5V8zWoOCE01mMuVzFY5CXWfc8
nRfhjiJNCglPfV56BNQm6aCPRDC2SQVnYhQ7ScBxChXL7L5mqOgexUFBg35f
3M5VWU3VOZYEoVdLlia26x/1PJT29rzu/id5xUC5abXjV7hCaGtaA0HS74oD
M5nXIi7CCgQxFPUtaWoqIzmjkgZC90B9zqjXgNjcFGgkr5EnLbkhG+gDhA8x
y3RpN4jwoONE3LEIFs7iYwUddMTcltUi9CdguK0TKPcD5eNj2sN6ehk7JtSz
oLoJss3ODsU7LKrvJhenl2fnFz/G0vqqx2RIy+CL2hrc+zj1fPRW0HCFegXE
oB0ZiV0Ach3ZHvgfu8KQggVQIMI1KB6jbwmxgJtbvae7gCXgHVh4TRRgwY2a
Aw9eI2JymlmuNEqTZ6VcmlLnq40GArWVKm5sqA0SE5xlN33UjgrntMpO203P
Uk8+5lhbU2iGzJwsGavEzHlPkZWxXLlh/YCZAMm42tpEEsyDMIo2lIMG3J3A
lghJkDlTQUQqyWPp0IHYsimLjvATDwbngTppJiK5Ynh0BR339H2QGNcd46+0
c76yYO6WLK+tgChVmpqaal3FQc0q0ENsLG3LgdaZZSxv0F0waEExhIVamj8x
IpicvYiJXycd6ZUUvikFQmV3X46cI/80VNR95bqtiG5IBSoFQiak2K2nviT6
IoA6C1WTZ7IW/gQ7hVb0V7uDbFibhL6kY9kkUeo5+D0fI66uL28vTy/f3/18
fvl+jA13rMhexEB0Q2eYoel3jW7iz+o4r8bjILSmDw5B2HCMxDSFT0NtL3ak
NZnFEyPKFRTUtx8bMeY2+j6UySEtFExU4IuIQRlb54j7TvIOpb5P2unXg67U
gGe2aFogOxY5yk+wcsRJMJvyYfsUsKIwUULyR7YYli7VQKAe/BJ89OpzuqMj
H5yrhBxd+6kTBPfA21qcbdS1LTtNgFSYHUMpArHyHlYZYiAnlp5wtrbWEJF8
2ERqDUkJsGtd+hA1/yixJ8e2VMWihlApaKf1WK1yPKbBQI6Oq9KNZDnwPD5M
Mf2QvRZZ02ZH18/J2Nefadp4xzWoTY4nmISVpQoOtLdCX0CY+b5przFr5dHh
6PvRd7Rv+to/PUcSVa7C4WXwqPMz+QFqxzklGCEmXBfyUXMwd3IQDMrI6fio
c8o7XdwFzHUHydhZoaNo7Pe1uDJMa9r5Iu0An59Zqk2xMewJOk7hj2BYBoYi
2QJ378MmbMRf48CoxVX1FIzdNcdCV6LvHBCr20Z1y3irLei4xLazGYRKHOjK
93j3gRygrVvbv48BexiEKyJ+tgcN+5ki/6Pz8Qgl3qI/LuEe1uZs/a4gIHLa
Yp+ZCB82nxA7F5Nf7k4vLy4mpxj07s7PRHIU82xEHcn3+pN6AFsOUol72hFR
O14K1M5248Wtpd3oF3yHLEvOSwhiiPAP4ULFFemCjM9lTILJxxddDbQeqdeK
pR23jQDtdK9FxSopuTXAHK2728FmsRoHslqZ1kZ0dcdG3HLjqyGknyiSgOSR
pY2trTcoYgRivHf9uqC1LRX7RrW+abFYZUOQwHs8dsETil6wB1VxBA3Hss+U
/QTmHf2470aH6BI7lc7YjTdVfp/sx+YLVbQl8R+8rYJjVQw8sCBopMLz8YV5
8DU624UKKeuvnUCm8ecSaiUorPDrdPWGyCGYzB/6BsU+00LwR1bf3EUQ39JF
YFaEXTzme1yFkNnXGJZYay7gruSD4pqmo3gvgMhA2MPkf9oL/0R2rn2GeMcZ
Qo6dg+34SyhUXq7lDCIQnU0xU2zJE3Q3A8+kHlRZMq06OzM3cgi6gYCk6BYV
PFNgtVJlSDHBcWKVa9qySDDZeV/sbJYZyJvEWX+MSOhIr43da3iv6vIBRWpu
Tgy75kTiUIh8iL9cilQihDKqhDVGwPNZ4kh0ETA2fdYf5osssL8V3d0qTVYI
JKAIQgyi6J20KtLoChgyv78m86i7wYEzQarUc+ZPmq5oNLBnU8EUBV7sCmGk
f8xwPr4YbzM/Bbd4sxfCqj9QXr/5BQUo+AXyWWofbrkIsu1U2veq6dKv2LKK
3fMTN0kECrE5IoxPvrqLGexfyfkAdrRCtcZiquJECLpqcSJOZHpFRYi4urzA
y6vw+5btCHHjMtda/PmqMffa8v2PfaDVnP8HXI1TDmunwTE5yHJHJuRxH1qo
6MMLuJjsfM8GMwFUxqbwjf0H4NArp+xLWJ8PhXlaFKNnEIAE3wkEm7oGVKEa
fOZ8cvtO7kO4msfL0zAVPgPYwgf6t4Hl/ubt3pcdLvhMhO5aPI+HZ5oHCQLS
+fbENxm+f3yz2/Bil+HD+Y0Q3eLR7tvKzv/a/XTrmSTfuHl8seWkaB0bfMPA
JobfOWHi/5QVqO7k/yPQ/UKt4O2HzwCRwzWInIMAXHkfHw2n2gnuseINLSy/
GGQL9TnDrh5knpG8AuoAxC2iOmQ6PE7vTrbiQZuIGOof3PFNarvACFfVqjJQ
Uvoigu9RlF17tAH8iS98GUx+6bc+aeYvsocD+UV8ORnSv/CZ/lsfg6fp2Aum
6RGWL6C63YfKT9K/dwgPEuH7xueP+Pnjb3he8AXlRBHYJGX1Dzi3E5YhTW8A
nShc7z+GCHyMQQ41NGbttBHPPXTulhMTwhv0SNbo3D3HLnSpijmRcvF4wlxC
FX/em4Hl1R7i+vLsEntg/kk1Ev8HHRqbeJszAAA=

-->

</rfc>
