<?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-rfc2629 version 1.6.5 (Ruby 3.0.3) -->
<?rfc tocindent="yes"?>
<?rfc strict="yes"?>
<?rfc compact="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc docmapping="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-httpapi-yaml-mediatypes-00" category="info" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.12.3 -->
  <front>
    <title>YAML Media Types</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-httpapi-yaml-mediatypes-00"/>
    <author initials="R." surname="Polli" fullname="Roberto Polli">
      <organization>Digital Transformation Department, Italian Government</organization>
      <address>
        <postal>
          <country>Italy</country>
        </postal>
        <email>robipolli@gmail.com</email>
      </address>
    </author>
    <author initials="E." surname="Wilde" fullname="Erik Wilde">
      <organization>Axway</organization>
      <address>
        <postal>
          <country>Switzerland</country>
        </postal>
        <email>erik.wilde@dret.net</email>
      </address>
    </author>
    <author initials="E." surname="Aro" fullname="Eemeli Aro">
      <organization/>
      <address>
        <postal>
          <country>Finland</country>
        </postal>
        <email>eemeli@gmail.com</email>
      </address>
    </author>
    <date year="2022" month="April" day="01"/>
    <area>Applications and Real-Time</area>
    <workgroup>HTTPAPI</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <t>This document registers
the application/yaml media type
and the +yaml structured syntax suffix
on the IANA Media Types registry.</t>
    </abstract>
    <note>
      <name>Note to Readers</name>
      <t><em>RFC EDITOR: please remove this section before publication</em></t>
      <t>Discussion of this draft takes place on the HTTP APIs working group
mailing list (httpapi@ietf.org), which is archived at
<eref target="https://mailarchive.ietf.org/arch/browse/httpapi/">https://mailarchive.ietf.org/arch/browse/httpapi/</eref>.</t>
      <t>The source code and issues list for this draft can be found at
<eref target="https://github.com/ietf-wg-httpapi/mediatypes">https://github.com/ietf-wg-httpapi/mediatypes</eref>.</t>
    </note>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>YAML <xref target="YAML"/> is a data serialization format that is widely used on the Internet,
including in the API sector (e.g. see <xref target="oas"/>)
but the relevant media type and structured syntax suffix are not registered by IANA.</t>
      <t>To increase interoperability when exchanging YAML data
and leverage content negotiation mechanisms when exchanging
YAML resources,
this specification
registers the <tt>application/yaml</tt> media type
and the <tt>+yaml</tt> structured syntax suffix.</t>
      <t>Moreover, it provides security considerations
and interoperability considerations related to <xref target="YAML"/>,
including its relation with <xref target="JSON"/>.</t>
      <section anchor="notational-conventions">
        <name>Notational Conventions</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 BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.
These words may also appear in this document in
lower case as plain English words, absent their normative meanings.</t>
        <t>This document uses the Augmented BNF defined in <xref target="RFC5234"/> and updated
by <xref target="RFC7405"/>.</t>
        <t>The terms  "content", "content negotiation", "resource",
and "user agent"
in this document are to be interpreted as in <xref target="SEMANTICS"/>.</t>
      </section>
    </section>
    <section anchor="media-type-registrations">
      <name>Media Type registrations</name>
      <t>This section describes the information required to register
