<?xml version="1.0" encoding="utf-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version  -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>

<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>
<?rfc comments="yes"?>

<rfc docName="draft-pep-email-01" category="std">

  <front>
    <title abbrev="pretty Easy privacy (pEp) Email">pretty Easy privacy (pEp): Email Formats and Protocols</title>

    <author initials="H." surname="Marques" fullname="Hernani Marques">
      <organization>pEp Foundation</organization>
      <address>
        <postal>
          <street>Oberer Graben 4</street>
          <city>CH-8400 Winterthur</city>
          <country>Switzerland</country>
        </postal>
        <email>hernani.marques@pep.foundation</email>
        <uri>https://pep.foundation/</uri>
      </address>
    </author>

    <date year="2020" month="November" day="03"/>

    
    
    

    <abstract>


<t>The proposed pretty Easy privacy (pEp) protocols for email are based upon 
already existing email and encryption formats (as PGP/MIME) and designed to 
allow for easily implementable and interoperable opportunistic encryption. The 
protocols range from key distribution, secret key synchronization between own 
devices, to mechanisms of metadata and content protection. The metadata and
content protection is achieved by moving the whole message (not only the body 
part) into the PGP/MIME encrypted part. The proposed pEp Email Formats not 
only achieve simple forms of metadata protection (like subject encryption), 
but also allow for sending email messages through a mixnet. Such enhanced 
forms of metadata protection are explicitly discussed within the scope of this 
document.</t>

<t>The purpose of pEp for email is to simplify and automate operations in order 
to make usage of email encryption a viability for a wider range of Internet 
users, with the goal of achieving widespread implementation of data 
confidentiality and privacy practices in the real world.</t>

<t>The proposed operations and formats are targeted towards to Opportunistic 
Security scenarios and are already implemented in several applications of 
pretty Easy privacy (pEp).</t>



    </abstract>


  </front>

  <middle>


<section anchor="introduction" title="Introduction">

<t>This document contains propositions for implementers of Mail User Agents 
(MUAs) seeking to support pretty Easy privacy (pEp) specifically for email
<xref target="RFC5322"/>. All the propositions of <xref target="I-D.birk-pep"/> also apply to pEp for
email. In this document, requirements are outlined for MUAs wanting to 
establish interoperability and/or to implement pEp for email.</t>

<t>pEp for email builds upon the cryptographic security services offered
by PGP/MIME <xref target="RFC3156"/>. The primary goals of pEp for email are:</t>

<t>(1) Maximization of email privacy for Internet actors deploying and using the 
pretty Easy privacy approach.</t>

<t>(2) Compatibility with legacy or other automatic email encryption solutions in 
order to preserve privacy to the greatest extent possible.</t>

<t>Interoperability with S/MIME <xref target="RFC8551"/> is a also goal, but at this time 
there is no specification or running code that achieves this goal.</t>

<t>Current tools and implementations have failed to provide a 
sufficient level of usability to ordinary Internet users, with the result that 
end-to-end email encryption is seldom used.</t>

<t>While OpenPGP <xref target="RFC4880"/> using PGP/MIME <xref target="RFC3156"/> offers
good encryption–for message contents at least–more work is needed to achieve 
the following three objectives of pretty Easy privacy (pEp):</t>

<t><list style="numbers">
  <t>make email encryption as automatic as possible,</t>
  <t>protect as much metadata as possible, and</t>
  <t>provide an easy way to authenticate communication partners.</t>
</list></t>

<t>A reference implementation of pEp for email is available for all major 
platforms and it has been ported to many programming languages 
(cf. <xref target="implementation-status"/> for an overview).</t>

<section anchor="relationship-to-other-pep-documents" title="Relationship to other pEp documents">

<t>This document describes the pEp for email protocols. While it specifies details 
particularly related to pEp for email, it basically inherits the structure 
of <xref target="I-D.birk-pep"/>, which describes the general concepts of pEp on a higher
level.</t>

<t>For protocol details, constituent pEp mechanisms which also apply to email can 
be found in documents like <xref target="I-D.marques-pep-handshake"/>), which shows how 
trust between any two pEp users can be established, <xref target="I-D.marques-pep-rating"/>,
which describes the privacy indications that can be helpful for regular Internet
users or <xref target="I-D.pep-keysync"/>, which outlines pEp’s peer-to-peer protocol to 
synchronize secret key material which belongs to the same account and user 
across various end-devices.</t>

<!-- # Normative language -->

</section>
<section anchor="requirements-language" title="Requirements Language">

<t>The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”,
“SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this
document are to be interpreted as described in <xref target="RFC2119"/>.</t>

<!-- ## Terms -->

</section>
<section anchor="terms" title="Terms">

<t>The following terms are defined for the scope of this document:</t>

<t><list style="symbols">
  <t>pEp Handshake: The process of one user contacting another over an
independent channel in order to verify Trustwords (or fingerprints
as a fallback). This can be done in-person or through established
verbal communication channels, like a phone
call. <xref target="I-D.marques-pep-handshake"/>  <vspace blankLines='1'/>
    <!-- comment to enfore linefeed in html rendering -->
  </t>
  <t>Trustwords: A scalar-to-word representation of 16-bit numbers (0 to
65535) to natural language words. When doing a Handshake, peers are
shown combined Trustwords of both public keys involved to ease the
comparison. <xref target="I-D.birk-pep-trustwords"/>  <vspace blankLines='1'/>
    <!--
  
[KRB] If my suggestions above are kept [[pEp Handshake]], there is no
need to have the second sentence about the Handshake, as it's already
been related in the Handshake definition.
  
-->
  </t>
  <t>Trust On First Use (TOFU): cf. <xref target="RFC7435"/>, which states: “In a
protocol, TOFU calls for accepting and storing a public key or
credential associated with an asserted identity, without
authenticating that assertion. Subsequent communication that is
authenticated using the cached key or credential is secure against
an MiTM attack, if such an attack did not succeed during the
vulnerable initial communication.”</t>
</list></t>

<!-- TODO: Make clear that we use TOFU without T. -->

<t><list style="symbols">
  <t>Man-in-the-middle (MITM) attack: cf. <xref target="RFC4949"/>, which states: “A
form of active wiretapping attack in which the attacker intercepts
and selectively modifies communicated data to masquerade as one or
more of the entities involved in a communication association.”  <vspace blankLines='1'/>
Note: Historically, MITM has stood for ‘<spanx style="emph">Man</spanx>-in-the-middle’.
However, to indicate that the entity in the middle is not always a
human attacker, MITM can also stand for ‘Machine-in-the-middle’ or
‘Meddler-in-the-middle’.</t>
</list></t>

</section>
</section>
<section anchor="opportunistic-security-and-privacy-for-email" title="Opportunistic Security and Privacy for Email">

<t>In addition to the Protocol’s Core Design Principles outlined in 
<xref target="I-D.birk-pep"/>, the following sections on design principles are applicable 
to pEp for email applications.</t>

<section anchor="privacy-by-default" title="Privacy by Default">

<t>The pEp formats and protocols aim to maximize privacy. Where privacy goals
contradict with security goals, the privacy goals MUST take precedence.</t>

<t>Examples:</t>

<t><list style="symbols">
  <t>pEp implementers MUST NOT make queries to public key servers by default.
The reason for this is to make it more resource-intensive for centralized 
network actors to learn a user’s social graph. This is also problematic 
security-wise, as centralized cryptographic key subversion at-scale is made 
easier. Instead, key distribution MUST be handled in-band while 
communicating  with other peers.</t>
  <t>Trust information MUST NOT be attached to the communication partners’ public
keys. This is metadata which MUST be held locally and separately from the
keys. Trust is established between the peers directly (peer-to-peer) and no
trust information is held centrally (no support for the Web
of Trust): that is, while pEp MUST be able to work with OpenPGP keys which
carry trust information, this external trust information MUST NOT be used to
signal any trust level to the pEp user.</t>
  <t>pEp-enabled MUAs MUST either engage in a signed-and-encrypted communication
or in unsigned plaintext communication. While the signatures attached to
plaintext messages can be verified, signed-only messages neither increase
security nor privacy, so long as the corresponding public key is not
authenticated.</t>
</list></t>

</section>
<section anchor="data-minimization" title="Data Minimization">

<t>Data Minimization includes data sparsity and hiding of all technically
concealable information whenever possible.</t>

</section>
<section anchor="metadata-protection" title="Metadata Protection">

<t>Email metadata (i.e., headers) MUST either be omitted or encrypted whenever
possible.</t>

<t>The PGP/MIME specification as described in <xref target="RFC3156"/> provides few 
facilities for metadata protection: while the email body receives protection, 
the header section remains unprotected.</t>

<t>However, it is possible to also protect the information contained in the 
header field values by encapsulating the whole message into a MIME entity to 
be signed and encrypted.</t>

<t>The S/MIME Message Specification <xref target="RFC8551"/> defines a way to also protect the 
header section in addition to the content of a message:</t>

<t><list style='empty'>
  <t>The sending client MAY wrap a full MIME message in a
message/rfc822 wrapper in order to apply S/MIME security
services to header fields.</t>
</list></t>

<!-- HB to much S/MIME
S/MIME {{RFC8551}} provides no further guidance in deciding which header
fields are transport-relevant and thus might be copied to the wrapper.
-->

</section>
<section anchor="interoperability" title="Interoperability">

<t>Implementers of pEp SHOULD be liberal in accepting non-pEp formats to encrypt 
email contents and metadata. pEp implementations MUST use the strict and 
interoperable pEp Email Format 1.0 (cf. <xref target="pef-1-0"/>) for any outgoing 
communication to non-pEp users. For communication between pEp users, more 
privacy-preserving
formats (cf. <xref target="pep-email-formats"/>) MUST be used. pEp Email Formats 2.0 and 
newer SHOULD NOT be used between users who are not recognized as 
pEp users (cf. <xref target="protocol-negotiation-for-format-selection"/>), because for
non-pEp users those formats are likely to produce unwanted visual artifacts.</t>

</section>
<section anchor="end-to-end" title="End-to-End">

<t>For interpersonal messaging, an email endpoint in pEp is the MUA on a user’s 
end-device: that is, encryption and decryption of messages MUST be executed on 
a user’s end-device and MUST NOT depend on any third-party network 
infrastructure (i.e., any infrastructure outside a user’s direct control).</t>

<t>[[ <spanx style="strong">TODO</spanx>: Add enterprise settings with Key Escrow / Extra Keys ]]</t>

</section>
<section anchor="peer-to-peer" title="Peer-to-Peer">

<t>All relevant pEp mechanisms and state information about other peers MUST be
held locally, on a peer’s end-device. There MUST NOT be any reliance
on an email server or even a centralized network component to hold 
relevant information for peers to be able to communicate or to authenticate 
themselves. Email servers (like, SMTP or IMAP) are only used as transport
infrastructure for messages, but MUST not be relevant to hold actual state 
between peers.</t>

<t>[[ TODO: Make clear there is a way that synchronizes trust in a peer-to-peer 
fashion, by using the Trust Sync mechanism. ]]</t>

</section>
<section anchor="ux" title="User Experience (UX)">

<t>[[ <spanx style="strong">TODO</spanx>: Add here what is specific to email ]]</t>

</section>
<section anchor="identity-system" title="Identity System">

<t>In pEp for email, a user is a person or group who can have one or more 
identities, each represented by email addresses. Every identity has an own key 
attached to it. An email address can also be an alias for an already existing 
identity, in which case the same key is attached to it.</t>

<t>All information about communication partners, like identities, keys and 
aliases MUST be held on a user’s end-device as state information. This SHOULD
be done using a structured format, to facilitate the synchronization of state
information across various devices, taking into account multi-device scenarios,
which are common today.</t>

<t>In pEp’s reference implementation (cf. <xref target="implementation-status"/>),
keys are held using the key store of the cryptographic library,
while peer-specific state information, including trust information, is
held in a simple relational database.</t>

<t>[[ <spanx style="strong">TODO</spanx>: Check optimal order for the following sections. ]]</t>

<section anchor="elements-address" title="Address">

<t>In pEp for email, the SMTP address (e.g., mailto:alice@example.org) constitutes 
the network address.</t>

</section>
<section anchor="elements-key" title="Key">

<t>For now, a key in pEp for email is an OpenPGP key. Each 
identity has a default key attached for that identity. This is the public 
key to be used to encrypt communications to it.</t>

</section>
<section anchor="elements-user" title="User">

<t>A user in pEp for email is a specific person or group. A user 
has at least one identity, but can have more.</t>

</section>
<section anchor="elements-identity" title="Identity">

<t>An identity in pEp for email is represented by an email URI, 
like mailto:alice@example.org. Identities are represented by 
email address URIs because a user may have multiple URIs. For example, if 
Alice uses mailto:alice@example.org for private purposes, but also wishes to 
have a public address, she may create another email address, such as 
anonymous@example.com. Because this is a new 
URI (mailto:anonymous@example.com), it is considered a new identity for Alice.</t>

<t>By default, pEp-enabled MUAs MUST generate a new key pair during new account
configuration, so that a user’s respective identities are not correlated to
each other. However, if Alice wants her URIs to be handled as a single
identity with one key, she may configure her respective identities as aliases.</t>

<t>For other email URIs pointing to the same identity, see the
alias (cf. <xref target="elements-alias"/>) concept.</t>

</section>
<section anchor="elements-alias" title="Alias">

<t>Aliases share the same key and identity, e.g., the same key might
be used for mailto:alice@example.org as well as for 
mailto:alice@example.net. That is, both addresses refer to the same
identity.</t>

</section>
</section>
<section anchor="pep-email-formats" title="pEp Email Formats">

<t>The pEp Email Formats 1.0, 2.0 and 2.1 are restricted MIME-based email
formats, which ensure messages to be signed and encrypted. In accordance with
pEp’s privacy (and not security) focus, signed-only messages MUST NOT be 
produced (cf. <xref target="privacy-by-default"/>). pEp-enabled clients MUST be able to
render all pEp Email Formats properly: for outgoing communications, 
the most privacy-preserving format available is to be used, taking 
interoperability (cf. <xref target="interoperability"/>) into account.</t>

<t>Since pEp Email Format 2.0, a compatibility format (i.e., pEp Email Format 
1.0, cf. <xref target="pef-1-0"/>) exists, which SHOULD be applied to non-pEp users, 
for which trustworthy public keys are available according to the local database.</t>

<t>In case no trustworthy encryption key is available, an unencrypted, unsigned
MIME email is sent out. As in all pEp formats, also this (unprotected) message
MUST contain the sender’s public key, unless Passive Mode
(cf. <xref target="passive-mode"/>) is active.</t>

<t>All pEp Email Formats include a “pEpkey.asc” file attachment holding the 
sender’s OpenPGP public key in ASCII-armored format, which is suitable 
for manual key import by non-pEp users.  Thus, a user of any OpenPGP-enabled 
MUA is able to manually import the public key and engage in end-to-end 
encryption with the pEp sender. MUA implementers of PGP-capable email clients,
even when not fully supporting pEp’s protocols, are encouraged to 
automatically import the key such that the user can immediately engage in 
opportunistic encryption.</t>

