<?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.1 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-v6ops-ipv6-only-resolver-00" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.18.2 -->
  <front>
    <title abbrev="IPv6-only Resolver">IPv6-only Capable Resolvers Utilising NAT64</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-v6ops-ipv6-only-resolver-00"/>
    <author fullname="山本 桃歌" asciiFullname="Momoka Yamamoto">
      <organization>The University of Tokyo/WIDE Project</organization>
      <address>
        <email>momoka.my6@gmail.com</email>
      </address>
    </author>
    <author fullname="豊田 安信" asciiFullname="Yasunobu Toyota">
      <organization>Keio University/WIDE Project</organization>
      <address>
        <email>yas-nyan@sfc.wide.ad.jp</email>
      </address>
    </author>
    <date year="2023" month="October" day="23"/>
    <area>Ops</area>
    <workgroup>v6ops</workgroup>
    <keyword>DNS</keyword>
    <keyword>IPv6</keyword>
    <abstract>
      <?line 44?>

<t>This document outlines how IPv6-only iterative resolvers can use stateful NAT64 to establish communications with IPv4-only authoritative servers.
It outlines a mechanism for translating the IPv4 addresses of authoritative servers to IPv6 addresses to initiate communications.
Through the mechanism of IPv4-to-IPv6 address translation, these resolvers can operate in an IPv6-only network environment.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Discussion of this document takes place on the
    IPv6 Operations Working Group mailing list (v6ops@ietf.org),
    which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/v6ops/"/>.</t>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/momoka0122y/draft-momoka-ipv6-only-resolver"/>.</t>
    </note>
  </front>
  <middle>
    <?line 49?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document describes how an IPv6-only iterative resolver can use stateful NAT64 <xref target="NAT64"/> to connect to an IPv4-only authoritative server by performing IPv4-to-IPv6 address translation <xref target="RFC6052"/> when generating a query.
When a specific DNS zone is only served by an IPv4-only authoritative server (which has only an A record), an IPv6-only iterative resolver cannot resolve that zone due to having no access to an IPv4 network.
However, by performing IPv4-to-IPv6 address translation and utilising the stateful NAT64, it will be possible to access an IPv4-only authoritative server.</t>
      <t>This document is meant to exemplify how existing tools can be used to
allow IPv6-only resolvers to reach IPv4-only resolvers.
DNS is thus seen as an application that uses NAT64.</t>
      <t>The document focuses on the exchanges between iterative resolvers and
authoritative resolvers but can be generalized to cover communications
between IPv6-only recursive resolvers and IPv4-only resolvers.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <ul spacing="normal">
        <li>
          <t>Iterative resolver:    A DNS server that repeatedly makes non-recursive queries and follows referrals and/or aliases, as defined in DNS Terminology <xref target="RFC8499"/></t>
        </li>
        <li>
          <t>IPv6-only iterative resolvers:    Iterative resolvers with only IPv6 connectivity.</t>
        </li>
        <li>
          <t>IPv6/IPv4 translator:     A function that translates IPv6 packets to IPv4 packets and vice versa. It is only required that the communication initiated from the IPv6 side be supported.</t>
        </li>
        <li>
          <t>IPv4-only authoritative server:    An authoritative server that either has only IPv4 connectivity or is registered with only an A record, making it accessible solely via IPv4.</t>
        </li>
      </ul>
    </section>
    <section anchor="motivation-and-problem-solved">
      <name>Motivation and Problem Solved</name>
      <t>An iterative resolver is one of the applications that require IPv4 connectivity. As stated in BCP91 <xref target="RFC3901"/>, “every recursive name server SHOULD be either IPv4-only or dual stack.”
This is because some authoritative servers do not support IPv6.
As of 2023, even some of the most frequently queried authoritative servers cannot be accessed via IPv6.
Without the utilization of an IPv6/IPv4 translation mechanism, IPv6-only resolvers need to forward queries to a dual-stack recursive name server performing the iterative queries.</t>
      <t>The current situation where an iterative resolver cannot operate without IPv4 reachability may hinder the operation of a network's own iterative resolver in an IPv6-only network.