the above media types according to <xref target="MEDIATYPE"/></t>
      <section anchor="application-yaml">
        <name>Media Type application/yaml</name>
        <t>The following information serves as the registration form for the <tt>application/yaml</tt> media type.</t>
        <dl>
          <dt>Type name:</dt>
          <dd>
            <t>application</t>
          </dd>
          <dt>Subtype name:</dt>
          <dd>
            <t>yaml</t>
          </dd>
          <dt>Required parameters:</dt>
          <dd>
            <t>None</t>
          </dd>
          <dt>Optional parameters:</dt>
          <dd>
            <t>None; unrecognized parameters should be ignored</t>
          </dd>
          <dt>Encoding considerations:</dt>
          <dd>
            <t>binary</t>
          </dd>
          <dt>Security considerations:</dt>
          <dd>
            <t>see <xref target="security-considerations"/> of this document</t>
          </dd>
          <dt>Interoperability considerations:</dt>
          <dd>
            <t>see <xref target="interoperability-considerations"/> of this document</t>
          </dd>
          <dt>Published specification:</dt>
          <dd>
            <t>this document</t>
          </dd>
          <dt>Applications that use this media type:</dt>
          <dd>
            <t>HTTP</t>
          </dd>
          <dt>Fragment identifier considerations:</dt>
          <dd>
            <t>None</t>
          </dd>
        </dl>
        <t>Additional information:</t>
        <ul spacing="normal">
          <li>Deprecated alias names for this type:  application/x-yaml, text/yaml, text/x-yaml</li>
          <li>Magic number(s)  n/a</li>
          <li>File extension(s):  yaml, yml</li>
          <li>Macintosh file type code(s):  n/a</li>
        </ul>
        <dl>
          <dt>Person and email address to contact for further information:</dt>
          <dd>
            <t>See Authors' Addresses section.</t>
          </dd>
          <dt>Intended usage:</dt>
          <dd>
            <t>COMMON</t>
          </dd>
          <dt>Restrictions on usage:</dt>
          <dd>
            <t>None.</t>
          </dd>
          <dt>Author:</dt>
          <dd>
            <t>See Authors' Addresses section.</t>
          </dd>
          <dt>Change controller:</dt>
          <dd>
            <t>n/a</t>
          </dd>
        </dl>
      </section>
      <section anchor="suffix-yaml">
        <name>The +yaml Structured Syntax Suffix</name>
        <t>The suffix
<tt>+yaml</tt> MAY be used with any media type whose representation follows
that established for <tt>application/yaml</tt>.
The media type structured syntax suffix registration form follows.
See <xref target="MEDIATYPE"/> for definitions of each of the registration form headings.</t>
        <dl>
          <dt>Name:</dt>
          <dd>
            <t>YAML Ain't Markup LanguageML (YAML)</t>
          </dd>
          <dt>+suffix:</dt>
          <dd>
            <t>+yaml</t>
          </dd>
          <dt>References:</dt>
          <dd>
            <t><xref target="YAML"/></t>
          </dd>
          <dt>Encoding considerations:</dt>
          <dd>
            <t>see <xref target="application-yaml"/></t>
          </dd>
          <dt>Fragment identifier considerations:</dt>
          <dd>
            <t>The syntax and semantics of fragment identifiers specified for
+yaml SHOULD be as specified for <xref target="application-yaml"/>
The syntax and semantics for fragment identifiers for a specific
<tt>xxx/yyy+yaml</tt> SHOULD be processed as follows:
</t>
            <ol spacing="normal" type="1"><li>For cases defined in +yaml, where the fragment identifier resolves
per the +yaml rules, then process as specified in +yaml.</li>
              <li>For cases defined in +yaml, where the fragment identifier does
not resolve per the +yaml rules, then process as specified in
  <tt>xxx/yyy+yaml</tt>.</li>
              <li>For cases not defined in +yaml, then process as specified in
  <tt>xxx/yyy+yaml</tt>.</li>
            </ol>
          </dd>
          <dt>Interoperability considerations:</dt>
          <dd>
            <t>See <xref target="application-yaml"/></t>
          </dd>
          <dt>Security considerations:</dt>
          <dd>
            <t>See <xref target="application-yaml"/></t>
          </dd>
          <dt>Contact:</dt>
          <dd>
            <t>See Authors' Addresses section.</t>
          </dd>
          <dt>Author:</dt>
          <dd>
            <t>See Authors' Addresses section</t>
          </dd>
          <dt>Change controller:</dt>
          <dd>
            <t>n/a</t>
          </dd>
        </dl>
      </section>
    </section>
    <section anchor="interoperability-considerations">
      <name>Interoperability Considerations</name>
      <section anchor="int-yaml-evolving">
        <name>YAML is an Evolving Language</name>
        <t>YAML is an evolving language and, in time,
some features have been added, and others removed.</t>
        <t>While this document is based on a given YAML version <xref target="YAML"/>,
