<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.1 (Ruby 3.0.2) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-mt-ufmrg-teep-sample-00" category="info" consensus="true" submissionType="IRTF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="TEEP Sample">A Usable Formal Methods Sample Problem from TEEP</title>

    <author initials="C." surname="Myers" fullname="Cory Myers">
      <organization></organization>
      <address>
        <email>cfm@acm.org</email>
      </address>
    </author>
    <author initials="H." surname="Tschofenig" fullname="Hannes Tschofenig">
      <organization></organization>
      <address>
        <email>hannes.tschofenig@gmx.net</email>
      </address>
    </author>

    <date year="2023" month="October" day="23"/>

    
    <workgroup>Usable Formal Methods Proposed Research Group</workgroup>
    

    <abstract>


<?line 56?>

<t>This draft follows the invitation of <xref target="I-D.farrell-ufmrg-sample"/> to propose
another sample problem for demonstration, training, and evaluation of formal
methods in IETF work.  It draws on recent work from the Software Updates for the
Internet of Things <xref target="suit"/> and Trusted Execution Environment Provisioning
<xref target="teep"/> working groups to define a sample modeling problem for a novel rather
than a familiar IETF protocol.</t>



    </abstract>

    <note title="About This Document" removeInRFC="true">
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-mt-ufmrg-teep-sample/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Usable Formal Methods Research Group mailing list (<eref target="mailto:ufmrg@irtf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/ufmrg"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/ufmrg/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/cfm/draft-mt-ufmrg-teep-sample"/>.</t>
    </note>


  </front>

  <middle>


<?line 66?>

<section anchor="introduction"><name>Introduction</name>

<t>In this draft we take the Trusted Execution Environment Provisioning protocol
<xref target="I-D.ietf-teep-protocol"/> to be a good domain from which to draw a sample
modeling problem for slightly different reasons than those proposed in
<xref target="I-D.farrell-ufmrg-sample"/>.</t>

<t><list style="numbers">
  <t>TEEP is a proposed standard under active development, at working-group
consensus as of this writing.  Formal modeling, even for demonstration or
training purposes, can therefore increase familiarity with the TEEP protocol,
including outside of the SUIT and TEEP working groups directly involed in its
development.</t>
  <t>The TEEP protocol is expressly concerned with security, so it has security
properties amenable to formal description, modeling, and analysis.  Any
findings may have valuble security implications.</t>
  <t>The TEEP protocol has well-defined use cases and includes provisions for
constrained environments.  Modeling the entire protocol is a reasonble
learning or training exercise, whereas <xref target="I-D.farrell-ufmrg-sample"/>
limits itself to just the <spanx style="verb">SEARCH</spanx> command of <xref target="RFC9051"/>.</t>
  <t>The TEEP protocol follows a typical protocol design in the IETF where
various already standardized technologies are re-used. In this case,
protocols from the Software Updates for Internet of Things (SUIT)
architecture <xref target="RFC9019"/> and from the Remote attestation procedures (RATS)
architecture <xref target="RFC9334"/> are incorporated into the design.</t>
  <t>The architecture of the TEEP protocol is also representative for IETF
protocol development since more than two parties are involved in the
communication even in a single deployment setup. Whether the formal
model also has to consider all parties or a simplified design is subject
for discussion.</t>
  <t>The TEEP protocol also provides a number of options to offer flexibility
in different deployments. This is also a characteristic found in many
IETF protocols. Dealing with the formal analysis of all
options is a challenge.</t>
</list></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="the-trusted-execution-environment-provisioning-teep-protocol"><name>The Trusted Execution Environment Provisioning (TEEP) Protocol</name>

<t>The Trusted Execution Environment Provisioning protocol
<xref target="I-D.ietf-teep-protocol"/> specifies communication between a Trusted
Application Manager <xref section="2" sectionFormat="parens" target="RFC9397"/> and a TEEP agent.  Importantly,
this communication is relayed by an <em>untrusted</em> TEEP Broker <xref section="6.1" sectionFormat="parens" target="RFC9397"/>. Two security sensitive payloads are communicated via the TEEP protocol,
namely:</t>

<t><list style="symbols">
  <t>Trusted Applications (TAs) and Trusted Components (TCs), and</t>
  <t>Attestation Evidence.</t>
</list></t>

<t>A Trusted Application is an application (or, in some implementations,
an application component) that runs in a TEE.</t>

<t>A Trusted Component is a set of code and/or data in a TEE managed as a unit by a
Trusted Application Manager. Trusted Applications and Personalization Data are
thus managed by being included in Trusted Components.</t>

<t>TCs are provided by developers, or authors, and integrity and (optionally)
confidentiality protected with the help of SUIT manifests. The TEEP
protocol specification uses the term 'Trusted Component Signer' to refer
to authors. Neither the TAM nor the TEEP Broker should be able to modify TCs.
TEEP Agents only install TCs from sources they trust.</t>

<t>Attestation Evidence on the other hand is typically communicated from the
TEEP Agent to the TAM although there is the option to offer attestation
capabilities in both directions. In the description below we only focus
on attestation of the Device containing the TEEP Agent to the TAM rather
than the other direction.</t>

<t>The description below illustrates the basic communication interaction with
details of the TEEP protocol abstracted away.</t>

<figure><artwork><![CDATA[
TAM -> Verifier: NonceRequest

TAM <- Verifier: NonceResponse
Nonce
]]></artwork></figure>

<t>Legend:</t>

<t><list style="symbols">
  <t>The 'challenge' is a random number provided by the Verifier. It is used to demonstrate freshness of attestation evidence.</t>
</list></t>

<figure><artwork><![CDATA[
TAM -> TEEP Agent: QueryRequest
{token, challenge, supported-teep-cipher-suites,
supported-suit-cose-profiles, data-item-requested(trusted-components,
attestation)}SK_TAM
]]></artwork></figure>

<t>Legend:</t>

<t><list style="symbols">
  <t>The 'token' is a random number that is used to match the QueryRequest
against the QueryRespose.</t>
  <t>'supported-teep-cipher-suites' and 'supported-suit-cose-profiles' offer cipher suite negotation.</t>
  <t>'data-item-requested(X)' indicates the functionality the TAM requests the TEEP Agent to perform.</t>
  <t>{_}SK_TAM indicates the a digital signature operation over the payload of the message using a
private (or secret) key that is only known to the TAM.</t>
</list></t>

<figure><artwork><![CDATA[
TEEP Agent -> Attester: EvidenceRequest
Challenge

TEEP Agent <- Attester: EvidenceResponse
{Challenge, Claims}SK_Attester
]]></artwork></figure>

<t>Legend:</t>

<t><list style="symbols">
  <t>'{Challenge, Claims}SK_Attester' represents the Evidence, which is signed by the Attester using its private key SK_Attester.
In addition to the inclusion of the 'Challenge', the random number provided by the Verifier, it also includes further (unspecified)
claims. While those claims are important for the overall system, they are not in scope of this analysis.</t>
</list></t>

<figure><artwork><![CDATA[
TAM <- TEEP Agent: QueryResponse
{token, selected-teep-cipher-suite, attestation-payload-format(EAT),
attestation-payload({Challenge, Claims}SK_Attester), tc-list}SK_AGENT
]]></artwork></figure>

<t>Legend:</t>

<t><list style="symbols">
  <t>'selected-teep-cipher-suite' indicates the selected cipher suite.</t>
  <t>'attestation-payload-format(EAT)' indicates the format of the attached attestation evidence.</t>
  <t>'tc-list' conveys the list of Trusted Components installed on the device.</t>
  <t>'attestation-payload(_)' contains the evidence provided by the Attester in the previous step.</t>
</list></t>

<t>The TEEP Agent signes the QueryResponse message with its private key, SK_AGENT.</t>

<figure><artwork><![CDATA[
Author -> TAM: SoftwareUpdate
{manifest, sequence_nr, TC}SK_AUTHOR
]]></artwork></figure>

<t>Legend:</t>

<t><list style="symbols">
  <t>The 'manifest' contains instructions for how to install the software.</t>
  <t>'sequence_nr', as the name indicates, allows the TEEP Agent to distingush this update from earlier versions of the software.</t>
  <t>'TC' is the Trusted Component to be installed. This could be a binary, configuration data, or both.</t>
</list></t>

<t>The author, i.e. Trusted Component Signer, uses his private key, SK_AUTHOR, to sign the bundle.</t>

<figure><artwork><![CDATA[
TAM -> TEEP Agent: Update
{token2, {manifest, sequence_nr, software}SK_AUTHOR}SK_TAM
]]></artwork></figure>

<t>Legend:</t>

<t><list style="symbols">
  <t>'token2' is a new random number, which is again used by the TAM to match requests against responses.</t>
</list></t>

<t>The TAM transmits an update to the TEEP Agent containing the previously obtained payloaded provided by the author.
This payload is additionally signed with the TAM's private key, SK_TAM.</t>

<figure><artwork><![CDATA[
TAM <- TEEP Agent: Success
{token2}SK_AGENT
]]></artwork></figure>

<t>The TEEP Agent returns this message when the software installation was successful. The message is signed with
the private key of the TEEP Agent, SK_AGENT.</t>

<section anchor="security-properties"><name>Security Properties</name>

<t>In addition to integrity and authentication properties, an important aspect
is replay protection.</t>

<t>At the <xref target="suit-interim"/> meeting, the following editorial addition was proposed
<xref target="thaler"/> in TEEP's security consideration (<xref section="10" sectionFormat="of" target="I-D.ietf-teep-protocol"/>):</t>

<ul empty="true"><li>
  <t>The TEEP protocol supports replay protection as follows. The transport
protocol under the TEEP protocol might provide replay protection, but may be
terminated in the TEEP Broker which is not trusted by the TEEP Agent and so the
TEEP protocol does replay protection itself. If attestation of the TAM is used,
the attestation freshness mechanism provides replay protection for attested
QueryRequest messages. If non-attested QueryRequest messages are replayed, the
TEEP Agent will generate QueryResponse or Error messages, but the REE can
already conduct Denial of Service attacks against the TEE and/or the TAM even
without the TEEP protocol. QueryResponse messages have replay protection via
attestation freshness mechanism, or the token field in the message if
attestation is not used. Update messages have replay protection via the
suit-manifest-sequence-number (see Section 8.4.2 of [I-D.ietf-suit-manifest]).
Error and Success messages have replay protection via SUIT Reports and/or the
token field in the message, where a TAM can detect which message it is in
response to.</t>
</li></ul>

<t>Any formal model of TEEP should be able to prove this replay protection.</t>

<t>While confidentiality protection is possible for both attestation evidence as well
as Trusted Components, it is not mandatory-to-implement functionality.</t>

</section>
</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>This document has no security considerations of its own, although it may
contribute indirectly to the development of new security considerations
for the TEEP protocol.</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>This document has no IANA actions.</t>

</section>


  </middle>

  <back>


    <references title='Normative References' anchor="sec-normative-references">




<reference anchor="I-D.ietf-teep-protocol">
   <front>
      <title>Trusted Execution Environment Provisioning (TEEP) Protocol</title>
      <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
         </author>
      <author fullname="Mingliang Pei" initials="M." surname="Pei">
         <organization>Broadcom</organization>
      </author>
      <author fullname="Dave Wheeler" initials="D. M." surname="Wheeler">
         <organization>Amazon</organization>
      </author>
      <author fullname="Dave Thaler" initials="D." surname="Thaler">
         <organization>Microsoft</organization>
      </author>
      <author fullname="Akira Tsukamoto" initials="A." surname="Tsukamoto">
         <organization>ALAXALA Networks Corp.</organization>
      </author>
      <date day="5" month="September" year="2023"/>
      <abstract>
	 <t>   This document specifies a protocol that installs, updates, and
   deletes Trusted Components in a device with a Trusted Execution
   Environment (TEE).  This specification defines an interoperable
   protocol for managing the lifecycle of Trusted Components.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-teep-protocol-16"/>
   
</reference>

<reference anchor="RFC9019">
  <front>
    <title>A Firmware Update Architecture for Internet of Things</title>
    <author fullname="B. Moran" initials="B." surname="Moran"/>
    <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
    <author fullname="D. Brown" initials="D." surname="Brown"/>
    <author fullname="M. Meriac" initials="M." surname="Meriac"/>
    <date month="April" year="2021"/>
    <abstract>
      <t>Vulnerabilities in Internet of Things (IoT) devices have raised the need for a reliable and secure firmware update mechanism suitable for devices with resource constraints. Incorporating such an update mechanism is a fundamental requirement for fixing vulnerabilities, but it also enables other important capabilities such as updating configuration settings and adding new functionality.</t>
      <t>In addition to the definition of terminology and an architecture, this document provides the motivation for the standardization of a manifest format as a transport-agnostic means for describing and protecting firmware updates.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9019"/>
  <seriesInfo name="DOI" value="10.17487/RFC9019"/>
</reference>

<reference anchor="RFC9334">
  <front>
    <title>Remote ATtestation procedureS (RATS) Architecture</title>
    <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
    <author fullname="D. Thaler" initials="D." surname="Thaler"/>
    <author fullname="M. Richardson" initials="M." surname="Richardson"/>
    <author fullname="N. Smith" initials="N." surname="Smith"/>
    <author fullname="W. Pan" initials="W." surname="Pan"/>
    <date month="January" year="2023"/>
    <abstract>
      <t>In network protocol exchanges, it is often useful for one end of a communication to know whether the other end is in an intended operating state. This document provides an architectural overview of the entities involved that make such tests possible through the process of generating, conveying, and evaluating evidentiary Claims. It provides a model that is neutral toward processor architectures, the content of Claims, and protocols.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9334"/>
  <seriesInfo name="DOI" value="10.17487/RFC9334"/>
</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 title='Informative References' anchor="sec-informative-references">

<reference anchor="suit" target="https://datatracker.ietf.org/wg/suit/about/">
  <front>
    <title>Software Updates for the Internet of Things</title>
    <author >
      <organization>IETF</organization>
    </author>
    <date year="2023"/>
  </front>
</reference>
<reference anchor="suit-interim" target="https://datatracker.ietf.org/doc/agenda-interim-2023-suit-01-sessa/">
  <front>
    <title>interim-2023-suit-01</title>
    <author initials="D." surname="Thaler" fullname="Dave Thaler">
      <organization></organization>
    </author>
    <date year="2023" month="September" day="11"/>
  </front>
</reference>
<reference anchor="thaler" target="https://datatracker.ietf.org/meeting/interim-2023-suit-01/materials/slides-interim-2023-suit-01-sessa-teep-protocol-00.pdf">
  <front>
    <title>TEEP Protocol: draft-ietf-teep-protocol-16</title>
    <author initials="D." surname="Thaler" fullname="Dave Thaler">
      <organization></organization>
    </author>
    <date year="2023" month="September" day="11"/>
  </front>
</reference>
<reference anchor="teep" target="https://datatracker.ietf.org/wg/teep/about/">
  <front>
    <title>Trusted Execution Environment Provisioning</title>
    <author >
      <organization>IETF</organization>
    </author>
    <date year="2023"/>
  </front>
</reference>



<reference anchor="I-D.farrell-ufmrg-sample">
   <front>
      <title>Usable Formal Methods Research Group Sample Problems</title>
      <author fullname="Stephen Farrell" initials="S." surname="Farrell">
         <organization>Trinity College, Dublin</organization>
      </author>
      <date day="19" month="June" year="2023"/>
      <abstract>
	 <t>   This draft provides reasoning as to why the Usable Formal Methods
   research group might benefit from having an IETF-relevant sample
   problem and describes one such (IMAP search).  This is just an
   initial draft aiming to help move discussion forward so may be
   dropped or replaced by other drafts or the research group may prefer
   some non I-D format, or the research group may decide that sample
   problems aren&#x27;t sufficiently useful.  Early days, basically!

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-farrell-ufmrg-sample-00"/>
   
</reference>

<reference anchor="RFC9051">
  <front>
    <title>Internet Message Access Protocol (IMAP) - Version 4rev2</title>
    <author fullname="A. Melnikov" initials="A." role="editor" surname="Melnikov"/>
    <author fullname="B. Leiba" initials="B." role="editor" surname="Leiba"/>
    <date month="August" year="2021"/>
    <abstract>
      <t>The Internet Message Access Protocol Version 4rev2 (IMAP4rev2) allows a client to access and manipulate electronic mail messages on a server. IMAP4rev2 permits manipulation of mailboxes (remote message folders) in a way that is functionally equivalent to local folders. IMAP4rev2 also provides the capability for an offline client to resynchronize with the server.</t>
      <t>IMAP4rev2 includes operations for creating, deleting, and renaming mailboxes; checking for new messages; removing messages permanently; setting and clearing flags; parsing per RFCs 5322, 2045, and 2231; searching; and selective fetching of message attributes, texts, and portions thereof. Messages in IMAP4rev2 are accessed by the use of numbers. These numbers are either message sequence numbers or unique identifiers.</t>
      <t>IMAP4rev2 does not specify a means of posting mail; this function is handled by a mail submission protocol such as the one specified in RFC 6409.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9051"/>
  <seriesInfo name="DOI" value="10.17487/RFC9051"/>
</reference>

<reference anchor="RFC9397">
  <front>
    <title>Trusted Execution Environment Provisioning (TEEP) Architecture</title>
    <author fullname="M. Pei" initials="M." surname="Pei"/>
    <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
    <author fullname="D. Thaler" initials="D." surname="Thaler"/>
    <author fullname="D. Wheeler" initials="D." surname="Wheeler"/>
    <date month="July" year="2023"/>
    <abstract>
      <t>A Trusted Execution Environment (TEE) is an environment that enforces the following: any code within the environment cannot be tampered with, and any data used by such code cannot be read or tampered with by any code outside the environment. This architecture document discusses the motivation for designing and standardizing a protocol for managing the lifecycle of Trusted Applications running inside such a TEE.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9397"/>
  <seriesInfo name="DOI" value="10.17487/RFC9397"/>
</reference>




    </references>



  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA61a23LbRhJ9x1dMlAdKKYKybG8Sq1xOGEmJXWvZjkTvbiqV
SobAkJwYFy4GoMyonG/Zb9kv29PdMwAvkOJUNg+xBGB6+nZOd88ojuOotnVm
TtXBWL11epoZ9W1Z5TpTl6ZelKlT1zpf4umbqsTLXM2qMleTi4s3B5GeTiuz
wlL61X93ECW6NvOyWp8qW8zKKErLpNA5dkgrPavjvI6bWV7N49qYZex4UZxh
jasj10xz65wti3q9xIoXV5Nvo6LJp6Y6jVJ8cxolZeFM4Rp3quqqMRG2fxTd
lNW7eVU2S+jSbwS0X5bOpOrKOKOrZKG+o+8PopUpGohV6t71B/hAVDrYFaBU
rm2GF2zV17aqZ6OymtML+gwvFnW9dKfHx/QdPbIrM7JGPjumB8fTqrxx5pgl
0MK5rRfNFEuTWX58t9sOokg30A/OUTG8DZ+cjdTl2lQOQtSsyTLx/BnC0T03
ojBkf62TnLRolz8fqYlLFuXMFHa+LeO5Lgrjdl57UQt+N6rbd1/P8/ejwtRR
VJAfa5h8GkWUD+1vSrnG1vQvXCspeF3O6htdGfV2ScF2Cp+remHUi6I2FcSp
cqYmC1vMnSzT1dzU2N47GIt0Xenknak6B9/Mj2mjYz0tm/qY17VO4//wkS7s
b1CrLJByF0g5eszpph4+ePjIqxpb0sLmWyr7ZzF9F/NXD04+XjdA41jPTZHq
uE9Q7Ixzuk9nCcm5Xhn4Q2em2lE5fvAkPiFFan67pbKgFYCoy6TMAixJJ8mt
pX8Tn3x+8PGm5MbUCMxxnx3IfHqoM3fsMpsad4+1Ozo8eDBaprO/5AHI27J/
UjWuBhNcvDdJQ0FXF8XKVmWRm6Imv6wsMRCM+VNJRvv8lSSL4jhWeupINnCD
NHcSGqAgy8APjAQLVWuWQli4vf3qRXw+mumqMlnmCUK44cMHVZdqKbQX6aLE
6krJO3osXA58pSYHpWJXEjoEqWpLtg+VLlJlVjpr2u0YvVmUe061BRuiiH1H
Sr2oSV/oiY8rk5Az6Y0UDNL9LnhH+/CGZZQVMIK0+BMRu72lOGAdbY0HQuuO
fJGamS2M0sEJeZmajD7Z9IZWRbkymYI74K8I8CnwbKZzm1ldib0hOUeRBC23
aZqZKPqUeKoq0yYhHSOYBevaKN4YpNI7w574eIPazSIf632cSqSnZNm8LFOV
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
P8eIGlojKwAA

-->

</rfc>