Therefore, this document describes how iterative resolvers can be used without issues in IPv6-only networks by utilising NAT64 as an IPv6/IPv4 translation mechanism.</t>
      <t>The NAT64/DNS64 mechanisms enable IPv6-only clients in an IPv6-only network to communicate with remote IPv4-only nodes. However, applications that rely upon IPv4 address literals instead of DNS names will fail (unless 464XLAT <xref target="RFC6877"/> is used).
An iterative resolver is a service that uses literal IP addresses, so it cannot use the DNS64.
This problem can be solved by the iterative resolver converting IPv4 addresses to IPv6 addresses using the Pref64::/n NAT64 prefix and following the address translation algorithm in <xref target="RFC6052"/>. In doing so, an IPv6 packet conveying the query is directed to a stateful NAT64 function that converts the IPv6 packet to an IPv4 packet.
With this implementation, an iterative resolver can be operated even inside an IPv6-only network.</t>
      <section anchor="deployment-scenarios-and-examples">
        <name>Deployment Scenarios and Examples</name>
        <t>The deployment of IPv6-only networks is in progress, as demonstrated by <xref target="RFC9386"/>.
By operating an IPv6-only network and limiting IPv4 reachability to NAT64 functions, operators can optimize IPv4 address usage and concentrate on IPv6 operations, which is generally believed to lower operational costs and optimize operations compared to a dual-stack environment.</t>
        <t>In examples of past RFCs, name resolvers have always had an IPv4 address. For example, all three use cases for DNS64 in <xref target="RFC6147"/> are dual-stack name servers.</t>
        <figure anchor="example-topologies-in-RFC6147-1">
          <name>Example network setup of the use of DNS64 described in Section7.1 of RFC6147</name>
          <sourcecode type="drawing"><![CDATA[
            +---------------------+         +---------------+
            |IPv6 network         |         |    IPv4       |
            |              +-------------+  |  Internet     |
            |           |--| Name server |--|               |
            |           |  | with DNS64  |  |  +----+       |
            |  +----+   |  +-------------+  |  | H2 |       |
            |  | H1 |---|         |         |  +----+       |
            |  +----+   |   +------------+  |  192.0.2.1    |
            |           |---| IPv6/IPv4  |--|               |
            |           |   | Translator |  |               |
            |           |   +------------+  |               |
            |           |         |         |               |
            +---------------------+         +---------------+
]]></sourcecode>
        </figure>
        <figure anchor="example-topologies-in-RFC6147-2">
          <name>Example network setup of the use of DNS64 described in Section7.2 of RFC6147</name>
          <sourcecode type="drawing"><![CDATA[
            +---------------------+         +---------------+
            |IPv6 network         |         |    IPv4       |
            |                 +--------+    |  Internet     |
            |           |-----| Name   |----|               |
            | +-----+   |     | server |    |  +----+       |
            | | H1  |   |     +--------+    |  | H2 |       |
            | |with |---|         |         |  +----+       |
            | |DNS64|   |   +------------+  |  192.0.2.1    |
            | +----+    |---| IPv6/IPv4  |--|               |
            |           |   | Translator |  |               |
            |           |   +------------+  |               |
            |           |         |         |               |
            +---------------------+         +---------------+
]]></sourcecode>
        </figure>
        <t>However, it is necessary to consider the existence of an IPv6 single-stack full-service resolver.