media types registration does not imply a specific version.
This allows content negotiation of version-independent YAML resources.</t>
        <t>Implementers concerned about features related to a specific YAML version
can specify it in the documents using the <tt>%YAML</tt> directive
(see Section 6.8.1 of <xref target="YAML"/>).</t>
      </section>
      <section anchor="int-yaml-and-json">
        <name>YAML and JSON</name>
        <t>When using flow collection styles (see Section 7.4 of <xref target="YAML"/>)
a YAML document could look like JSON <xref target="JSON"/>,
thus similar interoperability considerations apply.</t>
        <t>When using YAML as a more efficient format
to serialize information intented to be consumed as JSON,
information can be discarded:
this includes comments (see Section 3.2.3.3 of <xref target="YAML"/>)
and alias nodes (see Section 7.1 of <xref target="YAML"/>),
that do not have a JSON counterpart.</t>
        <figure anchor="example-json-discards-information">
          <name>JSON replaces alias nodes with static values.</name>
          <sourcecode type="example"><![CDATA[
# This comment will be lost
# when serializing in JSON.
Title:
  type: string
  maxLength: &text_limit 64

Name:
  type: string
  maxLength: *text_limit  # Replaced by the value 64.
]]></sourcecode>
        </figure>
        <t>Implementers need to ensure that relevant
information will not be lost during the processing.
For example, they might consider acceptable
that alias nodes are replaced by static values.</t>
        <t>In some cases an implementer may want to
define a list of allowed YAML features,
taking into account that the following ones
might have interoperability
issues with JSON:</t>
        <ul spacing="normal">
          <li>non UTF-8 encoding, since YAML supports UTF-16 and UTF-32 in addition to UTF-8;</li>
          <li>mapping keys that are not strings;</li>
          <li>circular references represented using anchor (see <xref target="sec-yaml-exhaustion"/>
and <xref target="example-yaml-cyclic"/>);</li>
          <li>
            <tt>.inf</tt> and <tt>.nan</tt> float values, since JSON does not support them;</li>
          <li>non-JSON types,
including the ones associated with tags like <tt>!!timestamp</tt>
that were included in the default schema of older YAML versions;</li>
          <li>tags in general, and specifically the ones that do not map
to JSON types like
custom and local tags such as <tt>!!python/object</tt> and
<tt>!mytag</tt> (see Section 2.4 of <xref target="YAML"/>);</li>
        </ul>
        <figure anchor="example-unsupported-keys">
          <name>Example of mapping keys not supported in JSON</name>
          <sourcecode type="example"><![CDATA[
non-json-keys:
  2020-01-01: a timestamp
  [0, 1]: a sequence
  ? {k: v}
  : a map
non-json-value: 2020-01-01
]]></sourcecode>
        </figure>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Security requirements for both media type and media type suffix
registrations are discussed in Section 4.6 of <xref target="MEDIATYPE"/>.</t>
      <section anchor="sec-yaml-code-execution">
        <name>Arbitrary Code Execution</name>
        <t>Care should be used when using YAML tags,
because their resolution might trigger unexpected code execution.</t>
        <t>Code execution in deserializers should be disabled by default,
and only be enabled explicitly.
In those cases, the implementation should ensure - for example, via specific functions -
that the code execution results in strictly bounded time/memory limits.</t>
        <t>Many implementations provide safe deserializers addressing these issues.</t>
      </section>
      <section anchor="sec-yaml-exhaustion">
        <name>Resource Exhaustion</name>
        <t>YAML documents are rooted, connected, directed graphs
and can contain reference cycles,
so they can't be treated as simple trees (see Section 3.2.1 of <xref target="YAML"/>).
An implementation that attempts to do that
can infinite-loop at some point (e.g. when trying to serialize a YAML document in JSON).</t>
        <figure anchor="example-yaml-cyclic">
          <name>A cyclic document</name>
          <sourcecode type="yaml"><![CDATA[
x: &x
  y: *x
]]></sourcecode>
        </figure>
        <t>Even if a document is not cyclic, treating it as a simple tree could lead to improper behaviors