<t>In pEp’s reference implementation the subject is set to “pEp” (or 
alternatively to its UTF-8 representation as “=?utf-8?Q?p=E2=89=A1p?=”).
However, the subject’s value of the outer message MUST be ignored. Therefore,
the subject can be set to any value (e.g., “…” as used in other
implementations).</t>

<!-- Points to add here are things which are common to all formats, like:
     - UTF-8 charset to be used always
     - X-pEp-Version header always to be set by pEp-enabled MUAs
     - ...
-->

<section anchor="pef-0" title="Unencrypted pEp Format">

<t>This is the format to be used when unencrypted messages are sent out.</t>

<t>The unencrypted pEp format is a “multipart/mixed” MIME format, which
by default ensures the delivery of the sender’s public key as an attachment
(“Content-Disposition: attachment”).</t>

<t>A simple plaintext email looks like the following:</t>

<figure><artwork><![CDATA[
From: Alice <alice@example.org>
To: Bob <bob@example.org>
Date: Tue, 31 Dec 2019 05:05:05 +0200
X-pEp-Version: 2.1
MIME-Version: 1.0
Subject: Saying Hello
Content-Type: multipart/mixed; boundary="boundary"

--boundary
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Hello Bob

If you reply to this email using a pEp-enabled client, I will
be able to send you that sensitive material I talked to you
about.

Have a good day!

Alice

-- 
Sent with pEp for Android.

--boundary
Content-Type: application/pgp-keys; name="pEpkey.asc"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="pEpkey.asc"; size=2639

-----BEGIN PGP PUBLIC KEY BLOCK-----

[...]

-----END PGP PUBLIC KEY BLOCK-----

--boundary--
]]></artwork></figure>

<!--
   TODO, feedback roker: the size parameter is redundant, useless and can
   even be counter-productive: it should not be necessary that the receiver 
   relies on this parameter; OpenPGP has own mechanisms to ensure a key is
   protected against damages
-->

</section>
<section anchor="pef-1-0" title="pEp Email Format 1.0">

<t>pEp Email Format 1.0 (PEF-1.0) is an encrypted and signed MIME format, which 
by default ensures:</t>

<t><list style="symbols">
  <t>a signed and encrypted message, with subject encryption</t>
  <t>delivery of the sender’s public key</t>
</list></t>

<t>PEF-1.0 has a “multipart/encrypted” MIME node on-the-wire format with an
OpenPGP encrypted and signed filename “msg.asc”, and 
“Content-Disposition: inline” attribute.”</t>

<t>The subject is the only header field that can be protected with PEF-1.0. To 
achieve this protection, the real subject value is added to the top for the 
content section for the very first MIME entity with media type “text/plain”,
that is encrypted, e.g.:</t>

<t><list style='empty'>
  <t>Subject: Credentials</t>
</list></t>

<t>For example, an email with “Subject: Credentials” becomes “Subject: pEp” 
on-the-wire once encryption has taken place, with the true subject appended to 
the beginning of the message text once decrypted.</t>

<t>Thus, legacy clients not aware of nor able to parse pEp’s subject encryption, 
still display the actual subject (in the above example: “Credentials”) to
the user. Whenever the first encrypted “text/plain” MIME entity
contains such a subject line, the MUAs implementing pEp MUST render it to
the user. Note that also the lines starting with “subject:” or “SUBJECT:” 
are to be rendered (as with header fields, this is case-insensitive).</t>

<t>A pEp-enabled MUA MUST add the “X-pEp-Version” header field with 
its highest value (preferably with value “2.1” as for pEp Email Format 
2.1 <xref target="pef-2-1"/>) when producing this format. Here, a pEp-enabled MUA 
declares its capability to receive and render more privacy-preserving 
formats. Upgrading both sides to the highest version of the pEp Email Format 
allows pEp-enabled MUAs for best possible protection of metadata. For non-pEp 
MUAs it is OPTIONAL to add the “X-pEp-Version: 1.0” header field. However, 
this format is implicitly assumed even if this header field is not present.</t>

<t>Please note that for messages between pEp- and non-pEp clients the subject
encryption MAY be disabled, sacrificing usability over privacy by 
avoiding artefacts for non-pEp recipients.</t>

<t>PEF-1.0 is also considered pEp’s compatibility format towards non-pEp clients.</t>

<t>A PEF-1.0 example looks as follows:</t>

<figure><artwork><![CDATA[
From: Alice <alice@example.org>
To: Bob <bob@example.org>
Date: Wed, 1 Jan 2020 23:23:23 +0200
X-pEp-Version: 1.0
MIME-Version: 1.0
Subject: pEp
Content-Type: multipart/encrypted; boundary="boundary1";
 protocol="application/pgp-encrypted"

--boundary1
Content-Type: application/pgp-encrypted

Version: 1

--boundary1
Content-Type: application/octet-stream
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; filename="msg.asc"

-----BEGIN PGP MESSAGE-----

[...]

-----END PGP MESSAGE-----

--boundary--
]]></artwork></figure>

<t>Decrypting the enclosed “msg.msc” part yields the following:</t>

<figure><artwork><![CDATA[
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="boundary2"
--boundary2
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline; filename="msg.txt"

Subject: Credentials

Dear Bob

Please use "bob" with the following password to access the wiki site:

correcthorsebatterystaple

Please reach out if there are any issues and have a good day!

Alice

--boundary2
Content-Type: application/pgp-keys
Content-Disposition: attachment; filename="pEpkey.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

[...]

-----END PGP PUBLIC KEY BLOCK-----

--boundary2--
]]></artwork></figure>

<t>Note that the user-intended subject value is encrypted in the first 
“text/plain” MIME entity under the “multipart/mixed” MIME node.</t>

<section anchor="deprecated-variant-of-pef-10" title="Deprecated variant of PEF-1.0">

<t>An earlier variant of PEF-1.0 started with a “multipart/mixed” MIME node, 
which in case of a simple text-only email without attachments and 
other MIME entities has</t>

<t>(1) a “text/plain” MIME entity with the PGP-encrypted content, and</t>

<t>(2) the sender’s transferable public key at the very end.</t>

<t>This variant MUST NOT be produced anymore.</t>

<t>An example of this deprecated variant of PEF-1.0 looks as follows:</t>

<figure><artwork><![CDATA[
From: Alice <alice@example.org>
To: Bob <bob@example.org>
Date: Wed, 1 Jan 2020 23:23:23 +0200
X-pEp-Version: 1.0
MIME-Version: 1.0
Subject: pEp
Content-Type: multipart/mixed; boundary="boundary"

--boundary
Content-Type: application/pgp-encrypted

Version: 1

--boundary
Content-Type: text/plain; charset="utf8"
Content-Transfer-Encoding: 7bit

-----BEGIN PGP MESSAGE-----
[...]
-----END PGP MESSAGE-----

--boundary
Content-Type: application/pgp-keys; name="pEpkey.asc"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="pEpkey.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

[...]

-----END PGP PUBLIC KEY BLOCK-----

--boundary--
]]></artwork></figure>

<t>There, decrypting the PGP encrypted text/plain element yields a text
like the following; most obviously, the intended subject line
is now visible:</t>

<figure><artwork><![CDATA[
Subject: Credentials

Dear Bob

Please use "bob" with the following password to access the wiki site:

correcthorsebatterystaple

Please reach out if there are any issues and have a good day!

Alice
]]></artwork></figure>

</section>
</section>
<section anchor="pef-2-0" title="pEp Email Format 2.0">

<t>pEp Email Format 2.0 (PEF-2.0) is a strict MIME format, which by
default ensures:</t>

<t><list style="symbols">
  <t>a signed and encrypted message, with full email encapsulation</t>
  <t>delivery of the sender’s public key</t>
</list></t>

<t>In PEF-2.0, the actual email (inner message) is encapsulated by a MIME
entity (“Content-Type: message/rfc822”), which is the second part of a
“multipart/mixed” MIME node. The first part of this MIME node contains a 
“text/plain” MIME entity, including a marker text
“pEp-Message-Wrapped-Info: OUTER” (in its MIME content). This is used for 
proper displaying and mapping of the nested message and its encrypted header 
fields. Like with the PEF-1.0 (cf. <xref target="pef-1-0"/>), the third (and last) part of 
the “multipart/mixed” MIME node MUST contain the sender’s public key.</t>

<!-- TODO: Explain pEp-Wrapped-Message-Info: INNER (and OUTER) markers. -->

<t>The “multipart/mixed” MIME node is encrypted inside yet another MIME
node (“Content-Type: multipart/encrypted”, cf. <xref target="RFC1847"/> /
<xref target="RFC3156"/>), which is the body part of the outer message.</t>

<t>Thus, the whole header section of the inner message can be fully
preserved, not only encrypted, but also signed. In the outer message,
however, when communicating with pEp users all header fields that are not
needed MUST be omitted to the fullest extent possible.</t>

<t>Once encrypted, only the outer message consisting of the (minimal) outer 
header section and the “multipart/encrypted” MIME entity as body with an
application/octet-stream “Content-Type” with name “msg.asc” is visible
on the wire.</t>

<t>If the receiving side is not a known pEp-enabled MUA, but there is a 
trustworthy public key available, PEF-1.0 (cf. <xref target="pef-1-0"/>) MUST be used to 
send the email.</t>

<t>In any case, the “X-pEp-Version” header field MUST be set to version 2.0,
as the highest version that the sender supports.</t>

<t>The following example shows a PEF-2.0 multipart/encrypted email,
signed and encrypted, as an 7bit octet stream with a filename
“msg.asc”, with “Content-Disposition: inline”. Within that, 
the original email message is fully contained in encrypted form (like this, 
also the subject line gets encrypted). The support of version 2.0 is 
announced in the “X-pEp-Version” header field (in this example, 2.0 is the 
newest pEp Email Format the pEp-enabled MUA is able to produce and render):</t>

<figure><artwork><![CDATA[
From: Alice <alice@example.org>
To: Bob <bob@example.org>
Date: Wed, 1 Jan 2020 23:23:23 +0200
X-pEp-Version: 2.0
MIME-Version: 1.0
Subject: pEp
Content-Type: multipart/encrypted; boundary="boundary1";
 protocol="application/pgp-encrypted"

--boundary1
Content-Type: application/pgp-encrypted

Version: 1

--boundary1
Content-Type: application/octet-stream
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; filename="msg.asc"

-----BEGIN PGP MESSAGE-----

[...]

-----END PGP MESSAGE-----

--boundary--
]]></artwork></figure>

<t>Decrypting “msg.asc” results in a multipart/mixed node, with three elements:</t>

<t>(1) a text part indicating this is the encapsulated message</t>

<t>(2) the original message encapsulated by a “message/rfc822” MIME
    entity, and</t>

<t>(3) the transferable sender’s public key in ASCII-armored format.</t>

<t>An unwrapped example looks like this:</t>

<figure><artwork><![CDATA[
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="boundary2"

--boundary2
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline; filename="msg.txt"

pEp-Wrapped-Message-Info: OUTER

--boundary2
Content-Type: message/rfc822

Message-ID: <pEp.1234>
Date: Wed, 1 Jan 2020 23:23:23 +0200
Subject: Credentials
X-pEp-Version: 2.0
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="boundary3"

--boundary3
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

pEp-Wrapped-Message-Info: INNER

Dear Bob

Please use "bob" with the following password to access the wiki site:

correcthorsebatterystaple

Please reach out if there are any issues and have a good day!

Alice

--boundary3--

--boundary2

Content-Type: application/pgp-keys
Content-Disposition: attachment; filename="pEpkey.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

[...]

-----END PGP PUBLIC KEY BLOCK-----

--boundary2--
]]></artwork></figure>

<!-- HB: Isn't this simply a repetition of PEF-1.0?

##### Example PEF-2.0: pEp to non-pEp {#pef-2-0-ex1-compat}

On the wire it looks the same as in PEF-2.0 {{pef-2-0-ex1}}:

#{::include ../shared/fence-line.mkd}

#{::include examples/pef-2-0.mkd}

#{::include ../shared/fence-line.mkd}

The decrypted "msg.asc" octet stream also is a multipart/mixed Content-Type,
but immediately exposes the MIME content part(s), with the transferable 
sender's public key at the very end. There's no full email encapsulation,
such that only the Subject header field gets protected by default. 

Concretely, that "msg.asc" element, when decrypted, looks like the following:

#{::include ../shared/fence-line.mkd}

#{::include examples/msg-part-decrypted-compat.mkd}

#{::include ../shared/fence-line.mkd}

-->

</section>
<section anchor="pef-2-1" title="pEp Email Format 2.1">

<t>pEp Email Format 2.1 (PEF-2.1) introduces further pEp-specific header
fields to the inner message, which help to determine the behavior
between pEp users.</t>

<!-- TODO: Explain that behavior. -->

<t>In normal interpersonal messaging those additional header fields are:</t>

<t>(1) “X-pEp-Wrapped-Message-Info: INNER” header field stating that the
message carrying this is to be considered the most inner message
containing the original email (this is particularly relevant for mixnet
or other scenarios of nested messaging; cf. <xref target="pEp.mixnet"/>)</t>

<t>(2) “X-pEp-Sender-FPR” header field with the value set to sender’s full 160-bit
public key fingerprint (e.g.,
“1234567890ABCDEF1234567890ABCDEF12345678”), and</t>

<t>(3) the “X-pEp-Version” header field set to version “2.1”.</t>

<!-- TODO: Explain all the other headers which exists, e.g., for technical
     messages (Key Reset / Sync etc.). -->

<t>As with PEF-2.0 <xref target="pef-2-0"/>, in PEF-2.1 the actual email (inner message) 
is encapsulated by a MIME entity (“Content-Type: message/rfc822”), which is 
the second part of a “multipart/mixed” MIME node. The first part of this MIME 
node contains a “text/plain” MIME entity, which SHOULD be used to inform about 
the nature of this format (in case a non-pEp client encounters in the mailbox). 
It MAY be used to carry the intended subject of the inner message (which
is not done in current reference implementations). Like with the PEF-1.0 
(cf. <xref target="pef-1-0"/>) and PEF 2.0 (cf. <xref target="pef-2-0"/>), the third (and last) part of 
this “multipart/mixed” MIME node MUST contain the sender’s public key.</t>

<t>This “multipart/mixed” MIME node is encrypted inside yet another MIME
node (“Content-Type: multipart/encrypted”, cf. <xref target="RFC1847"/> /
<xref target="RFC3156"/>), which is the body part of the outer message.</t>

