<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.43 (Ruby 3.2.3) -->
<?rfc tocindent="yes"?>
<?rfc comments="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-dogru-cedulon-checkpoint-00" category="info" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title abbrev="Cedulon Checkpoints">Cedulon Checkpoints: Epoch Witnesses and Transparency</title>
    <seriesInfo name="Internet-Draft" value="draft-dogru-cedulon-checkpoint-00"/>
    <author initials="E. C." surname="Dogru" fullname="Emek Can Dogru">
      <organization>VERAX TEKNOLOJI LIMITED SIRKETI</organization>
      <address>
        <postal>
          <country>Turkey</country>
        </postal>
        <email>e.dogru@cedulon.com</email>
      </address>
    </author>
    <date year="2026" month="September" day="17"/>
    <area>sec</area>
    <keyword>Cedulon</keyword>
    <keyword>checkpoint</keyword>
    <keyword>witness</keyword>
    <keyword>SCITT</keyword>
    <abstract>
      <?line 48?>

<t>This document specifies epoch checkpoints, the transparency witness
and the anchoring of checkpoints as SCITT Signed Statements for the
Cedulon audit layer. The spend receipt, rail-extract reconciliation
and trust-root rules live in the companion Cedulon Core document.
A verifier that pins a witness key can detect a withheld or rolled-back
checkpoint; without that pin the suppression guarantee is conditional.</t>
    </abstract>
  </front>
  <middle>
    <?line 57?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The core document <xref target="CEDULON-CORE"/> defines the spend receipt and the
reconciliation of those receipts against an authenticated rail extract.
That result says nothing about whether the issuer published a complete
checkpoint chain for the same window. This document states that chain,
the witness that makes suppression visible, and the two media types
those objects carry.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

<section anchor="witness-root">
        <name>The witness root</name>
        <t><xref target="witness"/> describes what a transparency witness adds. An inclusion
receipt checked against the key it carries says that some log is
internally consistent, and a log is cheap to invent.</t>
        <t>A verifier <bcp14>MUST</bcp14> obtain the transparency service's public key out of
band and <bcp14>MUST</bcp14> verify inclusion receipts against it (<tt>MUST-T11-15</tt>).
Inclusion receipts that cannot be checked that way <bcp14>MUST NOT</bcp14> be used
as evidence, in either direction: they cannot establish that a
checkpoint was anchored, and they cannot establish that one was
withheld. A verifier <bcp14>SHOULD</bcp14> report that it left them out.</t>
        <t>A log holds statements from everyone who uses it. A statement held by
a pinned log <bcp14>MUST</bcp14> additionally answer to the issuer root before it
counts as something that issuer published (<tt>MUST-T11-16</tt>); otherwise
another user's epoch, sitting in a shared log, reads as this issuer
publishing two checkpoints for one epoch.</t>
        <t>Anchoring and withholding are different claims and need different
evidence. Establishing that a checkpoint was logged needs only the
statement hash. Establishing that an issuer withheld one needs to
know whose statement it is, which an inclusion receipt carrying no
statement body cannot say. Such a receipt <bcp14>MUST NOT</bcp14> be used to report
a withheld checkpoint, and <bcp14>MUST NOT</bcp14> be silently discarded either: a
real withholding must not be buried by removing the body
(<tt>MUST-T11-17</tt>).</t>
      </section>
      <section anchor="redaction">
        <name>Checkpoint claims</name>
        <t>An epoch checkpoint <bcp14>MUST</bcp14> be COSE_Sign1-signed with the header profile
in <xref target="CEDULON-CORE"/> (COSE Profile) and <bcp14>MUST</bcp14> bind all of the following
(<tt>MUST-T11-1</tt>):</t>
        <t>epoch, <tt>startMs</tt>, <tt>endMs</tt>, <tt>receiptCount</tt>, <tt>chainHeadHash</tt>,
<tt>totals</tt>, and <tt>prevCheckpointHash</tt>.</t>
        <t>The checkpoint window is half-open <tt>[startMs, endMs)</tt>
(<tt>MUST-T11-7</tt>). <tt>receiptCount</tt> <bcp14>MUST</bcp14> equal the number of receipts
(settled and aborted) whose <tt>timestampMs</tt> falls in that window.
<tt>chainHeadHash</tt> <bcp14>MUST</bcp14> equal <tt>receiptHash</tt> of the last receipt in that
window - the last link, in issuer order (the <tt>prevReceiptHash</tt> chain,
as step 6 of <xref target="CEDULON-CORE"/> defines it), of the chain
inside the window, not the last one presented or the latest
<tt>timestampMs</tt> - or null if the window is empty (<tt>MUST-T11-2</tt>). Where <tt>totals</tt>
is present it <bcp14>MUST</bcp14> sum only receipts with <tt>outcome</tt> = <tt>settled</tt>; the
one permitted absence is the signed redaction below.</t>
        <t>An issuer that publishes a checkpoint without its totals <bcp14>MUST</bcp14> encode
<tt>totals</tt> as null in the signed payload (<tt>MUST-T11-12</tt>). An empty map
is an honest zero for an empty window and is not a redaction. Because
the redaction is inside the signature, it cannot be added to, or
removed from, a checkpoint after signing.</t>
        <t>A verifier <bcp14>MUST NOT</bcp14> accept a redaction asserted anywhere but the
signed payload (<tt>MUST-T11-13</tt>). A presentation-layer flag alongside
a checkpoint is chosen by whoever presents it, which is the party
under audit; honouring such a flag would let that party switch off
the totals comparison for a checkpoint whose signed totals are wrong.
The structural claims (epoch, <tt>startMs</tt>, <tt>endMs</tt>, <tt>receiptCount</tt>,
<tt>chainHeadHash</tt>, <tt>prevCheckpointHash</tt>) <bcp14>MUST NOT</bcp14> be redacted: a
checkpoint missing any of them does not decode, and a verifier <bcp14>MUST</bcp14>
treat it as a failed checkpoint rather than as a redacted one.</t>
      </section>
      <section anchor="genesis">
        <name>Genesis and continuity</name>
        <t>The first checkpoint in a presented chain is the genesis checkpoint
of that chain. Its <tt>prevCheckpointHash</tt> <bcp14>MUST</bcp14> be null. Epoch numbers
<bcp14>MUST</bcp14> be consecutive integers. Adjacent windows <bcp14>MUST</bcp14> satisfy
<tt>next.startMs = prev.endMs</tt> (<tt>MUST-T11-8</tt>).</t>
        <t>A later checkpoint that omits a prefix of earlier epochs (prefix
deletion) is detectable only if an external witness (transparency
log) has recorded the missing prefix (<tt>MUST-T11-9</tt>). Without that
witness, T11 guarantees about suppression are <strong>conditional</strong>.</t>
        <t>A verifier that
holds witness receipts for the period under audit compares what
the witness recorded against what the chain presented, and reports
the difference under its own name (<xref target="witness"/>). A witness that holds
a checkpoint the presented chain omits is not the same condition as
a chain that leaves a gap in its own coverage, and the two <bcp14>MUST NOT</bcp14>
be reported under one identifier (<tt>MUST-T11-11</tt>). The first says
evidence is being withheld; the second says the evidence shown is
incomplete. An operator who cannot tell them apart cannot tell an
incomplete record from a concealed one.</t>
      </section>
      <section anchor="witness">
        <name>The transparency witness</name>
        <t>A checkpoint registered with a Transparency Service <xref target="RFC9943"/> is a
Signed Statement whose payload is the checkpoint COSE object and
whose content type is <tt>application/cedulon-checkpoint+cbor</tt>
(<xref target="anchoring"/>). What comes back, and what it proves, is stated as
two named tiers.</t>
        <t><strong>Tier 1 - the witness receipt.</strong> The witness returns a co-signature
over the statement hash of what it recorded: a COSE_Sign1 whose
payload binds the statement hash, the entry index, and the witness's
tree head. Verifying it establishes exactly one sentence - "the
witness signed for this hash" - and nothing more; in particular it
does not establish membership in an append-only log. The receipt is
a signature over a statement rather than a proof of log membership.
The <xref target="RFC9942"/> citation applies in tier 2, where its mechanics are
actually performed.</t>
        <t>On the wire the witness receipt is a COSE_Sign1 under <xref target="CEDULON-CORE"/> (COSE Profile),
signed by the witness key, with content type
<tt>application/cedulon-inclusion+cbor</tt> (<xref target="iana-inclusion"/>). Its payload
is a deterministic CBOR map carrying three entries and is not a CWT
claim set: label <tt>1</tt> is the statement hash, label <tt>2</tt> the entry index,
label <tt>3</tt> the tree head. The two hashes are text strings holding the
lowercase hexadecimal of a 32-octet SHA-256, the statement hash taken
over the octets of the statement the witness recorded; the entry index
is an unsigned integer. The hash strings are compared as issued and are
not passed through the hash-claim grammar the claim sets use; the
revision that moves them to byte strings will close that difference.
Entries under other labels are not defined, and a verifier of this
revision does not refuse them. The map carries no statement body: a
receipt that travels with the body carries it beside the COSE object,
not inside it (<xref target="witness-root"/>, <tt>MUST-T11-17</tt>). A receipt whose
content type is another value, or whose payload lacks one of the three
entries or carries one of another type, does not verify: the content
type is the check <xref target="CEDULON-CORE"/> (COSE Profile) makes on every object of this
profile, and the payload map is the one this paragraph states.</t>
        <t>A verifier <bcp14>MAY</bcp14> be given witness receipts for the period under audit.
