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


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

]>


<rfc ipr="trust200902" docName="draft-gondwana-dkim2-debug-header-01" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="DKIM2 Debug Header">A Diagnostic Header Field for DKIM2 Implementations</title>

    <author initials="B." surname="Gondwana" fullname="Bron Gondwana">
      <organization>Fastmail Pty Ltd</organization>
      <address>
        <postal>
          <street>Level 2, 114 William Street</street>
          <code>3000</code>
          <country>Australia</country>
        </postal>
        <phone>+61 457 416 436</phone>
        <email>brong@fastmailteam.com</email>
      </address>
    </author>

    <date year="2026" month="September" day="30"/>

    
    
    <keyword>Internet-Draft</keyword>

    <abstract>


<?line 37?>

<t>Implementations of DomainKeys Identified Mail Signatures v2 (DKIM2)
benefit from seeing extra debug information during the early deployment
phase.</t>

<t>This document is intended to help testers, and unlikely to be published.</t>



    </abstract>



  </front>

  <middle>


<?line 45?>

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

<t>DKIM2 (<xref target="DKIM2"></xref>) software generates Message-Instance and
DKIM2-Signature header fields.  Validators also create
Authentication-Results headers that may include dkim2 status.</t>

<t>During interoperability testing it is useful to have debug
information in a consistent place, so testers can examine the
headers and see what disagreement or misunderstanding may have
caused failures.</t>

<t>Several testing implementations already create a header field called
X-DKIM2-Info.  This document describes how to create it.</t>

<t>Nothing in this document is normative, and <xref target="DKIM2"></xref> does not
depend on it.</t>

</section>
<section anchor="terminology-and-conventions"><name>Terminology and conventions</name>

<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in
<xref target="RFC2119"></xref>.  These words take their normative meanings only when they
are presented in ALL UPPERCASE.</t>

<t>Basic email terminology is taken from <xref target="RFC5598"></xref>. The terms Signer,
Verifier, Originator, Message-Instance, Recipe and Chain of Custody
are used as defined in <xref target="DKIM2"></xref>.</t>

<t>Syntax descriptions use Augmented BNF (ABNF) <xref target="RFC5234"></xref>. The tokens
"FWS" and "CRLF" are imported from <xref target="RFC5322"></xref>, and "x-tag" is the
extension tag rule of <xref target="DKIM2"></xref>.</t>

<t>An "emitter" is any piece of software which adds an X-DKIM2-Info
header field to a message. An "action" is the single step in DKIM2
processing which one such field records.</t>

</section>
<section anchor="why-x"><name>The "X-" name</name>

<t><xref target="DKIM2"></xref> excludes from its header hash every header field whose name
begins with "x-", so this field can be added at any point, by any
system, without changing any Message-Instance header hash or
invalidating any DKIM2-Signature.</t>

</section>
<section anchor="no-protocol-meaning"><name>No protocol meaning</name>

<t>An X-DKIM2-Info header field is not a verification result.  If the
software is generating an Authentication-Results (<xref target="AUTHRES"></xref>) data
then the verification result goes there.</t>

<t>The field is not signed, nor covered by any hash.  It only records what
the emitter says it did.  Software MUST NOT make any decision about a
message on the basis of an X-DKIM2-Info header field.</t>

</section>
<section anchor="field"><name>The X-DKIM2-Info header field</name>

<section anchor="syntax"><name>Syntax</name>

<t>The value is a list of tag=value pairs, each followed by ";", using
exactly the tag-list syntax of the Message-Instance and
DKIM2-Signature header fields in <xref target="DKIM2"></xref>:</t>

<figure><artwork><![CDATA[
info-field    = "X-DKIM2-Info:" info-tag-list CRLF
info-tag-list = *([FWS] x-tag [FWS] ";" [FWS])
]]></artwork></figure>

<t>Every tag, including the last, is followed by ";". A tag value may
contain "=", ",", "(", ")" and space. It MUST NOT contain ";", which
terminates a tag. There is no quoting mechanism; an
emitter MUST replace or remove ";" in any value it substitutes.</t>

<t>Five tags are always present, in the order "draft", "repo", "date",
"sw", "action", followed by any supplementary tags in alphabetical
order. Tag names are lower case. Unknown tags MUST be ignored. A
message may carry any number of X-DKIM2-Info fields, from any number
of emitters.</t>