In this document we consider an IPv6-only network where the iterative resolver is inside the IPv6-only network and does not have an IPv4 address.
This is to restrict IPv4 management to the NAT64 function.</t>
        <figure anchor="ipv6oly-resolver-example-topology">
          <name>Network example referenced in this document with an IPv6-only iterative resolver</name>
          <sourcecode type="drawing"><![CDATA[
      +--------------------------+         +----------------------+
      | IPv6 network             |         |    IPv4              |
      |                          |         |  Internet            |
      |                |         |         |                      |
      | +----------+   |         |         |  +--------------+    |
      | |IPv6-only |   |         |         |  |Authoritative |    |
      | |Iterative |   |         |         |  |server        |    |
      | |resolver  |---|   +------------+  |  +--------------+    |
      | +----------+   |---| IPv6/IPv4  |--|  192.0.2.1           |
      |                |   | Translator |  |                      |
      |                    +------------+  |                      |
      |                          |         |                      |
      +--------------------------+         +----------------------+
]]></sourcecode>
        </figure>
      </section>
    </section>
    <section anchor="solution-with-existing-protocols">
      <name>Solution with Existing Protocols</name>
      <t>This section describes the mechanism of an IPv6-only capable resolver utilising stateful NAT64.
We assume that one or more IPv6/IPv4 translators <xref target="NAT64"/> are connecting an IPv6 network to an IPv4 network.
The stateful NAT64 provides translation service and bridges the two networks, allowing communication between IPv6-only hosts and IPv4-only hosts.
The IPv6-only capable resolver proposed in this document performs the IPv4 to IPv6 synthesis for the resolver to communicate with IPv4-only servers via stateful NAT64.
By using stateful NAT64, this IPv6-only iterative resolver aligns with the dual-stack requirements of BCP91 <xref target="RFC3901"/>.</t>
      <section anchor="finding-an-authoritative-server-with-only-ipv4-addresses">
        <name>Finding an Authoritative Server with only IPv4 addresses</name>
        <t>Before initiating a query, an iterative resolver may prioritize authoritative servers with IPv6 addresses by sorting the SLIST data structure, as described in <xref target="RFC1034"/>.
If the resolver finds only an A record for an authoritative server, the resolver should perform address synthesis to the IPv4 address of the authoritative server, converting IPv4 addresses to IPv6 by following the algorithm in <xref target="RFC6052"/>.
With this the IPv6 packet carrying the query is routed to a stateful NAT64 function, which will convert the IPv6 packet with a destination IPv4-converted IPv6 address that matches the NAT64 prefix to an IPv4 packet.
It is not recommended to synthesize IPv4 addresses of an authoritative server if it also has an IPv6 address.</t>
      </section>
      <section anchor="generating-ipv4-converted-ipv6-addresses">
        <name>Generating IPv4-converted IPv6 Addresses</name>
        <section anchor="obtaining-the-pref64n-of-a-nat64">
          <name>Obtaining the Pref64::/n of a NAT64</name>
          <t>The iterative resolver can obtain the Pref64::/n used by the network's stateful NAT64 either by static configuration or by using a discovery mechanism.</t>
          <t>The Port Control Protocol <xref target="RFC7225"/> or Router Advertisements <xref target="RFC8781"/> are two options available to the resolver if it wishes to use a discovery mechanism to find the Pref64::/n.
Using the mechanisms described in <xref target="RFC7050"/> or <xref target="I-D.draft-hunek-v6ops-nat64-srv"/> does not work because they require a resolver to work.</t>
        </section>
        <section anchor="performing-address-synthesis">
          <name>Performing Address Synthesis</name>
          <t>The address translation algorithm is performed by following Section 2.3 of <xref target="RFC6052"/>.