It is a distinct input from the presented checkpoint chain, and
supplying it is optional: a verifier given none performs the same
steps, and reports the same findings, that it would if this input did
not exist (<tt>MUST-T11-10</tt>). Supplying an empty set is not the same as
supplying none. An empty set says a witness is configured and
recorded nothing, which is itself reportable; absence says no witness
was consulted.</t>
        <t>A receipt binds a statement hash, not a statement. The body is not
carried by the receipt and a verifier will often not hold it. Two
levels of checking follow from that, and they are not the same
(<tt>MUST-T11-10</tt>).</t>
        <t>Every receipt <bcp14>MUST</bcp14> have its signature verified before it counts for
anything. That is what establishes the hash as one the service signed
for, and it is all that comparing recorded hashes against presented
ones requires: the verifier computes the statement hash of each
presented checkpoint itself.</t>
        <t>A receipt accompanied by the statement body carries more, and <bcp14>MUST</bcp14> be
checked further before that body is relied on. The body's statement
hash <bcp14>MUST</bcp14> equal the hash the receipt binds, and the body <bcp14>MUST</bcp14> itself
verify as a checkpoint. A body that fails either check proves nothing
and <bcp14>MUST</bcp14> be ignored rather than counted, while the receipt it came
with remains usable for the hash comparison. Equivocation is the case
that needs a body, because it compares claims rather than hashes.</t>
        <t><strong>Tier 2 - log membership.</strong> A verifier <bcp14>MAY</bcp14> additionally be given,
for one recorded statement, the registered Signed Statement bytes
(the candidate entry) and an inclusion proof. When both are present,
the verifier <bcp14>MUST</bcp14> perform the verification of <xref target="RFC9942"/> Section
5.2.1 over them: hash the candidate entry bytes to obtain the leaf,
apply the proof to reproduce a root, and accept only when the leaf
hash, the proof's leaf index, and the reproduced root are all equal
to the statement hash, entry index, and tree head of one witness
receipt that verifies under the pinned witness key (<tt>MUST-T11-18</tt>).
Reproducing a root is deliberately not sufficient on its own: the
proof format below carries no domain separation between leaves and
interior nodes, and the exact match against a witness-signed receipt
is what closes the ambiguities that follow from that. A pair that
fails this check, or a candidate entry presented without a proof,
<bcp14>MUST</bcp14> be reported as a failing finding; the identifier
<tt>witness-inclusion-invalid</tt> names it.</t>
        <t>The inclusion proof is an audit path: the leaf index, and the sibling
hashes from the leaf's level up to the root, lowest level first. The
tree is built over statement hashes as leaves; an interior node is
the SHA-256 of the concatenation of its two children's 32 raw bytes;
a level with an odd count pairs its last node with itself, so the
path needs no separate leaf count.</t>
        <t>Where witness receipts are supplied and this pair is not, tier 2 was
not exercised, and the report <bcp14>MUST</bcp14> say so rather than letting the
tier pass silently (<tt>MUST-T11-19</tt>); the identifier
<tt>witness-inclusion-not-exercised</tt> names it, as a warning - the
witness attested the statement hash, and log membership was not
proven. A pair that verifies is silent, like every other passing
check in the algorithm.</t>
        <t>What tier 1 establishes, and what it does not, is worth stating
plainly. It establishes that the service signed for that statement.
Whether the statement is a member of an append-only log is tier 2's
question, answered only where tier 2's inputs were supplied and
verified; whether the log has ever equivocated remains a property of
the service and its own proofs. A verifier that treats a tier-1
receipt alone as proof of log membership is claiming more than the
receipt carries.</t>
      </section>
      <section anchor="verification">
        <name>Verification algorithm</name>
        <t>A verifier <bcp14>MUST</bcp14> perform all of these steps and <bcp14>MUST</bcp14> report every
finding they produce (<tt>MUST-T11-2</tt>). They are numbered
for reference, not to require an evaluation order: no step
short-circuits another, and an implementation may evaluate them in any
order that produces the same set of findings.</t>
        <t>The data dependencies are named, because "any order" read naively
would break them. Step 5 decides which witness receipts, and which
statement bodies, survive checking; steps 4 and 6 consume what
survives. Step 1 decides which checkpoints verified, and step 4 compares
only those together with what step 5 admitted. An implementation
that ran a consumer against an unchecked producer would not produce
the same set of findings, so those orders are not among the
permitted ones.</t>
        <t>These steps consume two products of <xref target="CEDULON-CORE"/> (Verification
algorithm): the working set that the issuer-pin step decides, and
the <tt>ref</tt> index that step 7 of <xref target="CEDULON-CORE"/> builds. The chain walk that
defines issuer order is step 6 of <xref target="CEDULON-CORE"/>. A fail-severity
finding these steps produce is a finding step 11 of <xref target="CEDULON-CORE"/>
treats as failing the audit (<tt>MUST-T10-4</tt>).</t>
        <t>When a step names an identifier in backticks, that identifier
<bcp14>SHOULD</bcp14> be used for the condition in diagnostic output. The
normative requirement is the behaviour: report the condition,
identified by the <tt>ref</tt> or other handle given in the step. The
identifiers are not an interoperability surface.</t>
        <ol spacing="normal" type="1"><li>
            <t>Decode each checkpoint. Reject a failed signature, and reject a
<tt>kid</tt> that does not match the key obtained for the checkpoint
issuer, on the same terms as a receipt (<tt>MUST-T4-8</tt>). Require
<tt>receiptCount</tt>, <tt>chainHeadHash</tt>, and <tt>totals</tt> to match the
receipts of the working set in <tt>[startMs, endMs)</tt> as defined above
(<tt>MUST-T11-2</tt>); a receipt step 4 of <xref target="CEDULON-CORE"/> rejected is not among them,
or a forged receipt could satisfy a checkpoint count. The identifier <tt>checkpoint-total-mismatch</tt>
              <bcp14>SHOULD</bcp14> be used for a failed signature, a wrong <tt>receiptCount</tt>,
or totals that disagree, and <tt>checkpoint-head-mismatch</tt> for a
<tt>chainHeadHash</tt> that is not the last link, in issuer order
(step 6 of <xref target="CEDULON-CORE"/>), of the chain inside <tt>[startMs, endMs)</tt> - "last
receipt" binds to the chain, not to presentation or to
<tt>timestampMs</tt>. If the
signed <tt>totals</tt> is null, the verifier
cannot perform the totals comparison for that checkpoint. It
<bcp14>MUST</bcp14> report that the comparison was skipped and <bcp14>MUST</bcp14> treat the
completeness guarantee as conditional; the absence of a
comparison is not a passed comparison (<tt>MUST-T11-12</tt>). The
identifier <tt>checkpoint-totals-redacted</tt> <bcp14>SHOULD</bcp14> be used for this
condition. <tt>receiptCount</tt> and <tt>chainHeadHash</tt> <bcp14>MUST</bcp14> still be
checked. A checkpoint that fails verification <bcp14>MUST NOT</bcp14> be
treated as redacted, whatever it claims about its own totals.</t>
          </li>
          <li>
            <t>Every chained receipt <bcp14>MUST</bcp14> fall in exactly one checkpoint
 window. A gap or double count <bcp14>MUST</bcp14> be reported as a window
 coverage failure (<tt>MUST-T11-7</tt>, <tt>MUST-T11-8</tt>). The identifier
 <tt>window-coverage</tt> <bcp14>SHOULD</bcp14> be used for this condition. The check
 runs against the presented checkpoint windows and it is
 fail-closed: a receipt that falls under none of them is this
 failure - including every receipt when no checkpoint was
 presented, and receipts after the last closed checkpoint's
 <tt>endMs</tt>. The text names that last state an <strong>open epoch</strong>, and
 it is auditable only when the checkpoint that closes it is
 issued; the name explains why the finding fired, it does not
 soften it. Nothing about an absent checkpoint is silent:
 uncovered evidence surfaces as a finding rather than as a gap
 in the report.</t>
          </li>
          <li>
            <t>Walk checkpoints in epoch order. <tt>prevCheckpointHash</tt> <bcp14>MUST</bcp14>
 equal the SHA-256 of the previous checkpoint COSE bytes, or null
 for genesis (<tt>MUST-T11-4</tt>). The identifier
 <tt>checkpoint-total-mismatch</tt> <bcp14>SHOULD</bcp14> be used for a broken chain,
 which is the fourth condition its table row names.</t>
          </li>
          <li>
            <t>If two successfully verified checkpoints share an epoch number
 and have different hashes, the verifier <bcp14>MUST</bcp14> report
 equivocation (<tt>MUST-T11-3</tt>). The identifier <tt>equivocation</tt>
              <bcp14>SHOULD</bcp14> be used for this condition. The checkpoints compared
 here are those presented <strong>together with</strong> any carried by
 verified witness receipts (step 5). A presented chain
 that satisfies <tt>MUST-T11-8</tt> (step 2) cannot raise this finding on
 its own, because its epochs are consecutive and no two of its
 members share an epoch. A copy recorded by a witness
 is where the second one is found.</t>
          </li>
          <li>
            <t>If witness receipts were supplied, verify them against the
 out-of-band witness key (<xref target="witness-root"/>); receipts that
 cannot be checked that way are not evidence in either direction
 and the verifier reports that it left them out (<tt>MUST-T11-15</tt>);
 the identifier <tt>unauthenticated-witness</tt> <bcp14>SHOULD</bcp14> be used for this
 condition.
 Discard any whose signature fails (<tt>MUST-T11-10</tt>). A surviving
 receipt whose statement body verifies against the issuer root is
 a statement that issuer published; one that does not is another
 party's, and is not this issuer equivocating (<tt>MUST-T11-16</tt>).
 The survivors are the recorded statement hashes used in step 6. Where a receipt also carries
 the statement body, discard that body unless its statement hash
 equals the one the receipt binds and it verifies as a
 checkpoint; the surviving bodies are what step 4 compares.
 Discarding a body does not discard its receipt.
 This is tier 1 of <xref target="witness"/>. Where the tier-2 pair - the
 registered Signed Statement bytes and an inclusion proof - was
 also supplied, verify it as <xref target="witness"/> states: apply the proof
 to the candidate entry's hash and accept only on an exact match
 with a witness-signed receipt (<tt>MUST-T11-18</tt>); a pair that fails,
 or a candidate without a proof, is <tt>witness-inclusion-invalid</tt>
 and the audit <bcp14>MUST</bcp14> fail. Where witness receipts were supplied
 and no tier-2 pair was, report <tt>witness-inclusion-not-exercised</tt>
 as a warning (<tt>MUST-T11-19</tt>): the witness attested the statement
 hash, and log membership was not proven.</t>
          </li>
          <li>
            <t>Compare the surviving witness records against the presented
 chain (<tt>MUST-T11-11</tt>). For each presented checkpoint with no
 surviving record, report that it is not anchored; the
 identifier <tt>checkpoint-not-anchored</tt> <bcp14>SHOULD</bcp14> be used. This is a
 warning: a witness may have been configured after the
 checkpoint was issued, and an operator's own gap is not
 evidence of concealment. For each surviving record whose
 statement is absent from the presented chain, report that a
 recorded checkpoint was withheld; the identifier
 <tt>checkpoint-withheld</tt> <bcp14>SHOULD</bcp14> be used. This is a finding and the
 audit <bcp14>MUST</bcp14> fail. A record that carries no statement body cannot
 say whose statement it binds, so it <bcp14>MUST NOT</bcp14> produce this
 finding; it is reported as an entry that could not be attributed
 and makes the guarantee conditional, because a real withholding
 must not be buried by removing the body (<tt>MUST-T11-17</tt>). Such a
 record still establishes anchoring in the first half of this
 step: proving that a checkpoint was logged needs only its hash. The verifier <bcp14>MUST NOT</bcp14> report a withheld
 checkpoint as a window coverage failure (<tt>MUST-T11-11</tt>).</t>
          </li>
        </ol>
      </section>
      <section anchor="finding-codes">
        <name>Finding codes</name>
        <t>The identifiers below are for diagnostic output. They are not an