<t>A caveat of PEF-2.1 is that message rendering varies considerably
across different MUAs. This is relevant as it might happen that a
non-pEp MUA encounters a PEF-2.1 message (e.g., if a pEp-enabled client
was used in the past). No standard is currently available which
enables MUAs to reliably determine whenever a nested “message/rfc822” MIME
entity is meant to render the contained email message, or if it was
effectively intended to be forwarded as an attachment, where a user
needs to click on in order to see its content. To help unaware MUAs, a
Content-Type header field parameter with name “forwarded” as per
<xref target="I-D.melnikov-iana-reg-forwarded"/> is added to the Content-Type
header field. MUAs can use this to distinguish between a forwarded
message and a nested message (i.e., using “forwarded=no”).</t>

<t>When the receiving peer was registered as being only PEF-2.0-capable,
the message must be sent in PEF-2.0 (cf. <xref target="pef-2-0"/>). The reason for this
is that pEp-enabled MUAs which are only PEF-2.0-capable rely on the
plaintext “pEp-Message-Wrapped-Info: OUTER” and
“pEp-Message-Wrapped-Info: INNER” markers to properly display and map
the nested message and its encrypted header fields.</t>

<t>As with PEF-1.0, if the receiving side is not a known pEp-enabled MUA,
but there is a trustworthy public key available, PEF-1.0 
(cf. <xref target="pef-1-0"/>) MUST be used to send the email.</t>

<t>In any case, the “X-pEp-Version” header field MUST be set to version 2.1,
as the highest version that the sender supports.</t>

<t>This is an example of what the format looks like between two
PEF-2.1-capable clients:</t>

<figure><artwork><![CDATA[
From: Alice <alice@example.org>
To: Bob <bob@example.org>
Date: Wed, 1 Jan 2020 23:23:23 +0200
X-pEp-Version: 2.1
MIME-Version: 1.0
Subject: pEp
Content-Type: multipart/encrypted; boundary="boundary1";
              protocol="application/pgp-encrypted"

--boundary1
Content-Type: application/pgp-encrypted

Version: 1

--boundary1
Content-Type: application/octet-stream
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; filename="msg.asc"

-----BEGIN PGP MESSAGE-----

[...]

-----END PGP MESSAGE-----

--boundary1--
]]></artwork></figure>

<t>Unwrapping the “multipart/encrypted” MIME node, yields this:</t>

