<?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.6.17 (Ruby 3.1.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-lukianets-open-ethics-transparency-protocol-02" category="exp" tocDepth="3" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.15.2 -->
  <front>
    <title abbrev="OETP">Open Ethics Transparency Protocol</title>
    <seriesInfo name="Internet-Draft" value="draft-lukianets-open-ethics-transparency-protocol-02"/>
    <author initials="N." surname="Lukianets" fullname="Nikita Lukainets">
      <organization>Open Ethics Initiative</organization>
      <address>
        <email>n.lukianets@openethics.ai</email>
      </address>
    </author>
    <date year="2022" month="November" day="22"/>
    <area>General</area>
    <workgroup>dispatch</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <t>The Open Ethics Transparency Protocol (OETP) is an application-level protocol for publishing and accessing ethical Disclosures of IT Products and their Components. The Protocol is based on HTTP exchange of information about the ethical "postures", provided in an open and standardized format. The scope of the Protocol covers Disclosures for systems such as Software as a Service (SaaS) Applications, Software Applications, Software Components, Application Programming Interfaces (API), Automated Decision-Making (ADM) systems, and systems using Artificial Intelligence (AI). OETP aims to bring more transparent, predictable, and safe environments for the end-users. The OETP Disclosure Format is an extensible JSON-based format.</t>
    </abstract>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>The Open Ethics Transparency Protocol (OETP or Protocol) describes the creation and exchange of voluntary ethics Disclosures for IT products. It is brought as a solution to increase the transparency of how IT products are built and deployed. This document provides details on how disclosures for data collection and data processing practice are formed, stored, validated, and exchanged in a standardized and open format.</t>
      <t>OETP provides facilities for:</t>
      <ul spacing="normal">
        <li>
          <strong>Informed consumer choices</strong> : End-users able to make informed choices based on their own ethical preferences and product disclosure.</li>
        <li>
          <strong>Industrial-scale monitoring</strong> : Discovery of best and worst practices within market verticals, technology stacks, and product value offerings.</li>
        <li>
          <strong>Legally-agnostic guidelines</strong> : Suggestions for developers and product-owners, formulated in factual language, which are legally-agnostic and could be easily transformed into product requirements and safeguards.</li>
        <li>
          <strong>Iterative improvement</strong> : Digital products, specifically, the ones powered by artificial intelligence could receive nearly real-time feedback on how their performance and ethical posture could be improved to cover security, privacy, diversity, fairness, power balance, non-discrimination, and other requirements.</li>
        <li>
          <strong>Labeling and certification</strong> : Mapping to existing and future regulatory initiatives and standards.</li>
      </ul>
      <t>The Open Ethics Transparency Protocol (OETP) is an application-level protocol for publishing and accessing ethical Disclosures of IT products and their components. The Protocol is based on HTTP exchange of information about the ethical "postures", provided in an open and standardized format. The scope of the Protocol covers Disclosures for systems such as Software as a Service (SaaS) Applications, Software Applications, Software Components, Application Programming Interfaces (API), Automated Decision-Making (ADM) systems, and systems using Artificial Intelligence (AI). OETP aims to bring more transparent, predictable, and safe environments for the end-users. The OETP Disclosure Format is an extensible JSON-based format.</t>
    </section>
    <section anchor="requirement-levels">
      <name>Requirement Levels</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>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <dl>
        <dt>Disclosure:</dt>
        <dd>
          <t>Disclosure (Ethics Disclosure, or self-disclosure) is application-specific information about the data collection, data processing, and decision-making practices of a Product, provided by the Product Vendor (an individual developer or an organization).</t>
        </dd>
        <dt>Disclosure Feed:</dt>
        <dd>
          <t>A historical sequence of Disclosures, made for a specific Product.</t>
        </dd>
        <dt>Disclosure Identity Provider:</dt>
        <dd>
          <t>The automated Disclosure processing is enabled by requests to both the Open Ethics Disclosure database powered by Disclosure Identity Providers (DIP) and the Product's OETP Disclosure file, stored in the product's website root following OETP specification. DIP serves as a service point to generate and retrieve generated disclosures.</t>
        </dd>
        <dt>Vendor:</dt>
        <dd>
          <t>A legal person (an individual developer or an organization) that owns one or several end-user Products, or acts as a Supplier and provides Components for other Vendors.</t>
        </dd>
        <dt>Integrator:</dt>
        <dd>
          <t>A legal person (an individual developer or an organization) that deploys technology-powered services to the end-users based on Product(s) from third-party Vendors.</t>
        </dd>
        <dt>Product:</dt>
        <dd>
          <t>An IT system in the form of software, software as a service system, application, software component, application programming interface, or a physically embodied automated decision-making agent.</t>
        </dd>
        <dt>Component:</dt>
        <dd>
          <t>An IT system supplied by Vendor and integrated/embedded into end-user Products. Components themselves do not necessarily interface with end-users.</t>
        </dd>
        <dt>Upstream Component:</dt>
        <dd>
          <t>A Component that sends its outputs to the Product Downstream in the data processing chain. Disclosure for the Upstream Component is represented as a Child relative to the Disclosure node of the Downstream Product.</t>
        </dd>
        <dt>Downstream Component:</dt>
        <dd>
          <t>A Component that receives inputs from the Components Upstream in the data processing chain. Disclosure for the Downstream Component is represented as a Parent relative to the Disclosure node of the Upstream Component.</t>
        </dd>
        <dt>Automated Decision-Making (ADM):</dt>
        <dd>
          <t>Automated decision-making is the process of making a decision by automated means without any human involvement. These decisions can be based on factual data, as well as on digitally created profiles or inferred data.</t>
        </dd>
        <dt>OETP Disclosure Format:</dt>
        <dd>
          <t>A machine-readable Disclosure with predefined structure, supplied in the JSON format.</t>
        </dd>
        <dt>Validation:</dt>
        <dd>
          <t>A sequence of automated software-based checks to control validity and security elements in the OETP Disclosure.</t>
        </dd>
        <dt>Auditor:</dt>
        <dd>
          <t>A third-party legal person trusted to perform Verification checks and to issue Verification Proofs.</t>
        </dd>
        <dt>Auditing software:</dt>
        <dd>
          <t>An automated software-based tool authorized to perform Verification checks and to issue Verification Proofs.</t>
        </dd>
        <dt>Verification:</dt>
        <dd>
          <t>A procedure to control the correspondence of the elements in the OETP Disclosure and the actual data processing and data collection practices of the Vendors.</t>
        </dd>
        <dt>Verification Proof:</dt>
        <dd>
          <t>A result of the formal Disclosure Verification procedure presented to a requestor.</t>
        </dd>
        <dt>Chaining:</dt>
        <dd>
          <t>A process of combining Disclosures of individual Components into a composite high-level Disclosure for a Product.</t>
        </dd>
        <dt>Label:</dt>
        <dd>
          <t>User-facing graphical illustrations and textual descriptions of the Product that facilitate understanding of the values and risks the Product carries.</t>
        </dd>
      </dl>
    </section>
    <section anchor="protocol-model">
      <name>Protocol Model</name>
      <t>The Disclosure creation and delivery consist of the two parts, starting from (I) the submission of the Disclosure form, chaining of the Suppliers' Disclosures, Signature of the disclosed information, and the delivery part (II) that first checks that the Disclosure is Valid, and then that the information specified in it is Verified by the third-parties. <xref target="_figure-disclosure-creation"/> shows disclosure creation steps.</t>
      <!-- <img src="../diagrams/images/disclosure-creation/disclosure-creation.svg" alt="Creation of the Disclosure"> -->

<section anchor="creation-of-disclosure">
        <name>Creation of Disclosure</name>
        <t>The initial Disclosure is created by filling out a standardized disclosure form (for example, see 1. <eref target="https://openethics.ai/label/">https://openethics.ai/label/</eref>). A Vendor representative, a Product Owner, or a Developer, <bcp14>MUST</bcp14> submit data-processing and data-collection information about the Product. The information about the end-point URL, as well as a contact email address, <bcp14>MUST</bcp14> be specified. Disclosure <bcp14>MAY</bcp14> also be created in a fully automated way as a part of the CI/CD DevOps pipeline. <xref target="_figure-disclosure-submission-basic"/> shows basic disclosure submission process.</t>
        <!-- <img src="../diagrams/images/disclosure-submission-basic/disclosure-submission-basic.svg" alt="Basic Disclosure Submission"> -->

<section anchor="cryptographic-signature">
          <name>Cryptographic Signature</name>
          <t>The Disclosure is organized into a predefined data schema and <bcp14>MUST</bcp14> be cryptographically signed by the Signature Generator (Open Ethics or federated providers) using standard SHA3-512 hash implementation. The integrity hash <bcp14>MUST</bcp14> be appended to a disclosure as the <tt>OETP.schema.integrity</tt> element.</t>
        </section>
        <section anchor="immutable-storage">
          <name>Immutable Storage</name>
          <t>Both the signature integrity hash and the Disclosure <bcp14>SHOULD</bcp14> be stored in the log-centric root database and <bcp14>MAY</bcp14> be mirrored by other distributed databases for redundancy and safety.</t>
        </section>
        <section anchor="visual-labeling">
          <name>Visual Labeling</name>
          <t>Open Ethics Label <bcp14>SHOULD</bcp14> be automatically generated by mirroring the submitted Disclosure into a set of graphical icons and simple human-readable descriptions. Additional Labels <bcp14>MAY</bcp14> be generated following successful third-party Verification and by mapping the regulatory requirements to Verified Disclosures.</t>
        </section>
      </section>
      <section anchor="access-to-disclosure">
        <name>Access to Disclosure</name>
        <section anchor="initial-request-to-a-disclosure-file">
          <name>Initial Request to a Disclosure file</name>
          <t>The most recent OETP file <bcp14>SHOULD</bcp14> be stored in the root of the Product's specified end-point URL, allowing requests to the OETP file from third-party domains. When establishing a Vendor relationship, the Integrator or a downstream Vendor <bcp14>MAY</bcp14> examine the Disclosure for their Components using the following HTTP request: <tt>GET https://testexample.com/oetp.json</tt>, where <em>testexample.com</em> is the URL of the Supplier's end-point.</t>
        </section>
        <section anchor="access-to-visual-trust-labels">
          <name>Access to Visual Trust Labels</name>
          <t>A Vendor <bcp14>SHOULD</bcp14> place a visual Label generated as a result of the Disclosure process in the Product informational materials (for example Marketing Materials, User Guides, Safety Instructions, Privacy Policy, Terms of Service, etc). The Label reflects the content of the Disclosure and <bcp14>SHOULD</bcp14> be displayed in any digital media by embedding a software widget. Visual labels in the print media <bcp14>SHOULD</bcp14> carry a visually distinguishable Integrity signature to enable manual Validation by the User.</t>
        </section>
        <section anchor="requirements-for-placement-of-integrity-signature-in-visual-label">
          <name>Requirements for placement of Integrity Signature in Visual Label</name>
          <ul spacing="normal">
            <li>
              <strong>Labels in the online digital media</strong> <bcp14>MUST</bcp14> be generated automatically based on the content of the Disclosure and <bcp14>MUST</bcp14> contain a URL allowing to check the complete Integrity hash and explore more detailed information about the Disclosure.</li>
            <li>
              <strong>Labels in the offline media</strong> <bcp14>MUST</bcp14> be generated automatically based on the content of the Disclosure and should carry the first 10 digits of the corresponding Integrity hash.</li>
          </ul>
        </section>
        <section anchor="conformity-assessment-marks">
          <name>Conformity assessment marks</name>
          <t>Based on the Verification performed for the OETP Disclosure file, the labels <bcp14>MAY</bcp14> include Conformity assessment marks, Certification marks, as well as marks showing adherence to certain standards. These marks <bcp14>MAY</bcp14> be generated and displayed automatically based on the Verification Proofs.</t>
        </section>
        <section anchor="accessibility-considerations">
          <name>Accessibility considerations</name>
          <t>Accessibility of the Labels for the visually impaired Users <bcp14>SHOULD</bcp14> be considered. The OETP Processing system <bcp14>MUST</bcp14> provide alternative forms of the Label so that text-to-speech tools could be used to narrate the Label.</t>
        </section>
      </section>
      <section anchor="verification-and-validation-of-disclosure">
        <name>Verification and Validation of Disclosure</name>
        <section anchor="automated-disclosure-processing">
          <name>Automated Disclosure processing</name>
          <t>The automated Disclosure processing is enabled by requests to both the Open Ethics Disclosure database powered by Disclosure Identity Providers and the Product's OETP Disclosure file.</t>
          <t>To allow efficient decentralization and access to the disclosures of autonomous systems, such as AI systems powered by trained machine learning models, the vendor (or a developer) <bcp14>MUST</bcp14> send requests to a Disclosure Identity Provider. Disclosures <bcp14>MAY</bcp14> be resolved using URIs. To satisfy the mentioned requirements for disclosure RI, it is proposed in <xref target="OETP-RI"/> to use the following formats:</t>
          <ul spacing="normal">
            <li>
              <tt>oetp://&lt;hash&gt;</tt> - Here integrity <tt>&lt;hash&gt;</tt> is the SHA3-512 generated during the disclosure process.</li>
            <li>
              <tt>oetp://&lt;component&gt;@&lt;alias&gt;[:&lt;disclosure&gt;]</tt> - Here <tt>&lt;component&gt;</tt> is the ID assigned via Disclosure Identity Provider under its <tt>&lt;alias&gt;</tt> during the first disclosure.</li>
            <li>
              <tt>oetp://&lt;domain&gt;[:&lt;disclosure&gt;]</tt> - For verified domains (Domain Validation), disclosure could be accessed using product's <tt>&lt;domain&gt;</tt> instead of <tt>&lt;component&gt;@&lt;alias&gt;</tt>.)</li>
          </ul>
        </section>
        <section anchor="validation-of-vendor39s-disclosures">
          <name>Validation of Vendor's Disclosures</name>
          <t>The OETP Processing system <bcp14>MUST</bcp14> compare integrity hashes in the Open Ethics Disclosure database and entries that arrive as a result of the Disclosure Request response.</t>
        </section>
        <section anchor="verification-of-vendor39s-disclosures">
          <name>Verification of Vendor's Disclosures</name>
          <t>Every disclosure <bcp14>SHOULD</bcp14> be checked for the existence of the external Verification from Auditors for the entire Disclosures or one of the Disclosure elements.</t>
        </section>
        <section anchor="progressive-verification">
          <name>Progressive Verification</name>
          <t>To raise a level of trust in a Disclosure, a Vendor <bcp14>MAY</bcp14> decide to opt-in for a third-party Disclosure Verification. OETP suggests a Progressive Verification scheme where multiple independent external Verification Proofs COULD be issued by third parties to confirm the information specified in the Disclosure.</t>
          <t>The Progressive Verification applies to a whole Disclosure, or to specific elements of the Disclosure.</t>
          <t><xref target="_figure-disclosure-progressive-verification"/> displays a general scheme for Disclosure requests and responses.</t>
          <!-- <img src="../diagrams/images/disclosure-progressive-verification/disclosure-progressive-verification.svg" style="float: left; margin-right: 10px;" alt="Progressive Verification Scheme for Disclosures" /> -->

<t>The following elements <bcp14>MAY</bcp14> serve as sources for various kinds of Verification proofs:
* Qualified Auditor reports
* Qualified Vendor of Auditing software tests
* Certification Authority assessments
* Conformity assessments
* User Feedback
* Market Brokers
* Real-time Loggers</t>
        </section>
      </section>
      <section anchor="end-to-end-transparency-and-formation-of-the-composite-disclosure">
        <name>End-to-end transparency and formation of the composite Disclosure</name>
        <t>The IT industry is getting more mature with Vendors becoming more specialized. Surface-level transparency is not sufficient as supply chains are becoming more complex and distributed across various Components. The following steps <bcp14>MUST</bcp14> be satisfied for the end-to-end transparency:</t>
        <section anchor="open-supplier-policy">
          <name>Open Supplier Policy</name>
          <t>Every Integrator or a Vendor <bcp14>SHOULD</bcp14> disclose the information about their Suppliers (sub-processing Vendors), indicating the scope of the data processing in the Components they provide.</t>
          <t>If the Supplier information is not provided, Disclosure <bcp14>SHOULD</bcp14> contain information that a Vendor (Integrator) has not provided Supplier information.</t>
          <section anchor="first-party-components">
            <name>First-party Components</name>
            <t>For greater transparency, Vendors may decide to reveal Components even if they originate from themselves (first-party Components). For the first-party Component, the Supplier identity information <bcp14>SHOULD NOT</bcp14> be provided because it was already disclosed earlier.</t>
            <t>Required: (<xref target="component-information"/>) only</t>
          </section>
          <section anchor="third-party-components">
            <name>Third-party Components</name>
            <t>When disclosing Components originating from the third-party Vendors <bcp14>SHOULD</bcp14> provide both the Supplier identity information and Component information</t>
            <t>Required: (<xref target="supplier-identity"/>, <xref target="component-information"/>)</t>
          </section>
          <section anchor="elements-of-supplier-disclosure">
            <name>Elements of Supplier disclosure</name>
            <section anchor="supplier-identity">
              <name>Supplier identity</name>
              <ul spacing="normal">
                <li>Vendor Name</li>
                <li>Vendor URL</li>
                <li>Vendor ID</li>
                <li>Vendor DPO Contact Email</li>
              </ul>
            </section>
            <section anchor="component-information">
              <name>Component information</name>
              <ul spacing="normal">
                <li>Component Scope of use</li>
                <li>Personal Data Being Processed by Component</li>
                <li>Is a Safety Component (YES)/(NO)</li>
                <li>Component URL (if different from the Vendor URL)</li>
                <li>Component Disclosure URL (if different from the default <tt>Component URL/oetp.json</tt>)</li>
                <li>Component DPO Contact (if different from Vendor DPO Contact Email)</li>
              </ul>
            </section>
          </section>
        </section>
        <section anchor="request-for-supplier39s-disclosures">
          <name>Request for Supplier's Disclosures</name>
          <t>The OETP Processing system <bcp14>MUST</bcp14> send GET requests to the URLs of each Component to obtain their Disclosures. Based on the response to each Disclosure request, the OETP Processing system <bcp14>MUST</bcp14> specify which Components have Disclosures and which don't have Disclosures.</t>
          <t><xref target="_figure-disclosure-chaining-request"/> shows the process of how Disclosure Chaining requests and responses happen.</t>
          <!-- <img src="../diagrams/images/disclosure-chaining-request/disclosure-chaining-request.svg" alt="Disclosure Chaining: Request-Response"> -->

</section>
        <section anchor="disclosure-chaining">
          <name>Disclosure Chaining</name>
          <t>The same Request-response operation applies recursively for Components of the Components, for the Components of the Components of the Components, etc. It is proposed to view the supply chain as a tree-like hierarchical data structure, where the information about Components is assembled using Level Order Tree Traversal algorithm.</t>
          <t>In this tree:
* Node is a structure that contains the Component's Disclosure;
* Root is the top Node representing a Product's Disclosure information;
* Edge is the connection between one Node and another, representing the scope of the Data Processing by the Component.</t>
          <t><xref target="_figure-disclosure-chaining-tree"/> displays the order of the Disclosure Chaining with Level Order Tree Traversal algorithm.</t>
          <!-- <img src="../diagrams/images/disclosure-chaining-tree/disclosure-chaining-tree.svg" alt="Disclosure Chaining: Level Order Traversal"> -->

</section>
        <section anchor="generation-of-the-composite-disclosure">
          <name>Generation of the Composite Disclosure</name>
          <t>The current consensus from the user &amp; developer community suggests that Composite Disclosure should follow The "Weakest Link" model. According to this model, the risk that the Product is carrying should not be considered any less than the risk for each of the Components. A similar approach in dealing with software licenses has been successful by allowing to generate Software Bills of Materials (SBOMs) by providing package information in the <xref target="SPDX"/> files.</t>
          <t>Formally this approach could be illustrated with the use of a conjunction table for risk modeling (see <xref target="conjunction-table-risk-modeling"/>). The Truth Table for Logical AND operator below takes one risk factor and evaluates risk outcomes as High (H) or Low (L) for hypothetical Disclosure options of the Product(P) and its Component(C).</t>
          <table anchor="conjunction-table-risk-modeling">
            <name>Conjunction Table for Risk Modeling</name>
            <thead>
              <tr>
                <th align="center">Disclosed risk of P</th>
                <th align="center">Disclosed risk of  C</th>
                <th align="center">Composite P &amp; C</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="center">L</td>
                <td align="center">L</td>
                <td align="center">
                  <strong>L</strong></td>
              </tr>
              <tr>
                <td align="center">L</td>
                <td align="center">H</td>
                <td align="center">
                  <strong>H</strong></td>
              </tr>
              <tr>
                <td align="center">H</td>
                <td align="center">L</td>
                <td align="center">
                  <strong>H</strong></td>
              </tr>
              <tr>
                <td align="center">H</td>
                <td align="center">H</td>
                <td align="center">
                  <strong>H</strong></td>
              </tr>
            </tbody>
          </table>
          <t>Further evaluation of this approach is required.</t>
        </section>
      </section>
    </section>
    <section anchor="example-oetp-disclosure-file">
      <name>Example OETP Disclosure File</name>
      <figure anchor="_figure-example-oetp-json">
        <name>Example OETP Disclosure File</name>
        <sourcecode type="JSON"><![CDATA[
{
    "schema": {
        "name": "Open Ethics Transparency Protocol",
        "version": "0.9.3 RFC",
        "integrity": "156d624b8f2dbea87128a2147f255842652475c5dc595c79f64c90c7ff486d59007c3e18c993e3163395812e26b70ea70dfc413f7ca128869d115f12e5699bf2"
    },
    "snapshot": {
        "product": {
            "url": "testexample.com",
            "description": ""
        },
        "timestamp": 1608273946,
        "generator": {
            "name": "Open Ethics",
            "alias": "oe",
            "type": "root",
            "website": "https://openethics.ai"
        },
        "label": {
            "data": {
                "type": "open",
                "practice": ""
            },
            "source": {
                "type": "open",
                "practice": ""
            },
            "decision": {
                "type": "restricted",
                "practice": ""
            }
        }
    }
}
]]></sourcecode>
      </figure>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="response-content">
        <name>Response content</name>
        <t>OETP exchanges data using JSON <xref target="RFC8259"/> which is a lightweight data-interchange format. A JSON-based application can be attacked in multiple ways such as sending data in an improper format or embedding attack vectors in the data. It is important for any application using JSON format to validate the inputs before being processed. To mitigate this attack type, the JSON Key Profile is provided for OETP responses.</t>
      </section>
      <section anchor="spoofing">
        <name>Spoofing</name>
        <t>OETP Processors should be aware of the potential for spoofing attacks where the attacker publishes an OETP disclosure with the <tt>OETP.snapshot</tt> value from another product, or, perhaps with an outdated <tt>OETP.snapshot.label</tt> element. For example, an OETP Processor could suppress the display of falsified entries by comparing the snapshot integrity from the submission database and a calculated hash for the <tt>OETP.snapshot</tt> object. In that situation, the OETP Processor might also take steps to determine whether the disclosures originated from the same publisher require further investigation of the Disclosure Feed and alert the downstream OETP Processors.</t>
      </section>
      <section anchor="falsification">
        <name>Falsification</name>
        <t>Dishonest or falsified Disclosures is a problem that is hard to address generally. The approach to it is public control and systematic checks. Vendors or user-facing applications and services could further raise the level of trust in their Disclosures by implementing programmatic control scoring mechanisms, as well as the external verification by trusted Auditors.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>Disclosures <bcp14>MAY</bcp14> be resolved using their URIs. To allow this requirement, the <tt>oetp://</tt> URI scheme should be registered with IANA.</t>
    </section>
    <section anchor="areas-for-future-study">
      <name>Areas for Future Study</name>
      <t>The following topics not addressed in this version of the document are possible areas for the future study:</t>
      <ul spacing="normal">
        <li>Extensibility of the OETP Disclosure Format.</li>
        <li>Evaluate other methods of Generation of the Composite Disclosure based on the Disclosure Tree</li>
        <li>Disclosure Chaining mechanisms and various use-cases.</li>
        <li>Typical scenarios and templates for Disclosure submissions.</li>
        <li>Mapping of the regulatory requirements and future Disclosure elements.</li>
        <li>Standardizing Privacy Disclosure and PII data-collection practices.</li>
        <li>Enhancing Label accessibility with ARIA W3C Recommendation and other approaches</li>
        <li>Use of the OETP Disclosure in the ADM explainability (XAI).</li>
      </ul>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <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">
              <organization/>
            </author>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba">
              <organization/>
            </author>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="SPDX" target="https://spdx.dev/">
          <front>
            <title>SPDX Specification – Version 2.2</title>
            <author>
              <organization>The Linux Foundation</organization>
            </author>
            <date year="2020"/>
          </front>
          <format type="PDF" target="https://spdx.dev/wp-content/uploads/sites/41/2020/08/SPDX-specification-2-2.pdf"/>
          <format type="HTML" target="https://spdx.github.io/spdx-spec/"/>
        </reference>
        <reference anchor="OETP-RI" target="https://github.com/OpenEthicsAI/OETP-RI-scheme">
          <front>
            <title>Resource Identifier Scheme for OETP</title>
            <author>
              <organization>Open Ethics Initiative</organization>
            </author>
            <date year="2022"/>
          </front>
        </reference>
        <reference anchor="RFC8259">
          <front>
            <title>The JavaScript Object Notation (JSON) Data Interchange Format</title>
            <author fullname="T. Bray" initials="T." role="editor" surname="Bray">
              <organization/>
            </author>
            <date month="December" year="2017"/>
            <abstract>
              <t>JavaScript Object Notation (JSON) is a lightweight, text-based, language-independent data interchange format.  It was derived from the ECMAScript Programming Language Standard.  JSON defines a small set of formatting rules for the portable representation of structured data.</t>
              <t>This document removes inconsistencies with other specifications of JSON, repairs specification errors, and offers experience-based interoperability guidance.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="90"/>
          <seriesInfo name="RFC" value="8259"/>
          <seriesInfo name="DOI" value="10.17487/RFC8259"/>
        </reference>
      </references>
    </references>
    <section anchor="appendix">
      <name>Appendix</name>
      <section anchor="figures">
        <name>Figures</name>
        <t>Diagrams could be built from code using the below <tt>*.puml</tt> files automatically using <eref target="https://plantuml.com/">PlantUML</eref>.</t>
        <section anchor="creation-of-disclosure-1">
          <name>Creation of Disclosure</name>
          <figure anchor="_figure-disclosure-creation">
            <name>Creation of the Disclosure</name>
            <sourcecode type="PUML"><![CDATA[
@startuml

title Disclosure Creation Process

skinparam roundCorner 15

actor "Supplier A" as SA
actor "Supplier B" as SB
actor Vendor as V

component "Component A" as CA
component "Component B" as CB
file "Disclosure A" as DA
file "Disclosure B" as DB
file "Composite Disclosure" as D

V-right->(Creation):disclose
SA-up->CA
SB-up->CB
CA-up->DA
CB-up->DB
DA-up->(Chaining)
DB-up->(Chaining)
(Creation)->(Chaining)
(Chaining)->(Validation)
(Validation)->(Verification)
(Verification)->D
@enduml
]]></sourcecode>
          </figure>
        </section>
        <section anchor="basic-disclosure-submission">
          <name>Basic Disclosure Submission</name>
          <figure anchor="_figure-disclosure-submission-basic">
            <name>Basic Disclosure Submission</name>
            <sourcecode type="PUML"><![CDATA[
@startuml
title Basic Disclosure Submission

skinparam roundCorner 15
autonumber

actor Vendor
database "Disclosure Identity Provider" as ID
control "Signature Generator" as SIG
database "Federated Identity Provider" as DIS

Vendor -> ID: Request with Disclosure payload
ID -> ID: Validate input
ID -> SIG: Structured Data, Initialized

ID <-- SIG: SHA3-512 integrity hash
    group Distributed Identity Storage
DIS <-- SIG: SHA3-512 integrity hash
end
ID -> ID: Log OETP file and a corresponding intgrity hash
Vendor <-- ID: OETP Disclosure File
@enduml
]]></sourcecode>
          </figure>
        </section>
        <section anchor="progressive-verification-scheme-for-disclosures">
          <name>Progressive Verification Scheme for Disclosures</name>
          <figure anchor="_figure-disclosure-progressive-verification">
            <name>Progressive Verification Scheme for Disclosures</name>
            <sourcecode type="PUML"><![CDATA[
@startuml

title Progressive Verification with multiple Auditors

skinparam roundCorner 15
autonumber
actor User
User -> Vendor: Disclosure Request
User <-- Vendor: OETP Disclosure File

database "Disclosure Identity Provider" as ID

User -> ID: Disclosure Validation and Verification Request

group Progressive Disclosure Verification
    ID -> ID: Retrieve and Compare Disclosure Integrity
    ID -> "Auditor 1": Disclosure Verification Request
    ID <-- "Auditor 1": Verification Proof 1
    ID -> "Auditor N": Disclosure Verification Request
    ID <-- "Auditor N": Verification Proof N
end

User <-- ID: Verification response

User -> Vendor: Service Request
User <-- Vendor: Service Response
@enduml
]]></sourcecode>
          </figure>
        </section>
        <section anchor="disclosure-chaining-request-response">
          <name>Disclosure Chaining: Request-Response</name>
          <figure anchor="_figure-disclosure-chaining-request">
            <name>Disclosure Chaining: Request-Response</name>
            <sourcecode type="PUML"><![CDATA[
@startuml
title Disclosure Chaining: Request-Response


start
repeat
  :Request Component's Disclosure;
    if (Disclosure Obtained?) then (yes)
      :Validate Disclosure;
      :Verify Disclosure;
      :Chain Disclosure;
      :Obtain list of Child Components;
      if (Supplier information exists?) then (yes)
        :Update Tree with (yet)
        Unchained Disclosures;
      else (no)
        #Gold:**Alert** "Vendor has not provided
        Supplier information";
      endif
    else (no)
      #pink:**Alert** "Vendor has not provided
      any Disclosure";
      stop
    endif
repeat while (Unchained Disclosures in the Disclosure Tree?) is (yes) not (no)
:**Generate**
Composite Disclosure;
#palegreen:**Display** Label for "Composite Disclosure";
stop

@enduml
]]></sourcecode>
          </figure>
        </section>
        <section anchor="disclosure-chaining-level-order-traversal">
          <name>Disclosure Chaining: Level Order Traversal</name>
          <figure anchor="_figure-disclosure-chaining-tree">
            <name>Disclosure Chaining: Level Order Traversal</name>
            <sourcecode type="PUML"><![CDATA[
@startmindmap
title Disclosure Chaining: Level Order Traversal

skinparam roundCorner 15
* Root (Product)
        * 1 (Component)
                * 3 (Component)
                        * 7 (Component)
                * 4 (Component)
        * 2 (Component)
                * 5 (Component)
                        * 8 (Component)
                        * 9 (Component)
                * 6 (Component)
@endmindmap
]]></sourcecode>
          </figure>
        </section>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Part of this work related to Verification and Validation of Disclosure and Disclosure Chaining was supported by the H2020 Programme of the European Commission under Article 15 of Grant Agreement No. 951972 StandICT.eu 2023</t>
      <t>The Open Ethics community and expert volunteers contributed with their valuable feedback, discussions, and comments. Thank you Ashley Duque Kienzle, Angela Kim, Ioannis Zempekakis, Karl Muedespacher, Ida Varosanec, Claudia Del Pozo, Joerg Buss, Mariia Kriuchok, Minhaaj Rehman, Oleksii Molchanovskyi, Roberta Barone, Phil Volkofsky and others.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+1d3XIbN5a+V5XeAUNXTSgVSVmyZVtM4gktyTEnkq2R5Mxk
U6kR2A2SiJrdnEa3ZMbjrX2HfYHd99ir3doX2SfZ8wOg0WRTklOzW3MxuUjE
bjRwcHBwznd+gHS73c2NQheJ6ovWu7lKxXEx1ZERl7lMzVzmKo0W4izPiizK
ktbmhhyNcnWDjY8vz+B3nEWpnMHXcS7HRTcpr7VMVWG6GXTWVdRZtwg6685t
Z93He5sbkSzUJMsXfaE+zDc3Njf0PO+LIi9Nsff48QE2gc9kX3yrUpXLZHPj
NsuvJ3lWzmFIDZ0W0XRz41ot4HncF8O0UDmM3z1CcrBDU8g0/rNMshSIXCgD
T2YyL/78lzIrlOmLNNvcmOv+5oaAf4Aw28j+itW8mPbFE35gsrzI1dgEbcxi
FjwBastimuXYXZcb6BRevu2JE8cZfsxMe6uvdSHxndTVuyyfyFT/IgudpX0R
rsow1YWG5zeKW6qZ1AnMoef5/g3yndnekxopSrN8Rp/0ib/pOPiNfVycHf3J
/kmTlvlEFX0xLYq56e/smHn8oRerm52qSTXH4B8gui8up0qc6LT8IF5nZRrT
DIKuWc5wQHExV5Ee64iaiP/5l38V36vc4N97vb3qE+gCvth7vPe4esYTWBr+
7Oh1A823826UgUikxU45TzIZmx2jYdl3nu7uYKc7j1/sIDldE5LT3evu9ebx
uD7Cm8vTk6UhJrqYlqOezugndWLZhLujez68g6/22yib7eAK8wIPhjv2y66J
pmqmHsL0uwQkYPu5MlmZR0oMY+AHTFbl4oIGQY4SxQ1830Oh6Xa7Qo4MbOOI
9hQu873KQrSxyy2hjZCpkPN54tibqBuVCKcHaPR5OUq0mep0Ao1jIaNIGYO/
SJRlIo60iZLMlLkyIhuL4SWOE5dRYeiDYqp0Lg6z2Rz2eVqYHomiJwVoGEmj
YgHy9eby8gy0TTSV6URhX35LwEs5ysoCe/MD/xYVxZfzzBQ4Nv/qIPE3OoYO
dYqzw01HdJC2kXmsf4F33C2TYiJog6MVIV1RdgNSX5sccsMsTKFmRpgymgpp
xEU2Lm6Bvfi3FBcqv9Gwju0LKS+2xKDirOlUTdc8rljUCZsgSZNczmbIc1Ki
YwlLINqDs+EWtCyLDKYCczqCfYLbtHsqr7Fte3B0uuUI7jAPLPUlLeAgR1mL
NLAS+00SPQExAeoHw60eSZ2QGloXmRjl+MEsAzIri1Egs1Wso0KOEmVHkGNY
oPRG51k6w7kQ12jV0rhbGuApc526r7gLWglXxIqk+gCKwWjoVfz+4t3bLkuI
XTQn9jMdx4nCX4+QfpY50mqftQ1gp/onWyJWJsr1CPiLNEdg4Fj4YGqhYN5k
SZmC3liwMK7KCeyCud0FPTGkeY3ANE6mBUuKgQ6oZ2CuTnEco2jI0CDjSNPs
NuxMoKSMSp0URBMYwSRbqBh5CkOAyS+R624TwBNVgB0yuLuwp3iJTFAmEkQ9
SVTk50nPoAO3z+eoW1CqcWhcAxV3YDeBLMB/b2SiUSPFnRqPePfV9xy+p90Y
rCMtgCcWBFsnoCWZODKK22J7e5jyqEBoamB+uYimGRBktrdFXxw7uRIohcjP
mbxWVnXgR9y20jKskLLb1CsSkOKxQo4rVlmW2QG3eo6SGOBPDjsGjICE0WYZ
aPUMNwfRglKAeoNWDoSIFwnwjyk8G424BfsC7AGsc60KAc0LpAK2aKGiaZol
2WSBnIuu7a515ACvS5Q+oBUGNJamEzWRSbLoykkKmlBHYlICMxMALcyfi3Iy
AUpQ2fCSo4qHdchrc+0CP+BRhxanTEihAI2wIkUJHEpgUUs5gU1+Cyybkigk
ywNjd1FWJjFMXYBA62TB4mxXQqewOG4yufpLqXPFOsJpDhgjj93EhqDqyF4K
PUMRobaWzWCiad14U4A4OpAABHVoH4EmNWKe3cK6Aj0LoNgrOx0qOyY4V5HC
kVIlc6AatmPSLTTaX6XiESyF20AsPMA9EmLsgMTeCRLboooLlvIYxZIkQxgV
lbkuFqg79Y2M4I9Yo6mhZ2OpASMbmBGRDkKb4CAdwMJpF8Ux12AHSCexbGRA
UF5jphMLOUIhYKMdKZ49fUgsPAWrj2+BLvVBw/LZluOSJpDDUoAQAPwHbjnc
Ymp21PT+bvDGfBVvRP/AG//AG387vPEIMLrfYuIEpdY48QcPF1V8bETr9P3F
ZavD/xVv39Hf58d/eD88Pz7Cvy/eDE5O/B8btsXFm3fvT46qv6ovD9+dnh6/
PeKP4amoPdponQ5+aDEfWu/OLofv3g5OWiiHRQ0M4GIjTxVpvhx4iMsnzYYD
OyS7rw7P/vPfdp+Kjx9/c/76cG939+DTJ/vjxe7zp/Djdqqc1klBSfJPYPVi
A7Y0KE7aAQmIspyjekYZAMGdoqUFJaV6GxvbPyJnfuqLr0bRfPfpS/sAJ1x7
6HhWe0g8W32y8jEzseFRwzCem7XnS5yu0zv4ofbb8T14yAJzqXLYQmTN8UEl
eoBr+qEkto+XIWQHMalRybhbIRDWnoHqdCZvjdJaQnadZVjXsfjR7uEZ7+EK
pIB+ks6RC5QcWFKrtsiKfw+7DGhtwx7SKdgxHSNa8BAD54E6MYiabPXq3BCv
wcISSwYCpBbBFOpaA9uNlAPQEejEDqCmmL1i6Y2+o2a5Z/amC7JDSH1Ow+CW
lZUSq5oHkBdYrVJUMjRhtK6AoFgxgcElDoRGL+gEuYzaI4Qed5EEevVoCKbR
Wi43lS/MisIaa9R5jLt5jytn+KD1rRph+ETkWVYAe5Iku8WJUCe1CEpPwHjA
3pzsObki1ojMM1APOMcJBfQKhjagLHIN6+mfxqETQSxnIbBrSKgQAZIBcfwc
uYAJgT4GZYHOiuIdcIOBRa/JfVyB9ockg09WsMRtoXKHZ9mZqMwbiQsDJSaV
yUYbBIau+FuRzr6YCVB81wmBZTFJUM02VVjEzq1ttsQ4z2aowvO4C3YPhCWk
2rZjklNEP2xknUigLsBNY6yZ7/i/6qvNX3VClRI09fCp1gCZ66GBdtCAV0PM
pwvDAFyo2SiLNdoYv8+WFQ34EilvWL9Oq1MyvLC0iaymwSXWduFUvAMjqTh2
vsWKoPRCKQDuzECpotzHGQDqAtA+bniZo6Pip0PuWYAekMb3c/D6lJyJJWKr
3ywCBj4zQsNgoIbnZeEX3OnLI5Rv7squ17K3DWBU4yYNNr4FNKtEoJ7KFdhz
GJdNOqzD4VSTQ5Ow72QJCPpLs9jDz4CemhKtHt8zY+s4waRTmq+V3RBdVoR/
9pSb6Gic9Bnhw4fOepWTNOt7oC0zYK1Ea+NUMs4Lh3Ki7puSH+o7mCkAtiRt
aLNluhDTckZa5yZL2Nsl6ArGxHVgAFulCOS82nAOOvKU8NYt4Gr8L7yL2U0G
4aY4liLliGbE4I4F2KByVE74aRWMWYHIdt1nMgKfTHWhp5gCLUFD2jEIzdUY
mqDrk4MkEZDxW9iuPcLrEFh/z/EjTKfwOKHhr3jlFJNF5tFURdeGnWqM/CUc
h0LDSk6B9bGFSmyAwY6+NEO76rGubECodmv2gBJf7Mhb7x/TIlWexJJEdjwD
YTClqjeA/ZWNTTUkioabllN9aydcZDBHzjOQP/m3oCJ8bmdPwhuX7C841lIg
NANRMbBXYrc2ZMbuZq8HNYGMhvveBxuDAGQNgOK3oe1bnYmlG2grk8J9QuIV
xgnqLKgmWSkRmK50OC/L2S6hVgIyQ9bwvgbjOKJXy6GIAC8E6o9Mk2STShht
qidTG/lY0nmypoUphEPDvwdL1MXoKIwJlm/O8QidJBiNZMeemQ2OLKMVdOzm
/KKKNJAJIrVtI60I8soUYSgGK7B325hCjdxnrs21qfUQyRwgobGOsY9gnIKG
TZxTHEysFkTHyCQFSDGWC3DfDVjcgkTDrsNYXoGxOqCFbEl7uEUNTDmagTxj
P8521XgHUCayK+YaOFxovqi7EBd6kkoKc9mGFtCSlvK+VMeLr6cZCQSChhbw
jTXGdZ0uwidLZIFJIP3mu0qrZqHXZgE6a0lNFo4ltnK4Kr2EnAe/fKwnMETg
IHYdn8FTR6fbBDi9WgPQYXNeua9+0+2Kr/QMtFAefd3q9XZiLRHdmR09A3hm
dhr6bnrWMzeTFjj+xdetQzfMyhK1Xopu9yVJzCMRNquaONHhgGOyxEhnwoAf
YMIosklmsx5ni+syIdq4q9QHOZuT86SU2O2JH12it5aQ30lwu+381L7r7dZW
D3SBxaIehRDm6FS7V7zDYLrFxUfOc+gIinWQIBek+LoNyrAbKMNmz96pCHG5
JEZBxBLQK7tz789ParBAkloHHcsFCkLGcU7xZqINkIWXxRogOx38ACtsKIjk
VoIyPOMS8UVlt27lgoehvWLF4HC4c3iEjHg3N2Ku55SdaBbiapuj5dORF2b6
Fa5voBAsG0msP1Owl8e7610g6K+ImoBBF75tKOko6ot5kVmdXWmeBjWpjXMq
nTsjQ0xFhpIqDyTJiluvKByAwJ6BQSrFUSk7rtMpMFwTBi/g9xhGyR1A5LDE
lo3Zut0lLt4MnnT3d/fEVJop5jXY9tuYAosiumUIu6iJIxBjg2nsbGywgJKt
yhWihh7PrOf7uHLgouc4OZzNSgr8iguYA6wjvnjlwjHGT3OJDKfEw7XiaCAK
ey2aAi57N4Ihc1gpiqP4YA4xHLYAfDLTeZ7ZwA7HFGBK8MmoLOwq4Rccc4Bm
WGqDqRAXqy4WfkLfa4O22iVqCIEH60LPA1rtHrOLXEVjgA6midI5zlIWS8Et
K1BG0aYMMETksIOhNWUfpEL5IZIA1RcjcM1SR7ZxXKnIqWJPpqTUDWiIpWBG
gMVwYJyAy0ZNa6mnWo4Q6PdGMTDnlp1iQINhq7pFIdGxFuWcAR5L4lJoze3I
WWbYqwXlSXgWX64VGRKTOsD6wgT2fFkRO96EIUWPnGmkleBPDKuukfl/RPwA
H8kqP1ZZooRR4FTPOf1ZBbfYCsWVJ22/wZVDywjapQFOrZTtWH3A+NpNgxJo
di59cfXt8aUvoirgkTW8VEmVqWLe+xk8qSvMISsYZXupybZzoYFVyxDut4+e
HHxpKnb6TVQtu91Ol+inWekkX8vN1y7hPMEYjxQ3we4LxJdsV92dWA0Ru9V3
5j4wwtAlGkIsETA19CFOKd2PXDt1DToE7MW3mLBHXEr6AZaO/WdO151xllic
ZYnGZDGmFQjT29xfR6gi2mINzJPJ1RgBhK1g4Rq7hrng1qvEGgs2E7lwacyF
Cx6ImQLriXuUQ20sdj5OeKvjiQIoYpmfsFLw0WkUfO7AjoSuw8JzP1mQ8oQ+
S5Bo0jdDr70rjU6RPXoLqgmHqYIGzsohH71MnIdqg1LKuOYzy4ZqhIvAZtS0
sSs8OalNJ0sRttQZs73t7VwgQzVNHdad3LMc1BXhM8JWuA+8xkCHHD0N2w2K
VBGyyxs79WGeYN6Ukqdc/lN3bAKcWAuFNMx4PKYp/x9MFUAdlkiwPJBSIWdq
9zHz13utVeDBpaOr6foFP8xodhT+MWB8Da011teQCngVklUPBXAMhXO9jSEM
zroQOqgMnk6jpIzVXeN2xGFYc+EeBkicnhC4pT0VT7kCiRYaPkURqEotbByQ
v1mxueQ7+A18x5qsCwVVmlSPMC5g3XNChaiGQI3W3trFsdLieOc3NSAJqdFK
vqccR6VlXK9csGa5fVY5QTbuT3JmoSjibZWnHNZFbpva6KCKrE+tPhTdIsO0
qIqmFDAzVR1OyUE0kYK8YdDDf299BoRjy7gk0DIrfiox7O4kogMUf0+5xodl
GbmwJ2PdI9QYazZQsGNCRTmw5ZeKS9Ib4CCS4gJiOPc0m2WlqepCXCXLYOjL
QwL6oXtyd2y4WSRK5inXgsSKauRQ0GzWmZGN86+3rH+tKGtZsVHeyZReLYhn
txb8iSH42IKe9+dD3IIZIPhCmzErLNzrwAQV12EqldhV450POzaiA0s+tzEm
8aMtJf+p/cj+tYWUlrYGtAJYrLSNLYW8QhAF2Oor1H4vr0RXvFE1j+fKvbFI
yjttQfK29I5CvCKPvdooPgn48puvYNGleflj/6vqo5c/eQqugrZ+8OERakV2
Rm/03avAUUjKnF3Zsa5CUtk6LNVjekIZIjdR9xpW48Z5DRZJi/YR/RFs8K1O
LVjmtAbLtheDKtt+5Ya8wkMkBThLKO1XDRy76m15f6+mTxiVWlwbiKAvqrtD
NeIwcsXVVVUc/h59QTAB/Vxl45YY0L1R94Bf5z2xPTaqcmRDzXnP1I4pkBo3
OeMEbwJTTHWJtXTDB7IESX1AcphsEies/ipgS9YD9DkXFqxMzKUx/ISoAg75
flM3mVYvgopCJgoO4WN/5HMQZguLeGToamEKLybrns2Lrk5tvD/09NYkLGxp
nOE6XsNhxkb6OD6krH81g2XU6Hlo2FsUgwEd3sxDhgLi0C0FJY5sCAnoEzbu
bLNCsBlnd8ewV7Aly/RauqnGQFltfTvNaulFiqPCG1/u49NOK0tJIzWFFefV
yN2bYORPnxxwQr6ylkwcG3GFgjXxNoXLYngT/IpY+jpaHtKGQ5CmWCTq69Y4
ySS43YkaF18iNJzotJvryRSe7T6ef/jSxirXcv2iaZqmJXZ8BPOyZow831Ge
qYKICvzo6BLvvBuZazT21xrrIEgV1BNvIGV9VN1/AKDI0mJ3LgbTsxyP2YUv
7f6BjlZSpgKjB9S8DrQHnCStQXJu1gTW6Q054a9toTc+YFddvMqza0BN+OTc
F4SfZLANc2NBIx4+ANCJkKN2cINKqf3e8L6MywCuJj2Gl7hNMZ23QPsJTnXh
K2Bn7KRSlt2mQ2GTQm++BW0NxGUIrC9KqmOxGcYaWdAz1r2Y0mM6XECMsSw4
e2bPl9Q6Z2fzg/MyfKxTRnkGyM+t+fIJryAQiDmnKsFAGEqHir6ZiX2njsmc
+SIvDoRUtmQ50lUP97jU3oq+8k6wzqtEoWibchRmZSy7AR9gbhdFzAVZwyLu
5cS21YD12qOF82i4+Kwe36qRZlfJ1Vx2GmLXLkgQfsaW3JdkVnzZQnhQ67Jx
XGf+gOOvEW5Zq1TNYnMD4dSE0j95bak6Xi5nchGYuhxEsJ4MhwdA9ZgZAvt0
gqcZfNTTF2i1x40UbPUI0XlEuNygs8RUBzNDNlW1wCiNVWGriiTibwDrt4iD
EgyBL4LUMJ4M0TbKZCNMcV+0P370oK8bDPPp0xZVSTue4vksb+hDlm5uUFzX
joPSE3DLMchnw+upYF8Z6IOb1mf2nuPdrMAdHdRVVW9W5mjLePKu6+fTp45Y
P3U/6+PAVHta4pr2Y4lbIRS1rhXltxJP2/qf789Pgl/Do+DH0dk71POU3zzG
/GY1wJp5bgcvLtyeBjnAN2dU+YOZaNzfrxSugkXkDI78p9h6SKWoHMKt+mz/
cHyxtdN++26rPhbG9tqwD2I9pqNnRbW+1TSXvgnUwB2fx2osEcBf1QYL4u/L
vQY8a+hyHWe9W+PcAtTmS+H6z3RryHPHHMJydgToJwlSMpqGBYiApUekBlmN
h1khUQv6ObRGoWTsZBXWdarw3zryCH8u7Am4YJdO5U3d06BDf9QqztIvipUG
a2Gqq2DpWqJ89nupshBPogVTcKVKayAqjI852F9R9bFEzl3vguR4A2V9Jybd
c0tVlSZnMWr4yMmMgf3vv/dLiSGfuveQY9kfwlxAMyiNoSIdL1nkjkcfd7Vq
+k4VkTvR60M6IFY3Wt3a9GsFp9ijLnIFaExfY+UX0JxHnHrljH5VKsleWzNO
CcvJDOHXGUUMOTBB55HEuxxDKJcwGJ7Cw9NkMIhMJoiGpzNb8i7oaBBSRDj8
LVbFaqoLd4QwjrAAw9Sn/0W4p78kYIwJUBvwKbI5d+gLYzhbVEUbawlpP0fq
6DieKNcRDJ7aEpiRKm4V2Ef03KlvijmmlHnv1AdagWWktoPNbHNF9aLfO7ch
8il0ESkpQmxejSL4TUg4/cFL8us2JBK29sV9W7FOmyWrXrZia0UC5+XwDucF
th0ZDAzvq9SUQRk4leP/Njg+AZBhVqaU4HMBDRK4pv5dlohdCfIqWn9U8hrN
zYlOr1scFe5h7gKWxabJSMLpBet0LGCs6u58ztZw8om0PA+DCLmWpKBEaELh
7alMq84orYtmZEU9YHWY0TOdyBzVUp5hK9ADMcBgLxvehQVHRlkFjR4diHlQ
M4G14kHyzx/K8ec3X+kkIQ11WiWcL169OzVb+C1DQQpbglcrJ3WtYj2UH/GG
lZ/aj/A/WxT7Z9tEld+YySFe+olUx5pd5SlWfGmLNRE906kxYODPZcr7lyt2
qBgGOUfLQhX1WIuHANI37VLTLjbrumYAJdmZvMzBrReXvjPwwkmHDt4eWUMA
D0cKpaRA+SB9wWsFiMWeG1FY1Qo0G34DehWEkU9BvdGTqWi/2RLU961on2zR
ONPFHFVNsXTwGGN4DbW1bXuQC8PYXibah3zk7a9H3pXg4cfiTDQ8FIfir8Fu
OIPdA0/g+34X/+kv/Xfpnz62FCd0U0z13+3tk+1tsfRPreUb3/LNmpauxcmD
W97X58e+eHSPAPANOV+3DgORqqTgHFl2apu2PpHkljkVZdm19gosFGM6QMLO
ja1hPrY1GisnIGxh0D/DP3R0AYjmm3haXLDW6ouP1dU8Lbw6qvWg67o6wVc3
fL0Sfvi4d9B7Is5fH9Ya+Dg/NtndfxY/23s6ejHei0dKvni+u/dC7u0+fT7e
299/8XTv2f7e0+f70X4c7R/sR88Pxs+eRgePo+fj8dMXz+L9g8ePn0dP1O6L
6ODgiXqy++zJk4P9F7t7au/Z6PljJZ8/jsfR090n4+eRhJ5fPDuId3f3x9Bg
/9nBwWi812LCPnUcI1I5BwVaLLHCJkvqT+lNmSc4j6Xqn3DC1CyoPMPmrer1
p5A3GJQzBXQDjXafPX6x9/zJwdNnYYuJq3tsoKVhwVYIoUQONsrUyrtiMafv
sQ5s5aU9k4nvG2uK102JKg0aiEXAuPq4Rgf2v0yHXQ4+V7HEyuWxqS1HdP8/
RnLnmu4ZCzAeFmWCtfnsEQMWW7nd3PjEG5oVkEV/VhK76CZ3f6YDP6x57lIN
rHIeiQt33uhwqWqCYsTO43EVMf6olbt5wrArwFieDkh9/Pg7PHa/t39Ax+41
Ky0JgGEyBTyM/+ZicTq1aO+vcHdMDMI7DMLTm/bsmCzwbhlO1Pgc0S3CW5ea
R0ccaSGy+FoLusgE8RuPgnYyKAijHsWNiigHFxzzc54SfJ7lhUw5TICwKiQs
mLntHh0qe7OQ9YjodOFIjTOKT9t0LIdiKDU/04WecHNkFVOEAsQgkDr/TpEG
pjpLdt849ucuWVvK6mBYap5Bc1ucG8QGcJoWNSJHCY9ZLACAAR0SybeZGNuB
pcgEXp5dB3/jCQUOmI4gP+rhla2Tttr2yt4GREDb+kMuQY0Jsw7WNoHfzwcM
6cRyWdBFTUsd9UjbVOXWFGD1JyYcQX7aFgOik5szMPa1g8iAMaBQV/nK+eXR
wqarvYtmBw6y195bCGr6a8lqwJQyiey1RFTp5rz3Za5ko58Vno0Y2ng4KODS
HudZju9ADzPaSXSwAWGjzVSA8MWqoOsbKJdKvF2pbnGx6zggHwMVbjX9rTxi
bDGJTm/wIqbJmiMylILi6SYqt7c4VGW7S+LnJPQ1c7xKUEOHU7z8iPZotR5h
fIp0CQgL4KgZs0mjD5JzjT6fCHHJ0GTBCNyjJzxXyNEPnGjkjwlW971g7Zk9
FtXzEWogpgxOsQXb35afuyPyLGCOZ5xrp/q7lWz7StQPhc2fTLAqgs6rM0WW
UBNxrfxMoeLUZlavy6tVGoS5Vy5P4lOgrt7AlY+J4eDtoEH9319bxJPwFUZc
c0U6LCgrYuF19S5X2NwlqSstlKsJFkzkzidDkiy+HeD9crRnXvP9ThdFGS9W
M7xFNkfIio6wFQOXzwd6LEz1Sa/wehlwVvj6HOlHoiQNj2ZwNFvDdGyv2qkV
EjafPKYin2PrtNnDFjPYjRnnlh8Wo6gXQAbPMSqDAzSFcCrRINl0KU4Q4G4k
2Txsi8vFnK8qASceG7gjmCCA5GQulQ9Uuo0/dzdwWdrXHXsILuVqLlnZhsV0
J+A4Q8EF40sFt2fD4cr5Mn/Yljmdwpxpc3JlpayVfJJIDc6HA/HHJ4eAaTCO
o+w9ssFNZE5NKJdZX7fEFiQMjk6pYhkYL+1I7T/hfVC8sfimR87Lu602oANF
+oNTgATg7G7jyFkVqOCbEklBRxg9rA4xcLDgars3L2dg/vhYfL10lhv/eJYA
bnl/elKdDJzjE/iMDjY4Uh/dcbCR/Mcz6GNz4xs63gof4zeEMWsS6Dqwip6u
Sb4G9CNhXiLHm3sPsxzkXuzu053GFNxo+ezZoEWXhA1W37ziN6/cG3efhhHf
Y0c+kydaVYKFezscrHnNXR5Cl4SowmAjf3k0aHjFXx35r5o2LTehI99c0dJ9
2Xas2eq7nOzmxsWgW867L5HCi1f8J/R7yE9x9EN+iqMd8dO22+Rb8OjVyqNq
mOXn7m94HhQOwpvgF74LLAa9DX8DJSABwHla/xUnpOFwrQ+ArD9Z+8lJ3x2H
EteJIAvgnR/eJYBU31uCH5BXwsiCtbnhAVy4+CuFn7TSmMN11rnVcGCRRXf4
bdjpa39msbnPo+FFdTeR6L6EQXwSipVZWI4tF3gF9ebG8Mg1/d65H+R6uDdA
RB/0rU2VxJRi6LjzZVh+Q1mWI/EVaC1u6ypw67Wa7IvSZelIh6+p8XPxZxxh
Hg/oDWYZEn+STYIjZRZB105SQAfh95ZNOBB+3xwHe5DgLh+adQJ814lZL8Gf
Wap2n2Jd2x2tv/d9HZh7uKyzpGPd2OYGVY8B3+0tWA0Vs7YNMtc1Whdo/MxN
U42OqxbWj1a1xnSUIZy8p2pzgwUwZNOaGlSW10rAzt2tYK6ERNbxiT+oE37Y
crV+u63+uoEq6ux3yLXah6uFq2K3cZS3v3aUt82jvLXbLFhOUhRhSxdACJfG
rbm7rHO9VFQtXC8P2nLrikXd1vvcAlC/HR+UyL/btDywC9p6+OnmRq7mYOpw
ZfpOXa/NP+Pq6bFoB6O8o4oQFf+Org1JRXuhzJaLAva9Vl/pBl8ibxaNr4j2
xjc8nkjsXSZ8+1aVEPQNkczGaj8qczeN5EL37+dELqWQSWtBgyJo8D6l1G/d
wfeDqgRUSTvNgg8efZslcX97e4Axhu1t0bKqf7lEsPqiiepWNQTYE/u/Y1gZ
7RE4ONefMRbGBQNg48cw4JfaIXg0lhGMjIKItRt5sFqGTkz8Hd2jSVwmEphc
oNGCDbW9ba+kW4KkQMyjuUxAqymVQvsjDnrBrNhbwk3UjGW/RNHO6H+h8jDo
t1RZ47bxw8pq7t68jan/hh0802k8k/M7d/Gavu6yobZepG3zpYFYbotd0fbb
Zms1yr8tntzdoGr4/L6enjY32BZ79325/1AaXjy04cF9Qz6rN0AR8qvzIDHC
kpA7Zai5HsTmNgbRdZrdJiqe2Hr5j31GQSr+uoXhRStyZ/6+F9hf+H8C4ksJ
uDjqwWcr6WVjUY0tVM/yorrb5A3+j2L8fdU+1HBcYqpCpqiGXTiZz5fhDdQR
yPPuPgWQckxIDHBHUyDrbdYTB/u7B8/3OKQyPLzsqRL/VytPfPlikNitKlns
sWsM2vL/GEJhLTl5NBbXuyi+ziluzxlse+KAz56VHBrq2Fv0ZzNXSS/Ta7HI
SjEw00SBfixhw4vvtEp/wQD9IJ0Am+H3DNyQTKYpcP+f1GyuruW1ht6+k3ki
Tv/rP2LQDxiWyaFZLIH/efbf/y5TFXXEYSJLPKJ/BEJwlv2SdcTvM5VPxKuS
7gWSuYaX3+W6jKYZEHuq06mUP4Pmmc5k2hHvEnVttBanWYJBs+zGXC90Bzb6
CE8xg2+Zg+h2xBnoavF9llxnY2hQRYww9vS/+NHUsutqAAA=

-->

</rfc>