interoperability surface. The codes the core algorithm can produce
are listed in <xref target="CEDULON-CORE"/> (Finding codes). A condition that
makes the audit fail is a finding. A condition that only makes the
completeness guarantee conditional is a warning. Warnings <bcp14>MUST</bcp14> still
appear in operator-facing output (<tt>MUST-T10-14</tt>).</t>
        <table>
          <thead>
            <tr>
              <th align="left">Code</th>
              <th align="left">Effect</th>
              <th align="left">Meaning</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">checkpoint-total-mismatch</td>
              <td align="left">audit fails</td>
              <td align="left">Totals, count, signature, or checkpoint chain failed. The signature branch is reached where no issuer pin has already excluded the checkpoint: under a pin a checkpoint that does not verify is <tt>issuer-key-mismatch</tt> and never reaches the totals comparison</td>
            </tr>
            <tr>
              <td align="left">checkpoint-head-mismatch</td>
              <td align="left">audit fails</td>
              <td align="left">
                <tt>chainHeadHash</tt> is not the last link, in issuer order, of the chain inside the window, or the expected head could not be computed at all because the last receipt on the chain refused canonical encoding; the refusal is named and is not a signature verdict</td>
            </tr>
            <tr>
              <td align="left">equivocation</td>
              <td align="left">audit fails</td>
              <td align="left">Two distinct hashes for one epoch</td>
            </tr>
            <tr>
              <td align="left">window-coverage</td>
              <td align="left">audit fails</td>
              <td align="left">Gap, overlap, or non-adjacent / non-consecutive windows</td>
            </tr>
            <tr>
              <td align="left">unauthenticated-witness</td>
              <td align="left">conditional</td>
              <td align="left">No verifier-supplied witness key; inclusion receipts were left out of the comparison</td>
            </tr>
            <tr>
              <td align="left">witness-entry-unattributable</td>
              <td align="left">conditional</td>
              <td align="left">The witness holds a statement this chain does not present, carrying no body to say whose it is</td>
            </tr>
            <tr>
              <td align="left">checkpoint-withheld</td>
              <td align="left">audit fails</td>
              <td align="left">A verified witness receipt binds a checkpoint the presented chain does not contain</td>
            </tr>
            <tr>
              <td align="left">checkpoint-not-anchored</td>
              <td align="left">guarantee conditional</td>
              <td align="left">A witness was supplied and holds no verified receipt for this checkpoint</td>
            </tr>
            <tr>
              <td align="left">checkpoint-totals-redacted</td>
              <td align="left">guarantee conditional</td>
              <td align="left">The checkpoint was signed with <tt>totals</tt> null, so the totals comparison could not be made</td>
            </tr>
            <tr>
              <td align="left">witness-inclusion-invalid</td>
              <td align="left">audit fails</td>
              <td align="left">The tier-2 candidate bytes and inclusion proof do not reproduce a witness-signed tree head, or a candidate was supplied without a proof (<tt>MUST-T11-18</tt>)</td>
            </tr>
            <tr>
              <td align="left">witness-inclusion-not-exercised</td>
              <td align="left">conditional</td>
              <td align="left">Witness receipts were supplied and no tier-2 pair was, so log membership was not proven (<tt>MUST-T11-19</tt>). The code says nothing about whether any of those receipts verified: it is reported on presentation, and an unpinned or unverifiable inclusion receipt reaches it alongside <tt>unauthenticated-witness</tt></td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
    <section anchor="anchoring">
      <name>SCITT Anchoring</name>
      <t>A Receipt Issuer or relying party <bcp14>MAY</bcp14> construct a SCITT Signed
Statement whose payload is either the Spend Receipt COSE object or a
privacy profile (<xref target="CEDULON-CORE"/> (Privacy Considerations)) and register it with a Transparency
Service <xref target="RFC9943"/>. The service returns a COSE receipt
<xref target="RFC9942"/>. Embedding that receipt yields a Transparent Statement.
Cedulon does not define a new transparency algorithm.</t>
      <t>An epoch checkpoint <bcp14>MUST</bcp14> be registrable on the same terms