</section>
<section anchor="provenance"><name>Provenance tags</name>

<t>These identify the software which emitted the field. They are the
same in every field an emitter produces.</t>

<dl>
  <dt>draft:</dt>
  <dd>
    <t>The <xref target="DKIM2"></xref> revision the emitter implements, without the "draft-"
prefix, for example "ietf-dkim-dkim2-spec-06".</t>
  </dd>
  <dt>repo:</dt>
  <dd>
    <t>Where the emitter's source code lives, as host and path with no
scheme, for example "git.example.com/dkim2". For DKIM2 code
embedded in larger software, this names the fork carrying it.</t>
  </dd>
  <dt>date:</dt>
  <dd>
    <t>The date the emitter's DKIM2 behaviour last changed, as YYYY-MM-DD.
A version stamp for the code, not the date of the draft. Bump it on
any change to what is emitted.</t>
  </dd>
  <dt>sw:</dt>
  <dd>
    <t>The program within "repo" which emitted the field, for example
"inbound-filter".</t>
  </dd>
</dl>

</section>
<section anchor="action-tag"><name>The action tag</name>

<dl>
  <dt>action:</dt>
  <dd>
    <t>What the emitter did at the point it added this field. One action
per field; several actions mean several fields.</t>
  </dd>
</dl>

<t>An action value is a short verb, optionally followed by "=" and a
result, optionally followed by space-separated qualifiers:</t>

<figure><artwork><![CDATA[
action-value = verb [ "=" result ] *( SP qualifier )
]]></artwork></figure>

<t>The vocabulary is in <xref target="actions"/>.</t>

</section>
<section anchor="supplementary"><name>Supplementary tags</name>

<dl>
  <dt>hc:</dt>
  <dd>
    <t>The number of header fields in the header hash of the
Message-Instance this field describes. Fields, not names: two "To"
fields both hashed count two.</t>
  </dd>
  <dt>hn:</dt>
  <dd>
    <t>The names of those fields, lower case, in the order they were
hashed (which <xref target="DKIM2"></xref> defines as alphabetical), comma-separated
with no whitespace. A name appears once per field, so the list may
contain duplicates; its length equals "hc", and it is empty when
"hc" is 0.</t>
  </dd>
  <dt>snapf:</dt>
  <dd>
    <t>"Snapshot fetched": the identifier of the stored earlier copy of
the message the emitter diffed against to compute a Recipe.</t>
  </dd>
  <dt>snaps:</dt>
  <dd>
    <t>"Snapshot stored": the identifier under which the emitter stored
the message in its current state, for a later Recipe.</t>
  </dd>
</dl>

<t>Snapshot identifiers are meaningful only to the emitter which wrote
them; examples might be a database record id, or a path on disk.</t>

</section>
</section>
<section anchor="actions"><name>Actions</name>

<t>The actions any emitter may record, with their supplementary tags.
An emitter MAY record other actions in the same form; a reader should
not expect them from other software.</t>

<section anchor="verify"><name><spanx style="verb">verify=&lt;result&gt;</spanx></name>

<t>The emitter verified the message on receipt. The result is one of
the four <xref target="DKIM2"></xref> output states in lower case, or "none" if there was
no DKIM2-Signature, optionally followed by a free-text explanation in
parentheses:</t>

<figure><artwork><![CDATA[
action=verify=pass (i=1..2 verified)
action=verify=fail (Message-Instance m=2 header hash
  mismatch (sha256))
action=verify=none (no DKIM2-Signature headers found)
]]></artwork></figure>

<t>The authoritative result is in Authentication-Results (<xref target="AUTHRES"></xref>).
No supplementary tags.</t>

</section>
<section anchor="mi"><name><spanx style="verb">mi-m=&lt;N&gt;</spanx></name>

<t>The emitter added a Message-Instance with "m=" N. Accompanied by
"hc" and "hn"; where a snapshot store is used, also "snaps" and, for
N above 1, "snapf".</t>

<t>An emitter which found the topmost Message-Instance still matched,
and added nothing, records no action.</t>

</section>
<section anchor="sign"><name><spanx style="verb">sign d=&lt;domain&gt; a=&lt;algorithm&gt;</spanx></name>

<t>The emitter added a DKIM2-Signature with that Signing Domain and
algorithm. No supplementary tags.</t>

</section>
<section anchor="not-signed"><name><spanx style="verb">not-signed=&lt;reason&gt;</spanx></name>

