<?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.35 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-illyes-webbotauth-cbcp-00" category="info" submissionType="independent" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.33.0 -->
  <front>
    <title abbrev="cbcp">Crawler best practices</title>
    <seriesInfo name="Internet-Draft" value="draft-illyes-webbotauth-cbcp-00"/>
    <author initials="G." surname="Illyes" fullname="Gary Illyes">
      <organization>Independent</organization>
      <address>
        <email>synack@garyillyes.com</email>
      </address>
    </author>
    <author initials="M." surname="Kuehlewind" fullname="Mirja Kühlewind">
      <organization>Ericsson</organization>
      <address>
        <email>mirja.kuehlewind@ericsson.com</email>
      </address>
    </author>
    <author initials="A." surname="Kohn" fullname="AJ Kohn">
      <organization>Blind Five Year Old</organization>
      <address>
        <email>aj@blindfiveyearold.com</email>
      </address>
    </author>
    <date year="2026" month="April" day="21"/>
    <keyword>next generation</keyword>
    <keyword>unicorn</keyword>
    <keyword>sparkling distributed ledger</keyword>
    <abstract>
      <?line 52?>

<t>This document describes best practices for web crawlers.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/garyillyes/cbcp"/>.</t>
    </note>
  </front>
  <middle>
    <?line 57?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Automatic clients, colloquially referred to as crawlers and bots, are used to
access web resources, including indexing for search engines or, more recently,
training data for new artificial intelligence (AI) applications. As crawling
activity increases, automatic clients must behave appropriately and respect the
constraints of the resources they access. This includes clearly documenting how
they can be identified and how their behavior can be influenced. Therefore,
crawler operators are asked to follow the best practices for crawling outlined
in this document.</t>
      <t>For the purposes of this document, a crawler is an automated
HTTP <xref target="HTTP-SEMANTICS"/> client that retrieves resources across one or more web
sites without direct human initiation of individual requests. A crawler
discovers URIs during retrieval and schedules them for later processing. It
relies on algorithmic prioritization and protocol-level instructions such as the
Robots Exclusion Protocol <xref target="REP"/> to govern its behavior.</t>
      <t>To further assist website owners, it should also be considered to create a
central registry where website owners can look up well-behaved crawlers. Note
that while self-declared research crawlers, including privacy and malware
discovery crawlers, and contractual crawlers are welcome to adopt these
practices, due to the nature of their relationship with sites, they may exempt
themselves from any of the Crawler Best Practices with a documented rationale.</t>
    </section>
    <section anchor="recommended-best-practices">
      <name>Recommended Best Practices</name>
      <t>The following best practices <bcp14>SHOULD</bcp14> be followed and are already applied by a
vast majority of large-scale crawlers on the Internet:</t>
      <ol spacing="normal" type="1"><li>
          <t>Crawlers <bcp14>MUST</bcp14> support and respect the Robots Exclusion Protocol.</t>
        </li>
        <li>
          <t>Crawlers <bcp14>MUST</bcp14> be easily identifiable through their user agent string.</t>
        </li>
        <li>
          <t>Crawlers <bcp14>MUST</bcp14> not interfere with the regular operation of a site.</t>
        </li>
        <li>
          <t>Crawlers <bcp14>MUST</bcp14> support caching directives.</t>
        </li>
        <li>
          <t>Crawlers <bcp14>MUST</bcp14> expose the ranges they are crawling from in a standardized format.</t>
        </li>
        <li>
          <t>Crawlers <bcp14>MUST</bcp14> expose a page that explains how the crawling can be blocked, whether
the page is rendered, and how the crawled data is used.</t>
        </li>
      </ol>
      <section anchor="crawlers-must-respect-the-robots-exclusion-protocol">
        <name>Crawlers MUST respect the Robots Exclusion Protocol</name>
        <t>All well behaved-crawlers <bcp14>MUST</bcp14> support the REP as defined in
<xref section="2.2.1" sectionFormat="of" target="REP"/> to allow site owners to opt out from crawling.</t>
        <t>Especially if the website chooses not to use a robots.txt file as defined