(<tt>MUST-T11-14</tt>), as <tt>SHOULD-T11-5</tt> asks. Its Signed Statement carries
the checkpoint COSE_Sign1 object as the payload and
<tt>application/cedulon-checkpoint+cbor</tt> as the content type, which is
among the media types <xref target="iana"/> asks to have registered and which,
until then, is a placeholder like the rest. Nothing else about
registration differs from a receipt.</t>
      <section anchor="security">
        <name>T11: Checkpoint suppression or rollback</name>
        <t><bcp14>MUST</bcp14>-T11-1 (the checkpoint label set) and <bcp14>MUST</bcp14>-T11-12 (totals
conditionality) are defined in the core document <xref target="CEDULON-CORE"/>.
The remaining T11 identities are defined here.</t>
        <table>
          <thead>
            <tr>
              <th align="left">ID</th>
              <th align="left">Requirement</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-2</td>
              <td align="left">Verifiers <bcp14>MUST</bcp14> reject a checkpoint whose signature fails, whose totals do not match settled receipts in the declared window, whose <tt>receiptCount</tt> is wrong, or whose <tt>chainHeadHash</tt> is not the hash of the last in-window receipt in issuer order (the <tt>prevReceiptHash</tt> chain). Where the signed totals are null, <bcp14>MUST</bcp14>-T11-12 governs instead: there is no total to disagree with, the comparison is reported as skipped, and the count and chain-head checks still apply.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-3</td>
              <td align="left">Two verified checkpoints for the same epoch with different hashes <bcp14>MUST</bcp14> be reported as equivocation. The checkpoints compared are those presented together with those carried by verified witness receipts; a presented chain that satisfies <bcp14>MUST</bcp14>-T11-8 cannot raise it on its own, because its epochs are consecutive.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-4</td>
              <td align="left">A broken checkpoint hash chain <bcp14>MUST</bcp14> fail verification.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>SHOULD</bcp14>-T11-5</td>
              <td align="left">Checkpoints <bcp14>SHOULD</bcp14> be registered with a Transparency Service when one is configured.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MAY</bcp14>-T11-6</td>
              <td align="left">A test deployment <bcp14>MAY</bcp14> use an in-process append-only log as the witness.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-7</td>
              <td align="left">Checkpoint windows <bcp14>MUST</bcp14> be half-open <tt>[startMs, endMs)</tt>. Every chained receipt <bcp14>MUST</bcp14> fall in exactly one window.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-8</td>
              <td align="left">Presented checkpoint epochs <bcp14>MUST</bcp14> be consecutive and adjacent windows <bcp14>MUST</bcp14> meet at <tt>endMs = next.startMs</tt>.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-9</td>
              <td align="left">Prefix-deletion and suppression claims that go beyond the presented chain are conditional on an external transparency witness. A report <bcp14>MUST NOT</bcp14> present a completeness guarantee as settling suppression when no witness was consulted.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-10</td>
              <td align="left">Witness receipts are an optional, separate input. A verifier given none <bcp14>MUST</bcp14> behave as it did without this input. A receipt <bcp14>MUST</bcp14> have its signature verified before it counts for anything. Where a receipt also carries the statement body, that body <bcp14>MUST NOT</bcp14> be relied on unless its statement hash equals the one the receipt binds and it verifies as a checkpoint; a discarded body does not discard its receipt.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-11</td>
              <td align="left">A verified receipt binding a checkpoint absent from the presented chain <bcp14>MUST</bcp14> be reported as a withheld checkpoint, and <bcp14>MUST NOT</bcp14> be reported as a window coverage failure. A presented checkpoint with no verified receipt, where a witness was supplied, <bcp14>MUST</bcp14> be reported and makes the guarantee conditional.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-13</td>
              <td align="left">A redaction asserted outside the signed payload <bcp14>MUST NOT</bcp14> be honoured, and structural claims <bcp14>MUST NOT</bcp14> be redacted. A checkpoint that fails verification <bcp14>MUST NOT</bcp14> be treated as redacted.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-14</td>
              <td align="left">An epoch checkpoint <bcp14>MUST</bcp14> be registrable as a Signed Statement carrying the checkpoint COSE object with content type <tt>application/cedulon-checkpoint+cbor</tt>.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-15</td>
              <td align="left">A verifier <bcp14>MUST</bcp14> obtain the transparency service public key out of band and <bcp14>MUST</bcp14> verify inclusion receipts against it. Receipts that cannot be checked that way <bcp14>MUST NOT</bcp14> be used as evidence in either direction, and the verifier <bcp14>SHOULD</bcp14> report that they were left out.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-16</td>
              <td align="left">A statement held by a pinned log <bcp14>MUST</bcp14> additionally verify against the issuer root before it counts as something that issuer published, so that another user's epoch in a shared log is not read as equivocation by this issuer.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-17</td>
              <td align="left">An inclusion receipt carrying no statement body <bcp14>MUST NOT</bcp14> be used to report a withheld checkpoint, because it cannot say whose statement it binds. It <bcp14>MUST NOT</bcp14> be discarded silently either: a real withholding must not be buried by removing the body.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-18</td>
              <td align="left">Where candidate Signed Statement bytes and an inclusion proof are both supplied, a verifier <bcp14>MUST</bcp14> verify log membership by the mechanics of RFC 9942 Section 5.2.1 and <bcp14>MUST</bcp14> accept only when the leaf hash, leaf index, and reproduced root exactly match a witness receipt that verifies under the pinned witness key. Root reproduction alone is not acceptance. A pair that fails, or a candidate supplied without a proof, <bcp14>MUST</bcp14> be reported as a failing finding.</td>
            </tr>
            <tr>
              <td align="left">
                <bcp14>MUST</bcp14>-T11-19</td>
              <td align="left">Where witness receipts are supplied and the tier-2 pair is not, the report <bcp14>MUST</bcp14> state that log membership was not exercised rather than passing the tier silently.</td>
            </tr>
          </tbody>
        </table>
        <dl>
          <dt>Issuer self-attestation:</dt>
          <dd>
            <t>A Receipt Issuer that also produces the only copy of the extract
can omit settlements. Completeness holds only against an
extract the verifier obtained from the rail or from a rail
signature.</t>
          </dd>
          <dt>Key rotation and revocation:</dt>
          <dd>
            <t><tt>kid</tt> identifies the verification key. This -00 does not specify
a revocation list. Verifiers <bcp14>MUST</bcp14> pin the issuer keys they
accept and <bcp14>MUST</bcp14> stop accepting a <tt>kid</tt> after an authenticated
revocation signal.</t>
          </dd>
          <dt>Timestamp trust:</dt>
          <dd>
            <t><tt>timestampMs</tt> is issuer-asserted. Window assignment uses that
field. A lying issuer can slide a receipt between windows.
External timestamping of receipts is out of scope for this revision; the
checkpoint witness covers checkpoints, not receipt
timestamps.</t>
          </dd>
          <dt>Collusion:</dt>
          <dd>
            <t>If the rail operator and the issuer collude, they can publish a
matching extract and receipt set that hides a real-world
settlement. Cedulon does not detect extract-external agreement.</t>
          </dd>
          <dt>Reversal, refund, and partial settlement:</dt>
          <dd>
            <t>State machines for reversal, refund, and partial settlement are
out of scope for this revision.</t>
          </dd>
        </dl>
      </section>
    </section>
    <section anchor="iana">
      <name>IANA Considerations</name>
      <t>This document requests the registration of two media types in the
"Media Types" registry <xref target="RFC6838"/>, in the standards tree.
Registration in the standards tree requires IETF approval; the
provisional registration procedure of <xref target="RFC6838"/> Section 5.2.1 is
available to an Internet-Draft in the meantime.
The names are the same names the core document <xref target="CEDULON-CORE"/>
uses for these objects.</t>
      <section anchor="iana-checkpoint">
        <name>application/cedulon-checkpoint+cbor</name>
        <dl>
          <dt>Type name:</dt>
          <dd>
            <t>application</t>
          </dd>
          <dt>Subtype name:</dt>
          <dd>
            <t>cedulon-checkpoint+cbor</t>
          </dd>
          <dt>Encoding considerations:</dt>
          <dd>
            <t>binary. A COSE_Sign1 structure <xref target="RFC9052"/> in deterministic CBOR
<xref target="RFC8949"/>, untagged, as
profiled in <xref target="redaction"/> and <xref target="CEDULON-CORE"/> (COSE Profile); the same object is
the payload of the Signed Statement <xref target="anchoring"/> registers.</t>
          </dd>
          <dt>Security considerations:</dt>
          <dd>
            <t>See <xref target="security"/> of this document. A checkpoint carries the
suppression guarantee for its window (<xref target="witness"/>). Its evidentiary
weight depends on a pinned issuer key (<xref target="CEDULON-CORE"/> (The issuer root)) and never on
the key it carries; where no such key is held the signature is still
checked against the carried key, which establishes internal
consistency only.</t>
          </dd>
          <dt>Interoperability considerations:</dt>
          <dd>
            <t>As for application/cedulon-receipt+cbor; the labels are those of
the checkpoint table in <xref target="CEDULON-CORE"/> (Claim labels), and <tt>totals</tt> signed as
null is a redaction, not a malformed claim.</t>
          </dd>
          <dt>Published specification:</dt>
          <dd>
            <t>This document, <xref target="redaction"/>.</t>
          </dd>
          <dt>Applications that use this media type:</dt>
          <dd>
            <t>As for application/cedulon-receipt+cbor, and transparency witnesses
that co-sign or register checkpoints.</t>
          </dd>
          <dt>Required parameters, optional parameters, fragment identifier considerations, additional information, contact, intended usage, restrictions on usage, author, change controller:</dt>
          <dd>
            <t>As for application/cedulon-receipt+cbor.</t>
          </dd>
        </dl>
      </section>
      <section anchor="iana-inclusion">
        <name>application/cedulon-inclusion+cbor</name>
        <dl>
          <dt>Type name:</dt>
          <dd>
            <t>application</t>
          </dd>
          <dt>Subtype name:</dt>
          <dd>
            <t>cedulon-inclusion+cbor</t>
          </dd>
          <dt>Encoding considerations:</dt>
          <dd>
            <t>binary. A COSE_Sign1 structure in deterministic CBOR, untagged, as
profiled in <xref target="CEDULON-CORE"/> (COSE Profile), whose payload is the three-entry map
<xref target="witness"/> states: statement hash, entry index, tree head.</t>
          </dd>
          <dt>Security considerations:</dt>
          <dd>
            <t>See <xref target="security"/> of this document. A witness receipt verified under
the key it carries establishes that some log is internally
consistent and nothing about which log; it carries evidentiary
weight only under a witness key held out of band (<xref target="witness-root"/>,
<tt>MUST-T11-15</tt>). It attests a statement hash, not membership in an
append-only log; membership is tier 2 of <xref target="witness"/> and needs the
candidate statement and an inclusion proof beside the receipt.</t>
          </dd>
          <dt>Interoperability considerations:</dt>
          <dd>
            <t>As for application/cedulon-receipt+cbor, except that the payload is
not a CWT claim set: its three labels are local to the map and are
stated, with their types, in <xref target="witness"/>.</t>
          </dd>
          <dt>Published specification:</dt>
          <dd>
            <t>This document, <xref target="witness"/>.</t>
          </dd>
          <dt>Applications that use this media type:</dt>
          <dd>
            <t>Transparency witnesses that co-sign the statements they record, and