<figure><artwork><![CDATA[
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="boundary2"

--boundary2
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline; filename="msg.txt"

This message was encrypted with pEp (https://pep.software). If you
are seeing this message, your client does not support raising message
attachments. Please click on the message attachment to view it,
or better yet, consider using pEp!

--boundary2
Content-Type: message/rfc822; forwarded="no"

Message-ID: <pEp.1234>
Date: Wed, 1 Jan 2020 23:23:23 +0200
Subject: Credentials
X-pEp-Version: 2.1
X-pEp-Wrapped-Message-Info: INNER
X-pEp-Sender-FPR: 1234567890ABCDEF1234567890ABCDEF12345678
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="boundary3"

--boundary3
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Dear Bob

Please use "bob" with the following password to access the wiki site:

correcthorsebatterystaple

Please reach out if there are any issues and have a good day!

Alice

--boundary3--

--boundary2

Content-Type: application/pgp-keys
Content-Disposition: attachment; filename="pEpkey.asc"

-----BEGIN PGP PUBLIC KEY BLOCK-----

[...]

-----END PGP PUBLIC KEY BLOCK-----

--boundary2--
]]></artwork></figure>

<t>[[ TODO: Clarify on the “raising message” term in the example. ]]</t>

<!-- Repetition?

##### Example PEF-2.1: pEp to pEp (support version 2.0) {#pef-2-1-ex2}

When the receiving peer was registered as being only PEF-2.0-capable,
that a special PEF-2.1 format MUST be sent, which in its essence is a
PEF-2.0 format.

The reason for this is that pEp-enabled MUAs which are only PEF-2.0-capable
rely on the plaintext "pEp-Message-Wrapped-Info: OUTER" and
"pEp-Message-Wrapped-Info: INNER" markers to properly display and map the 
nested message and its encrypted header fields.


On the wire, no difference is visible to example {{pef-2-1-ex1}} above:

#{::include ../shared/fence-line.mkd}

#{::include examples/pef-2-1.mkd}

#{::include ../shared/fence-line.mkd}

The "msg.asc" part, on the other hand, looks like this:

#{::include ../shared/fence-line.mkd}

#{::include examples/msg-part-decrypted-pef-2-1_compat-2-0.mkd}

#{::include ../shared/fence-line.mkd}

Please note that this basically is a PEF-2.0 format, but with the additional
pEp-specific headers for the wrapped RFC 822 message.

This ensures interoperability with clients which are only capable of rendering
PEF-2.0.

##### Example PEF-2.1: pEp to non-pEp

On the wire, PEF-2.1 is identical to {{pef-2-0}} except X-pEp-Version being set
to version 2.1 instead of 2.0. 

#{::include ../shared/fence-line.mkd}

#{::include examples/pef-2-1.mkd}

#{::include ../shared/fence-line.mkd}

The "msg.asc", when decrypted, looks exactly the same as in
{{pef-2-0-ex1-compat}}:

#{::include ../shared/fence-line.mkd}

#{::include examples/msg-part-decrypted-compat.mkd}

#{::include ../shared/fence-line.mkd}

-->

<!-- Comment out Bcc algorithm for now; to be fixed in the review.

### Encryption to Bcc recipients

\[\[ TODO: Describe problem \]\]

#### Algorithm

For encryption of emails that contain Bcc recipients a simple
algorithm MAY be used.

Recipients MUST be partitioned into three lists, one for each of three
possible outgoing messages:

1. To and Cc recipients (without Bcc recipients), those being the visible
recipients

1. Bcc recipients for which no encryption keys are available

1. Bcc recipients for which encryption keys are available

It's RECOMMENDED that if the original message the user drafted is
saved in the user's sent folder, that all recipient 
fields ("To:", "Cc:", "Bcc:") be preserved.

##### Split To and Cc recipients from Bcc recipients

To and Cc recipients MUST be split from the Bcc recipients.

##### Split Bcc recipients in two groups

Bcc recipients MUST be split in two groups:

* First group of Bcc recipients who will receive clear text emails.
* Second group of Bcc recipients who are able to receive encrypted emails.

##### Send one email with only To/Cc recipients

The original email the user drafted SHOULD be sent out with the "Bcc:" field
removed.

##### Send one Bcc email for the first Bcc group

For the first Bcc group, a regular email message with only Bcc recipients is sent.

##### Send individual Bcc emails for the second group

For the second group, individual Bcc email Messages are sent.

-->

</section>
<section anchor="protocol-negotiation-for-format-selection" title="Protocol Negotiation for Format Selection">

<t>To be able to decide which email format to generate, the pEp-enabled MUA 
REQUIRES to record state on a per-identity basis. Once a “X-pEp-Version” header 
field is discovered, the user MUST be recorded as a pEp user and the
corresponding pEp Version it supports (according to the highest value of the 
“X-pEp-Version” header field encountered).</t>

</section>
<section anchor="saving-messages" title="Saving Messages">

<t>In accordance with the Privacy by Default principle, messages sent
or received in encrypted form MUST be saved with the identity’s
respective public key.</t>

<t>Messages sent or received in unencrypted form, SHOULD NOT be saved
in encrypted form on the email server: this reflects the Privacy Status
the user encountered when sending or receiving the email and thus meets
the user’s expectations.</t>

<t>Instead, message drafts MUST always be saved with the identity’s public key.</t>

<t>Other messages sent and received MUST be saved encrypted by default: for
most end-user scenarios, the servers users work with, are considered 
untrusted.</t>

<t>For trusted environments (e.g., in organizations) and to conform to legally
binding archiving regulations, pEp implementations MUST provide a 
“Trusted Server” option. With the user’s explicit consent (opt-in), 
unencrypted copies of the Messages MUST be held on the mail servers 
controlled by the organization.</t>

<!--
TODO, feedback by roker: Discuss the importance of full-disk encryption, 
also for the option to save messages locally in unencrypted form; that is even
more important to protect secret keys (mentioned in pEp's general draft).
-->

</section>
</section>
</section>
<section anchor="key-management" title="Key Management">

<section anchor="key-generation" title="Key Generation">

<t>A pEp-enabled Mail User Agent MUST consider every email account as an 
new identity: for each identity, a different key pair MUST be created 
automatically if no key material with sufficient length is available. 
By default, RSA-4096 key pairs for OpenPGP encryption 
<xref target="RFC4880"/> SHOULD be generated automatically for each email account. 
However, the key length MUST be at least 2048 bits. Elliptic curve keys with
at least 256 bits MUST be supported, but SHOULD NOT yet be generated and 
announced by default for interoperability reasons.</t>

<t>If for an identity there’s an RSA key pair with less than 2048 bits, new keys
MUST be generated.</t>

</section>
<section anchor="private-keys" title="Private Keys">

<t>[[ TODO: Add here what is specific to email ]]</t>

<section anchor="storage" title="Storage">

<t>[[ TODO: Add here what is specific to email ]]</t>

</section>
<section anchor="passphrase" title="Passphrase">

<t>[[ TODO: Add here what is specific to email ]]</t>

</section>
<section anchor="private-key-export-import" title="Private Key Export / Import">

</section>
</section>
<section anchor="public-key-distribution" title="Public Key Distribution">

<t>By default, public keys MUST always be attached to any outgoing message
as described in <xref target="pep-email-formats"/>. If this is undesired, Passive Mode 
(cf. <xref target="passive-mode"/>) can be activated.</t>

</section>
<section anchor="key-reset" title="Key Reset">

<t>[[ TODO: Add here what is specific to email ]]</t>

</section>
</section>
<section anchor="trust-management" title="Trust Management">

<t>The following example roughly describes a pEp email scenario with a
typical initial message flow to demonstrate key exchange and basic
trust management:</t>

<t><list style="numbers">
  <t>Alice – knowing nothing of Bob – sends an email to Bob. As Alice
has no public key from Bob, this email is sent out
unencrypted. However, Alice’s public key is automatically attached.</t>
  <t>Bob can just reply to Alice and – as he received her public key –
his MUA is now able to encrypt the message. At this
point, the rating for Alice changes to “encrypted” in Bob’s
MUA, which (UX-wise) can be displayed using yellow
color (cf. <xref target="trust-rating"/>).</t>
  <t>Alice receives Bob’s key. As of now Alice is also able to send
secure emails to Bob. The rating for Bob changes to “encrypted”
(with yellow color) in Alice’s MUA (cf. <xref target="trust-rating"/>).</t>
  <t>If Alice and Bob want to prevent man-in-the-middle (MITM) attacks,
they can engage in a pEp Handshake comparing their so-called
Trustwords (cf. <xref target="handshake"/>) and confirm this process if those
match. After doing so, their identity rating changes to “encrypted
and authenticated” (cf. <xref target="trust-rating"/>), which (UX-wise) can be
displayed using a green color.</t>
</list></t>

<t>As color code changes for an identity, this is also reflected to future
messages to/from this identity. Past messages, however, MUST NOT be
altered.</t>

<figure><artwork><![CDATA[
          -----                                       -----
          | A |                                       | B |
          -----                                       -----
            |                                           |
+------------------------+                 +------------------------+
| auto-generate key pair |                 | auto-generate key pair |
|    (if no key yet)     |                 |    (if no key yet)     |
+------------------------+                 +------------------------+
            |                                           |
+-----------------------+                   +-----------------------+
| Privacy Status for B: |                   | Privacy Status for A: |
|     *Unencrypted*     |                   |     *Unencrypted*     |
+-----------------------+                   +-----------------------+
            |                                           |
            |   A sends message to B (Public Key        |
            |   attached) / optionally signed, but      |
            |               NOT ENCRYPTED               |
            +------------------------------------------>|
            |                                           |
            |                               +-----------------------+
            |                               | Privacy Status for A: |
            |                               |      *Encrypted*      |
            |                               +-----------------------+
            |                                           |
            |      B sends message to A (Public Key     |
            |      attached) / signed and ENCRYPTED     |
            |<------------------------------------------+
            |                                           |
+-----------------------+                               |
| Privacy Status for B: |                               |
|      *Encrypted*      |                               |
+-----------------------+                               |
            |                                           |
            |   A and B successfully compare their      |
            |   Trustwords over an alternative channel  |
            |   (e.g., phone line)                      |
            |<-- -- -- -- -- -- -- -- -- -- -- -- -- -->|
            |                                           |
+-----------------------+                   +-----------------------+
| Privacy Status for B: |                   | Privacy Status for A: |
|       *Trusted*       |                   |       *Trusted*       |
+-----------------------+                   +-----------------------+
            |                                           |


]]></artwork></figure>

<t>[[ TODO: Add more of what is specific to email ]]</t>

<section anchor="privacy-status" title="Privacy Status">

<t>[[ TODO: Add here what is specific to email ]]</t>

</section>
<section anchor="handshake" title="Handshake">

<t>[[ TODO: Add here what is specific to email ]]</t>

</section>
<section anchor="trust-rating" title="Trust Rating">

<t>[[ TODO: Add here what is specific to email ]]</t>

</section>
</section>
<section anchor="synchronization" title="Synchronization">

<t>As per <xref target="I-D.pep-keysync"/>:</t>

<t>[[ TODO: Add here what is specific to email ]]</t>

<section anchor="private-key-synchronization" title="Private Key Synchronization">

<t>[[ TODO: Add here what is specific to email ]]</t>

</section>
<section anchor="trust-synchronization" title="Trust Synchronization">

<t>[[ TODO: Add here what is specific to email ]]</t>

</section>
</section>
<section anchor="interoperability-1" title="Interoperability">

<t>[[ TODO: Add here what is specific to email ]]</t>

</section>
<section anchor="options-in-pep" title="Options in pEp">

<section anchor="passive-mode" title="Option “Passive Mode”">

<t>In email, Passive Mode primarily exists as an option to avoid potential 
usability issues in certain environments where Internet users 
might get confused by the exposure of public keys in email attachments. In
principle, however, this “problem” can be mitigated either by training or by 
MUA implementers displaying public key material in a more symbolic way or even
importing it automatically and then hiding this attachment altogether (as pEp 
implementers are supposed to do, such that regular Internet users do not have 
to bother about keys).</t>

<t>Passive Mode has a negative impact on privacy: additional unencrypted message 
exchanges are needed until pEp’s by-default encryption can take place.</t>

<t>Passive Mode MUST only affect unencrypted communications and MUST be inactive 
by default. By opting in to Passive Mode, the sender’s public key MUST NOT be 
attached when sending out unsecure emails. On the other hand, Passive Mode is 
without any effect when pEp is able to send out an encrypted message, because
the necessary encryption key(s) are available.</t>

<t>In this situation, opportunistic by-default encryption MUST take 
place: there, the sender’s public key is attached in encrypted form as 
constituent part of one of pEp’s PGP/MIME-based message format described in 
<xref target="pep-email-formats"/>.</t>

<t>Additionally, Passive Mode MUST be without effect, if a receiver learns that
an MUA is actually pEp-capable, even if the sender involved is in Passive Mode,
too: this MUST be recognized by the “X-pEp-Version” header field, as the only 
clear indicator to detect pEp users. That means that a pEp-enabled MUA is 
REQUIRED to attach its corresponding public key to another 
pEp user in any case, such that they can engage in opportunistic encryption.</t>

<t>[[ TODO: Add message examples and a flow chart, if needed ]]</t>

</section>
<section anchor="option-disable-protection" title="Option “Disable Protection”">

<t>This is an opt-in mechanism to enforce that messages go out unprotected. Even 
if encryption keys for recipient(s) are available, this option MUST enforce 
that messages are sent in the <xref target="pef-0"/> format.</t>

</section>
<section anchor="option-extra-keys" title="Option “Extra Keys”">

<t>[[ TODO: Add here what is specific to email ]]</t>

</section>
<section anchor="option-blacklist-keys" title="Option “Blacklist Keys”">

<t>[[ TODO: Add here what is specific to email ]]</t>

</section>
<section anchor="opt-trusted-server" title="Option “Trusted Server”">

<t>[[ TODO: Add here what is specific to email ]]</t>

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

<t>[[ TODO ]]</t>

</section>
<section anchor="privacy-considerations" title="Privacy Considerations">

<t>[[ TODO ]]</t>

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

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

</section>
<section anchor="implementation-status" title="Implementation Status">

<section anchor="introduction-1" title="Introduction">

<t>This section records the status of known implementations of the
protocol defined by this specification at the time of posting of this
Internet-Draft, and is based on a proposal described in <xref target="RFC7942"/>.
The description of implementations in this section is intended to
assist the IETF in its decision processes in progressing drafts to
RFCs. Please note that the listing of any individual implementation
here does not imply endorsement by the IETF. Furthermore, no effort
has been spent to verify the information presented here that was
supplied by IETF contributors.  This is not intended as, and must not
be construed to be, a catalog of available implementations or their
features. Readers are advised to note that other implementations may
exist.</t>

<t>According to <xref target="RFC7942"/>, “[…] this will allow reviewers and
working groups to assign due consideration to documents that have the
benefit of running code, which may serve as evidence of valuable
experimentation and feedback that have made the implemented protocols
more mature. It is up to the individual working groups to use this
information as they see fit.”</t>

</section>
<section anchor="current-software-implementations-of-pep" title="Current software implementations of pEp">

<t>The following software implementations of the pEp protocols (to varying
degrees) already exists:</t>

<t><list style="symbols">
  <t>pEp for Outlook as add-on for Microsoft Outlook, release <xref target="SRC.pepforoutlook"/></t>
  <t>pEp for iOS (implemented in a new MUA), release <xref target="SRC.pepforios"/></t>
  <t>pEp for Android (based on a fork of the K9 MUA), release <xref target="SRC.pepforandroid"/></t>
  <t>pEp for Thunderbird as a new add-on for Thunderbird, beta <xref target="SRC.pepforthunderbird"/></t>
  <t>Enigmail/pEp as add-on for Mozilla Thunderbird, release (will be discontinued late 2020/early 2021) <xref target="SRC.enigmailpep"/></t>
</list></t>

<t>pEp for Android, iOS, Outlook and Thunderbird are provided by pEp Security, 
a commercial entity specializing in end-user pEp implementations while 
Enigmail/pEp is pursued as community project, supported by the pEp Foundation.</t>

<t>All software is available as Free and Open Source Software and published also 
in source form.</t>

</section>
</section>
<section anchor="acknowledgements" title="Acknowledgements">

<t>Special thanks go to Krista Bennett and Volker Birk for the reference
implementation on pEp and the ideas leading to this draft.</t>

<t>The author would like to thank the following people who provided
substantial contributions, helpful comments or suggestions for this
document: Berna Alp, Kelly Bristol, Bernie Hoeneisen, Claudio Luck and 
Lars Rohwedder.</t>

<t>This work was initially created by the pEp Foundation, and was initially 
reviewed and extended with funding by the Internet Society’s Beyond the Net 
Programme on standardizing pEp. <xref target="ISOC.bnet"/></t>

</section>


  </middle>

  <back>

    <references title='Normative References'>





<reference  anchor="RFC1847" target='https://www.rfc-editor.org/info/rfc1847'>
<front>
<title>Security Multiparts for MIME: Multipart/Signed and Multipart/Encrypted</title>
<author initials='J.' surname='Galvin' fullname='J. Galvin'><organization /></author>
<author initials='S.' surname='Murphy' fullname='S. Murphy'><organization /></author>
<author initials='S.' surname='Crocker' fullname='S. Crocker'><organization /></author>
<author initials='N.' surname='Freed' fullname='N. Freed'><organization /></author>
<date year='1995' month='October' />
<abstract><t>This document defines a framework within which security services may be applied to MIME body parts.  [STANDARDS-TRACK] This memo defines a new Simple Mail Transfer Protocol (SMTP) [1] reply code, 521, which one may use to indicate that an Internet host does not accept incoming mail.  This memo defines an Experimental Protocol for the Internet community. This memo defines an extension to the SMTP service whereby an interrupted SMTP transaction can be restarted at a later time without having to repeat all of the commands and message content sent prior to the interruption.  This memo defines an Experimental Protocol for the Internet community.</t></abstract>
</front>
<seriesInfo name='RFC' value='1847'/>
<seriesInfo name='DOI' value='10.17487/RFC1847'/>
</reference>



<reference  anchor="RFC3156" target='https://www.rfc-editor.org/info/rfc3156'>
<front>
<title>MIME Security with OpenPGP</title>
<author initials='M.' surname='Elkins' fullname='M. Elkins'><organization /></author>
<author initials='D.' surname='Del Torto' fullname='D. Del Torto'><organization /></author>
<author initials='R.' surname='Levien' fullname='R. Levien'><organization /></author>
<author initials='T.' surname='Roessler' fullname='T. Roessler'><organization /></author>
<date year='2001' month='August' />
<abstract><t>This document describes how the OpenPGP Message Format can be used to provide privacy and authentication using the Multipurpose Internet Mail Extensions (MIME) security content types described in RFC 1847. [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='3156'/>
<seriesInfo name='DOI' value='10.17487/RFC3156'/>
</reference>



<reference  anchor="RFC4880" target='https://www.rfc-editor.org/info/rfc4880'>
<front>
<title>OpenPGP Message Format</title>
<author initials='J.' surname='Callas' fullname='J. Callas'><organization /></author>
<author initials='L.' surname='Donnerhacke' fullname='L. Donnerhacke'><organization /></author>
<author initials='H.' surname='Finney' fullname='H. Finney'><organization /></author>
<author initials='D.' surname='Shaw' fullname='D. Shaw'><organization /></author>
<author initials='R.' surname='Thayer' fullname='R. Thayer'><organization /></author>
<date year='2007' month='November' />
<abstract><t>This document is maintained in order to publish all necessary information needed to develop interoperable applications based on the OpenPGP format.  It is not a step-by-step cookbook for writing an application.  It describes only the format and methods needed to read, check, generate, and write conforming packets crossing any network.  It does not deal with storage and implementation questions. It does, however, discuss implementation issues necessary to avoid security flaws.</t><t>OpenPGP software uses a combination of strong public-key and symmetric cryptography to provide security services for electronic communications and data storage.  These services include confidentiality, key management, authentication, and digital signatures.  This document specifies the message formats used in OpenPGP.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='4880'/>
<seriesInfo name='DOI' value='10.17487/RFC4880'/>
</reference>



<reference  anchor="RFC4949" target='https://www.rfc-editor.org/info/rfc4949'>
<front>
<title>Internet Security Glossary, Version 2</title>
<author initials='R.' surname='Shirey' fullname='R. Shirey'><organization /></author>
<date year='2007' month='August' />
<abstract><t>This Glossary provides definitions, abbreviations, and explanations of terminology for information system security. The 334 pages of entries offer recommendations to improve the comprehensibility of written material that is generated in the Internet Standards Process (RFC 2026). The recommendations follow the principles that such writing should (a) use the same term or definition whenever the same concept is mentioned; (b) use terms in their plainest, dictionary sense; (c) use terms that are already well-established in open publications; and (d) avoid terms that either favor a particular vendor or favor a particular technology or mechanism over other, competing techniques that already exist or could be developed.  This memo provides information for the Internet community.</t></abstract>
</front>
<seriesInfo name='FYI' value='36'/>
<seriesInfo name='RFC' value='4949'/>
<seriesInfo name='DOI' value='10.17487/RFC4949'/>
</reference>



<reference  anchor="RFC5322" target='https://www.rfc-editor.org/info/rfc5322'>
<front>
<title>Internet Message Format</title>
<author initials='P.' surname='Resnick' fullname='P. Resnick' role='editor'><organization /></author>
<date year='2008' month='October' />
<abstract><t>This document specifies the Internet Message Format (IMF), a syntax for text messages that are sent between computer users, within the framework of &quot;electronic mail&quot; messages.  This specification is a revision of Request For Comments (RFC) 2822, which itself superseded Request For Comments (RFC) 822, &quot;Standard for the Format of ARPA Internet Text Messages&quot;, updating it to reflect current practice and incorporating incremental changes that were specified in other RFCs.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='5322'/>
<seriesInfo name='DOI' value='10.17487/RFC5322'/>
</reference>



<reference  anchor="RFC7435" target='https://www.rfc-editor.org/info/rfc7435'>
<front>
<title>Opportunistic Security: Some Protection Most of the Time</title>
<author initials='V.' surname='Dukhovni' fullname='V. Dukhovni'><organization /></author>
<date year='2014' month='December' />
<abstract><t>This document defines the concept &quot;Opportunistic Security&quot; in the context of communications protocols.  Protocol designs based on Opportunistic Security use encryption even when authentication is not available, and use authentication when possible, thereby removing barriers to the widespread use of encryption on the Internet.</t></abstract>
</front>
<seriesInfo name='RFC' value='7435'/>
<seriesInfo name='DOI' value='10.17487/RFC7435'/>
</reference>



<reference anchor="I-D.melnikov-iana-reg-forwarded">
<front>
<title>IANA Registration of Content-Type Header Field Parameter 'forwarded'</title>

<author initials='A' surname='Melnikov' fullname='Alexey Melnikov'>
    <organization />
</author>

<author initials='B' surname='Hoeneisen' fullname='Bernie Hoeneisen'>
    <organization />
</author>

<date month='November' day='4' year='2019' />

<abstract><t>This document defines a new Content-Type header field parameter named "forwarded" for "message/rfc822" and "message/global" media types, and its registration with IANA.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-melnikov-iana-reg-forwarded-00' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-melnikov-iana-reg-forwarded-00.txt' />
</reference>



<reference anchor="I-D.birk-pep">
<front>
<title>pretty Easy privacy (pEp): Privacy by Default</title>

<author initials='V' surname='Birk' fullname='Volker Birk'>
    <organization />
</author>

<author initials='H' surname='Marques' fullname='Hernani Marques'>
    <organization />
</author>

<author initials='B' surname='Hoeneisen' fullname='Bernie Hoeneisen'>
    <organization />
</author>

<date month='November' day='4' year='2019' />

<abstract><t>The pretty Easy privacy (pEp) model and protocols describe a set of conventions for the automation of operations traditionally seen as barriers to the use and deployment of secure, privacy-preserving end- to-end interpersonal messaging.  These include, but are not limited to, key management, key discovery, and private key handling (including peer-to-peer synchronization of private keys and other user data across devices).  Human Rights-enabling principles like Data Minimization, End-to-End and Interoperability are explicit design goals.  For the goal of usable privacy, pEp introduces means to verify communication between peers and proposes a trust-rating system to denote secure types of communications and signal the privacy level available on a per-user and per-message level. Significantly, the pEp protocols build on already available security formats and message transports (e.g., PGP/MIME with email), and are written with the intent to be interoperable with already widely- deployed systems in order to ease adoption and implementation.  This document outlines the general design choices and principles of pEp.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-birk-pep-05' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-birk-pep-05.txt' />
</reference>



<reference anchor="I-D.marques-pep-handshake">
<front>
<title>pretty Easy privacy (pEp): Contact and Channel Authentication through Handshake</title>

<author initials='H' surname='Marques' fullname='Hernani Marques'>
    <organization />
</author>

<author initials='B' surname='Hoeneisen' fullname='Bernie Hoeneisen'>
    <organization />
</author>

<date month='July' day='8' year='2020' />

<abstract><t>In interpersonal messaging, end-to-end encryption means for public key distribution and verification of its authenticity are needed; the latter to prevent man-in-the-middle (MITM) attacks.  This document proposes a new method to easily verify a public key is authentic by a Handshake process that allows users to easily authenticate their communication channel.  The new method is targeted to Opportunistic Security scenarios and is already implemented in several applications of pretty Easy privacy (pEp).</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-marques-pep-handshake-05' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-marques-pep-handshake-05.txt' />
</reference>



<reference anchor="I-D.marques-pep-rating">
<front>
<title>pretty Easy privacy (pEp): Mapping of Privacy Rating</title>

<author initials='H' surname='Marques' fullname='Hernani Marques'>
    <organization />
</author>

<author initials='B' surname='Hoeneisen' fullname='Bernie Hoeneisen'>
    <organization />
</author>

<date month='January' day='8' year='2020' />

<abstract><t>In many Opportunistic Security scenarios end-to-end encryption is automatized for Internet users.  In addition, it is often required to provide the users with easy means to carry out authentication.  Depending on several factors, each communication channel to different peers may have a different Privacy Status, e.g., unencrypted, encrypted and encrypted as well as authenticated.  Even each message from/to a single peer may have a different Privacy Status.  To display the actual Privacy Status to the user, this document defines a Privacy Rating scheme and its mapping to a traffic-light semantics.  A Privacy Status is defined on a per-message basis as well as on a per-identity basis.  The traffic-light semantics (as color rating) allows for a clear and easily understandable presentation to the user in order to optimize the User Experience (UX).  This rating system is most beneficial to Opportunistic Security scenarios and is already implemented in several applications of pretty Easy privacy (pEp).</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-marques-pep-rating-03' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-marques-pep-rating-03.txt' />
</reference>



<reference  anchor="RFC2119" target='https://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author initials='S.' surname='Bradner' fullname='S. Bradner'><organization /></author>
<date year='1997' month='March' />
<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>




    </references>

    <references title='Informative References'>





<reference  anchor="RFC8551" target='https://www.rfc-editor.org/info/rfc8551'>
<front>
<title>Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 4.0 Message Specification</title>
<author initials='J.' surname='Schaad' fullname='J. Schaad'><organization /></author>
<author initials='B.' surname='Ramsdell' fullname='B. Ramsdell'><organization /></author>
<author initials='S.' surname='Turner' fullname='S. Turner'><organization /></author>
<date year='2019' month='April' />
<abstract><t>This document defines Secure/Multipurpose Internet Mail Extensions (S/MIME) version 4.0.  S/MIME provides a consistent way to send and receive secure MIME data.  Digital signatures provide authentication, message integrity, and non-repudiation with proof of origin. Encryption provides data confidentiality.  Compression can be used to reduce data size.  This document obsoletes RFC 5751.</t></abstract>
</front>
<seriesInfo name='RFC' value='8551'/>
<seriesInfo name='DOI' value='10.17487/RFC8551'/>
</reference>



<reference anchor="I-D.birk-pep-trustwords">
<front>
<title>IANA Registration of Trustword Lists: Guide, Template and IANA Considerations</title>

<author initials='B' surname='Hoeneisen' fullname='Bernie Hoeneisen'>
    <organization />
</author>

<author initials='H' surname='Marques' fullname='Hernani Marques'>
    <organization />
</author>

<date month='January' day='9' year='2020' />

<abstract><t>This document specifies the IANA Registration Guidelines for Trustwords, describes corresponding registration procedures, and provides a guideline for creating Trustword list specifications.  Trustwords are common words in a natural language (e.g., English), which hexadecimal strings are mapped to.  Such a mapping makes verification processes like fingerprint comparisons more practical, and less prone to misunderstandings.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-birk-pep-trustwords-05' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-birk-pep-trustwords-05.txt' />
</reference>



<reference anchor="I-D.pep-keysync">
<front>
<title>pretty Easy privacy (pEp): Key Synchronization Protocol (KeySync)</title>

<author initials='V' surname='Birk' fullname='Volker Birk'>
    <organization />
</author>

<author initials='B' surname='Hoeneisen' fullname='Bernie Hoeneisen'>
    <organization />
</author>

<author initials='K' surname='Bristol' fullname='Kelly Bristol'>
    <organization />
</author>

<date month='July' day='13' year='2020' />

<abstract><t>This document describes the pEp KeySync protocol, which is designed to perform secure peer-to-peer synchronization of private keys across devices belonging to the same user.  Modern users of messaging systems typically have multiple devices for communicating, and attempting to use encryption on all of these devices often leads to situations where messages cannot be decrypted on a given device due to missing private key data.  Current approaches to resolve key synchronicity issues are cumbersome and potentially insecure.  The pEp KeySync protocol is designed to facilitate this personal key synchronization in a user-friendly manner.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-pep-keysync-02' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-pep-keysync-02.txt' />
</reference>


<reference anchor="ISOC.bnet" target="https://www.internetsociety.org/blog/2017/06/12-innovative-projects-selected-for-beyond-the-net-funding/">
  <front>
    <title>Beyond the Net. 12 Innovative Projects Selected for Beyond the Net Funding. Implementing Privacy via Mass Encryption: Standardizing pretty Easy privacy’s protocols</title>
    <author initials="I." surname="Simao" fullname="Ilda Simao">
      <organization></organization>
    </author>
    <date year="2017" month="June"/>
  </front>
</reference>




<reference  anchor="RFC7942" target='https://www.rfc-editor.org/info/rfc7942'>
<front>
<title>Improving Awareness of Running Code: The Implementation Status Section</title>
<author initials='Y.' surname='Sheffer' fullname='Y. Sheffer'><organization /></author>
<author initials='A.' surname='Farrel' fullname='A. Farrel'><organization /></author>
<date year='2016' month='July' />
<abstract><t>This document describes a simple process that allows authors of Internet-Drafts to record the status of known implementations by including an Implementation Status section.  This will allow reviewers and working groups to assign due consideration to documents that have the benefit of running code, which may serve as evidence of valuable experimentation and feedback that have made the implemented protocols more mature.</t><t>This process is not mandatory.  Authors of Internet-Drafts are encouraged to consider using the process for their documents, and working groups are invited to think about applying the process to all of their protocol specifications.  This document obsoletes RFC 6982, advancing it to a Best Current Practice.</t></abstract>
</front>
<seriesInfo name='BCP' value='205'/>
<seriesInfo name='RFC' value='7942'/>
<seriesInfo name='DOI' value='10.17487/RFC7942'/>
</reference>


<reference anchor="SRC.pepforandroid" target="https://pep-security.lu/gitlab/android/pep">
  <front>
    <title>Source code for pEp for Android</title>
    <author >
      <organization></organization>
    </author>
    <date year="2020" month="November"/>
  </front>
</reference>
<reference anchor="SRC.pepforios" target="https://pep-security.ch/dev/repos/pEp_for_iOS/">
  <front>
    <title>Source code for pEp for iOS</title>
    <author >
      <organization></organization>
    </author>
    <date year="2020" month="November"/>
  </front>
</reference>
<reference anchor="SRC.pepforoutlook" target="https://pep-security.lu/dev/repos/pEp_for_Outlook/">
  <front>
    <title>Source code for pEp for Outlook</title>
    <author >
      <organization></organization>
    </author>
    <date year="2020" month="November"/>
  </front>
</reference>
<reference anchor="SRC.enigmailpep" target="https://enigmail.net/index.php/en/download/source-code">
  <front>
    <title>Source code for Enigmail/pEp</title>
    <author >
      <organization></organization>
    </author>
    <date year="2020" month="November"/>
  </front>
</reference>
<reference anchor="SRC.pepforthunderbird" target="https://pep-security.lu/dev/repos/pEp_for_Thunderbird/">
  <front>
    <title>Source code for pEp for Thunderbird</title>
    <author >
      <organization></organization>
    </author>
    <date year="2020" month="November"/>
  </front>
</reference>
<reference anchor="pEp.mixnet" target="https://dev.pep.foundation/Mixnet">
  <front>
    <title>Mixnet</title>
    <author >
      <organization>pEp Foundation</organization>
    </author>
    <date year="2020" month="June"/>
  </front>
</reference>


    </references>


<section anchor="document-changelog" title="Document Changelog">

<t>[[ RFC Editor: This section is to be removed before publication ]]</t>

<t><list style="symbols">
  <t>draft-pep-email-01:
  <list style="symbols">
      <t>Minor language improvements</t>
    </list></t>
  <t>draft-pep-email-00:
  <list style="symbols">
      <t>Major restructure of the document</t>
      <t>Major fixes in the description of the various message formats</t>
      <t>Add many open questions and comments inline (TODO)</t>
      <t>Add IANA Considerations section</t>
      <t>Change authors and acknowledgment section</t>
      <t>Add internal references</t>
      <t>Describe Passive Mode</t>
      <t>Better explanation on how this document relates to other pEp documents</t>
    </list></t>
  <t>draft-marques-pep-email-02:
  <list style="symbols">
      <t>Add illustrations</t>
      <t>Minor fixes</t>
      <t>Add longer list of Open Issues (mainly by Bernie Hoeneisen)</t>
    </list></t>
  <t>draft-marques-pep-email-01:
  <list style="symbols">
      <t>Remove an artefact, fix typos and minor editorial changes;
no changes in content</t>
    </list></t>
  <t>draft-marques-pep-email-00:
  <list style="symbols">
      <t>Initial version</t>
    </list></t>
</list></t>

</section>
<section anchor="open-issues" title="Open Issues">

<t>[[ RFC Editor: This section should be empty and is to be removed
     before publication ]]</t>

<t><list style="symbols">
  <t>Eventually move the many TODOs into this  Open Issues section.</t>
  <t>Describe KeyImport to induce the import from secret keys from other devices</t>
  <t>Describe / Reference KeySync (and other sync, through IMAP)</t>
  <t>Add key pair revocation strategy</t>
  <t>Create clearer relations to the pEp rating draft (draft-marques-pep-rating),
as this plays an important role in how Messages are rendered and how they
need to be presented (after rating) for a user to have awareness about his
privacy status in any given situation.</t>
  <t>Make document more coherent: check with pEp’s general draft pieces to fill on
both sides and how to reference them vice-versa (this is now pending on the
reworked general draft to be published).</t>
  <t>Elaborate more on the X-EncStatus header field  and for Trusted Server
situations / mirrors and describe operations.</t>
  <t>Explain Key Mapping (between OpenPGP and S/MIME)</t>
</list></t>

<!--  LocalWords:  utf docname toc sortrefs symrefs MIMESEC keysync
 -->
<!--  LocalWords:  interoperable mixnet MUAs plaintext se HB pef IMAP
 -->
<!--  LocalWords:  ux URI URIs pEpkey asc msg artifacts msc compat
 -->
<!--  LocalWords:  FPR RSA unsecure Volker Hoeneisen Programme ISOC
 -->
<!--  LocalWords:  bnet Changelog artefact TODOs KeyImport KeySync
 -->
<!--  LocalWords:  EncStatus
 -->

</section>


  </back>

<!-- ##markdown-source:
H4sIAESUoF8AA+1963Ybx5Xu/3qKCvTDpAYARVq2ZThODkVRMSempRGpcbIS
r6wG0AA6anQj3Q1SiKOzzmuc1ztPcva3965LNwCKlpXJZGa4nIgEuuuya99v
NRgMzKScZsV8ZNfNbPDEmCZr8nRke6sqbZqNPU/qjV1V2U0y2diD1fnqcGTP
l0mW2+dltUya2ibF1L6syqaclHndM8l4XKU3I7v3fXndTMtJkSxppmmVzJrB
Kl0NUnwxeHRsJkmTzstqM7J1MzWmbmiOPyV5WdDjm7Q2q2xk/0AT9m1dVk2V
zmr6bbOUXyblcpkWTf2DMcm6WZTVyBhrB/Q/a7OiHtlvhvYyqf6ypoHwmazi
m7QqkiJrfVNWBBZaMm11XUyTJisL/rymKdNmZF+M0yqt7G+qZJwW9jF/N8ka
WvbZN4Mnjx89st9nRZNWzWJdyZc0ToNtXd1mzV/TKqd98Re885FdyCKGS1nE
/yKgDGftudcV7X3RNKt6dHTU/v7IPPhxNMqKSb6epnY4PKoXSZVOjwQKf2qS
eX1EKy6y9E+LMi3SrE6L4fLN9J0xBZ9ldpOOaJJXz8+Onzz+YmQf2MuLy/Or
8zP7QD7+9Pizz/Hxy9+8PMJX9Kt88fjJk0f44sUqLehL9/zjLx9/qSN+9unJ
CZ64urz2X3/x+NPP5K0VHeO6yOomm9irdEKbJNTBUxeDZ8NlmhfZm/JmkCVF
MqjS+WBWVrdJNU2nI31knFVvgEIj694RCDJaLQjKBIo36WjHlxVtm7DfmKyY
dYDw5LPPjnnJulfzQHby+WcnI/398y+/+NT9Tjs89r8//pLhcXVx/u/hzS9O
Pnvinvjiy8d+lCcnBD33OybF792FCop09jtoqnXd3JbVtHZf4dM36abeFBPa
1QO7EyWIUgh1i0laH60JC7K3wyl9MsHmB/W8GNBXghk05tWLs+G4IHxn/GuS
ag7cdyh4e3s7ZCSnJ+pykqXNZkh0czTOy/nRyaPjL44efX50fDLIiqK8YegO
VlX5Z5qrHtRpTv+mU5znYJxuymI6aBbpgIYazAir6WCOZFLlSU/5GUvP2O/S
ZmiPT+yFHxdMiMclDJJxLY1r2+/Y5zLu0F4sV3kKRkF/0avCoG6yhDhAXdvz
YlJtVqAqIlawH0K37K94dAdf+3//5//W9LtngViyYz3WBh5zkU8Te5Utk1I/
ZnZ0MYw+I0qmBwG3waPPTRtTrl6d4XQnZZXy39uH0eEH0/TmSB8UAJ7Rq8Qy
19UkJV5EGAHe7XHBZg4k/LotZ8z8DtJinhXybDJNVnTW9aEM61Z78mjw6Avj
V0hgp4erMpvuxhmgaK1UPszXR3NaXTI+0nfwdXzqV9F6caBYE/49lcdNZyHH
x62FZGV9j0VMFgysKl2V9RFN8Cd680/Zi6uj+yyEnnvPIsp1k5flm/tBY3sh
L+T1ey1Gn927ICL2OTgJmOXO5bgHhkSFR1kxTd8OV4sVfXw0LW+LvEymR4JB
A8x915LOdSTs4z0AIglJM1XE1u6JMttAug5D3AtQ0fM7F0fPDZfZ272Mj1Yw
7NDbJT/e4ljy0S6W8EB4wr+u54n7hNlB9MEO/UO+6C6YWIUxg8HAJmPSTZJJ
Y8w18TtiSQQh4oP7dTHPtRgmLGMsSQg7TvDeekUzmiSv0mS6selbCGhigfoY
8YPUs0k7U3XwIKm9fnDID03TOpsXNFxTYrC8vJXJkjrLNxHTGefCZFiclKu0
4k/KlnIQJhxabNGEDRDPmdMRV+XSkvyzU3qhysZrPEvaYTohGPAXkIyLqiyy
vwpEx2lzm5L+RthtDZ1qRlKxj7Uu0wmpDlm9rMEKl2lD3K9JeImTktZYNAw+
iE23nPghs/2QzUhdniyy9IagMd7YZXkDeEI23S7KHO/XdUK7OCjKxpYFgQff
jUuCvlklVXMI4JT8odfBFCQ4ZnpC1hFOnrCnra5jZMND60pszUfAB9jeabTw
gzx7Q0+ux5Cw0Skc9q0hGNskr0sbzpZ0imnAFN1VTesmVjhf2MQKZZHkW08W
NBzBeUKrNXeuAXiZvl3lGenYOR/wZF1jk6RML7KCoVJPCHEwAH1SWxgZa+DW
UAliXQEsTrIFlKdnCawMiGy2EVG3bkoCGBAwrRhTagI+0SQxDWuAHqRR2jUf
F40n40T0kECZGGc5NFlMlNAy8aqgKb1xoVqTNaSCVYRy2AZvYl4mOZ6QAwIc
8Wq9AhnuENIMJ2DbjJ4ifSbhObEHR+sr8ATgtVUw0Ui5JbUxnw47rCLaLUZw
VA3YCwdkOob2zSBrq+7G6+71JC0SCF+BJb3tuIhffwpKJ0y5oQmJm6xwsDoz
bcrs5VlDYXXLbDrNU2i4BMiqnK4ZSbAbOkx37kyoCfFV3WAm47PU9uuoeMJL
nN9rOgl7Oof5aM3B5evT+pBWmL5hKiUEWfN27+Cn9SqdZDPaSJ5vAn6ZH39U
E+jdu6E9zXM+hNaSaAU//hir9u/eKVERYDaYXDHW8IikvxaC426rfTrUv6yz
ivckBwa1IytUD8Zm7G0i+i44cVqD5Wb1Ima4mcOdI3qFnvJQahMMnUGbgMbr
LCeMYIGBvTEZlPMqWS0IL2qPFmnF/JW2C6VzaogJekbGQIKJCSAJUpJeXG2Y
HuptoqUtkr1nDo4P6fDeZkvH0D01uqPBK57aiBJKOvFpusrLDWABBF3Xjg/v
xDs6g6okaqRtH5wckhq9XNFUCiwm2zyd40GaqKRRKsc9ILG6jKEu87VnJ0b4
CY63SgGd1E+qfH5OZNPQWRHrE2lS1nVGgpHWctE9N17KVQRNWJOESBA7gk0A
Zd8yx24Ef5psSbvGolM8V5QBhwWaxLLWRQH4sA7VLJLGiY5ahsCgtJyzdVVh
hU0JccySvMWrartIaH8zgocoAwTUmwxWiDX1ekYzZng9p4GZ/RFv1X3RswSn
rAAy+IPsck2C3zpvZH0mhSlZkh073T4AWjFZnlPSE2gIMMDvF7Qi77tgwMGh
QYATvNiFoYLBtZmXZawGDWDLejGuGkANYOek7zSDwRImGHHeNwzsNJ0KKJws
xkEQvkKQCkZWKdExS93sJhUi2OuYM+Z4KGJpWxrVEUrSHw6L+nhFZSw+X0Ie
By0mepBVGnlYDq2ABkc4l/D5QLmF8IHrjl1wJBMUg6CWFAQrgvTpe63NlkxO
bugX1gJZghLfXCZ/pt/MKk8a0RUYzRrCrJoUOdLiwJ8FpMukAIDAhJZLADMn
ybtmPcQcTGZDOs32EgbEEJt1TWfLs9GSbsCu0luInAcP7Ks0FzxeZCtGSaZ0
LNrx4LorfkhqT0gJZUJJO/vzmuvQCgLSNpT0UvAnkltERqz2ZZN1nlQkBios
QYknHqyPl0lnV8GTFbSyrJFZSQ0m2bgmtDM7hAwREHHoRWelJAFZKhMCT9JV
45kv6zWLbE7DG6bTITHg57CqdDNu3XDDFqQTNGsnOyJtWmZsSzeByYSgbsY4
7jUbAgGylhVQWf1O5967d4duL/WivCVmQ7qoYf+YV/GBEc2twI7ZB09I83lZ
mE77OyYRJyEBy+wCliNCMpa9BsNcSAdfpPlqts75tKp0jqP0XEx0PzBZmTXy
3oWzUTleY92f0P+naQXmhn8D4CHSg2mTxhYP1Ngqg8bHw43TvCzmtRMwNdmh
xH/YN63CEBpuMqmI9O0NtLh1bcFQ1TgiavjlL0gDe2C/cx5TT1t2MPgVEwtR
S6SNfKtfi7KJNbHPkuzj11fXvb78a797wb+/Ov+31xevzp/h96tvTr/91v8i
Txj648Xrb/V7/BbePHtxeXn+3TN5+fL09z3mW7b34uX1xYvvTr/tiQac1d40
ENW2xEGxHgT2ShSW1P6UGRF//PEXxPtPjo+/JO3EOAg8sNcpuJDfNf8pu4y4
OD+DeabpzCtk2+aKWxIxcvOQkfQb77p2Zh3Bn6mxLFI5KNZwJ41oMsKSwLfo
DwMHI+k5dHSsChOpFCRZvRFDm6YHYe9cey+yPaCV0RrnAEQGjmZZdpDUzvNx
MnlzCNUs84QzxTqygnCxqkVZcDZeRFI0Bk00Zn4SCwZdETELJm4y9hY0HD0N
Lja8m9gR0+Ez0HAP8xC48AkXCcSzVI5t0SxzIjp4egAhnNPDaLsje0pnkBBF
gqDwET3Mmlgklo4/H4yJvRbr5Ri0evCI5qLZP//ss08/O8S8BYkNcEtPBDw2
2HoKDsZHE46yzwTM+ECjgFcV2MSYESM6CZp5TOdJRiuBcQKigcZ4U+Y3IgBI
+kIbY3hBIa2yGm6INoOPAgQBZoY9SH/47aunP9gLsrVJL1/PSS6q2Tcm/GFs
fUOs3/7hDy1E/OGHvo2URRoHSgzWw8odI3U6gccdMGRBTwOuG/4mggEhVdYQ
M1OzkMZh8e0EnNqp/gWhHLaVhrJ8Jjl3mPZFYZ9nFf1CFpw9uH7x/PXhyIqQ
10BTYKcQ8ykdfY9MKLjaHAvtW7zHyCcmIjFFgoCzEWqyG+Qow4kQwgP8ZMmI
4U3bQhCEt8CKaQLVi8iU98QPNRvRWQkmxsZqk+h7UK75BfYpXa3HNfFRsWRj
0uEHs7o9QhobMhNSKekDWWS8RFZ/J9AHkjlMY15GYS+z60vSU4mXvCFtYkYo
MZHl80d2mk3ZdUQfT3Dg03WlM4G613mh7jo+pC6lD3vKMK9fPHsxImuNDnRC
CnEl+7hlVibQV9DY66Gc8EN6uhgQh0FgSGx+e3B5cX15qCuLjhnhxh3HfEor
hLIoLhUWV7ckmRrSPfg8ZYOEcfIegCefEY9kkcAqEEMJWJ2LLp7DfTcVZS1s
FpCB5sz6Z00nVyXQlWvm14wsbAAwxye1A/iQpRFdZ1Cw2kftUErhaEnqwvH7
TcYIyQpf3wIirATTh6XIl08eEuQetkH3CYjnm/IWThf2carOomadX9PGEaBC
PBO/YZKTtl8z0SzWS48cGIsXAKHAah1H7GUVlzBtirSzDoHFJ5cp/qq2Fmn2
BoUl2yDY9ZJMYEDK02kmtKEOUiVrYjIc93rGbmi8XEwy0vvr4B+BIb6tGLdN
sVq8kDhJ9WhD8XNDsYdLXFigAtNV0Fv+LTEn3C7GG1raLCHbVV1x8p7PrQge
7iRbCmKxs8MrnixoqqCHsruEvc+EfBnZdcyJvA+Gv+63NFdxsLAO1oA2SQJO
wC8m8DKcv01gJtXwtYhW0nKdOc1NDE9gPBAa+w9ckh0b9CxtdSpbBR5eiyOy
luCBqEDiiOWhSOQyrZA0lngTaLGoQb54fJJifznBYWpZCjVsVat7hwYBfwE1
QUsiHGAiyi27pFSHgYUJbCUI06GJbQyRrJAa3Ga1SKp4rrZni3e3HmN3TKvN
AOoEE8wSlE/DIc6RVnDY1Q2Juv5WdEJACEOBjjtndByMcfK3bBaKfHcMgTBR
zlOtT6gSZIQ5OeizGNywOJmxMrSFCGqWDjst9E/00GhKqBsBTN4jICzSLzjN
pzYvxegU7khDETuB8xOBGBEPOpYssI41Q2+ZMTayWjQl1jyBf/8gtnMkksT6
RrO1URqTV6LHhHeL4Kx1uvb36ZjeJs7LCyH1QGVoX+EMzHYbYyImUDFKMbid
d4jVMIYC66lVtdleUF9wGQ67qiCc215xfDRwQolGCaYCHaJwY4orTI/MGa1D
ocJBWmCVU3Hs8oBpxjiRFnMooSxKJPI2IOANQpyodfiACeScXRcaplvlCUjt
bUfncG4KVvGwUvgU6hizoEv5d33QRy0FNjUy2Ne6Jo5B+acKXTxxVPCENKJD
OvbKsSpkfFmYryBLQeSKVrEqJd4U8RwRWV0FSVjvM6DyJakqzmdszNZHVrNm
ahHoNSF27QTQIuPZoE/Al59OFoUIYsMOkyRXVSgc+C0tAUI3dt/SQi4dXb30
YS5iuBo0068OsmE67BOGEz+p6sPWURNcy2XW4FAhafwJu+lMNN11HDRs+3i3
jd3g51R/H2nE6a01s2QClyxYvDg6t8J0IyUn1iUkNoDwJSQKezDDk33xdsrG
nHylB5ccsFkX+iQdGkker7RkzEPcvtj1qDycfZgYMQa8BoCCSWF0PsJFYhk3
SU7GJQQTAS9Z1evcKeLdkCwHXhOrIddG3dJwVinZRPHw1IXV1Bd/qWNctaAe
e+jFMQBD2/lTu5syHThl2xqPCzgDL926R8b8iiWtC8lOcvayX57+3t6SEINp
vyYk5nWGvZKO9yv351E1mzw5OeHHV0yiwYEg/jvdpiNYetUHemAYRgD3zqNv
nrKgh5Ehb5sdcQuPe8TOZ+uKUX6+zqYJ+4+hh02EEkUsyURGJhK/TpUUNaTA
gAzL9CZRD1ezWJNMy+YLuAYJbKssSEbd5dA4n043ykLKZid0CM6sjqgx3A9j
9p0CiN6ALMpiECt27K1gXLFGXZ8+VkALdHQ1bOtb6lxkDrCuU+fehY6Ht0w7
c6Ib+7fHw0dWPd+rdDY4Hjx69+5Qnd0baMNz9lWYjqlZ+tWzs3KI4ToKhBPj
/qG+6G5G2fZAo1s0vPGJIm4lLvFXv8CanBzmAM2OJIYT2gnvuEhvCSeCF9AL
VLci8a8SKTM+wIghTlTOC9blEvjXvS/YLUj17UGRzstGDC/OUJT1adYifcge
53E6SXAUiMy2wESHU8rnPoAOL5fGcjlgTUstEJGlldxk9Rqin+x+YrGNmgjn
EsWif+yPD0JI65343MVdyY63xCVZEID7HJrRANB0RUcK3UMQSWQmaQziyVfV
2ATnbqQVxdEjzuLxf3J+hsptd1LpWyJ+lkPIGHIjh4F5DK/2iFeSFwFlZ5FV
0wGU0I3X45GPWyUhdqFSEI93viG8rSWKqJOKBskEVZU5gjd//MMf/2AfPoT3
4eHDkT2dglOzr5c0fOJVDWi0FkXvt6Q7nJMsLG/tkT1/SxwEH9X2jz/88Qex
21Qtxb90LLGWSgeD4L7nNZ24h3iRYG3HEkrcY5E672BqYvW6LyeGB1pw5Uh5
lbaV/YIjRRnYpGEYKz6IHcaqwk3KnobIsHGQhzOxLNSlSiKQqMxvKF43J9Px
esV77nTmyBliJYmgFRuEzF8SDZEuMFSqduYhJxn1JUUcIfvL05eHksgAVZHJ
Glqf4+ldFIkir7XEuBkooPlxGg7F7YrIDCQnB2I8B0slUskos8NdpZ5PldOg
lSjoUntVX4/Kh2lIcaoXrPOMN5GTTmyiKxoh4MkwoBqno5y/XcGmhsg7eP27
Q0K59dt3O3GaF3cr9Os1vBBc88NeqCOSJiaTdMnek044UYhJdhp8+/OqXK+Y
mUKpZ4ev+LWU26uHMwP8U7IKgjNd8t3UFTKd0oc1nz+d+8Y7RtmBlUgmHlR4
E1utWTO0p0V7iOBwYqynX7OkdtHbrbRFExyw3tk3SZwYRRRM7YbOtELU2yS7
24bWYEYMCrYZWVzxAiOuyRQes+KYYdbbzEItcpF3xsVfBJ+SEOl1eVvs4lOV
XZx86Vb6IzFznsa0NtgO/oWsyIRToUQX1pDhcp03mVu0z/tyoVKQLwDFisQ0
2QwdttFm9+YC3B2eP+wbgWilAAz0xO6YJvKwtr01pJpVSbXhteXicBh4OtkC
dl9NQB5828bPamHQamdzDmWlKQLEV6C+IYt2W/ycLdLJG1uSLF0iz49Vaeek
2PY3BnbwAETOaE/KgACmHiglvNtFxBiQmakjl4N0OCchim+bckTIOEn/Vyru
PRRtHPqgfYMkCbzu3WoywlDWARkZrYGgripJUd6CdzAdFTvyOYrYj0LkDx5h
2uTvPIQ8iKdEgQ84mz4cfFPsGxG7H3ih0ki9Kl7LbhFr7Sn7geOy0XZAipDk
ygJ37SNw1w5zJB6l8XPejKb9MJcM3AeiyTNQcE5diOfL0WLcW1hQETjlrlV1
mK2X+q9fXZCpzVxp38kP3dyZ+rI7Y5k226URa6/5qqhYJhvdEPgBiAFPibGg
M3FciZgpGMUabHDfckS3gOnQ+KRdFenM7W/hPORDNDylD8npAvu2RuyCVjTh
7DkfGW9to68xLkJ1+r7YLInV+VUQvgztU92ic00nRA+31tDG7IFb+643D52b
AvSErF9oLvyuP0CuYMlZgTPmqfeL9/e49iQhBzvhYYDnqySrXBgOnyk/lkTg
+bpSNlWXGlV0IgbuMglhRULKW0fsT3NJRoaFOINuGMJGdIhyhrBd4HqtBCGE
8JwTm2kZjDlPA4WL57pgRh0dkq445bH2rK+2KjyHwmriA+Xp2dLR5FYv0QPR
1alEy0VHUAkT2Cg+heWpGU9Kkaf8cMxu+TloBCLIuZ6urUBwRpqfVjhu6wF2
PBjHo1hr3UcHNPltmiOszM+ZnQ9yIv21M9s4Z8CrWCJjY5D4wxATc8u2DkGo
tsl9PHzU93b3yfBY2YS4H4CrF5fnAykbkZxntXxdODYtapxwqAVgbNnpO0Nu
M7C5EkcPkMZo6pPLd5RoQONdTnBjTNb1HudybBwZtb2nwd4XF8V4M1AiJDwY
tuhQfGZ1NzxgJLGEncDbAFuxJybfjPjovHelLYjUB7os68Zu+0pUjYvyILM6
km9eHzNbGdxOg+p8DgyPlTfCgasMMN7yFZ3guBPJLPGpzroctcW33jGMI1sO
JlbAPR4ERxmHREVKtzwnfa4DcdF4zV9pFptWJgwHXD1YBFsi4merOdbBCKVY
1y/K1pCRk8Mp/25Q9qOsC4+WfR8hMeIEdnK3Zp/rGvYJ53Q7dPAEwDKLZchB
5NU+dPhpGK3UUa0ZNMAr4LvfMWbPIXtfJjXHQC9RfedQWD4bLOkzPuJaEx3U
dtlGTlcSnNgefQllLKknPTuDWixKFydVwVD2mfF+VU6Hi6MthT29Oru4GCQV
FJpggMgpAkrrTEq8jHC8AsY3v7rkMN1403UzokSv9qYonNrFxs3tSdPAmYX9
qvdBBs79sJF26JhziI9FWeImwgSfUo7FyK6H7DTr1oxgIZNkxXOrF1c4Rd+w
gwVhGGZTcLFvXESSA1XKzjS035fipoKIsqK1aamcS9ju7keCzpyqokkbkglI
+Jotl+k0kwhs2KfZW0R3H2uMMVIrvxjd2YcCvOlxuiCJVA50alYMq9akI14/
HzzpZtORHOt9/WvuNPHrf/v16uvzk6+ffPn16fHq11/3DochyBNN+UktQRpn
0RGhpSHD3nFkokugnXrDkAbYN/G6NQipawciyaBqEfWGw2EPq2ORjAAHtAvT
cbwfuuDFS6gazIkT53YRNUDciNuGL/MEzw+gimsZ6EDhNCE9QhfnFANJtnGP
/Q6UMfh3zTPQkIrm46goTZmIuvqjG4B26EIaZPIUUdUgF5gyA4c3c0ZMW9PY
1bhSrh8tjfE6Yo1B0mLXnh+KKrHuzKXDsTrdE2MhqZqjZfY2nfYkDtViHiZk
jagSIcuapnnG7iNFjB1M04o/KTA0c9A7kzjL4FlWu+qrUfQE0JBMP7XnQzhb
yBul1ZqK3rLWR8b87w/8Mc+rcjlSjfqXWyrgr8x1ObJPy7H95bgct795xhXA
12sSVZ8e22fpBI0DvrSPPhvxf/ZfHp08emRamDOC6sbyK3xCUttcCZ2M7FXC
RVHfkNZZGger682KJuqc1VekaqIsudp83XO/9VCb5/7ovA4wHjFAv3Lo/nWP
WUEvPAnfLrGhwXnh2tL8ZV2iRQRnIwOrjeG1ASTEvGZ2U67BZXItmELeBR+V
c4pt63F9e0EsPs9N5LQG8vBQ4tJFnhFbID51/oJ0rfyNcGZ6zrALkFDlG7E/
uQxommx+YcS+BRxQDllo9lWnacHwDjhFmWJHq7mUA3zFHSS+jmX1XTCDzvP5
Y/MeVP+Kxf3WwF8R8v81/frk80+/5ErLweDp+W8uvoOwsy9fP/324sz+9vz3
9um3L85+y18b8wdiLj/ow+ffPbvr0bBt+uuDacZoGjN76PsW2d5ITrdV+Sat
Rpqiggy5pKLtNeLJJvmAmYEAawTxanHKTjhTXiIiHA1eQ74PVlpTekNHgsqc
RbnOpy6YUKTIw0c5mhfBmuBQcXE+oi8ppwoyRvplfOV1J7iH4OeOwkPsrWIj
ST1ozLu9vujSdQnNluC1gZvvDPQKLz9mbr47Evzy/PmAfjlUz1zg0hynEsNs
mx3bHfx4hMzAZKcx50SDFuptV5DTm/fg5MboatVJGAkOP5UKjwJViqUklCLP
1wkczcc27gR27tdRBE1Qz5kcpIDE7JYbWYEE0h6IirP5UmToXrf1JVZaYI62
Ek/iAqFwxLxG3SnpMlACtTBQ8CjKnfFl3G4qUWhwltNpSGdoypV3LvuOBC6H
xH3BwJ9x/nyc38KrYX3SNsSabC+w8B7UK5HikYEEZYoTTrw4OfN557W4bbwr
0LsneZberjd68DGWhEDR16x1mvh44bCJ7TggCLJYC0jvSRpViJLhF04GWR6F
AopVxXE6z6TOVdHQ6Zgs/3kWjYFreg+ME637dQ4CTpK+TST+gLQ1J1+QPZaq
or1NA2TxkmJOKuKUkCtPpOuDi0/q0wdqG0p5hoJxZHsxvFCNYpw9IPUnnHTG
ugofb0D6+DDjUze+ZF68o34BwPS+yx+og5Gg5oyo4uoRyZr2SpCyrm5IsYWl
SocjXGIQCRboXKMeHOq9q9dP//X87Jr+MqFIS2aA+ybRiH0rv6jvnbUw9we0
DyfLRbHrqMeyamjxWFOvpSv12hTLcxmYNlwAWTuKO1ix5URDKsXIxz1StHrO
cbftKoEHTbwkJ4Nj2OysU4vQEYs7q5VzDdGcDhSztXhDCJknUIixLLZEfcG0
yiNt8cSnwkHaHV4m56ob2terOXLG6TN2I9acfKWcxO9abRClku2tcRuQetuR
DUCMMYJP3ouae0Q9PyRm4JwBRrCNWY2r4nOW1/aZsTbbPrjIc20iqGI87vch
3USSul4v4buEGpBpQV7r/LUGQu1ZQqaXeSoeJYfbcQJCnBI10ORl2ZDjFZF5
GjsfkJiHwG5WM+j6tk4myJxlrAgl8VzjtwolBCa5KSUXjggq5RwiXo+bldAh
W/HEwyBLXQJ8FKYQFrXT7efafnQ2wmTlRlS+pIYSYz9jwz/SQPoeUDy2/0oS
B92S7MmnI/5vt30Ea+gO+wi9rPaZRZ657jKNjntfGe/w+brX1fKDFhPryMfv
sQ38W8aE5d53gJJUjmaAZpbJ8i5r4otx1uy2JUT9ie0IpzVtWQ6X51dXp785
v8NgaD/xkeyEZ5q1pj5MglfObW54oUu4PHFydiMpox/Npt9GoJ9sSp/0Ihic
/J1s6Z9wqs3bhk51t2L3DLlRbJArT0TQlHYy7gXlK2Q2wFvNpbYSh4Adxom3
2ZuMJE6DlGWOQk7QLq1Ox6Rck35KmsIK1r/OUEloct0Is3YuOM4PJFaeim23
2G+d7wPtLvP7Ay3pv6v5fPKz6CIoZE5Jk/IqKMRbBkVQGlUHFV3S7FMhLXfW
E+m828EHG01CrA/sM7iIpXQS+UaJJLCrQOGsB8IuEjXVjq9Ff/TFtndNR9Jf
YxEaCeIsefXzYSMSMww2SclNctwRawKXRJ3DXmHlw+CQNkTJXq060IEEL0Ip
DiOWdFfh5kItA7hRGpZ87siv2QS7jZ4dqsPWASiOd/pwZ4I8Bc41AUhVTvvW
A3cdwn9Paf5BTs6fLKDvydjv5ussoe+UuMJi7iVvP747cr8C8Y9loT+Lg3Kg
qe/T4lXBaDuWwmlazSBxmkbC35ntSMJXkgtQjm+QeYm8b6lo6vBmSGjDFskt
agdgTf0covwvItY//DR3ulFPvBv1ZLcb9cS5UU+cG9WV4+zwm4435oPdplyi
5Zt6uTq1+ztPLwqry+zHviUZ8SArihBSPVSJr5NoLiFvyKgsC0E05ZmtOrHe
YRT1b0I/EFa0IXTNXUoB16qJfuFeYAEVXLveP5Xs10Di1N3ELpMKvRyY4sBc
BlqPN/iea72mg4tiRlLnxevr81c9drTBncLDqXw+DOmmPmnLSIKP89m5NiFL
bSuhx1GkdXSc2q4sVqnUx6BVa0P7LVhC0BZUAm+Vbck5cuWMZEPlSd0cepiZ
9yhf9j45J8NW147zt8LJAEAHOAdIAeDFd9+dv5LVMCwPFfK19vK4fs+aOqom
V/Vs0LKxCGqX4Se3MHBHNKAfGoPgOoN37+yRiQpbu1jKVaoB5TqJBt7hGwpD
O/WY+laLlpyDn9M/jOvwSPqLb+8bOc99dqvwA+3w2VlH3yycM4sdhu3OAD7U
KBVoSDpoOUfVBSupnka7D7oUCldIrO4+rHl328kXkcMdC/d9itupGexUksoL
hc3BEvXVSX6oT3ZLWhPt039HcEc5ELr94bxcTGefW8O28ETFVju+g/NXCWo0
2QVhhSEHl0Ngj1Pys2lohWLfFIjfdbyccoxRmZDZncAWp5ntpfFWGaQ0eEsV
RK4L64VU0MGg6b/fhe3G00wT58mFWDBaT9/18nobUfiDy2Gqh90mZ86ikOZ7
iZM3u0hT6xPMLsHX15wN6IyWj9LqUaqJ59REE0XoJHhwV4RuaL93TaIhkZk9
llU2zwovBn3xc63pWq3S8bB4biV0oJobMm6Nj2nE2pmdpzGfPxTJ5ppSEEVE
0MecJikK0ksnwcq+8ygPtI9dCKjpOBzoQ1ls3WxrNOqwbwURouQ5V5YaYgaH
/zym3sn/OG7/azpuA6uWFr+SZNu11NXJo5oT2ua6pP2Rc85wIJdFvGvV6QJt
Sjcttddl53qvjOcXjlNsa8m9jiosKgvf8KR6qfh5Pj3UgHTk3tmVv7YnrVZ8
OOtCehVMO1EXz5rQR/KDT+DjuLB/pg/73n7p/Uopa6J3raN9ZMb415+N7C9x
C8jxyaeP78mSdtrR9+JTPxm4n7aA++nfK9nuPdr+P6GTIIZax6Vu/lvGArQf
C51oXXyiXeHZLw6OVqWrtMmchaOq6q/Fdf/Aam84p+zJbTVRPYf3ngzSt8cD
iSq/gwXh9WxE9oVt+RqphBm80x9dkgQP8e4d7jTbeaXZDKnrA3AIvdMufkwZ
ZH2kY+145I6RrhdR6k8kjlrqKSuBrPJ3BVOMU32+LaWVpf+WqxslsSZyObCg
OqgPW/lLkbgwO/OdO3EBSYf/RBvo7PYhkR7uawm8KaeMrK1zskYbktWibn6W
KQcNp1NxWdJYAU4qiNVk9ZDs35VO/XMOmSbmbiIDP5Wi3k879v35lZy888Al
7+x0DB47x+AxV1yJYl37LkZgq76GuN23SO3vliOh7zsc5UxfUySTLmFlSOYa
8bqsrMxWG57dHhw+HveS+mYuUKhSLblv0c62Mlb62bieU0nXtYDbOETRUrvl
DqnRsWVQee+736JGM7hPqmrTUtJKSdH16Sq+eK4FLpfD5rzyHUvvwA3X7a0v
DUI4jUeu8vJ1puE+GyT2xT499tmr5e6vDCPjXfRGhcUV0+rg+cvu1j1tS7BV
DXNP2kyzx58/QgNqE9F51KFbS1hMD2rKZ59/8eTLR6dPz56dP9/3N/yzLS30
Tjuz4yrgrLbdWJXotTYCMG1X54o/tQRQqm047dQ1zZP6FJ82dYDeAq9STHsk
jVHSZjI8VCw9rUOKbEs4oF+rFxrH7/dxm71ObvvTndxml5f7ztD3nV5u03Vz
7/dyd0sqnaNIGlVonxJp5JBIs6RZnFnIXgQOhiedrC6pRZNCN9cKmOA4Lt/S
UZiLxqWpuQm1E+auUNVOx+iBlPaoM027yNuJ3iCzrxStPtznHzfbzjPuFHz+
XII04duTe7rPaWkfwX9+/b5x/nP7vE/pYG/SxCcDgLYydSO7owzd9ZE5kIam
B8iIdddITDO+8IlzE06jxrKhLR/neEpPvgXnZquz2ndVg68qwsrEL8jjlHCX
bLaz6sfcRuV97AfDiSM1WbpVJxWneCoK5pGHVsvQZLhaclk5wTbPOOk3CGPf
5TNxMmK3Q8A18UBjXW1JpSm6WFjwO7Yck33u0zoDmGgrJp3NfCNyT3MiH2fu
euSt+jdWwSrXs4MjALwXAhFa0hSt3o7omMB5xYJ2XI/ACsi6kBx3QIJkScto
akuPUH8Ted798jg9mjQN7b19xz3PeodVXNgQT2ra+b58Qgi9+N4dUJkkFrHG
hWf+PpgAKhNH6JJu2E4r3qWmLGzg66LkekG+6KEdK+CuX0A52gfNLC1AkBXM
8RCo2SrDXAGx1Ku6CZdybY3UUkbW0BYjG+5qo20cjW7lYIfa1F1rAE5vpGop
NaH28f0xU+gTdzylSp9GA9XTzM0RfMWDhk7NT4mZ+o6isVrAPQiyDwndmE7o
5v6Rmx3Spxu6+XtFbo4/LHKj/WxaiWC37gVVDiLrzLfpvi2Nsl2PM5oG/s8U
KLizAvbnBQpaP/8TNfjpUYPjn+XLei0+cWf4vadMsB8Sv7OfhcD/XM5yJn/H
XSGjosbhLoPgIL5Tvi5nDSQ+SRupuDZS559629zrKPRl5WyIaZnWemmMRD2r
JGMJ6sz0KL12aNW561WRWBxGLUnA/TJ00mr6hguK4CGGytz3iqfKadrGL+7v
+P8q6AJf90iu/0cEAo7Ne10lputAIPS6p6H/TxRl+J8gwj97ECHql3uWJ3yr
nNJwr0P1Pb4Pz1lhTpprl0v2K73yMYc9gYZjH2hgVuXYS5RRcRj8s4P07cm7
j6ejcys9dt0muTdBVWMKWloRWh9JNiG6sbFDA9cnOW3eR3N36PD2A3V4E+nw
9h+iw7sUlJ+oxMdRIWTIeZ+BQE1ztLhLgiKDr5+V0JCURn+UANHxTw8QhXAH
OGrfnYB6Q2n7/R3h+Y8c5dDF/0miHT890LVV0cqIGN0rGyd2uexmWE2eSYfw
gNkR4qh9xwGXufDq+ZnF3RJxmiW7xKTPz1ZfO57IVdB2CMEZJGTKeJ+UI7Xh
+xiJepk6WBj5vKRtIrrK0dORBU4HgoaRnQZNwkNIHpq2tQYXH26BwiKxLPuP
xtZ9QTmagm9hakdlTSsa6wK6Pzco+zHjdSxAzvROUEj3p5OJTfJ5WRHmLLUk
+vYr5ynjAG3mBAMUS+38eR4qsulRDBIqqFvS7plenONuEQvtmtE+VOfV3hdh
THdHvbspWB3J7Xl8fZoJG4j87rTSV+FZJ3s4poU5eGPsLEMyVC4BGDjauWkw
Kz8z+dLfEhS6VLp4jNwpfl0y/z5rLe7AFcm1F82udUQKx6mzwlx6bQxBGrWz
2dDzsShjUG23e7z77fe8eoGOctFFwXIA6jDaSvFy1ZF2WiUzdtHXpk5uAtK4
2+VSDhzmU+lex40u8rA+l95vD3rX5Qh3E59N+B/axah3KHV6mh3uWdUV6Y3N
btjz5WpdpNz5pFdJeDB3KVvn3c6UHdBm7PeR/tY0Tefb9gStZ7m+Ra5llZsD
COE6b+MuAfTi8u0q9J4F33KtxnVnVxJbu2sQPmXVD9xYnYTjaJty+Ugad6Bh
EXJdHp11gLodPt7CiRB/c63vgkCUExYthwhgWbZO2K0DG5LBfSN4Bhs+510L
A9nxRZ9zdORS8XYec9hV9zwFXdurQEbkTTZFxNQvJojrOjqAsJT40/7OEdzN
V6Ex4DDKq3A3dNrvwk07PKVmUVy5m3YYt6NubXzvU+ro3cFNmxS6Vtn9ndnO
Rm8Xv1JEgRkpnf/1fpXKt1xnxaceWq53SPb5Z43vDkJq8ARtObgxr8MRRx4y
leuL7RI0XMmD6VxjR187TSLz7hPiHlt9btutaDSKZ+50JfsYGpLS5SCuEraH
3GGJc7rdgFmirVtXloY7UPshho9zNnzZPdPhrvx5zzWYl/oJHOg/qU3UBrwV
Ub2MZ7GdWeJek5in37kaiqcz28tRZT2+JWckym+VzoCEdWv/V3wThe9vFINU
1Cl32Zpfnm9AIQ3o/R1kadqEcXD/x1ts2l8T6+8MdUTNLEeZrnb/vAuKbdC9
YFukdUya6q8QbJ9KgFHI9OJm1oYzbtA8l3cf7vxQriC3+ejNW+4Gzb52RPWp
O4YghggL80NmKfIXDXyTVWUhVfcuqIu45Dxxt5bUEt7n24Yk1YEvfJ3zHYzj
rNBGOJOFQF4YpDbc3nujmt42x3WF17qWK95Mj2/r4CswHYzDeXEHId4Y4HlA
Tw6ygrQgEyMj3zFXOwL1ONy9B8blWXggGr3FKpdTEB0lwEEzcUynDSI9qZ0Q
nxFPWqt/TDoIM0XTOpBaNCCW9abdh4zTGB3bL70CXPPNDm7Z7srXHRT3lfV9
4W7SwnDLKTdxo14DvtOQhEeVNqKiHXAfMVVZtQWRsPFcMP7Q9a7lq0cuk4KW
wf1cjd5G8hth+iwrOk2++IIA4OnpPHW9EbynOJVUSaFKvdBGguYmvq5hFJTm
0No/ibIa/IUM7kTl4onpVhdntIWTWwBcZ1HtizhDiycMlafFvFm0WpGTmRhf
EfHq6nTw+NGXn/tZRVB3Ghvi5CT54/GTJzBUg5riROTUtlfnN9kCCM3easyM
WXWRviG+u+jk5NHjJ3acwZ9/nufZCu2mJ2vCZb04F638w8Offc7PBr4jgs5V
Q0a8Gykx7YXzdUq+ZCrqSTlzV+PFfgNxrtVS1acXRHk532iSLH1GoA1nySeT
i3uZ/fy6t767g6M2buV+YdHd3qRT4Oa4lrV4z2u6rMrlpqy4BOWDR0C3+NWi
woW6P2OQsBtk+8HVemQvmKhltyJk8PWz6F7rzr0mUfP+jviK79tq3UTp40Rb
99PuuDWSY1POc4oONHXGqljcMN/u65ivhbrcNT8co89F/FDg6QVvMcPaXTVJ
KvR8wblEsk2nJKpGohJWayBNs1mxJyorMkSWvHYwo1FFP17iIie+MAbYnL5F
k1n1wrI7T8pS0S1fFyaGvoTgBwPOkJB7S7mpORtd5RjfQLWpQ/fOhjsx89UH
EhmxlhviFK0L4MVeLcfuZuzu1Ql4K5IkUcs+HrRTFFV32JbDn6E4BmidOM4/
Y4O+M7TsDPunPSRo7RfUHk7IDuNLZ2FOx5TySDTZcKaHu08qik7S5sVTyu16
0Rpeu7NKVrO/6cfKIbDvvBeFo+H3Kcef8OtcQix2zcHr3/EN9B451c2eugvP
NuiDfYu3yIaiSRS1+WQHMjkShDQnIRyvv4qZZ5WbuE4lsZk2Ks+4zoBxf2wM
xPetpN53pYd/3d4tn8DOvWII9hvp4mXlh1znpgcNmO/bCfZwMYvOEjPdesUC
GgfjNClg3B92mU2ntP6Dy4vry0NBkzd1H4ugbzcM1/iydBDcNzRsveAbH+GC
rFRxJ2lQlwOgW8pwuNbcoKm/SmjhXnS5p3yrETRT7dzLcUr2M5V8vTk0gMmC
QD9DAHvKDK8u+zqbF04K153wxCicrxZfcd7bA759eIVBuqiVkFGfcnsBOh5J
sBIcm3Bqsq6lI0dD61VGHbWchK3P1kg/Nl6DbMoj9UV51zrudHsJtSDc4el7
HUQNreS2CSb2D45WhgwdjoLa+/1IxDT8/Td7Sv+738/f7FP7t480r733rPys
+ZfBnp9/2Xp4/6Pmb8x0B/4iMq8lbS9m/6OGHz4IWjDpdYd7trT/0Y+0o48P
0e3p9y8AEG37E4R3jnauZeezpyMHUfswutHj4d4d7X32I+1oe677/fxt681T
1TO8H54kjT2IFM29bzpl4JB0VLFfWUeQXhNiV+x5M/4Brzn/7uzV719enz+7
c7V7EWz751d3z3nXz0978+Oc0H6c+2mj8M/D8zbK/UN21Hp215tPt9HudAvt
dr4Zo13U16SNQ503f3l/1PmP4lbtN38Kh+q+yT/bp/53XG3rr/c8ffebp6Jc
ogM+tDbXDgb6YKr62Z43I72QO3TzPdT+dizWnIo03/WmOjpXC8SDENU+vNdq
CYfs/f77WdznP5/EI+RSJ+3DO3a099l/uMT7Gepr1xmx1Auv7+HM6YYwPtQp
FOykDx9CfCOv2D75YAfLVfs6czZV0JVPSorgJoLHiR7iLJUPXWrsAdua8eft
/yMNZy86Ls8PHujFSmIi4onnlcpHthe70nrIsIy9aBw11JvHWz63VZUtyZDm
XgfIQlEHewgu8NUFdlU2kihtTbjmQFNxURuaVpwi04oOSTUbb71IGw05Gaki
nKcclZlxBY7GTrjZgtbBxg7JzLmzWhnpF4WJwpuL4ANHTaem+/Scd2aZNdmc
XdNpxnE2TFlpEXrJf5qtOySj3pGRA8qHBqTPEai73izHJb6/TTYYjYMrElfB
y1nTdYlJXLmwi2zqk/SjLHoSSiUBCOvEPSp80UZrZRyvhzte65emZT+6c9Jl
HHQgPy053Z+TppH4NpbsRylDBqBRPGxayCHXORXpXAQkrSFBzXDh7rYYxR0H
dlw5aI1zbuod1tLUcE2YlGskKVzsG4dGcGy4JkhuCRp2lsUOB06eSLjO0raD
ea275AFrfw9lIRevxrdkDe3TDWM7DooRPp7KBU23m3m0bi32PvJ2fHmNlbWc
cshX2Mo8be0NFeu+wXlBVCk7lAtoEByt29fiyXO7etPqFfBatOeuRGsnYB0g
VhunYEntm3aZadZ6TXn7htLdR8YA4TMzfGgjidzsh6DH+Z05CImEV2nCZu0a
roAxQAEDf2Dkefmbl0fR1dbe0y7pJq2ohNkdliCR5DEYzVG28Wyc+obzchZa
xOyvlENOVCGpgiYpfNc+bnCQy5WfLkM9usDGV/5lxU2Zc4aEdNaJsY/ItNRU
hzhVZU7yKLDNu/JJuGEj4xuoxUj+lvZXKyvXrGTSRE1J5LJylD67jqS7mhK6
TJ1nLCL4GLUcuZUqE06bo0eC9cYn2GRxmWXr0tyu//eOO3K7+pbr/6YJrFoz
zNEXlMHI+SknCvLeSdFncrUPpz9JflOvVZIpGQThZkAJOxBCTdJW5X1t56Vy
AN+UZ2jPcf6G5u/mQc4kGUWywLaoUsVaGVGam9O0J/VXvGoGpKQEI8Dsyxmi
zZ6/JSHIcdDeh2tKbrCnRPVvkMn6sQbspnn8+ADA10SUgSRhvPtw3VQvp0et
unREYIERjeeShb1a/v4nL06/O916jLFnWk7Wcmu3xN+SicgnHDzeGvLr7bud
1bb68UE7I2ZQ8+fvGFgX2r5IM/GYcWvHXslq095dMhRxTimv7ubYSO6LcTWx
kI7c5IB5TARIvSlaQmxNthRmXEadhLPaOMVj8AzpIXJHo5QqpFPN5CNluKyR
QNKOHL96fvbFl49PwJivua8XvvVJ2d1Fuy6rbsNZHTdbMOCktaz04vz6uSv2
QX4iJ+9p2Ec0WPpjTpyLAyyax0VD0HpC8WPRupYlD+2TuSwtJFi2l2kYIX21
pbRuozWi+I0RQtk4lji0z6UFFdRKLrMhkYNA/oIrn6BbrFyZZcplXNK8RWhb
9sQXoKVKB7xaNKSAtphncqAMDE5dQi5Aqbe5C4fjJToYJrWcHfc7QFNqbe+E
qxq1nQUSbQgpkrwUSPi2HFsIVolvxsxSbnZDk77SshNmddObTJXZAGYRF92R
lsnGsK0C4R2nXEbo07e9P6LOjmidMYSzmPnqOy0k4HmLqUEGHF6XnGiWUjU8
hHa6DvlwibOFHBGrZGRVGmQzTguiF9ZPqrVcUzmRhqcc1KMVS84YpHGKNDZN
80JiKCe+I7OQDDFP+YC6TxgLcy0JYC5bTK2BabinXvK5lgxeso+YAa5XoWWZ
R9DtTbteHCbGJVEdNtxqhHaH21OJ4ZxpGyBXdryLlbBp2s6luOtxTQUOO7EH
wPCE24uZaYpwJ0RiXhHGOEOV89fdzc0v1g0qY9h4nU4Hmql8maG/DU3svu9z
SxvQ8o8/Xr06gweCnivly3fvogGzF1f2IIYyW3vILCIF6HD3OFlZt8bQ66Tt
QcT4Zsi41C3/9ss7Bkvk5daA1wu+u2mMvkhqmd3G+42+h/rfJK0Rm/Atj3pe
ZHOIxCMM3wFc+VcimKQ9oFvlAROTpDyAi2QFuAEadXGx9VHKDdvo1+NDnT/V
mWgd77QhXwSfPoDdD0dIqN/aKF+LycmfzL3wtpPdSIlkgy+tuOJTo/JaAJr9
VY06nwy7K7uUSBQNG1vQQE7AuqrXkhGuFiUNTOv4M1sAPhfOcW+89ZxrdVUr
PSUYBZyP0gUx4nMU/fBNDGildFWuoclduafxBWvONUwjDtcjK7qWx0CfrCyc
TiDKSSeXHCFSNK608BUJcW9YASUy+m1F1JLYp2lBEllSiv+9zHHlxtOMcNFl
k/quXqYNILb2gSDaIYWOgTZAmBAS3aHdQGLCfQCiR8IDCn74Tm4pqCxlTd1S
8bRccQen0p8wCaoxOj6xq8nLKMkNRnuj2TqXAwcTLtE3ZU5qb1ClmIk5Nj2i
XVdFYk/zVZ+UUlhjTwGNMu/zN1lqvymJdZPkISP3LE/W06y0364ngoXm24Sk
xKtycZtOCRtd+aMkTXPFHSd4Ifqg+aQ7kUFkaPsFo1JI++u/VYGr18mI8eT0
AufFuSonWcp540/TTanH8R19YV5Cd0mWSy6TcP2yBPvRGQHu1qsXZ8Mx9z7k
ynMLwQIkeubU0jN205AYV7UWtZ/nZBmX1ched5Qsd9cv18vQrzO+upZtPcEZ
UYcfCloMgt396HhkrH1IjBnXL+c045rtuyWO32Hxjtce6WvJn9lMggIyCR3z
Ui+Xo6dQPOi743X0SC57Q8reuu74DGoegc1IznUEef5l7RBMEocU+aSHhz2A
/n/oX9thADjI8TNnmurHJKK2qadjPoj4aYzI2bLwr3kKlUX60sbYY8DfPJWu
G8h+TwpPxAtkH7YsEWLohLV8nKJpAW+9ihMOYplUgEF8ICejsL48X3M2Ixs7
4XT5APxTeYmemKw04wSY712I+/iAhoR3gvC9S5SHdy5CkekV4yEH8/Ry3T4m
x63opUB4yQtKGZuZr4hLUhoCkZLtXJRwZEvrhzvnVWy80PxOLSA24p73+3of
HdUL5o9juAZXzcYZSS3akgjWHQQGf4L6mRgIUqJAmAusrF2JKQ3bgrguYYgR
PBqR0S5Zw9Kikq+aCIUJkiQalwXwB4I3U2JmQMt4uCM6F9cggIbmZqHcy1Fb
ttLf8Gpwaq29uDx9yWcNVPEJScQjS92vpMvON3jmjJmt1CKmlWAx05kqunyh
suTl8RHag+2TlO8PkW2Y1JoEmCPhOSmigogKNwllQjqtWjl/zTl3IWHCSjc0
FrxKeoLBEDtIOIdQp5S8PHF/0ZPSwgRiv0AGojjjJVvV3R+tprv6yuYZXEje
N8tneAmvqydrtgIm5YJrH0aE3OnkjW8d1K3dsKsMrmHOAoRax4wnul7cb7CM
+n7SbpcWRz4A7iehZS9SVFfO+y2N6iy9B4mZTjsTK5icnnPIOzknFanktDQJ
mwr7/h3a06gzpFUtJ3YSNN+Wq4gm9QCqCROXWVU5buscDpajca6U66FvlCsl
LNKk6sB1VnPFGxjgij3Oh1rMbr9Ftc338LOMrF03M5wDd1IkS4ZUtqohsNWI
EPG/ePXq/Mxq2NNw49wdA0UlEnmq/Y6lv0hoGkKq+DdPCdwzJp+9Q63f2tev
LvA/jiRxk7x6Ypc1X0aeyWXkS/pEqvr3jvP85SsuwPARDdUiPbO2QQ2BurF3
IKghQd3wTFtZVmBDyjX2juNxQp74/3Jv8NkuzwAA

-->

</rfc>