by the REP, crawlers further need to respect the <tt>X-robots-tag</tt> in the HTTP
header.</t>
      </section>
      <section anchor="crawlers-must-be-easily-identifiable-through-their-user-agent-string">
        <name>Crawlers MUST be easily identifiable through their user agent string</name>
        <t>As outlined in <xref section="2.2.1" sectionFormat="of" target="REP"/> (Robots Exclusion Protocol; REP),
the HTTP request header <tt>User-Agent</tt> <bcp14>SHOULD</bcp14> clearly identify the crawler,
usually by including a URL that hosts the crawler's description. For example:</t>
        <artwork><![CDATA[
User-Agent: Mozilla/5.0 (compatible; ExampleBot/0.1; +https://www.example.com/bot.html)
]]></artwork>
        <t>This is already a widely accepted practice among crawler operators. To remain
compliant, crawler operators <bcp14>MUST</bcp14> include unique identifiers for their crawlers
in the case-insensitive <tt>User-Agent</tt> header, such as
"contains 'googlebot' and 'https://url/...'". Additionally, the name <bcp14>SHOULD</bcp14>
clearly identify both the crawler owner and its purpose as much as reasonably
possible.</t>
      </section>
      <section anchor="crawlers-must-not-interfere-with-the-normal-operation-of-a-site">
        <name>Crawlers MUST not interfere with the normal operation of a site</name>
        <t>Depending on a site's setup (computing resources and software efficiency) and
its size, crawling may slow down the site or even take it offline altogether.
Crawler operators <bcp14>MUST</bcp14> ensure that their crawlers are equipped with back-out
logic that relies on at least the standard signals defined by
<xref section="15.6" sectionFormat="of" target="HTTP-SEMANTICS"/>, preferably also additional heuristics such
as a change in the relative response time of the server.</t>
        <t>Therefore, crawlers <bcp14>SHOULD</bcp14> log already visited URLs, the number of requests sent
to each resource, and the respective HTTP status codes in the responses,
especially if errors occur, to prevent repeatedly crawling the same source.
Using the same data, crawlers <bcp14>SHOULD</bcp14>, on a best effort basis, crawl the site at
times of the day when the site is estimated to have fewer human visitors.</t>
        <t>Generally, crawlers <bcp14>SHOULD</bcp14> avoid sending multiple requests to the same resources
at the same time and <bcp14>SHOULD</bcp14> limit the crawling speed to prevent server overload,
if possible, following the limits outlined in <xref target="REP"/>. Additionally, resources
<bcp14>SHOULD NOT</bcp14> be re-crawled too often. Ideally, crawlers <bcp14>SHOULD</bcp14> restrict the depth
of crawling and the number of requests per resource to prevent loops.</t>
        <t>Crawlers <bcp14>SHOULD NOT</bcp14> attempt to bypass authentication or other access
restrictions, such as when login is required, CAPTCHAs are in use, or content is
behind a paywall, unless explicitly agreed upon with the website owner.</t>
        <t>Crawlers <bcp14>SHOULD</bcp14> primarily access resources using HTTP GET requests, resorting to
other methods (e.g., POST, PUT) only if there is a prior agreement with the
publisher or if the publisher's content management system automatically makes
those calls through client side code (e.g., JavaScript). Generally, the load
caused by executing client side code should be carefully considered or even
avoided whenever possible.</t>
      </section>
      <section anchor="crawlers-must-support-caching-directives">
        <name>Crawlers MUST support caching directives</name>
        <t><xref target="HTTP-CACHING"/> HTTP caching removes the need of repeated access from crawlers
to the same URL.</t>
      </section>
      <section anchor="crawlers-must-expose-the-ip-ranges-they-use-for-crawling">
        <name>Crawlers MUST expose the IP ranges they use for crawling</name>
        <t>To complement the <xref target="REP"/>, crawler operators <bcp14>SHOULD</bcp14> publish the IP ranges they
have allocated for crawling in <xref target="JAFAR"/> format, and keep this information
reasonably up-to-date, according to the specification.</t>
        <t>The resource containing the IP addresses <bcp14>MUST</bcp14> be linked from the page describing
the crawler using the <tt>client-ranges</tt> relation. To facilitate efficient machine
discovery. This relation <bcp14>SHOULD</bcp14> be provided via an HTTP <tt>Link</tt> header
<xref target="HTTP-LINK"/> or as a <tt>&lt;link&gt;</tt> element in the page's HTML metadata section (as
defined in <xref target="HTML"/>). For example:</t>
        <artwork><![CDATA[
<link rel="client-ranges" href="https://example.com/crawlerips.json">
]]></artwork>
      </section>
      <section anchor="crawlers-must-explain-how-the-crawled-data-is-used-and-how-the-crawler-can-be-blocked">
        <name>Crawlers MUST explain how the crawled data is used and how the crawler can be blocked</name>
        <t>Crawlers <bcp14>MUST</bcp14> be easily identifiable through their <tt>user-agent</tt> string, and they