verifiers that hold witness receipts for a period under audit.</t>
          </dd>
          <dt>Required parameters, optional parameters, fragment identifier considerations, additional information, contact, intended usage, restrictions on usage, author, change controller:</dt>
          <dd>
            <t>As for application/cedulon-receipt+cbor.</t>
          </dd>
        </dl>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC6838">
          <front>
            <title>Media Type Specifications and Registration Procedures</title>
            <author fullname="N. Freed" initials="N." surname="Freed"/>
            <author fullname="J. Klensin" initials="J." surname="Klensin"/>
            <author fullname="T. Hansen" initials="T." surname="Hansen"/>
            <date month="January" year="2013"/>
            <abstract>
              <t>This document defines procedures for the specification and registration of media types for use in HTTP, MIME, and other Internet protocols. This memo documents an Internet Best Current Practice.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="13"/>
          <seriesInfo name="RFC" value="6838"/>
          <seriesInfo name="DOI" value="10.17487/RFC6838"/>
        </reference>
        <reference anchor="RFC8949">
          <front>
            <title>Concise Binary Object Representation (CBOR)</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="December" year="2020"/>
            <abstract>
              <t>The Concise Binary Object Representation (CBOR) is a data format whose design goals include the possibility of extremely small code size, fairly small message size, and extensibility without the need for version negotiation. These design goals make it different from earlier binary serializations such as ASN.1 and MessagePack.</t>
              <t>This document obsoletes RFC 7049, providing editorial improvements, new details, and errata fixes while keeping full compatibility with the interchange format of RFC 7049. It does not create a new version of the format.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="94"/>
          <seriesInfo name="RFC" value="8949"/>
          <seriesInfo name="DOI" value="10.17487/RFC8949"/>
        </reference>
        <reference anchor="RFC9052">
          <front>
            <title>CBOR Object Signing and Encryption (COSE): Structures and Process</title>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <date month="August" year="2022"/>
            <abstract>
              <t>Concise Binary Object Representation (CBOR) is a data format designed for small code size and small message size. There is a need to be able to define basic security services for this data format. This document defines the CBOR Object Signing and Encryption (COSE) protocol. This specification describes how to create and process signatures, message authentication codes, and encryption using CBOR for serialization. This specification additionally describes how to represent cryptographic keys using CBOR.</t>
              <t>This document, along with RFC 9053, obsoletes RFC 8152.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="96"/>
          <seriesInfo name="RFC" value="9052"/>
          <seriesInfo name="DOI" value="10.17487/RFC9052"/>
        </reference>
        <reference anchor="RFC9942">
          <front>
            <title>CBOR Object Signing and Encryption (COSE) Receipts</title>
            <author fullname="O. Steele" initials="O." surname="Steele"/>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="A. Delignat-Lavaud" initials="A." surname="Delignat-Lavaud"/>
            <author fullname="C. Fournet" initials="C." surname="Fournet"/>
            <date month="June" year="2026"/>
            <abstract>
              <t>CBOR Object Signing and Encryption (COSE) Receipts prove properties of a Verifiable Data Structure (VDS) to a verifier. VDSs and associated Proof Types enable security properties, such as minimal disclosure, transparency, and non-equivocation. Transparency helps maintain trust over time and has been applied to certificates, end-to-end encrypted messaging systems, and supply chain security. This specification enables concise transparency-oriented systems by building on Concise Binary Object Representation (CBOR) and COSE. The extensibility of the approach is demonstrated by providing CBOR encodings for Merkle inclusion and consistency proofs.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9942"/>
          <seriesInfo name="DOI" value="10.17487/RFC9942"/>
        </reference>
        <reference anchor="RFC9943">
          <front>
            <title>An Architecture for Trustworthy and Transparent Digital Supply Chains</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="A. Delignat-Lavaud" initials="A." surname="Delignat-Lavaud"/>
            <author fullname="C. Fournet" initials="C." surname="Fournet"/>
            <author fullname="Y. Deshpande" initials="Y." surname="Deshpande"/>
            <author fullname="S. Lasker" initials="S." surname="Lasker"/>
            <date month="June" year="2026"/>
            <abstract>
              <t>Traceability in supply chains is a growing security concern. While Verifiable Data Structures (VDSs) have addressed specific issues, such as equivocation over digital certificates, they lack a universal architecture for all supply chains. This document defines such an architecture for single-issuer signed statement transparency. It ensures extensibility and interoperability between different transparency services as well as compliance with various auditing procedures and regulatory requirements.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9943"/>
          <seriesInfo name="DOI" value="10.17487/RFC9943"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="CEDULON-CORE" target="https://github.com/dogrucanemek-alt/cedulon/blob/master/spec/draft-dogru-cedulon-core-00.md">
          <front>
            <title>Spend Receipts and Payment Rail Reconciliation for AI Agents</title>
            <author initials="E. C." surname="Dogru" fullname="Emek Can Dogru">
              <organization/>
            </author>
            <date year="2026"/>
          </front>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA91d63Ybx5H+30/RS/2QyQUgkZJsC0yyy1B0zI1teUUm3pyc