<t>The emitter was asked to sign and declined. The reason is a short
token chosen by the emitter, for example "broken-mi-chain" when the
Message-Instance chain would not undo to "m=1". No supplementary
tags.</t>

</section>
</section>
<section anchor="emitter"><name>Emitter behaviour</name>

<t>One field per action. An emitter MUST NOT combine actions into one
field, and MUST NOT modify or remove any X-DKIM2-Info field already
present.</t>

<t>The field goes at the top of the header block when the action is
taken. Where the action added a header field, the emitter MUST add
that field first and the X-DKIM2-Info after it, so the X-DKIM2-Info
sits immediately above the field it describes.</t>

<t>The value is folded. Folding MUST happen only after a ";" or
after a "," inside a list; a consumer MUST ignore whitespace
next to ";" and ",". An emitter MUST NOT fold inside a token.</t>

<t>The field is excluded from the <xref target="DKIM2"></xref> header hash by the "x-" rule
(<xref target="why-x"/>). An emitter MUST NOT include it in anything it signs or
hashes.</t>

</section>
<section anchor="reading"><name>Reading the field</name>

<t>The field is for a person reading a message which did not verify.</t>

<t><list style="symbols">
  <t>Which software touched this, and to which draft? Compare "draft",
"repo", "sw" and "date" across the fields.</t>
  <t>Why does the header hash of "m=2" not match? Compare the "hn" of
the "mi-m=2" field with the names the Verifier hashed.</t>
  <t>Why did the Recipe not undo? Take "snapf" from the failing "mi-m="
field to the emitter's operator.</t>
  <t>Why was this not signed? Look for "not-signed", else for a "verify"
that is not "pass".</t>
</list></t>

</section>
<section anchor="examples"><name>Examples</name>

<t>Line breaks and indentation follow <xref target="RFC5322"></xref> folding. Domains,
repositories and program names are examples.</t>

<t>An inbound filter verified a message and, finding no
Message-Instance, added "m=1":</t>

<figure><artwork><![CDATA[
X-DKIM2-Info: draft=ietf-dkim-dkim2-spec-06;
  repo=git.example.net/dkim2; date=2026-08-28;
  sw=inbound-filter; action=mi-m=1; hc=8;
  hn=content-type,date,from,message-id,mime-version,subject,
  to,to;
  snaps=a5/a5440deb07cdcf63cd16bfaa29d9a87c0b97a300e1c2d3f4;
Message-Instance: m=1; ...
X-DKIM2-Info: draft=ietf-dkim-dkim2-spec-06;
  repo=git.example.net/dkim2; date=2026-08-28;
  sw=inbound-filter; action=verify=none (no DKIM2-Signature
  headers found);
Authentication-Results: mx.example.net; dkim2=none
]]></artwork></figure>

<t>The same message after a mailing list recorded its changes as "m=2":</t>

<figure><artwork><![CDATA[
X-DKIM2-Info: draft=ietf-dkim-dkim2-spec-06;
  repo=git.example.org/listmanager; date=2026-08-28;
  sw=listmanager; action=mi-m=2; hc=18;
  hn=archived-at,content-type,date,feedback-id,from,list-archive,
  list-help,list-id,list-owner,list-post,list-subscribe,
  list-unsubscribe,message-id,message-id-hash,mime-version,
  precedence,subject,to;
  snapf=a5440deb07cdcf63cd16bfaa29d9a87c0b97a300;
Message-Instance: m=2; ...
]]></artwork></figure>

<t>An outbound filter then verified the chain and signed:</t>

<figure><artwork><![CDATA[
X-DKIM2-Info: draft=ietf-dkim-dkim2-spec-06;
  repo=git.example.net/dkim2; date=2026-08-28;
  sw=outbound-filter; action=sign d=list.example.org a=rsa-sha256;
DKIM2-Signature: i=2; d=list.example.org; ...
]]></artwork></figure>

<t>A Signer which declined because the Message-Instance chain would not
undo:</t>

<figure><artwork><![CDATA[
X-DKIM2-Info: draft=ietf-dkim-dkim2-spec-06;
  repo=git.example.net/dkim2; date=2026-08-28;
  sw=outbound-filter; action=not-signed=broken-mi-chain;
]]></artwork></figure>

<t>Two implementations on different drafts:</t>