<bcp14>SHOULD</bcp14> explain how the data they collect will be used. In practice, this is
usually done via the documentation page linked in the crawler's user agent.
Additionally, the documentation page <bcp14>SHOULD</bcp14> include a contact address for the
crawler owner.</t>
        <t>The documentation <bcp14>SHOULD</bcp14> also provide an example <xref target="REP"/> file to block the
crawler and a method for verifying <xref target="REP"/> files.</t>
        <t>If the crawler has exempted itself of these best practices, the documentation
page <bcp14>SHOULD</bcp14> describe the reason for that.</t>
        <t>All endpoints hosting identification, documentation, and IP range data must be
publicly and highly available, and served with minimal latency for programmatic
access.</t>
      </section>
    </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="security-considerations">
      <name>Security Considerations</name>
      <t>TODO Security</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="ROBOTS-TAG">
          <front>
            <title>Robots Exclusion Protocol Extension for URL Level Control</title>
            <author fullname="Gary Illyes" initials="G." surname="Illyes">
              <organization>Google LLC.</organization>
            </author>
            <date day="18" month="April" year="2026"/>
            <abstract>
              <t>   This document extends RFC9309 by specifying additional URL level
   controls through an HTTP response header and, for historical reasons,
   through HTML meta tags originally developed in 1996.  Additionally it
   moves the HTTP response header out of the experimental header space
   (i.e., "X-") and defines the combinability of multiple headers, which
   was previously not possible.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-illyes-repext-03"/>
        </reference>
        <reference anchor="HTTP-CACHING">
          <front>
            <title>HTTP Caching</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document defines HTTP caches and the associated header fields that control cache behavior or indicate cacheable response messages.</t>
              <t>This document obsoletes RFC 7234.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="98"/>
          <seriesInfo name="RFC" value="9111"/>
          <seriesInfo name="DOI" value="10.17487/RFC9111"/>
        </reference>
        <reference anchor="HTTP-LINK">
          <front>
            <title>Web Linking</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <date month="October" year="2017"/>
            <abstract>
              <t>This specification defines a model for the relationships between resources on the Web ("links") and the type of those relationships ("link relation types").</t>
              <t>It also defines the serialisation of such links in HTTP headers with the Link header field.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8288"/>
          <seriesInfo name="DOI" value="10.17487/RFC8288"/>
        </reference>
        <reference anchor="HTTP-SEMANTICS">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
              <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </reference>
        <reference anchor="JAFAR">
          <front>
            <title>A JSON-Based Format for Publishing IP Ranges of Automated HTTP Clients</title>
            <author fullname="Gary Illyes" initials="G." surname="Illyes">
              <organization>Independent</organization>
            </author>
            <date day="9" month="April" year="2026"/>
            <abstract>
              <t>   This document defines a standardized JSON format for operators of
   automated HTTP clients (e.g., web crawlers, AI bots) to publicly
   disclose their IP address ranges.  A consistent, machine-readable
   format for IP range publication simplifies the task of identifying
   and verifying legitimate automated traffic, thereby decreasing
   maintenance load on website operators while reducing the risk of
   inadvertently blocking beneficial clients.  This specification
   codifies and extends common existing practices to provide a simple
   yet extensible format that accommodates a variety of use cases.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-illyes-aipref-jafar-01"/>
        </reference>
        <reference anchor="REP">
          <front>
            <title>Robots Exclusion Protocol</title>
            <author fullname="M. Koster" initials="M." surname="Koster"/>
            <author fullname="G. Illyes" initials="G." surname="Illyes"/>
            <author fullname="H. Zeller" initials="H." surname="Zeller"/>
            <author fullname="L. Sassman" initials="L." surname="Sassman"/>
            <date month="September" year="2022"/>
            <abstract>
              <t>This document specifies and extends the "Robots Exclusion Protocol" method originally defined by Martijn Koster in 1994 for service owners to control how content served by their services may be accessed, if at all, by automatic clients known as crawlers. Specifically, it adds definition language for the protocol, instructions for handling errors, and instructions for caching.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9309"/>
          <seriesInfo name="DOI" value="10.17487/RFC9309"/>
        </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>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="HTML" target="https://html.spec.whatwg.org/">
          <front>
            <title>HTML</title>
            <author>
              <organization>WHATWG</organization>
            </author>
            <date/>
          </front>
        </reference>
      </references>
    </references>
    <?line 238?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO acknowledge.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA51Z3XLbuBW+x1OgykWSVmTibHab9f4qjpN4145d25ntTqcz