(such as the "billion laughs" problem).</t>
        <figure anchor="example-yaml-1e9lol">
          <name>A billion laughs document</name>
          <sourcecode type="yaml"><![CDATA[
x1: &a1 ["a", "a"]
x2: &a2 [*a1, *a1]
x3: &a3 [*a2, *a2]
]]></sourcecode>
        </figure>
        <t>This can be addressed using processors limiting the anchor recursion depth
and validating the input before processing it;
even in these cases it is important
to carefully test the implementation you are going to use.
The same considerations apply when serializing a YAML representation graph
in a format that does not support reference cycles (see <xref target="int-yaml-and-json"/>).</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This specification defines the following new Internet media types <xref target="MEDIATYPE"/>.</t>
      <t>IANA has updated the "Media Types" registry at <eref target="https://www.iana.org/assignments/media-types">https://www.iana.org/assignments/media-types</eref>
with the registration information provided below.</t>
      <table>
        <thead>
          <tr>
            <th align="left">Media Type</th>
            <th align="left">Section</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">application/yaml</td>
            <td align="left">
              <xref target="application-yaml"/> of this document</td>
          </tr>
        </tbody>
      </table>
      <t>IANA has updated the "Structured Syntax Suffixes" registry at <eref target="https://www.iana.org/assignments/media-type-structured-suffix">https://www.iana.org/assignments/media-type-structured-suffix</eref>