After the synthesis is done, the IPv6-only iterative resolver can send a query to the IPv4-converted IPv6 address.</t>
        </section>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The use of NAT64 for address translation does not affect DNSSEC operations as no part of the DNS message is altered.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
    <section anchor="implementation-status">
      <name>Implementation Status</name>
      <t>BIND has a work-in-progress branch available at:</t>
      <t>https://gitlab.isc.org/isc-projects/bind9/-/merge_requests/6334/commits</t>
      <t>Unbound has an implementation in source, available from below PR:</t>
      <t>https://github.com/NLnetLabs/unbound/pull/722</t>
      <t>Building from source or using a version after Version 1.19 will allow to use this function.</t>
    </section>
  </middle>
  <back>
    <displayreference target="I-D.draft-hunek-v6ops-nat64-srv" to="draft-hunek-v6ops-nat64-srv"/>
    <references>
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="NAT64">
          <front>
            <title>Stateful NAT64: Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers</title>
            <author fullname="M. Bagnulo" initials="M." surname="Bagnulo"/>
            <author fullname="P. Matthews" initials="P." surname="Matthews"/>
            <author fullname="I. van Beijnum" initials="I." surname="van Beijnum"/>
            <date month="April" year="2011"/>
          </front>
          <seriesInfo name="RFC" value="6146"/>
          <seriesInfo name="DOI" value="10.17487/RFC6146"/>
        </reference>
        <reference anchor="RFC6052">
          <front>
            <title>IPv6 Addressing of IPv4/IPv6 Translators</title>
            <author fullname="C. Bao" initials="C." surname="Bao"/>
            <author fullname="C. Huitema" initials="C." surname="Huitema"/>
            <author fullname="M. Bagnulo" initials="M." surname="Bagnulo"/>
            <author fullname="M. Boucadair" initials="M." surname="Boucadair"/>
            <author fullname="X. Li" initials="X." surname="Li"/>
            <date month="October" year="2010"/>
            <abstract>
              <t>This document discusses the algorithmic translation of an IPv6 address to a corresponding IPv4 address, and vice versa, using only statically configured information. It defines a well-known prefix for use in algorithmic translations, while allowing organizations to also use network-specific prefixes when appropriate. Algorithmic translation is used in IPv4/IPv6 translators, as well as other types of proxies and gateways (e.g., for DNS) used in IPv4/IPv6 scenarios. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6052"/>
          <seriesInfo name="DOI" value="10.17487/RFC6052"/>
        </reference>
        <reference anchor="RFC3901">
          <front>
            <title>DNS IPv6 Transport Operational Guidelines</title>
            <author fullname="A. Durand" initials="A." surname="Durand"/>
            <author fullname="J. Ihren" initials="J." surname="Ihren"/>
            <date month="September" year="2004"/>
            <abstract>
              <t>This memo provides guidelines and Best Current Practice for operating DNS in a world where queries and responses are carried in a mixed environment of IPv4 and IPv6 networks. 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="91"/>
          <seriesInfo name="RFC" value="3901"/>
          <seriesInfo name="DOI" value="10.17487/RFC3901"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="I-D.draft-hunek-v6ops-nat64-srv">
          <front>
            <title>NAT64/DNS64 detection via SRV Records</title>
            <author fullname="Martin Huněk" initials="M." surname="Huněk">
              <organization>Technical University of Liberec</organization>
            </author>
            <date day="15" month="June" year="2023"/>
            <abstract>
              <t>   This document specifies how to discover the NAT64 pools and DNS
   servers providing DNS64 service to the local Nodes.  The discovery
   made via SRV records allows the assignment of priorities to the NAT64
   pools and DNS64 servers.  It also allows Nodes to have different DNS
   providers than NAT64 providers while providing a secure way via
   DNSSEC validation of provided SRV records.  This way, it allows
   providing the NAT64/DNS64 services regardless of DNS operator and DNS
   transport protocol.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-hunek-v6ops-nat64-srv-05"/>
        </reference>
        <reference anchor="RFC8499">
          <front>
            <title>DNS Terminology</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <author fullname="A. Sullivan" initials="A." surname="Sullivan"/>
            <author fullname="K. Fujiwara" initials="K." surname="Fujiwara"/>
            <date month="January" year="2019"/>
            <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 sometimes 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 obsoletes RFC 7719 and updates RFC 2308.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="219"/>
          <seriesInfo name="RFC" value="8499"/>
          <seriesInfo name="DOI" value="10.17487/RFC8499"/>
        </reference>
        <reference anchor="RFC6877">
          <front>
            <title>464XLAT: Combination of Stateful and Stateless Translation</title>
            <author fullname="M. Mawatari" initials="M." surname="Mawatari"/>
            <author fullname="M. Kawashima" initials="M." surname="Kawashima"/>
            <author fullname="C. Byrne" initials="C." surname="Byrne"/>
            <date month="April" year="2013"/>
            <abstract>
              <t>This document describes an architecture (464XLAT) for providing limited IPv4 connectivity across an IPv6-only network by combining existing and well-known stateful protocol translation (as described in RFC 6146) in the core and stateless protocol translation (as described in RFC 6145) at the edge. 464XLAT is a simple and scalable technique to quickly deploy limited IPv4 access service to IPv6-only edge networks without encapsulation.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6877"/>
          <seriesInfo name="DOI" value="10.17487/RFC6877"/>
        </reference>
        <reference anchor="RFC9386">
          <front>
            <title>IPv6 Deployment Status</title>
            <author fullname="G. Fioccola" initials="G." surname="Fioccola"/>
            <author fullname="P. Volpato" initials="P." surname="Volpato"/>
            <author fullname="J. Palet Martinez" initials="J." surname="Palet Martinez"/>
            <author fullname="G. Mishra" initials="G." surname="Mishra"/>
            <author fullname="C. Xie" initials="C." surname="Xie"/>
            <date month="April" year="2023"/>
            <abstract>
              <t>This document provides an overview of the status of IPv6 deployment in 2022. Specifically, it looks at the degree of adoption of IPv6 in the industry, analyzes the remaining challenges, and proposes further investigations in areas where the industry has not yet taken a clear and unified approach in the transition to IPv6. It obsoletes RFC 6036.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9386"/>
          <seriesInfo name="DOI" value="10.17487/RFC9386"/>
        </reference>
        <reference anchor="RFC6147">
          <front>
            <title>DNS64: DNS Extensions for Network Address Translation from IPv6 Clients to IPv4 Servers</title>
            <author fullname="M. Bagnulo" initials="M." surname="Bagnulo"/>
            <author fullname="A. Sullivan" initials="A." surname="Sullivan"/>
            <author fullname="P. Matthews" initials="P." surname="Matthews"/>
            <author fullname="I. van Beijnum" initials="I." surname="van Beijnum"/>
            <date month="April" year="2011"/>
            <abstract>
              <t>DNS64 is a mechanism for synthesizing AAAA records from A records. DNS64 is used with an IPv6/IPv4 translator to enable client-server communication between an IPv6-only client and an IPv4-only server, without requiring any changes to either the IPv6 or the IPv4 node, for the class of applications that work through NATs. This document specifies DNS64, and provides suggestions on how it should be deployed in conjunction with IPv6/IPv4 translators. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6147"/>
          <seriesInfo name="DOI" value="10.17487/RFC6147"/>
        </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="RFC7225">
          <front>
            <title>Discovering NAT64 IPv6 Prefixes Using the Port Control Protocol (PCP)</title>
            <author fullname="M. Boucadair" initials="M." surname="Boucadair"/>
            <date month="May" year="2014"/>
            <abstract>
              <t>This document defines a new Port Control Protocol (PCP) option to learn the IPv6 prefix(es) used by a PCP-controlled NAT64 device to build IPv4-converted IPv6 addresses. This option is needed for successful communications when IPv4 addresses are used in referrals.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7225"/>
          <seriesInfo name="DOI" value="10.17487/RFC7225"/>
        </reference>
        <reference anchor="RFC8781">
          <front>
            <title>Discovering PREF64 in Router Advertisements</title>
            <author fullname="L. Colitti" initials="L." surname="Colitti"/>
            <author fullname="J. Linkova" initials="J." surname="Linkova"/>
            <date month="April" year="2020"/>
            <abstract>
              <t>This document specifies a Neighbor Discovery option to be used in Router Advertisements (RAs) to communicate prefixes of Network Address and Protocol Translation from IPv6 clients to IPv4 servers (NAT64) to hosts.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8781"/>
          <seriesInfo name="DOI" value="10.17487/RFC8781"/>
        </reference>
        <reference anchor="RFC7050">
          <front>
            <title>Discovery of the IPv6 Prefix Used for IPv6 Address Synthesis</title>
            <author fullname="T. Savolainen" initials="T." surname="Savolainen"/>
            <author fullname="J. Korhonen" initials="J." surname="Korhonen"/>
            <author fullname="D. Wing" initials="D." surname="Wing"/>
            <date month="November" year="2013"/>
            <abstract>
              <t>This document describes a method for detecting the presence of DNS64 and for learning the IPv6 prefix used for protocol translation on an access network. The method depends on the existence of a well-known IPv4-only fully qualified domain name "ipv4only.arpa.". The information learned enables nodes to perform local IPv6 address synthesis and to potentially avoid NAT64 on dual-stack and multi-interface deployments.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7050"/>
          <seriesInfo name="DOI" value="10.17487/RFC7050"/>
        </reference>
      </references>
    </references>
    <?line 223?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO: acknowledge people.</t>
      <t>Thank you for reading this draft.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+1aW2/cxhV+56+Y2g9tapEryYocLRA08q0R6tiCJTcNiiKY