hkhIQkwSXICUos1kn6UP0qv2xfqdA5CiZGVnp7lwJJA4ODg/3/nOUZIkojFN
oQ/l6MipVaGdnGrfyNqprDGZ9iOhplOnl3ghm2b1SGSq0XPr1ofSVDMrRG6z
SpUQkDs1axJTFGvtk5WeTm2j2maR0Lbk8WPh22lpvDe2ata1pu25rjX+VI2o
2nKq3aHIIfxQ4LAvxD2pnFaHcnJ5PMGXlXW3c2fb+lD+9Er+hG+mmstXtCJu
9RqP80MhE1np942c60o71eAoWmork1nHH32t3G1BO3PjG2embaNzWeh8rp0Q
pK51JEZI/DOVP5SvUnnCV+KlWVsU4bavlFsPn1g3V5X5lQ89lCeDu9FTXSpT
HEq/rlR2+/0ce4Od0syWW8edpfLHVi8KvYJ5do48M+6dkj/+99/Dx9vnHjuT
eU/X3hxa0rb0tpf6vY4v3Tl8gsPtoto5dvLDZnX7tOewZC5fmqWWP2vl5HmR
Dw9W776f0hszvLDGc1vkfKSorCshYglX4+3L8+fn11fJ9eQV7Ja8SLfiyMGM
79mGr6+vL5KjydHrkzd40c2yLw8ODvoHpydvfuTVZ0+ePetXr47PJm+uT46u
ug2P6dEPk5eTyz1nKVM7PUveqZlyrNjxRdj32eMvhaBoH6r9+vrslD9IGTOI
VsJCH0jhX0J2Q9y+nlz/9CoscqDLmSq8jjKUm+vmUC6apvaHjx4tmrJIfa2z
dLVQzWqeQsQjIUSSJFJNEbvITyGuF8ZLZGBbItJkrn2GmNZ+J4clNJfISJmF
FPdpFFSaPC+0QHqdVI2zeZtxzohJ21i6aiazwkCyH8vMFoX9pTUKtpIwk3YO
mdNYqXwvViqEA9IeryN3Zev5DaEy6OBZAae9bR2+jhFxWdHmlIoEBO/pA6np
ESjZQupqbipobt1YlhbCnM6gSLEeC1zdVJzCqlG8p9IrHNiYmcmgH+Q1uigM
QCDT8sHk5KFUdV2YjKPWp3ISNYYMQRZammZN6gBuPGmmdm8vyxbmnOqFQqRD
lrO1M3AgLEE3xqXgp0Y2Cy0ynMAKYped0dLmzvQNO9gaqWTXBSPgUVbg3pDX
+ZLut7ArwVsyVeF0aQhOcElYlY7FY5JoXNDMwBDdi9WsaOn2OR2j4S1YcCyi
m6StCRwt+QuGVf42OHJGHmaR+8Kns5i0bYP/dY6EwLuD8ENQvcSLtL9uXW29
jiYYvAPjdtEiDcVLZ2zIo4yVHz5sJ+7Hj9EJkKMa2BKgrZeQvLGqypxFeNlK
I1pCsCDUhDcNHq4MMrFFahhHLlq0Jc5E+DSGo4EURPghBPIWkeP0Ly2uTjHS
qSlQKDK7pOh+e3mCm7SOrBAVwR5yhc8WOm+L4OKS7VXgTg42tORt7EAZaYTT
uAupKlWBGgrdSkQZgok+R1hlgdjXWKRcUuCyFNEIqpCcXvoW+aH4KHFpKd3k
8XuEEVVWeRE3wpCAL1gPjp2T+rh14/tIga+u4fHWQYiDMI9qSFYjo0m7QvWk
DG2kh/EKhFvhLQUWRTeiMGY+JQxeV4Iy07H55lRV13JFQbcjj4OzsPZWtjUe
FUUSEirfoJJ8Yxst2NGrhSk0wKCYJbnOCkVHwuUBHLoNQxCBEZcqCwlZqmKF
Hb3r1oMd9BzXYPwkl2+wizUuUKA0w1pua05pAHSfCWO4n59SkFeqabEnZDmy
EM4NCLMwNced5BAch7Qv1Vrq97qsG8rpEjejKJ45W0KldYcVHQd7Tgl40Scg
S1N9FpEt+ChVaILye/JSQ++SCEe+s5dqhI65TXbaSe2r1+dvT1+Qb8MrEVsY
GAr4N18H8MT6FB/FUmF7qd5RwLLWBdWtxGdQZWNLW/FtUFQQeKhqQhyk3d28
PHt7dY0ormvrml0AlZ+M6FQ82ZUBrQHZBrDZQaOaQo1mAVY4X0S3oAohwucE
IcT4kInis11BlW24argZxy1ZOyD3vMX9ImBGuFDs1lQ8/dSNMpUtAsMkyAFd
QLn9fPdl/Z4AMpyiqnlfHJzeIC0HB1AWJzYwk3K5+RV+CDQkFV98QqaSNa4b
8BJLBYqR74rFRngsFdPCZsD/MaUsYQGREUZwEmEIZivO9/Gw5ERH56EC4y2q
9BSI4t69HZ3+kGtBOIqCMSEW2TzJ9pqWpRxfEPrlekZVCPYRHz5cacZG+SR9
kh6Qk3rsU1zThjCERcpsKgps4M4i0P+YdA0Mx4R87CAsW1iuZxQoENCymR3f
J23QcMwIrTZaCeRK1HW8yYoObisd8HNom5u/J0Fc0qj5jTQhgagWigWyULt0
n3X/vwSAuX1fxumoTxrwwSdd9hW98XAsOi270imDtvLmLU5NJnTqTQcyHceJ
uq4HoeTGovUtW366HqC6QtE9DaG8sCjMwy33fSS8NameSiIf+r0qa3BxGOu3
334TGyXQPdlfwfPVo8/Tx/IB0LJGRsNYX+FyvOe5bR49Tg++kn/pKPhqtUqj
QOpbHsEUKdHyhyw7km9iMR1QAjlyJoWgeDWhdIezUpWWcm6XgIGeURigXaoE
qVQYRRzpLlFjb0eySP0sbL2hgy4wtODtLtpEDKEMnDYBAmhUbgKjbc8Eb407
TiFGVBoZMO7PrZ0XGne+z6l/v7NK64pHaZreH4Ek5bkJZQi8PNZEVM/gbnHH
3ZC1GDowZCRLJ24SSSOlURkpDjFyiJ8Wa4FHnvy1Nw8+gd/cZxb74FuIF9yf
M6Gt4iICyusG7ITDo20Cz+tpJvE8O2uIWUg9o14DFHv9kB4I0t8DnccbgKWC
7wl8clyT1QkohCBdaiyoW00My85mlIcIosbOGYJTcbTf/3AhEQ7Ohm1nc91A
Apq6RtTx/acqu02Q5KKwc3DMyJ57+tlIeMcH7OmqCxScw5cbbJ2uB9h68Hn6
BRlwl5+PZc3tIHkpEEXVhwXiC3TZIwUCbRXwKRqABVW8DuMCbVpyn1SDPeGC
puxoFRzilgx+mz5mc+uIK7hhn4NLQ1bOCTZ8DEkeLZG8jt1DaAUWZoGdCLPO
w6HCxYatDpU7QBvs07Tgr5YatV7roKwfC71VNdAXk8NslrXIKxwC6ywJe2mS
QX1Osd7ECN+QUiaokAKwtpapvt657zhELBM5xCHVxSmKgI8vbkJN4ZIwZd+I
5oqZ+SAYAV6QYrj/Il25wZ3pFewVOiU2p+WBwSueqXGm7zpALa3JyaqcT2Vb
NAaYubF3JMx8pT6hhGo2q+xysn/nUlOaZpuwwMpByc6gITQkEfzCqnwsYP0O
JcYDxktSWN5u0eMat4tiG/2iKm/Ouc46nXSsp7GgELNGo+ac5Hq/SSAGtTYW
9xzVYCHghf4yXajtCU7kfK/E8LponWryw9HOSaSfahrqLOj16bpGO8cTKILd
LAIfzgitHk8fRKcetSs9+ofgILyoAvUDoDD1O5pcXB+9ngSYwUMwijGJpGJB
qhkvwNtoFkjcc72CScaoUgVNfYiBAiobAoe5Ixe2SJwNRm81iXuuh76uVM4U
3eBkgMgtJwun6Kvj696CwYeO4buxIty7BLTa3MsHOp2nY3lxfnWNv2+vHyKZ
errnOCNUaMiDujxX65QVdTstjCd5eB4pYr923/cGQeqAcPFev/bwzWamxDhR
Avw9uBOVO1rxPWWLww7qshlwOoV/UEt1xVznYSoHqcjBjegXmeJx25S7zCwU
rzvCYjtPnTxcSSPe9bCnj7VJcD5TIUE8aMqx3y2+n+57hIjjnDi2BaNkb3Vv
gvnYZWh9AinmPAgw2bl7w9GJ1AyRBBC/V59Ba3VysdVdEW0fzrJ4CMK8K/iK
tkRY2EfCuogMDt9zgAgDQgBPxlfYmpsx5PDoGWYIPVwoObda12FK1o+YbSU2
1AcJkzQ2oYnxmKxiXR5CO5iCis8s5nmokxv4iGyuQ0Foi9qMp9TKdA0ElKMB
INu57/ziJJlsNCRsbV+ebkJsJeH2N/3wgxntTGWmMA0NhzqiRDlBTh8MZeII
tNs5GEXUzi45AJdG0YyQg+bmFIp2jLULLBr7w5yUrZS4N1/Tbb69kTp6NFZr
uhPSkwb0hASK+1Yfic0D8N5NN8kTyLPTjx8f7u0o+ADS+ZvRlgVGcoGE+mbU
seRh3xCtZwDf7+DT0bexf9gXudSt/26bvacPdzvN/ABE/3iXeENtYqJCWxD6
xJ4RrbtauKsgKxZG1Ci31MuuDDfxYSIgT6q+BRrHEPd9o5fTxJY8zJLiaCuE
AsdgDMyuj+mbvk0/m4q7HcgeQVH5rn1SIS2gbEyGrnsSW31JzKVteR3hIZob
o5QCNHq7H7ryOICKMTlkSzQP12I14nORCeiNKK2Gm6nQn8y2fLxQPg4QNfdL
uphFYud3B/Z7LCGGluh+J4pMloAm2oDmSjyMAZerLf+KQX0341eMnYA0423x
IVQ6NAxxEX80CUUzi7+VLMx8QR+XyhSKiRr3VUTlYuNSAq+oa6MBOvorVgym
njtVcgGNPyelNPY8shVxIx6Lk5wXlMYcEHHueYvQpJ+GvRxRKozG4X8iTfT5
8vhvb08uj1/Q56vXk9PT/oOIbwSLbT5tdh6dn50dv3kRNhMJ21oSo7PJz6Nw
u9H5xfXJ+ZvJ6Uju/mbCjKqx4Ucb9K8ge1z7CJGCjzgBnh9d/OdfB08RIn+6
fHn05ODgS8RJ+PLs4K9P8YVKdTiN+Uz4yqmr0BMqx3NE+DVTNYC5oEG4JzqA
1pR4D6z553+QZf55KL+eZvXB02/jAl14a7Gz2dYi2+zuyp3NwYh7lvYc01tz
a33H0tv6Tn7e+t7ZfbD49XfcbScHz777lgeWEv1ty8Pso0iEVBc/5y/O+6f8
6snkzeTua1v+pCytbHhTBX7d/dhKHTmLmWS3lSVgn9MWLz4chjZA59+M+Bfh
0cd4uurfhIf+BzMndjmsIQAA

-->

</rfc>