<figure><artwork><![CDATA[
X-DKIM2-Info: draft=ietf-dkim-dkim2-spec-06;
  repo=git.example.net/dkim2; date=2026-08-28;
  sw=inbound-filter; action=verify=fail (Message-Instance m=1
  header hash mismatch (sha256));
...
X-DKIM2-Info: draft=ietf-dkim-dkim2-spec-05;
  repo=git.example.com/mta; date=2026-08-25;
  sw=delivery-proxy; action=mi-m=1; hc=8;
  hn=content-type,date,feedback-id,from,message-id,mime-version,
  subject,to;
]]></artwork></figure>

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

<t>None.</t>

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

<t>The field is not signed or hashed. Anyone handling the message can
add, alter or remove one undetected. Software MUST NOT act on it.</t>

<t>The field discloses the software, draft revision and source
repository of each system, something of an emitter's storage layout,
and the names of header fields present at hashing time. An operator
MAY strip X-DKIM2-Info at its outbound boundary; verification is
unaffected.</t>

<t><xref target="RFC5322"></xref> permits ";" in a header field name, so a name copied into
"hn" verbatim could be read as further tags. An emitter SHOULD omit
from "hn" any name containing a character outside %x21-3A / %x3C-7E,
and SHOULD cap the length of "hn".</t>

</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

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



<reference anchor="RFC2119">
  <front>
    <title>Key words for use in RFCs to Indicate Requirement Levels</title>
    <author fullname="S. Bradner" initials="S." surname="Bradner"/>
    <date month="March" year="1997"/>
    <abstract>
      <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="2119"/>
  <seriesInfo name="DOI" value="10.17487/RFC2119"/>
</reference>

<reference anchor="RFC5234">
  <front>
    <title>Augmented BNF for Syntax Specifications: ABNF</title>
    <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
    <author fullname="P. Overell" initials="P." surname="Overell"/>
    <date month="January" year="2008"/>
    <abstract>
      <t>Internet technical specifications often need to define a formal syntax. Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications. The current specification documents ABNF. It balances compactness and simplicity with reasonable representational power. The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges. This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="68"/>
  <seriesInfo name="RFC" value="5234"/>
  <seriesInfo name="DOI" value="10.17487/RFC5234"/>
</reference>

<reference anchor="RFC5322">
  <front>
    <title>Internet Message Format</title>
    <author fullname="P. Resnick" initials="P." role="editor" surname="Resnick"/>
    <date month="October" year="2008"/>
    <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 "electronic mail" messages. This specification is a revision of Request For Comments (RFC) 2822, which itself superseded Request For Comments (RFC) 822, "Standard for the Format of ARPA Internet Text Messages", 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="DKIM2">
   <front>
      <title>DomainKeys Identified Mail Signatures v2 (DKIM2)</title>
      <author fullname="Richard Clayton" initials="R." surname="Clayton">
         <organization>Yahoo</organization>
      </author>
      <author fullname="Wei Chuang" initials="W." surname="Chuang">
         <organization>Google</organization>
      </author>
      <author fullname="Bron Gondwana" initials="B." surname="Gondwana">
         <organization>Fastmail Pty Ltd</organization>
      </author>
      <date day="28" month="August" year="2026"/>
      <abstract>
	 <t>   DomainKeys Identified Mail v2 (DKIM2) permits a person, role, or
   organization that owns a signing domain to document that it has
   handled an email message by associating their domain with the
   message.  This is achieved by providing a hash value that has been
   calculated on the current contents of the message and then applying a
   cryptographic signature that covers the hash values and other details
   about the transmission of the message.  Verification is performed by
   querying an entry within the signing domain&#x27;s DNS space to retrieve
   an appropriate public key.  As a message is transferred from author
   to recipient systems that alter the body or header fields will
   provide details of their changes and calculate new hash values.
   Further signatures will be added to provide a validatable &quot;chain&quot;.
   This permits validators to identify the nature of changes made by
   intermediaries and apply a reputation to the systems that made
   changed.  DKIM2 also allows recipients to detect when messages have
   been unexpectedly &quot;replayed&quot; and will ensure that Delivery Status
   Notifications are only sent to entities that were involved in the
   transmission of a message.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-dkim-dkim2-spec-06"/>
   
</reference>




    </references>

    <references title='Informative References' anchor="sec-informative-references">