JWd3JyJnGM5Q8jpyEKBPLfrYx/Qh723R/IL+l6BJ+zN6zpkZ3parjZu+FOjC
hnZJzpkz5/KdG+M4jqy0uZiyWyenl4exVvmKPeAln+WCPRdG55eiMuyFlbk0
Ui3Y0+Pzw4NbEZ/NKnE5Ze2i8HCU6VTxAihmFZ/bWAo7jy8PdWliWfqH48o/
HO/uRim3YqGr1ZRJNddRJMtqymxVG7u/u3u0ux/xSvApe1aa6EpXF4tK1+WU
EcXoQqzgWjaNGIvZw6dn9Bd5ikw9K6QxUqvzVSnwgZNH548jY7nKPua5VsDg
SpjIFLyyH39aayvMlCkdlXLKfm11usOMrmwl5ga+rQr88pso4rVd6grIxUCR
sXmd53RY+sXYdMq+/frr7778M/vuq99+95c/+MvcpBLIfqALfcHZR7zghbaa
bupqwZV8xS1wOmXnS8FeKIkyl3bF9Jyd64uVnnx48vARO630JyK1tEwUXOZT
VhDFpFgdvrfAK0mqi+gG5v719e//+ce/sW//+rt//P2rPnMfcVMrPathx5W2
fIS5XwipO9xtZGrFTaxWXL1n5mlyJTOR8Cz5pIyiSOmqAGKXwBLoGbTd/AT1
xA8TZzHLWokLbzKK28OD2FSX7hCZNGXOV8G2Rp8E0lEcx4zPjK04sBadL6Vh
YJZ1IZRlura5VMKwpb7q2K+0oiJmWNWYfcoVq41gYDVWgDid9TOrmYBLM3CJ
JQOJF7WSKQnJsCtpl0j1wFF19iKto2xEhXST6KTDBmeFSJcgZ1MwkAiYPlcm
hwXgbRbsAYkxnmXAloHHwSZGiSJXeJrOo3BFKmklMD9gMwGZgB8tlrRDuz8Q
J96tjru0Wp602sElZiglXaL0BOzH4FcrVSUsOi0T6lJWWqECEtJOIbMsF1F0
m50oW+msTpF4NFRWJkxayZnXVo/0usI26euzz35EX959/vjB4d7B4evXKJpU
KwWWi18d3RtUxmYrBidEg0W1bJMR7oh77b69D3tdLYViC6GIXVjN2ae1qFZJ
9CHe4MyUIpVzmSKAsVeATAwkQKzQ5hluvp3Dn1wtZbpkS+7XwopjkEwK8PjW
zveRnNI2/AYVc+tYyWqBElryS2RdgazSlE7bSC3oOIne11cCiO28qbQAklnd
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
KhpdPIn+DY1cSi74KwAA

-->

</rfc>