with the registration information provided below.</t>
      <table>
        <thead>
          <tr>
            <th align="left">Suffix</th>
            <th align="left">Section</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">+yaml</td>
            <td align="left">
              <xref target="suffix-yaml"/> of this document</td>
          </tr>
        </tbody>
      </table>
    </section>
  </middle>
  <back>
    <references>
      <name>Normative References</name>
      <reference anchor="YAML" target="https://yaml.org/spec/1.2/spec.html">
        <front>
          <title>YAML Ain't Markup Language Version 1.2</title>
          <author initials="" surname="Oren Ben-Kiki">
            <organization/>
          </author>
          <author initials="" surname="Clark Evans">
            <organization/>
          </author>
          <author initials="" surname="Ingy dot Net">
            <organization/>
          </author>
          <date year="2021" month="October" day="01"/>
        </front>
      </reference>
      <reference anchor="oas">
        <front>
          <title>OpenAPI Specification 3.0.0</title>
          <author initials="" surname="Darrel Miller">
            <organization/>
          </author>
          <author initials="" surname="Jeremy Whitlock">
            <organization/>
          </author>
          <author initials="" surname="Marsh Gardiner">
            <organization/>
          </author>
          <author initials="" surname="Mike Ralphson">
            <organization/>
          </author>
          <author initials="" surname="Ron Ratovsky">
            <organization/>
          </author>
          <author initials="" surname="Uri Sarid">
            <organization/>
          </author>
          <date year="2017" month="July" day="26"/>
        </front>
      </reference>
      <reference anchor="JSON">
        <front>
          <title>The JavaScript Object Notation (JSON) Data Interchange Format</title>
          <author fullname="T. Bray" initials="T." role="editor" surname="Bray">
            <organization/>
          </author>
          <date month="December" year="2017"/>
          <abstract>
            <t>JavaScript Object Notation (JSON) is a lightweight, text-based, language-independent data interchange format.  It was derived from the ECMAScript Programming Language Standard.  JSON defines a small set of formatting rules for the portable representation of structured data.</t>
            <t>This document removes inconsistencies with other specifications of JSON, repairs specification errors, and offers experience-based interoperability guidance.</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="90"/>
        <seriesInfo name="RFC" value="8259"/>
        <seriesInfo name="DOI" value="10.17487/RFC8259"/>
      </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">
            <organization/>
          </author>
          <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">
            <organization/>
          </author>
          <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>
      <reference anchor="RFC5234">
        <front>
          <title>Augmented BNF for Syntax Specifications: ABNF</title>
          <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker">
            <organization/>
          </author>
          <author fullname="P. Overell" initials="P." surname="Overell">
            <organization/>
          </author>
          <date month="January" year="2008"/>
          <abstract>
            <t>Internet technical specifications often need to define a formal syntax.  Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications.  The current specification documents ABNF. It balances compactness and simplicity with reasonable representational power.  The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges.  This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications.  [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="68"/>
        <seriesInfo name="RFC" value="5234"/>
        <seriesInfo name="DOI" value="10.17487/RFC5234"/>
      </reference>
      <reference anchor="RFC7405">
        <front>
          <title>Case-Sensitive String Support in ABNF</title>
          <author fullname="P. Kyzivat" initials="P." surname="Kyzivat">
            <organization/>
          </author>
          <date month="December" year="2014"/>
          <abstract>
            <t>This document extends the base definition of ABNF (Augmented Backus-Naur Form) to include a way to specify US-ASCII string literals that are matched in a case-sensitive manner.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7405"/>
        <seriesInfo name="DOI" value="10.17487/RFC7405"/>
      </reference>
      <reference anchor="SEMANTICS">
        <front>
          <title>HTTP Semantics</title>
          <author fullname="Roy T. Fielding">
            <organization>Adobe</organization>
          </author>
          <author fullname="Mark Nottingham">
            <organization>Fastly</organization>
          </author>
          <author fullname="Julian Reschke">
            <organization>greenbytes GmbH</organization>
          </author>
          <date day="12" month="September" year="2021"/>
          <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.

   This document updates RFC 3864 and obsoletes RFC 2818, RFC 7231, RFC
   7232, RFC 7233, RFC 7235, RFC 7538, RFC 7615, RFC 7694, and portions
   of RFC 7230.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-httpbis-semantics-19"/>
      </reference>
      <reference anchor="MEDIATYPE">
        <front>
          <title>Media Type Specifications and Registration Procedures</title>
          <author fullname="N. Freed" initials="N." surname="Freed">
            <organization/>
          </author>
          <author fullname="J. Klensin" initials="J." surname="Klensin">
            <organization/>
          </author>
          <author fullname="T. Hansen" initials="T." surname="Hansen">
            <organization/>
          </author>
          <date month="January" year="2013"/>
          <abstract>
            <t>This document defines procedures for the specification and registration of media types for use in HTTP, MIME, and other Internet protocols.  This memo documents an Internet Best Current Practice.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="13"/>
        <seriesInfo name="RFC" value="6838"/>
        <seriesInfo name="DOI" value="10.17487/RFC6838"/>
      </reference>
    </references>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>Thanks to Erik Wilde and David Biesack for being the initial contributors of this specification,
and to Darrel Miller and Rich Salz for their support during the adoption phase.</t>
      <t>In addition to the people above, this document owes a lot to the extensive discussion inside
and outside the HTTPAPI workgroup.
The following contributors have helped improve this specification by
opening pull requests, reporting bugs, asking smart questions,
drafting or reviewing text, and evaluating open issues:</t>
      <t>Tina (tinita) Mueller,
Ben Hutton,
Manu Sporny
and Jason Desrosiers.</t>
    </section>
    <section numbered="false" anchor="faq">
      <name>FAQ</name>
      <dl>
        <dt>Q: Why this document?</dt>
        <dd>
          <t>After all these years, we still lack a proper media-type for YAML.
This has some security implications too
(eg. wrt on identifying parsers or treat downloads)</t>
        </dd>
      </dl>
    </section>
    <section numbered="false" anchor="change-log">
      <name>Change Log</name>
      <t>RFC EDITOR PLEASE DELETE THIS SECTION.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIALsOR2IAA7Va7XbbRpL930/Rkc9OrJiEPuzYDr3ZCS3JY2UsyRHlycnx
8YmaQJPsEQhgugFRjKI8yz7I/tp9sblV3QABSrKdnYxOjiMB/VFdH7duVaPf
74vSlKkeyJ+GR2/kkU6MkmfLQjuhxmOrLwciyeNMzTEisWpS9o0uJ/1ZWRaq
MP2lmqf9OU0qaU5/e1vEqtTT3C4H0mSTXAhT2IEsbeXK3e3tb7Z3hbJaDeSw
KFKDsSbPnFRZIk+1SvtnZq7FIrcXU5tXxUC+Pjt7O3x7KC70Ek+TgTzMSm0z
Xfb3SRghXIm5P6s0zyDgElIXZiDfl3nck/jHZInOyp50uS2tnjj8tpyHX0pr
YryK83mhwi9zDMYrk6Um0z2Jg89VUZhs+kEIVZWz3A6E7AuJH5O5gTyN5Ns8
TQ0/8To6zcfalnnreW6nA7lvpqZUqTyzKnOT3M754HJfF8qWc5bxEO+NyuRf
8kuckJ7xdD1XJh1Im49NQWt+N6UHEaTl13FeZSUpm6YvO9IdRPJHkya6Jd2B
NRethyza8Gqhlu2tNAZFCxr0XWJ1GUHb3a1GC1P+om0Kza9vOLR5ezs916lp
Htbr89P7zvEK2qeFRea1dKmhc3bOAQ9se+vQZF+W8kjZi6qQb1Q2rdRUy79p
60i5O9Euz0jgkAO5u72709/Z7m/v8MPGnPjpe/FPrM7kS531/2ouTPvFXood
5MElTNd+fJhNl/CRUh4HBZXKTnU5kBQcbrC1RcERQcdbrtDxFsThX6JZOU8x
Pleuc6KTQmdwdTnCGDMJoSEfR9vRducYO8/628/6u0/vO8a+slan8sikqbbt
F99rq+dL+eMM++XxRfsVVOhm8i/KJnD8zqQjc6HlqUqLmcuz9otTCHeqyvzS
XSzbz99ZI0fKGliQ4r+xoej3+1KNEXaINiHOZsZRgFXk6NLqqXEIbCfKmZZq
BQ2sQ8kAIwlhBCEFjXnEL7BaFZeV1QkCOyvVlXTVZGKuBISjUYfD42Eb08JG
dhl5ebK81D8f0z9l/jMAKCERxFenr/bkwf7h2cnpQBapVk5j4hxxiUUhttMx
22ascT4ti2pci/uVEPvGxZVjB8wnfjzjJrzjAgIUqYq1DOIRuknY3EmCPOCM
ZNgTFBn0VwpZ5cOAtd8R8JI7bfbkYmbimcTSysYzqDeRqhTva7+j6eFFVE/a
ogdbY5svnN4KK259ePi7p2xGZDsNRK0sDhLniWb0Ns5VOB5LDK20Dx4rUhWe
VllXTkDirBoTBGxxUllM67yytUopKxk/a/hmsOzcJEmqhXhAGcPmScUmE4Jx
4z39+4H1R2GlYFFrgL6/+JjzXosj4B+MWZhEp0tZOai59quQhXrw8TitEjKW
8a8ohMlBoIOHOppG+EPL9wj2D5tiXJU8BvGpgSZly7FZife5M8ysyVebOMGA
8ZK9m8yRY+/YspsaEiwvtFVjuFC5hKcA1PRVPAM6kpR8fjozRxLEwNAp2RET
IVCG1F0ar4a5plnGzd36Kl6LVnsncD3hw6INXKIJaT7x+XpMn98V1OeP/Kv7
9IDDHiHiKEEiS5eysPkljMMRWVk6Ls7h8MR6XsEL31JJdwwZA8gKAfLgFx2j
lmEAKQRpbyavr7/4fnRy/C0w4vnu19/c3ECoBw8kQIQHIcfv5dkldMkCcKyA
vFCAJ05uHL0bnW30/P/l8Qn/fnrww7vD04N9+n30evjmTfOLCCNGr0/evdlf
/baauXdydHRwvO8n46nsPBIbR8Of8IbUsHHy9uzw5Hj4ZsN7aht+yb1w/HHw
nwJZnyDFCeg2tmasSYvy5d7b//3vnSekARx+d2cHhw9/PN959gR/kJv43fIs
XYY/YdilgPm1srSKSlMgQkFsCFRLwXazfJHJGZw6Im3Bib2u5mqJwS6Xq7ld
qU0m0nyhLZbDJMXYikEH2RQoNPOr9Cjl0GBIYaxsOAW8D66dTR2st5aLEOfe
Z4fVlB7g8C+PX8lET5AbWRH+zF/vPqYz02mrgpJzIhCT/t2zJ9tfs2eQ+aFR
hJDcCDFGlroj3OhxHVGwHJsMoliJ8MQk8dlGCxKODo6Gx2eHe6NvD/v7UUPa
x8b1HYgY/DN23nlbCbLOj6rx3la6q53Ba6dJ7nhj9T8qY30M1XHvM/k4Z13X
kQ7AjePccmhhLMQ8Qp4dnv309oAC6unzx89vbjieWjLdogPXD1qPuAS58Zqe
gCDnCw/GK+mgxEva2QXsXZ2QkT6kq09gFNmShGFiKwZtoYQYVeOy/ZImC3Fa
awUcHy8IC+nlMUoVIU6KgBa3X76QVWZ1nE8z80tnNoVKlSZs8ilcGR4nDjKk
YDpxF9VorbHJlF1CurvBkYZQbrq+rtGz3x0A524YTHA6IQ4/jqarRddh93MW
f0tMys0I9tu5hBZdG9mpHjlRI1b8oJXNaB5RLCFeIcl5zKB6EAsTatwS3Ftm
mCQm2KblRURgqVyDYThbUK3m2OBuxXd4U9lx2Cv2T6Cgviq3Wr/657TokZqa
WGbVHIXjQ7eJ2mlL0fNXJtXIucAJIpN4g5X9Ast6IurbMgfUTWgoeyDxMT+U
V3kLr4GbE5hw8SVVgpLOOQo+wiBQcZZ+UllEgO0eGIWeJhSkCsN9KYd+qm4A
IfLegBIbCOgAUzSFss/JMTm/L7DZQBChGUBKxsxhKFw+Y5M9Yh2eoticihqa
xccDTpw1tcBoRRpGnjSMPHm6fuDZQxspQplQEw6kSYoqpnic5VW2bJOzxSzn
GgDmp2xSgwehDZUscD8cV9XOSxq9DSac3dqL3sv27oIo3ioSI46tBjQRRbQZ
5yYTdD2RWqE44Oi6C+5mKHNC5pPymBFLyo8V1Hj+kN5u0oRHXkY/x2ueHp/q
CRJ4BjIY3ngqRa/uRSga57HiFpzf0MTPCVpag+3pFcgkus5upILJ7TUaouot
xbVr8CBPrsZMJjqD7paRZt67OYfVXbvTC9UAHC9yfnV1tbVcLoM3ruQAwY0p
HDivBycYCJ6zE8lXuec+rk1OHnmMWBChYg+4Qwim7imSIq+EH8B0q6q2VQpS
Tw+yWoKuRuptoj9AlCRfieFLHBbt94sUFunq8i4JaZfbUv7/lv5kOiQHHX3E
ye9Nzp+auOfhezXwoxgq5bDpFH1qOK9+G3M5rD3s3j72XrfuImRmQKESG5T8
EiYlCGh6dNcPkLp891iHlzehOPdT6qcyracgvHpcBJi57gmXz+FPWhF+OjlT
8JixhgWR4HQSahBKaS50bhIo4ccZ58luEeHkWIXKXskpSoPMS34Zuoh1Tdgm
sR1QJQdmnzLzAkXPKrTrJSJPoxVH752VNoAqjO1Tx7rQ3LaW3Sqb0i120FyT
WF4opiZEQiy7KlfKaBW0LWHahxLUkvFvllRHh9ZFrRSHRMgMnUjxf9DEc5mA
ycZUOYmHhNmjUBM8jZ5HOyS/V9NmtDI9mYAq5bat8az/dzCSGzKGzsI+EygG
x4Gb+UVduUS0y85Gz6InrW2ECo2M2owxE+M0zy9kSh1L3vg9/fuBuhMVnNvM
qcX1yXYARdsy6sjnj0PNojn1+zQSYGxoV0+WBBRdN5C6dZFhU3tTjDmaHMRl
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
vDk4O5Bnrw9HcnSwR188ReKfNw9L/+UuAAA=

-->

</rfc>