<reference anchor="RFC5598">
  <front>
    <title>Internet Mail Architecture</title>
    <author fullname="D. Crocker" initials="D." surname="Crocker"/>
    <date month="July" year="2009"/>
    <abstract>
      <t>Over its thirty-five-year history, Internet Mail has changed significantly in scale and complexity, as it has become a global infrastructure service. These changes have been evolutionary, rather than revolutionary, reflecting a strong desire to preserve both its installed base and its usefulness. To collaborate productively on this large and complex system, all participants need to work from a common view of it and use a common language to describe its components and the interactions among them. But the many differences in perspective currently make it difficult to know exactly what another participant means. To serve as the necessary common frame of reference, this document describes the enhanced Internet Mail architecture, reflecting the current service. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5598"/>
  <seriesInfo name="DOI" value="10.17487/RFC5598"/>
</reference>


<reference anchor="AUTHRES">
   <front>
      <title>Reporting DKIM2 Verification Results in Authentication-Results</title>
      <author fullname="Bron Gondwana" initials="B." surname="Gondwana">
         <organization>Fastmail Pty Ltd</organization>
      </author>
      <date day="5" month="September" year="2026"/>
      <abstract>
	 <t>   DomainKeys Identified Mail Signatures v2 (DKIM2) produces a
   verification result for an email message.  This document defines how
   that result is reported in the Authentication-Results header field,
   registering the &quot;dkim2&quot; authentication method, the result values it
   can take, and two properties which identify the signing domain and
   the point in the chain at which verification failed.  Diagnostic
   detail about each hop is carried in a human-readable comment.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-gondwana-dkim2-authres-00"/>
   
</reference>




    </references>

</references>


<?line 341?>

<section anchor="changes-from-earlier-versions"><name>Changes from Earlier Versions</name>

<t>draft-gondwana-dkim2-debug-header-01</t>

<t>Use the <xref target="DKIM2"></xref> tag-list syntax, with every tag followed by ";",
rather than defining a third tag-list variant. Renamed the <spanx style="verb">mi-m&lt;N&gt;</spanx>
action to <spanx style="verb">mi-m=&lt;N&gt;</spanx> so every action with a value uses "=".</t>

<t>draft-gondwana-dkim2-debug-header-00</t>

<t>Initial version.</t>

</section>


  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA81abXPbRpL+Pr9iCqqrk/cIRqJfElPh7imWfHGtLfssO9mU