PUEDaIATDmaQuZDCSnqXfZZ9sq1b32YGFJXsr82JbRCY6emurutX1TXj8Vg1
WZPbqT44t8s2Lwt9fmMXt9syK5p6qi+25eJG/5I1ha1rW2tTLPV1ZYp6aypb
LHYHysznlb2b6oHb1bJcFGYDgy8rs2rGy3JdteMFXzhe+AvHz5+rpWngupPn
J1+Pn78eH3+jFvDFuqx2U50Vq1Jl22qqm6qtm5Pnz18/P1HwfDPVtV2o+7K6
XVdlu52qW7uDv5ZTpfXYzYg+h4fRn/e8IPp8dX55fa3qBpb2FwPXW3qOVfXG
VM1f/taWjQVCrExeW7XNeOimXLj/ZsXSyqh1WTWVXfGw9W7jPy/KzcYiQUzb
3JQVjQH/aFga0niizyf6DRKHvmSSXWzsrT43RfRDWa2n+o8X787+Q19f/P6n
tz+8/bdL/cPlj5fXF2/01eW7319cX9KFi7ItGiTddVsBSeg7uzFZPtV2Qrvw
r7ILE5iaKspqY5rszuLE3n13fnJ8/Fo+fnv8zUv5+PW3L751375+6S54/fzV
ifv4+mX08cVU4cZFI59fvPnDD29/Gp+/fXcxpTk51rvaWuCrd3Zhs23DTPaz
2SHJ9DuYNf5SFossz2AsYDEYVZ9d6rM10vSARgqExf+Nhwn7IHEDA/LUTLW2
zVTfNM22nj57ts6am3aO5HpGBFyYwsIgY5M3z4SWz+Z5OX+2MXVjq2f11i6e
DbJ9WVlg+MlmqcYgffgvbeZ1U5lFo9T1TVZrEJuWFo+DZKsM5M6SHAYurke6
ubHAqEEUPVMj+fBHUyyAJlmx1uUqvlWbmpleX2Xrwi71VQNrJwYl0sK9ykmz
aZdZo3Ozs9VEX8OgNW1VxVs10hVsz9i+p9njt9E28TxQYsdVWcKvbQ4LyYEZ
YHdogkDMrSlwR73yAOL45U/Umb6zFRIAJ2UavYVt1cYtVANra9gHvbSNhcfT
Dzc3Nl+CpOiqzHO7HM/N4laFxZ/SNWXb+AFpJnW73VYwJM5l3RqgamNhmjVM
sQACwNcmn/BebbLlMrdKPdGXIGPlsl3QYtU1LSiavv7wIeb4T59gnqsMJs5P
jOmoZctUSkHcN5hsbd11sPi1ARrgDcTy8JgMFeWSNkLLRkxgMga3o25zYCKz
q3VRNjfICWaOa7+/sXAv7TQssm7h47ad51l9AyMZ2pccaBrRDfgHHuzYA8bc
WKBksSzvkS0SnkVmqpm8dNNI4R1uz+j7jbmFS2Ki32V1Ns/tyFFCN/el3thl
ZnSz29paMR3K+V9hp2FbTFXtJrgJ17baZEWZl+sd7wEyBdqAWh/8+Ier64MR
/1f/9JY+v7v49z9cvrt4g5+vvj/74Qf/QckVV9+//cMPb8KncOf52x9/vPjp
Dd8M3+rkK3Xw49mfDngFB29/vr58+9PZDwfM6zGBQFrBbug5igFoCiAB7p8B
a2nrRZXN4Q+457fnP//Pfx+/BCb6J9HIwED8B+pk+AM2seCnlUW+kz+BdDtl
tltrKhzF5DnQaps1YL1GKPf1TXlfaNh7C9Q7+jNS5j+n+lfzxfb45W/kC1xw
8qWjWfIl0az/Te9mJuLAVwOP8dRMvu9QOp3v2Z+Svx3doy9/9S85SJ0eH3/7
L79RwDJPSI85fiTV9OGJ/Ema6pNSHz7IFyS1vC01kNiglhlSutosl/VEnxVA
9UXeIk8rJ9wkRbjFIruNcCkoVuRjVO8koyQadQmSBdwMcqmIP0DzwO6CWqgz
MCxFw1tu5Boc3GyRn7LijnRmrDRpN8t5Y0TNJTOvbXWXLezTmmV/QXNC7VCu
1JyeAf/QCDTeLqysr45gKV/N8Nrx9fHx+PjV7HCiLvuXs1IwBWgj5H9HGPr6
3uy04z78sa3tUgHH2rsMHKwFqAZYhM1Iby0zGBI15JQY3g1pQfeQFuMRTay/
7k0tBtEuvZbZdyc4gXiDcvYENjYQVbi3ApNciRlBE2lXtLMbJCHtAm7QTZmD
Iqoj+1qVG1iSrXb0jJsS11nDAPgIf50mIzYHSUYLhSYaByPqAJ+JPQKugN28
RzVexpqcOHpuV2iLskaRL0g2H1mLrQBPuqv44x38enZ4qksk9n0Gfq8p6DNO
tnoq3shI11nT4HCoaECzAF/RRMErsGZJjyTNxw9S8iB6Pij32CFBs4L0oHGR
eN5zwY2iXQBC0t9oYLPVChQYGqXcZBv2FwsLD/e/KMc1E33httYv3OgOX8Cc
15aHqFmZoi2OdsPUN4MDFY6IwfGAVfA4Talui/Ie9xgMVxgsQ8qP4OsMHDpT
9KWKjRs+pCijSczLpWdXUBcTfdXiAP6uruwgVzCPqsgxCisfBfmWu+oshwfB
6pdZDXNYwhgsb1MQJdjSPNmJDTh2WgR53oIWQ4aFJ27KOyaQpSmrmKu+Qb2A
Gvg8cix4Dz88Ae4xJNSfkAF6Hi9PFR52/vbq4i/ouR6Pa/ZfcVr0QNCFS2Tp
qlzBWkB/9n2wr/B2/TNfcRhoMM9Q44G5JJ/LAkvmeQkezjpZwOxwqpRw/wz2
pmp+rGfwEXw5/iC7cY5Ch3+TB/Q9TOt74KHZSM2aEm3xjKk/A+N/F2hB10zE
lYxYlPwsVPY3Jl+NS/Ac9ezP8vSRpmcfzuJ5Ip07c+FV2r+1sI24vqLdzIFU
sFqnndVXtW0gHmPFD45iBX7JofDvrMk2qCQ3W1gnBsN5zZ6NcfObqM5i4ye6
ufAPQuIcIiXPvjKYksWOwxVgvW9J+YusgW8H//4Kfyf6vYuHFo8TtV1jt/pr
fNZePzxrDkduMnQjcEwNekOzw4oTGRGL+7mgeKPPCnJiKcrgX8DhbVRKojH+
WrTAUNkqGg930W62zS7Wtie4Xb+gU6Ydfyi4Th6EGoNIWbcb1k7enhLjz8Dg
gMduZ/rXwJO8hbNTUmE0XXSQG3Ix5zWqRJwC+fAsPF7sQLZy3EYUPiE1x0hi
IOqO4pQ4KkO7TpOWDS8W5dJ6RkcrwGQo4qduzS4vTWpziAwo+USfjdkiEUBD
3sAygPb/ZauSLIVxlwhJkV0zCnFIHcpyJvq3dmFAE1L4EVaJBinsMk7HNG2F
7kXsmoCZJRUK/FEpUmrwJxrvUUoFiO+BTjgKqIoB5wtVq1ks7DaZGxAFDCnt
SbG7p42fU0gKVmc/fV4QfRxbUIQ4pshcr3IDphEC6DUuTCUzJB8RRLhA9QzC
jM6HGwNFwJki4QrwDpudaguUMQr+T5H+ZUvWuGaTQ4+7L1uwJxAmCpfgfboG
roBLytWKqC58QXF+ldUC3aRsxOaRVy3Xo5G/r0okKEEOTQVBdluBHhFj8dXj
VXBXK40Gle5hYgh5n+xymrqQG5AK9kl2ojU2ENVZ5rylRbZ3znnCBKoB40li
jD4oKM8MlWw0cGUkGseovvaMYsmdYIP5OwsykLGrA7EAuF1tBvT+8GTNP3xi
q7HKqrpJdh9ds6CxOIqXrZZbY2yUluUC94m+BA4ZIpe3xSjZEwGJ2aLUyv2G
IYtdtA0DPo1dw4/Av8u/moX1Vk2URg3cXK92albY981EdhX0GT57wjsbi8K3
5Eeckeat4uWy975BnUTLXmXvcasgGs5xN4htgH34Fwi4gX1Big6RIgwigYdn
WcmC2kZF855DMB/nfRXHUAo8x0N0Dwn6Io8JCesYRSYQTfw1afoIgVIy7kjD
zwF6qgWoiSESlIqjowiQOjpKFQ6NxxGHj26dpXDADViDrFzqSL5FOiW8TbAa
vygX5lEA7K1l4Ctme/Y2axrCeeJgbvhZuCUIPSD+qr+K4mvSaQk6REtIlRhN
vcPFvM2i+D0o5emDiIqRS2nY3Jo7MmJrCJhRCmRGC9DtlVl3sCenDxTpgy05
Q7IUtKoYXTRM9lhFH+P+BkHEsN6HIjjVuUW+cN74KU8bMb+lgwCsD3gFqyEc
wCFyZB/BAQSNARuK4aOYrMbmOWskg5o4+doU0QiyqRyIItQHTzJ5rGqu9+DK
ASVBBz3RX3aN2ETlXHGTpIj0FQMN4IdJZgBcMFRlqgs/izFwtk/UVPQg8t0Z
A8TNUnw96kO8G4FCvGlmttscYVHggmf9bNM/L8C1BXf5wwcPkBMX/kKKDxwp
2CazuGV2uJfwHkIKYJ4RDk8hGQF2yCfIz8A1GSo3pY6OrpEljsV/7Yjh5Ogo
xZ4sWDVCtBfl2HsiCvmROSOJQFGRuek4yQQLFcVDTD/l6IchTT0wEKcOLGaI
NGav3gfOl5k9rdFmcTw10X8k+IcC/QgpwaTEe7BSoCpRIEg0kWvH+gD9GLdG
seysfyiEqW8O4CKK2QWU3pSVPUWRRNbNFm2O4GWjvG0N6MzGko25yUiC0Vxu
EUcfk8YGZczC52MK1ACerproaiJiJHYXtxgoDP9HrCU8iH0Qx7snwLuLjJ0v
TXxmORDCbT9BX8oS7FLDCKB7imxB7owCQrUE2YDsYlLMLoFb3hZC9MoOsQsJ
Sby9rH4+E9KOnAs53yWD3trdiMUzlhc1KCwek2BZQX2dmcKE70lg0DsQXiNP
nUwoovGgDLKFPv/t23foxQc8o7lBpkLGyySV7N3281+uFTl3wEjNFAw7BCN6
djzzwUqHg+WCk1mPl5X89GImkKfn42tR7TiCZS+zAfuO/iXMrtYO2UD2hUjI
VgtT473vDTh32cYQNmD0i5NxCc5Zo6++PxufvPp6NCSrjbm1RZBkuqF2sWa4
dsjannaXJGFQW8jGijPFC6KnuRXgksSco4LiME7ieWBCJPUWQw8U9qps14Ka
wBBjJv66MpuN4Tn77agRTzqV/BQmakqxqBgV1Wx1MKGxa6yfyX2GmYcc1TNd
GvyBiboQBhBrSjJIm8YLYG8aI/Rlz50mAoJY+3l4HQGuVksPsxsmjOO8jC7Q
KZDGiBZLGc0PDN4dTsBDSQK38f0ZxoQ+Zoys0IhoKvEkguDeseFMwicIN1L4
C5wd92DW1l3r5aDWO5O3FsPPjlXMwTbVpHKFm0iqlJMquN7NWq5xA+IDRoFg
DOpPJRFLc1BuDt7sfhY/40webARh2s42u20SIC7YF7cI3Bx5Ds6SLANwrQH+
295ICrETTZ/9CYOKNUQTxZe4txN1KYp0iWqpWOB2bcG1Jgeo61em6U6at0If
PHfmD0Yqt+x+T2PG5HkVArighq+9T6oQiqoTHzn4q8DnqHQon8+2nQPrbCXg
OU12mS2J0+x7WETicT5HnrryU/TYCMhtzzcGlyUsBucawS14PbmgIb3O6e9V
tm4rViLKBwRiuSPsAEyezVeyPoyiTj3eJAloX5+AkDsGh23ekBkMEsEei+lp
e7YR/lsWcJJQXqJilvc2L06rR5tESqlcNbRTHGdQ5uX6vlS5Jfl3lRJIIYaA
HaOYJkobOT3lt7i7JUpdkEAk6PyNuWPfIPgkMrdlSNhoSdjAn8oUO6IzLpgy
NuwAxj6YU+Co7lmUrMvsie+lYCSeOvOvoUjBuMAPV+r31ZlGife8aCCSiOL2
txZ8lZqVhicrjtM2dshQc/C9uFGDQsY8k3CAWUhRSNjMXgqEtRs6jVEOYy7V
CuhrthUpPCEprdUxS2XzjIKdwENPowSdokl3oHI26BFbEZsGpUZj0z28ICX5
UpMipqj66VKaEKJAtctnsq7lGMPJloqWpmEjMXGZeKzEJ2gjQQZzm0yQoMwN
OeE3mJLB3QQjTuCGU5W0qoDMTfQFbO5dyZ6gNwKG8FOYLye1DK1gBFMiaFXH
8IFgc/EUmZ1CXHQCjn/Hu4aQqKPlkwynU/kj5XKEnlf9po1k7T4I7cWV6JrU
6iteEehbrPViD4szQEkajuIAwuMLWC2Gs5U3ElzLkkK8ou8jmVj46p04bLji
lLV6NTmZHGvnGm6mgb86c+Npo2sVpfBza1YjrPDgLKVELZzro2oki/gh+B7i
OzH27CtE/BgqRII0BEgBft0NCP2oS84rIy1QgZB0KEk8d9V1P7R0TjjShBLf
YgoSH0zI6hxDmhpnv+OCr1jTEg74TqZI5o9nSXBens0RJ7GwcsqZtivYmQxn
WXrwhzSZYhpyrSJnQWLPcVmi/IBSRQdFEiXNvQVaOkQJLCOVamSY8imXNtIN
FCKDu4OouK/dcusZ+xQMUUE5/U5+Mwug2czB/oI8uJKqrlGijIDJBP1jrUKO
A+kU8h9Nj7GCNnZZHAl/Rx699ZiXx6zJJLK3wiFKwMDUzK3IixF8Ag82W84I
IaEKB4aoO4LGLq9AkVvQHVPPol1exAoxVIxipLwDh9cS+4IF1+3WlUOwEGAg
h0lE+pFQOdL8jG8gItdmecPSmLKxpQIG3uJT1hDRFiO2gA+RGNBnEcsCy/EK
rwAoO0bVDlm+hPgH5vniBHTkPQv3qTIyNQbO4J7lkjU77Sr5VZx6pKfSVWxl
RroumXuBaKKeMc5hNhUK0khAeE4u9txmlGbyCDOJEsURB3Zix2okwAZVw7AD
CmFxVkc1NK4QRnD8HU4rtgG55SIRnCoNhhFoqDWIxfk1Fp18nrNgHmM/j8Bf
I2bVe1NhLo4ROA9DmQZztILPd/UVriQ1S1QWgo4l2eQiEbKgpzK3DmCz7Na6
GIjWjqtEZmXTLsrb5Ouygi3c0JZg2MloYeTQpbCji9YIeLwHMnNwhANvwdyC
VkcYpuMQCkafeoFi900TudHIFs1ND2ykaIlpwfFjF2Uj74D44mmt/tbC02Fb
RlKNZEM9IjpfchnHMbAG22E55Tzg06QqlYqnqPoL0zbOMyFdyd4MKSwwvQ3m
4lS8XvZ0GdsnFVMn5VsS7ltDOSKc3/jY2yGq/0c+2gMGUkyEfo6DLZnHGRoJ
1TsZOT1PnjB06vwBv/v6w5PYUfjUTxs7nyIUpFANEYSRweMVuSOmU6KYOTpx
jkC3xODahy6UquPQAJETRmak1qF0fj4FkwhDiDbDuospYyl2q+obePp4kVWL
ltJtjDKMvD+F6YaNy1ODBdy5sRikYfx2p7iag1PIPO0oOMagFC2zxMhiQcCQ
IdaILAnTzgTKIyA+eKYHlKXFwQ+oHA1+Bz8y3ykOr+fw3a2gRVdYKfIKM7ig
d2oJabu60skl/JYWZWUos3ULvHdnfex4Kpv1ku76msNdLJlGIy0X1/Lk486T
48I4Jxz8dCppeek9biWlagSylWsWHrIQ9yzntCyz5PIPLk5NdoU9+4rQb5lh
FVeYt4ULqWRrKgEnCEjkr9S+zRL7RFXbuA0B3DObUuxBqE3B+JK31zO6oxma
T34YI6h9SCqWMuWl7JA9CTwdRLULrlKh8aWSYyz/JzLJDjDggxfMQCpm7IA4
rQmXfTP4fHQhsPj32idG701+yw6ZLzWKa5eyh6qTUFmhuzWuUbKzJpFtTxwn
4qSr3QU06PHx0KjKabza+3JkkMjt8nri+fglYRcU+xgej80rSnRIecISMUXW
ZItbD1wFky0Fsq4O0QWcITMLty8zAyEt5QnA/QTTwF6ZP4nkdJAzSBRn2xtz
l5UtKCFffBsNO1J+Dh474G0sHcoMunqZOxDRFSTBIvnhYQkRr4rfRznXORAO
obK2WhkEstXxRL+hug8COZJY/53lLKUr94gKjRgH5J/xrNHsFt1khskdOssR
A86PqrIp/otpGR9nE+Ya6bIIqhMzMbWrJmHL5Lb5JdVPwAyJwjSDz5QtcrGi
q+gCC+Gnh3d7d1Kc4FjisqFSRZyWIPxY53BHo6TG6jSat6i9IdFjMtqQSHKq
ZTNSdGAON6Cs1iHIQpc4X7qCk7QWib1lkuOI2WfRQUUiwXiT1USAGT5jgNsH
N50rmnrlSTxLKXySVElt1hCdCNWjp2MEHR7Oj6Lt6xReSnl3Wro4WEZJhN+v
izrlkS7RMbCjY32AT4nY4cDln8swgPcw4ho2Xj+tI66gBMd25ThMXFjPgRnX
FI4SHBIvlLKHGJIZrkGTKqcgr5c099ix8sYiuhXDgvo2A3c4Oh7B5V0yVVdn
Qc5DOEpmkqNkHOU4fBx9bHerPMfnRSVdF/3Uq5i85gc/xLH12FWUzYb4lXI1
NAGZYa94WDixX94LGhxc1DkvnZ0FNGDdkizGJRJ0LCq4w5uJiAw3uLmOyI+h
CCALtf5zV3SK/j2vbqJOJprxdppjJO30FCxXptMjUb1CqkH9WbYzqg4CmizL
FtFSDsWHQRG+Rw7ccg0RLRRx/aQYO04CfusqhCKDiSPMeLSxG2nvRsW7dO1M
AQ1RtUWdHDIaBN1d3Z1PCNC95HEQ7kQ1JQkux9XeDMoVIfG4YbscDYALHzPA
Q/6ITVIgBD8WZTIXwzf3CskcPkHVtV6F8fyiAZ7y7VL7KRl+TOmz08JlX3gn
eexozI+OqHyeCgGPjtjfo4PYHPaiOxRKAD1g2mVnAegC+TjRzmJNFW72PcXn
6NOzJ+J8tFVGB5Ci2J4GqDkthdmon5Kjmuicz6kMPK3pZeCBDzyDn45cg+c1
fO0Y+yjiAbiH9wpNgdnlHHoE5UzUi4n+BV3YOBTJ3JEMMhyT/XWhfNrcZ086
CBneBT5cXHXKCXXCw0auap55Cv5wRaqRQL3cJ0L7DfWwlZ5X5S0QXc4MkBqI
S6FXJSaSYr8VwTxij6q8Zx6bqJdsqCBIqdsFULxetZi48Im9mIZ0RorC6qhi
ls+vF0tOD4bDTQxCpjYuNlCOziFpE9HoRZ9GICbRxeS7fJGOkTW4+hK6nzAe
KqThGgWvcI6Okoj06IiqpkOalu72NOoBk+yTvIrr3V3dJ5/Op5CMfDiM/2P1
KveeHDpnoDJZLSUGTg7KQoSerEiczqpdjTCX0oQKZq5Xo31mWJdGEGSos7Fk
AcvtLuSq5ruA+ovCcABZqAClulJM/IKqnahXxFc9yiQA2sgdzSR1HKl+bhfR
NuNyNZ7LGbqQQekWqYC3nRzRZJO2/5imC45CZWv/ZKbn6oR9Q/nDwKnJ7hHS
U9nqlInbIjn4PpalPOjYRPxMf77hA27Ek+EAAmfk2VXplVicCcaD0KsOXm7v
eB9leD1CHFvj+HimTCuudBg8k3kqOf04NAw1Qmw78eDFU8GnvNPvj11GGgIY
v3PEk6mBEs6LKyXylVxyJ8/q0iJEXoecfO1OLgWnATyy0sGgfgtTCo3cGUMd
svNtkVPVSVN3HhkMSlwx1EnHO38mkL5mrzpSXlJv7fZR0Ds+buIxnoCvJbzC
2UWaaDjzIWvAKbsSX6Eo0d/B+xRZ+YJ3RzAKThB+PuHcwtgL7mdT2XuS1tjY
Rjwq2oOemuAjKPHhdi61mupOQpm3rRzKSj+tpd6kk10uCz4v4fOd4ldTPfhw
wrObyz2lgMelWUgQR9L4JklidpOWVPS9PwOZqCJGvCQsyHK3GQ/rWT8CWoBo
y4DaIxcufjZRxYPEKapO7kvwygczVmx1P5O10pK1UiCc58zMHc5Pa073RA0i
PRj49844fAdbQpjXnhgDU5Ile7b+ofywke6cnHexrhzOP/VisCeiRaq6i7ta
f+JFj2VfKD2NqtowE0Ge1hxT+HGBmws2OlqDqMoOvs9uuCMYTzkMXXM5o3Pm
vV3EajI+YMFla55qXaJILSjRK8nDses/WKtIeEpMS+MME+vtzgrSQycPuM7u
wgdo6x0p17eGWLsrWWducdL2YU8trngavHiz61nUzBdcgUrLooPuDgMPMair
TmCuSqL1QkofpPLNZTHwqGfTVNm8bSIx56pWpFNAcCL4JjiMaPTSc/HsFj7u
bLzuno2XM/3RPgrAEid4Q1snidr4rBGeDfeFt8xIdjslVfAlnQ/QlnG/g+te
3IFEF4YLLQW60hJBIw/CIqRHKEn6nTATAum1FIlEUDwX5KAOQ5duOHGwiwB7
tRew51gGnyK4XhWl5KmTlEtq4Wh5Rup3sIlAMuVD9vddlEgedOAgFgskQCI6
/XuY/v5GtQdJjPiQBxQdhyE7fagjZC5qBeRU1hhIQTEQUS/O/Rxz8ucj2Iyl
1R/1BUSiYMw/6h+tIXv1UX0cj8f+H7hyb8QNd4WF1/DXdck9iAhQG8XIeJmc
4JQ+U4SfS8cx75rPK+R9Fm3Qohg4kvEGleIc54yKDmFXMee7A3cEsSgxouEp
U1chTjeYHr7TKZIn/0JShhBARbACdx65o8gGZ1TvgZw7tEqA/B6pukDro5D8
YaSeHQpuZCCpI/t+yykTqsdLNKEU8oLCbKjywGk5/2Tnt5VF9Cg+ebFE+SkL
CMpybgHgy8Tod2ZWPiyXHPxJSqGXGfIb0CqBNXqsBDG4L+Z3xWBxBxkaooOn
9kb5ndmOqO4rpw8EbY6NO538jP6MAQCHm+LYe2JQGDWWzo/6p9Jr0LEveolC
8dOhnkrkeVJgzM2YujkIXhz7mmTTxjAdsWEETnVncR15lXw8OI07qVgQd9Kz
vat2jVvRSO1yGdloNrMd3vatZroEP9uL9/i6/8+c+PXzw/Mq+EXn0bFnCA8c
1pkfo+PGlM6J69+YPEUZpuqmGKCxMMchDRhSLQ/MIMXUeBpRKxuf5+IkF9f5
DWiVRHg3BpV2xBu9QKgvSCECDcFVCDC70eWylJNWodC4E9f5Ot9e3WlC6U78
1g0D96wiiaZ6TP7LgwHc3uANaPtgDNWN0YIP8VBfRd8hIund6Hhq2vVPyyJJ
iPoooy2k/hmI2RZ8O0l4v2eUMz9ZE/qAPICVfcTWidwDNPTa+vAkHIjGkjRp
rKMvnZnB0xOkDbjZBxbro4ak9hywmXFPUfXAoW6BCik5EDd+TY53U257W2V3
ZrFzDZ0Quex6Yj/LJeclWTyu0K4PDyWRxEAKHavqn0xXAyfTxeeQH8IJbZqb
K9SOyvon+gJYZ7n0PrbbkV1mWdWGJzYBx5n4DqtRBxGsiIAbCnufHsCPy0Yf
6ozFy60kgdWpBUmOKIGnR+WyMw7x6MtXWJdxW/O53h7u5PC8TjosOp3szuW7
PjK835hge9SBfHdjfB4ynC9TvrIj7gqq+Vwy8AHOHI0TRfYRfuaL9kYK/M6M
UlLFiB3nbQ62HjU+nj/F+l32VuooB2dzDPJQtpUjLrkknKWpXRcFD/5R/4Tj
42nc4Czu4SF9abF4CsQNfQus8AJpC1vDna0iEvN55to2oVuZZP/hUrIJKlKF
MNwhd8mTAhvfa/eh1rR8yJ1ra3Hd2IyEY7DGIaRuPOkd+lFfvgG1+y4q04rC
A/g5VPPAZX8UL6h2CSwpjhpsBBTh8CP5WmyfWCB2m123Mq9fZaVLu8gN96Jg
x1c6mKUVDZiAwYKc6ITtA363O8vmPeGsGEuMGzUwe3SDssMYA+73PmKzH2/0
Gh3VgjpXNTA/QgoryzPkO5H5XeUQ6bpR12/sICJSxhLq+LnUgRoM4RzHHB/g
BtWCQhBIPNHJ7r4Qh3ww35m0C2a1RWq4m+QcLLCIY4D9acjB7GNaDcu/RkdE
9+YdTweaJXVSjSHTmOYXs/hY0WMyih06viTH1GekvVjwMT2aiYfWkkIaHifW
4zBS1IQ/QvEe2aeFyh4kGRnwUZnv2Z/oIV/TdBGhxkrsvORm7egRECyGAegY
rPaCkOzO6QFR9EL8Dh2+SWafdoma2wc7IH5xDZAr+kkm8C1M4OchUFu2cai9
Fflrg42tNtY2GE5ziYr+tY4bXM06j37Nj15l78euNRXXfUcWRMqgiCvX2EV6
V7qz9R3GFX7zPrJL0EhDq6EWP4zZhuM8jLJyF8LQFrxf2kaqmBvEhZm6ep84
2ArHvtOVHz8fcuElp+4O3I/C4SY6TZIc64gO4MsOkStgyCWGICTq++5O1ce9
GP6u89k6nM9+KAc6mP8Mec+085wcT96fDf37MqFJFtREHV4/n9Hs7NRxGsrH
j+YcaYwFP5y+2FtX94hmtUOleD28uVs+0k1Q9ZbhGviYQYhgNDDhz2cLugR8
QQQc6AUJ3Jn0pbShDWS8cm7HGM6EdJsjDnUy/PKazKGCzO5KyGY9Mh6hbRqM
KnYuJbKn0VevZ9HjGnx1J/sq5tvHtUbvN0bXX94YfRLea/Kl7c911P58qMYm
+G4PNSdvMD2SgIpd0rAx73Uf15/pPu7aHOypcelpzM+3IBesi1pr9xuOd/uM
Owedjnd1HEY+AOKrYLor/oY598He29005f4G2/t0VtwlwTfu3pvfpJOc8UOC
kvanZX0/7l7e8bE5xy4l0N1h4xXAui8rOkErTX0SgprsNEB1nNJB2uSMTmiU
BoO9++5cI7DiuiVo7pbgJW5vPwPXF6xzbrzbv8C5f3Iiv4dEP74RAch1GaGh
csJT3GbKbdBUDTWhP+vVtXQB0n3g6JDNGTiR393W135bH3PoOy1E8ke/bzqH
uxs+vIlF1cOYaYBn40pjOQrtn+PZGSetBF3EI+1jrnkhAZ6qqe5BkKwa0LVK
zooSN1DBpYTo8h4cRVWM1ChU0AJ6CQMXxXhPljF/GiOcfYRb3VuNEv0aTmI5
n4ZevAOb6aAg+FPp4EFOlPo96N+qdD0DiSmdmsJV8vEvn/GuoweKLiNuo+KL
8fPnwVnjt0NhKa2JhqS89aSLuLgXHYnGhRHpOXSztKd2IlY35Va+ZIeOJ8jl
Md33DikdP5pWjS9KunYHefgFULTMpD2618xj5/5gX1xu513jMKR32tr6itRV
Ji/ikF5cvBDc3zpHryn43q49hwRiWJJ34aMeNwl5LVYAj2pn4mvgJBvyPa7V
nKtLSr1I4iByO+PMUD0Sw8RwsQ6PxUOu52XOChTJwoechItcY1cnlW6ReAM2
l27klSXOYlKpCKkyAiuFYaMjFOHU6w2dMGa7Mb4vKyrcCEIx0QN4NL1VS0Yd
+8CRICbGsNU7zH3XGJphlrcQn5TaeJo8Gh5XSuYEZouTlYxt9cjbqXuh/swG
0eugLs9+OuvkAvSHJwQSd1+uhidMYVNq0XMRuluuuq+fEmxRHfxI313jdwfu
ph3nD/D9eNjwz58rhbUYLK7DrBi2qYmeMHiNO/Na68uL6+8QNqnKOzksRo0o
aJlAmGSyhLIsqb/pKp5Ix4IihH4HTEbOOHguwESX9Hoh24zf4Gvq3Jw2FiIY
YFeGhOX0r4MqEcdzZ2s+hykrkl6BAMO7uxgkf4QHL/sWfY1biP4/vcNPTeNB
lLpq5038455RlbqQ6gR+p5JnE7wH/DBT7VDJRHkNF2G5NNHzV9jNKSsG2p0C
j9I1+H5EZAVwew0WWGGuRWmXxpKaovC+k0/E9p9ptXgadkACI6rzinMtYv16
7lvS6dijgLgTV5KBGKDFlcUF+xTFJ1dbFl7Pl8aUEdiBmmXwhXrIDBm9t4I0
facNOOadONwB8a/QNN3bbH3TSK8HajPpQ5JgyIaygtdpLCLpQK7UobMJSKf0
HVynoZiIXnNAv9YcC7mInDGhTPBw5Y88JjGQA5q54S7lr+LyPfdSL6XDS70W
O/I/YEMuu7Vr/Y05E+xpQIJE6xOjn0qywvdVlV4MK1l9DAdIUnmIBakJLI9y
2DkHLhgFsTa/4iO8u4CiU67w2ZicOx4zQAGL/Nm/ckpecBmcoURFj1Ipwexn
WLSE06072xO09RcQybUn60OhloWLikWpvIHz35JPjkw9WUHS22S5QD5RtkYe
tUy+XFVmzUFfqG1Od3gUxdjav0AVqUlFLwtsBYRQCIaFbU1t6zFlWWULJgpC
h/w1vxJ1hFBbsea8Kr0Ts/oC+uxX1mmLaKerQ4Pov0dVp2P+I5p6UDt/Rh8/
3FV7uDc99d7lKix6YY0ePFzxYH+80KD6H1fH3WjWw5sUyA6qvX7vqOgNhF5Z
5btYXTU67t7uSl9Q0cFtp8ngQ+qcQi1XgBkfTOM3qEVAW7+dMozSec8goiYc
N+7rHNttGo8xT5qSOu20eJKmZ+m5He1eM+dsXBS8+6fuwUii7tGhVuD/TteP
sNDVbgPgF/EpKmfXYl1HLdbpMCs1ZI9sRF4uOJVMnqDZatc6XM4lLEe+Q3bG
HaXrEUtPON70Zfo9vu/R2v16UGGn6jpJunCw60+g8KnvOx8i+9eODHeWNoN9
pf9fq/3/BYym1t8ZfgAA

-->

</rfc>