y3U7BIbkrPB2GEAUy+X/fk93DwC+SEn26uoq/mCBwGCmu6f76ad7EMexalyT
2ak+1xfOLIvSNy7RP1qT2lq/dDZL9aKs9cVfX72Z6Fd5ldncFo1pXFl4Zebz
2t5Ow9MLO2+X4VWVlklhcsyb1mbRxMuySNemMHF64/JJnNLQeMVD45NT5dt5
7rzHpB82FV56dfnhpSrafG7rqUpNY6fqdqoSXCzLejPVrliUqq3oiZ8qV9VT
3dStbyYnJ89PJurGbtZlnWKeorF1YZv4gqRQvjFF+l8mKwussbFeVW6qPzVl
MtK+rJvaLjyuNjldfFbKtM2qhAA6Vhr/XOGn+oex/o+gC98UJX+oy2L3flkv
p/ql8U1uXKbfNRv9ukn5icc6tpnq1/bWZnoy0qenT/TPLsucyfU1P+RxSZli
5scnJyfhZ1s0pPs59KwNRvPtasXKRP/27FQ/efqtfnL6TD95/Czih5YWn+o5
pFv++yII01iTj5MyV6oo6xw7eQvr0uj3L19MTk+f9z+eTh4/GX48nkzkB282
TBtfjJ1tFryjYVt9ZROlaHP2J3769Pl38uP844cf319eywR7bkEGr7EtKo5j
beakZ9Ioted2ulzoixKqFH+1G69fpXjiFs6m+g3Z+totC9O0mEffTvQxi/tI
zW1hF67Ri7rMtbfWFUtt77CAZl/UvdDYyLSt6XGzstqaOttgSJWVG5JAVSvj
7VipDyvnNZy8pbsa1w6uVqQQoin1ymaVhmvC+eBQ8DndFpm7sZgKT+dWV+08
c35l07Homrs0zaxSR+SxdZm2CQmilATW8Sf++/kRvHTRrE1t9RLq1OT9+o31
3ixt/Kog704sLSfvxb0ltESaXlA8+7HWP8F/EDxl7bXJfKmT2mIydQ77kzET
tkP83vo2a3x428MgptG52UDXJGtTq3nX4NBYxEOTC7EbWaIuK8g3d5mD55Ml
+AEbqvV20WZsJnNrxfxq2/yu0AbuXngHA8K4VWYSSxHamVQnpsDmmdwVlnZJ
dQKSpbG3ek2Cpg52QTTxBgHCADBtQcMIBEgc0oREAK5AJuAcvIfcBppcIzYR
Y4Pkex5oMhgs3QS7QdxtA0O8LLOp+lss2/AKusHmux6TWp/Ubo4NXJVrMkaY
yjVY/qpsVmJJqLfnZ33QimMF18AQS88aBV+FH2qyI011pD/YGoYqs3K54Tdg
2VvaZAJwuLHVQEtNcOl19Obj9YdoJH/11Vu+fn/5nx9fvb+8oOvrH89fv+4v
ZITCj7cfX4fndDW8+eLtmzeXVxfyMu7qvVtvzn+JWA8VvX334dXbq/PX0aHW
5PASN+xaVW0bbJfxvRFTPFCfAn59Zltbb4NSjblhL3H1YDudW1PAwsCSAkG5
htfTkI2ipTC/x7I8qyY1P757d/n+xfn1Jez5g/HIjwys8I7Bsk4WKgRgPgXI
gyxkYRroGZhsPVI/2Zrgqh7pt7VbuoLicHQQxyP93iau4njWL1ZAO8K9FwD/
MhU52WnZCgsEAksbvIE8eANnvQsWqsRr8QKyxzIX5X64eqmPz/H/IxEXaN+J
W0IRr6KXP19HvHz04v3rlxHvAyIBmZKipdcTmeGzOGN0FzdmGbExEJbAV8xD
IY27um4zSyoMMp4XOrK5a2AefscUG105m/CwHurWK5estElTGqC3g0rtRB08
xGBf2YpjTXMbRtFOHO2x4RABEFKRrXgeVdVlgnco2mQhpFPtW1zIrLVNyIsk
kjBJ9Lc44qSvvxytV5v47qtSXQzaO4ZFL7ZxPXICZfxKE6RsdoFivSqxJTQb
8hM8weu1a1ZkxkjwjsKgw5SCAgBmoE1vxFYl4mGk5xTXG+U30Cwf8RRl2+hk
ZYol6UVDD7LEtmRlDfy9lZTQvbCXQVj/qxKxUYIulVkXQLyJ23uyqyDjFYTV
t+zzkldgU8orCNNXC/aTfqsxPCQ2EUM/kJCOPwUWgZQImY1qQgDft45eEjTi
YS152+7K5ikq0xFhA6AR78O+YlE2DknZCEoEV+DsopgciO9qb0BDHGWcFMOv
O206EEWiubE8YYqI5ngwc9oho4K7ElrThHOAC9Mb8ytG7V3xYbN/OeK/cM2j
Ix2Q4MuR54uvYgNsd8sGNxpMpKFFEaQzuV0ZR8TFGgqDMsvKtRglOoNfthQs
iG1EF/EZwguzjHkSWYHnwu1/nplsQdhUBc69KGNRCv9mFH6D0tNInvfrE0wN
r/W3Z/pPx58AZp8145OWaygjV4+UuuTYxLNR4DYd/8tAmkdkpj0zAGAY1MRe
YBIKabUhkI5mlNhG9N8x/fdIINRXIDFj8qXeLfo3yKoMPkoyCvM6Q/MzHktg
FKX+77bkwMgtxbbz+RmmVp0X8ry1ZbZEfKe2OdyZ1SRGBfcLe459asGtXdM2
THZeUkLEYp4B3mRrcueQBEeSjWlC2qaIqzlSCwuV9JdKMOIAfk2/AuKOdsxF
S/u26hiUGJr32mSg03NL8Z0pXgEKw6qEiCINTYK4JM6tPxY3Rbku5G3WlhgB
SlaELPajDybidYmpa1lZqkjyyZ14EYcbCVQP4xTGBYMy5h/pdzWsWLD/8sJf
jqr+jsQSINxJDSLhsJe5ZLqUH0kA06ZuhNUQ+lEygTEkP4ivE78N21pxOcAb
xcafqilHf5d0UIALpmwjUs9X/ZAP6LnsX0zVITZ44e5GXN0Tl8YLOrqvoItP
nkVYnDac1v6ZHXJrsX/10LitYR+qWIEmt5aKHiK2vmHfrwySGme2osTKPllB
tr2Vl2Cr4QcVp9/w+gizl33zgWZXVNOC76VCdzJTLwl/g8FHkjDFe9jcZX0j
riDlB9mQmwliQrre00SWmlvUBQ5KcfxLJqUcAaV+wb/4zZv44mIMYc4p4bD1
AXF5xSrRhCTriNNL060TQJE3YKx/aDHaUWLBLOR+sgaRGC5eoEbwG8js153E
cIZlbXI2JiEHR+FDfrZjYSwTuQJpp0iBpxlRLvFvmlbClgHty5H8IKCEe8sP
2XfT7PgYsp0Ot5iIkDpCTwbaMtZvi2568rkO6c9QpkmFJc8884n+ZqhTmVwE
2bbylV+BgZLh5yNdMrVFvbXZReiZoK5RwgEeHMiwHHtbGaqmU0AsaBCRcx8S
ULCGLD/jVfUnnj+wi89ILvr63fCmfhQybJmYeZsR3nF7QH/5EpT9+lVMf30I
isjS2zexA6uk2/wByQ6SJm3CDqMTYqUPc/AWpexL0LE0+rx4LIfPVDfrUkcf
SoKKsM4cVSlPb1PpRtEYaLIqegk58nhxIrYdxg4gvpdOqOTSeEaShomPxZn7
spZrG0+Rt50sHo0gQZ6bYecwQ0AYCgckNsm358LVTVVZU1O1BxP0Xhg4thUG
RElc90k5bauMeKT1Z8zkM1ssMb2lbUahvEqkbg09DZtXjZSRFGd4SDdPKHQL
Uy3IPNE1ruC5jV7YBgCYRlNe2nXdq7pDCBR4xEGp80R3k7La4BHmpYddjtsN
xMWCioIl5IYe1Eso86rlvoTUkEEQvyuILHQoB3dJAqjs0FwevyeIK9g8SVvX
VKpTLyhAO4ilodd6EfqFh7UkyYdagrpCTLSbcmddkWSNysMS7QbrCZgG1HDL
VcN1EdcB4M820HQsMtIsBWcf6uo5f8Pc+TxATgd1PlDiDooIjru1iUvIhJJI
QyPhkM6MCat6Knb+SydGSYVHP3Xwfk751PACgdO1xC0s02apogi0d0i7jKy5
8BOZpEtzAh5/51JnM/tecOjPf4c+ciuo0wkjJVFIDFsFBwS0rmqk5A9gRtVH
QblKSfpEBuwiERQCPiUbzIpsRzUMHRV4E36/kFJLr42HMvt15INAbKCptXFj
71j/zBRdM1AhwmFo4lm7oDwLFqiMR0noZqfj8aTX9tE9A6nBp48PIDGfTbbB
k1/U1C7MDSJVH/uVmTx99ui+GUlnfXyoZt8yXVDCDQlBjhNcIx2oweLu99S5
Y4Xq+z63Y1/IXZzPvr9iJ8jdngOEnsFhLpBmQ45cdgWkTAg1EIi8H4pBjHs6
qyI6I2ij2kD7HfAI7VxiRtRFjvgpv8YQoK6o0IWupyN5togkp+9GNttICsmy
yok0HkiKaiXLNO8HVlOc2lmrQjqlo744x17IFgXLUHmv09n3KR8Y/Fmb2fcm
W9I2rHI2Fw14wGD7mxoAAKSH7hGllGMILmz7Wcf613YKAsfScqDINb4sWIrh
9p4sa8p8/kbOFVgZUj61SUY9vy54aZ4tcqS4gwdOiSxcUHRtweke757XNDSG
AyXUY4z6Xqg62AQeoNcEU0wUsGslSQUPOo0OtVad1voy6DLQ6i9HQRpoSwxR
CEnVIyX373YKWymY87kr7BaaYnVEoArZnCwzNF3KlAqyoRAmWD8sAbtWvgoF
706LiDtHgePCN7sMHcBinpXJTW+vjqg6r7gRPN6qlMKjzq+26dtoJ9Wx9Bim
2MtEiIWrQx3V7Dd9UEpQsdf0RGanO+opMbs8t6kDZgNvJRj7+oBbVj0H3GsL
AZtT8q+X+EuezpKtiEcVkqRlbcP9BYR6/3NE7QaPFB86S2fhMKfNO/2kZN+i
aaog1CdPOguYM4ru9wCSapievXy/pxeasKFB3WxVytsEOcQEdVq5Ma2Ov3yR
du7XR/cv3Z15EeHjdko4opEOoicbMIUVl3+PtboeUteTq+Xe1z2BhSvB9z0n
ZXmv72QHjKRii2JO8g6W+BPcix70zYambAkcmeBLKHAtyS9TzfkX/YLwvbZ9
E4eoatfG8etgee7nwGHr0vtBeh9W3Mg50z3lBkBgErGIjNLDamxm5JCBw0ac
rTA6NMEDrdqq27sTklAUDIs7CYJwMtKB0F/0B+qwhhQzbDzlezKmLNhXMnv8
ElU/H1YiofULEepKL6HvEP9Fvy7LG96taEBr2M5m3oZNjGR7IlbUNF2LOSKG
EgkUBuaq1GtCsjn2+0bOLV2RdueLgRgNpyvs99BkHBKOH3E7BgGOlGPl/a41
MPTOOpYsOTcU/1qK/4EVDp4madvJ4WhRHiSAUQAwxvvAxHbaseJosweaSGeB
WJHks+12T2EbafeccadkNjmZPItPvosn33Wv+PVst3dx1vEw3tnTM71KZv3o
VTGjKg7WjJtNZUc06YicYhQ0jVEb5C63cWjejHw7/wcY9yhM0JSjpuzXJk4z
M0+/MU+fPDlJ7fzk2yRNFs8eJ+nps/nCmMnz9Ln57tvkZP78W/P45MSeJpP0
8eKJTLBvxKlmecfj8R/Cfr/BYzuL7rBZmfV+ygr17rYFO5NvBHgBwT2ufXqX
C1kjD5HKhbhQOerwUWHJfTFuADDE/B/6XVkvv6EFc9QaS7LJw9bbGbbtehN2
vdNt3zN1sgLBT2PTjO7xQ2vTuUluyAfZJ2nqOLzTOSDfo49I5CmG8t9yTefH
fIngb+SKevmcwndebovh/rbX95cxQetuFIT3KyoMgUUI+C4udqNhMfu9ofBw
CEwkBAiYUFjuIBOf5e0UrUI8+RSFQff/G3s6CfeDJ9QWZPBtp0KNUXsTS9l4
NnwzNYTVVDuywOGrnVXCtwJd/g5sHwSaP1W5/3Rtj54ryox/FEttVT17BccZ
UGFdHnxgw/2axcJyU4kF9n+QjPNbvYTTHcwUfnTYS5B1/vks8PRBnejQJG/M
vkZPtzRKLR3O1JsYXOFu87/IofvY9VA+7Zbcgg/6tO386ly+60r5iJ8/QLpC
YmBmdG2TtqavxfZHPHBiT5VdoIfg6xtKYEgVadax7i7FJKZQ4C3UoiB0GepB
eoNanQ1EpEkOz+1hn/47qkGK1PkkQ2Htdw77RrJtw3EcwxWfiw1cjRq5cqre
fazhy9xKISGn/ltnahhP8mdmg6iSnsfAkg8OAUL5StUqWYWtgC3hWqajt4r6
kr6pXbVXRjacansg5v9RwZ/tfk6ByrYtDIIykWOpgZ5WdGyNGbqz5t2vEUhi
rlCNNOOTsnJ8fteUiisDOlTBEjmdKmSEclwGUcpftDW3PrmVsF2WhQ/NSvxU
zPd5Ij7HlSW4iy+VFHCGviOlzW8bLh3/5W5yGj8+19/g6vGL+NtLMW+YNDGV
nApIy5+KG0wevtQk/1fqRWAlvPRl6NT/JN7v1ezX/oVj3N/6Ilp9DDjfVa97
H1mEdrTtPlw4+E5DYcvZdBBVjlHEGvC2Oh1muzW1M0UzRk1FlhMf434itRNV
dzJYbvcYsZWybnjKkpjQO2gpMqJZNP5dip4o9apwjTNZd5I6Vv8Dkpele5Uu
AAA=

-->

</rfc>

