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


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

<!ENTITY RFC2119 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC3339 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3339.xml">
<!ENTITY RFC8174 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
<!ENTITY RFC7493 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7493.xml">
<!ENTITY RFC8259 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8259.xml">
<!ENTITY RFC8610 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8610.xml">
<!ENTITY RFC8615 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8615.xml">
<!ENTITY RFC8927 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8927.xml">
<!ENTITY RFC3986 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3986.xml">
<!ENTITY RFC9110 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9110.xml">
<!ENTITY RFC9111 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9111.xml">
<!ENTITY RFC9547 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9547.xml">
<!ENTITY RFC7326 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7326.xml">
<!ENTITY I-D.ietf-green-terminology SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-green-terminology.xml">
<!ENTITY RFC6454 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6454.xml">
<!ENTITY RFC7033 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7033.xml">
<!ENTITY RFC6350 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6350.xml">
<!ENTITY RFC6648 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6648.xml">
<!ENTITY RFC2277 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2277.xml">
<!ENTITY RFC5198 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5198.xml">
<!ENTITY RFC5890 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5890.xml">
<!ENTITY RFC9457 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9457.xml">
]>


<rfc ipr="trust200902" docName="draft-besleaga-sustainability-wellknown-05" category="info" submissionType="independent">
  <front>
    <title abbrev="Sustainability-Data Well-Known URI">The 'sustainability-data' Well-Known URI</title>

    <author initials="A. N." surname="Besleaga" fullname="Andrei Nicolae BESLEAGA">
      <organization>Independent</organization>
      <address>
        <email>andrei.besleaga@ieee.org</email>
      </address>
    </author>

    <date year="2026" month="July" day="28"/>

    
    <workgroup>Independent Submission</workgroup>
    <keyword>Internet-Draft</keyword> <keyword>Sustainability</keyword> <keyword>Carbon Accounting</keyword> <keyword>Well-Known URI</keyword> <keyword>Energy Efficiency</keyword>

    <abstract>


<?line 86?>

<t>This document defines the "sustainability-data" well-known URI. This URI provides a uniform, out-of-band convention for web servers and digital services to publish aggregated environmental impact, energy consumption, and carbon footprint metrics for a declared reporting subject -- typically the publishing origin itself.</t>

<t>By utilizing an asynchronous reporting model, this approach allows for transparent environmental accounting without the bandwidth and energy overhead associated with per-request HTTP headers.</t>



    </abstract>



  </front>

  <middle>


<?line 92?>

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

<t>The digital economy consumes a significant and growing percentage of global electricity. Emerging regulatory frameworks, such as the EU Corporate Sustainability Reporting Directive (CSRD) <xref target="EU-CSRD"/>, as well as industry standards like the Green Software Foundation's Software Carbon Intensity <xref target="GSF-SCI"/> and the W3C Web Sustainability Guidelines <xref target="W3C-WSG"/>, increasingly call for organizations to disclose the environmental impact of their digital services.</t>

<t>These transparency efforts align with the United Nations 2030 Agenda for Sustainable Development <xref target="UN-SDG"/>, specifically supporting energy efficiency and sustainable infrastructure targets, encouraging companies to integrate sustainability information into their reporting cycles. The need for better data on the environmental impact of Internet systems, and the current gaps in that data, are documented in the report of the IAB Workshop on Environmental Impact of Internet Applications and Systems <xref target="RFC9547"/>.</t>

<t>While initial proposals for carbon transparency focused on per-request HTTP headers, such methods introduce a "rebound effect" where metadata increases the carbon footprint of the transaction. This document leverages <xref target="RFC8615"/> to define a <spanx style="verb">/.well-known/sustainability-data</spanx> URI for out-of-band reporting. This out-of-band mechanism allows servers to publish periodic, aggregated metrics, enabling workflows where environmental impact is a primary constraint alongside cost and performance. The origin publishes the document; the document's mandatory <spanx style="verb">target</spanx> member declares the reporting subject -- what the metrics are about, which is typically the origin itself but may be another entity or scope (see the URI Definition section).</t>

<t>[Note to the RFC Editor: the remainder of this paragraph records Internet-Draft lineage and may be removed or reworded at publication.] This document continues and replaces draft-besleaga-green-sustainability-wellknown. The rename reflects that this is an individual Independent Submission and is not scoped to any IETF Working Group. Revision -03 reworked the data model: it adopted member omission as the only "not reported" mechanism, reduced the mandatory member set, introduced a mandatory <spanx style="verb">target</spanx> member identifying the reporting subject, and renamed two carbon members to the CO2e convention; documents built to that data model carry the informational label <spanx style="verb">"2.0"</spanx>, and the changes are breaking with respect to the historical <spanx style="verb">"1.0"</spanx>/<spanx style="verb">"1.1"</spanx> field set (see the Changelog). As of revision -04, the requested well-known URI suffix is <spanx style="verb">sustainability-data</spanx> (earlier revisions requested the suffix <spanx style="verb">sustainability</spanx>); the change follows Independent-Stream review feedback on the precision expectations of <xref target="RFC8615"/>.</t>

<t>The convention is designed to be usable, unchanged, in four consumption contexts: by web clients, as a plain HTTPS GET on a fixed well-known URI with standard HTTP caching and conditional requests; by machine-to-machine and API integrations, as a stable JSON wire format with formal Concise Data Definition Language (CDDL) and JSON Type Definition (JTD) schemas and well-defined query and response semantics; by human readers, through self-describing member names and a mandatory link to the measurement methodology; and by automated agents and AI systems, as a document that is machine-discoverable at a fixed location, schema-validatable, and safe to ingest without content negotiation or prior arrangement.</t>

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

<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they appear in all capitals, as shown here.</t>

</section>
<section anchor="goals-and-non-goals"><name>Goals and Non-Goals</name>

<section anchor="goals"><name>Goals</name>
<t><list style="symbols">
  <t>Provide a single, discoverable location, per origin, for environmental metrics about a declared reporting subject (typically the origin itself).</t>
  <t>Define a minimal, machine-readable JSON structure, suitable for broad adoption.</t>
  <t>Ensure interoperability between clients and servers.</t>
  <t>Support alignment with the Greenhouse Gas (GHG) Protocol <xref target="GHG-PROTOCOL"/>, the EU CSRD <xref target="EU-CSRD"/> and the European Sustainability Reporting Standards (ESRS) E1 climate standard <xref target="ESRS-E1"/>, and product-level disclosure regimes such as the Digital Product Passport established by the EU Ecodesign for Sustainable Products Regulation <xref target="EU-ESPR"/>.</t>
  <t>Mitigate security and privacy risks associated with publishing the data (like hardware fingerprinting).</t>
</list></t>

</section>
<section anchor="non-goals"><name>Non-Goals</name>
<t><list style="symbols">
  <t>This document does not mandate a specific calculation or measurement methodology.</t>
  <t>It does not define the verification, validation, certificates, or attestation mechanisms for the data itself, though it provides links to external attestations.</t>
  <t>It does not replace domain-specific reporting standards; it defines discovery and semantics and provides a discovery surface for linking to authoritative reports.</t>
</list></t>

</section>
</section>
<section anchor="relationship-to-other-work"><name>Relationship to Other Work</name>

<t>This document specifies an application-layer discovery mechanism for aggregated environmental metrics published at the origin level. It defines discovery and data semantics only, over HTTP <xref target="RFC9110"/>, and does not profile or constrain the underlying measurement methodology.</t>

<t>In particular, it does not define, profile, or update network-equipment energy metrics, YANG data models, or network-domain energy monitoring and capability discovery. Such work is the subject of the IETF GREEN Working Group and, earlier, of the EMAN framework <xref target="RFC7326"/>; the GREEN charter explicitly excludes carbon accounting and reporting. This document therefore does not overlap with, update, or obsolete any IETF-stream document, and is complementary to that network-layer work. Terminology for energy-efficient network management is being developed in that group <xref target="I-D.ietf-green-terminology"/>; this document's vocabulary is at the reporting and disclosure layer and does not redefine those network-management terms. Sustainability at the level of the Internet as a whole is also a topic of research in the IRTF (for example, the Sustainability and the Internet Research Group), which defers protocol standardization to the IETF; this document is an individual Independent Submission and is not a product of, nor endorsed by, any IETF Working Group or IRTF Research Group.</t>

<t>This document complements existing disclosure conventions rather than replacing them. In particular, the Green Web Foundation carbon.txt convention <xref target="CARBON-TXT"/> is a TOML index that links an origin to its published sustainability disclosures (reports, certificates, and hosting or energy-source evidence); it records <em>where</em> an origin's disclosures live, and contains no quantitative metrics. The "sustainability-data" well-known URI instead publishes the <em>numeric metrics themselves</em> in JSON. The two compose without either depending on the other: a Sustainability Metadata Document (defined in the URI Definition section) can link to a disclosure index -- a carbon.txt file being one such form among others -- through the optional <spanx style="verb">disclosure-uri</spanx> member, and a carbon.txt file can list the <spanx style="verb">/.well-known/sustainability-data</spanx> endpoint among an origin's disclosures.</t>

</section>
</section>
<section anchor="the-sustainability-data-well-known-uri"><name>The "sustainability-data" Well-Known URI</name>

<section anchor="uri-definition"><name>URI Definition</name>

<t>This document defines the "sustainability-data" well-known URI and requests its registration in the "Well-Known URIs" registry (see the IANA Considerations section). A client requests metrics by issuing an HTTP GET (or HEAD) request. A provider publishing the metadata MUST make it available at the path <spanx style="verb">/.well-known/sustainability-data</spanx> on the origin.</t>

<t><list style="symbols">
  <t><strong>Origin</strong>: The combination of scheme, host, and optional port (e.g., <spanx style="verb">https://example.com</spanx>); see also the web origin concept <xref target="RFC6454"/>.</t>
  <t><strong>Sustainability Metadata Document</strong>: The JSON document returned from <spanx style="verb">/.well-known/sustainability-data</spanx>.</t>
  <t><strong>Provider</strong>: The entity operating the origin and publishing the sustainability metadata (also referred to as the publisher).</t>
  <t><strong>Reporting subject</strong>: The entity or scope that a Sustainability Metadata Document's metrics describe, identified by the mandatory <spanx style="verb">target</spanx> member of each object. The origin is <em>where</em> the document is published; the reporting subject is <em>what</em> the data is about -- most commonly the origin itself (see the <spanx style="verb">target</spanx> member in Mandatory Response Fields for the range of possible subjects).</t>
</list></t>

</section>
<section anchor="mandatory-minimum-supported-service"><name>Mandatory Minimum Supported Service</name>

<t>The resource SHOULD be served over HTTPS. The HTTP methods, status codes, and header fields used in this document are defined in HTTP Semantics <xref target="RFC9110"/>. Absent redirection, cache revalidation, or rate limiting, a <spanx style="verb">GET</spanx> request MUST receive a <spanx style="verb">200 OK</spanx> with a JSON body when metadata is available; a <spanx style="verb">HEAD</spanx> request MUST receive the same status and header fields with no message body. If no metadata is published, servers SHOULD respond with <spanx style="verb">404 Not Found</spanx>. A request using any method other than <spanx style="verb">GET</spanx> or <spanx style="verb">HEAD</spanx> SHOULD receive <spanx style="verb">405 Method Not Allowed</spanx> with an <spanx style="verb">Allow: GET, HEAD</spanx> header (<xref target="RFC9110"/>, Section 15.5.6). Successful (<spanx style="verb">200 OK</spanx>) responses MUST use the <spanx style="verb">application/json</spanx> media type, SHOULD follow I-JSON <xref target="RFC7493"/> for maximum compatibility, and SHOULD include appropriate caching directives (see Operational Considerations). Because the document is public and intended for browser-based clients as well, successful responses SHOULD also include an <spanx style="verb">Access-Control-Allow-Origin: *</spanx> header (Cross-Origin Resource Sharing), following the practice of WebFinger <xref target="RFC7033"/>. A server MAY redirect the well-known URI; clients that follow a redirect MUST attribute the returned document to the origin of the final response, and providers SHOULD NOT redirect to a different origin.</t>

<t>A compliant server MUST support the following "Basic" service level:</t>

<t><list style="symbols">
  <t><strong>No Parameters</strong>: Requests to the root URI with no query strings.</t>
  <t><strong>Scope</strong>: The response to a parameterless request MUST cover the provider's full declared reporting subject, identified by the <spanx style="verb">target</spanx> member (see Mandatory Response Fields). When the reporting subject is the origin itself -- the common case -- the metrics MUST represent the aggregate impact of the entire origin, not a subset of its resources.</t>
  <t><strong>Default Period</strong>: The server MUST return the most recently completed reporting period it publishes. A period matching the publisher's own reporting cycle is RECOMMENDED: a full calendar year for the periodic, regulatory-style disclosure that is the common case, or a full calendar month for publishers that report more frequently.</t>
  <t><strong>Format</strong>: The server MUST return a single JSON object.</t>
</list></t>

</section>
<section anchor="optional-extended-query-parameters"><name>Optional Extended Query Parameters</name>

<t>Servers MAY support "Extended" capabilities via the following parameters:</t>

<t><list style="symbols">
  <t><strong>target</strong>: Scopes the metrics to a resource path prefix (e.g., <spanx style="verb">?target=/api/v1/search</spanx>), matched against the origin's resource paths; the value follows URI path syntax <xref target="RFC3986"/> with characters not permitted in a query component percent-encoded. Matching is byte-wise and case-sensitive, on complete path segments, and is performed after percent-decoding. A server that scopes a response to a requested <spanx style="verb">target</spanx> parameter MUST set the <spanx style="verb">target</spanx> member of each returned object to the matched prefix. The <spanx style="verb">target</spanx> query parameter and the <spanx style="verb">target</spanx> response member are distinct: the parameter requests path-prefix scoping, while the member identifies the reporting subject of whatever is returned (see Mandatory Response Fields). Servers SHOULD honor the <spanx style="verb">target</spanx> parameter only for a deliberately published set of path prefixes, responding identically (per the no-data rule below) for all other values; this avoids disclosing the existence of unpublished paths (see Privacy Considerations, Path Disclosure).</t>
  <t><strong>period</strong>: Specifies the timeframe using one of the following calendar-date precision forms (only <spanx style="verb">YYYY-MM-DD</spanx> is an RFC 3339 <xref target="RFC3339"/> <spanx style="verb">full-date</spanx>):
  <list style="symbols">
      <t>Year: <spanx style="verb">YYYY</spanx> (e.g., 2025)</t>
      <t>Month: <spanx style="verb">YYYY-MM</spanx> (e.g., 2025-01)</t>
      <t>Day: <spanx style="verb">YYYY-MM-DD</spanx> (e.g., 2026-01-01)</t>
    </list>
Calendar periods are interpreted in UTC unless the methodology document states otherwise.  <vspace blankLines='1'/>
These forms name a whole calendar period rather than a pair of start and end instants, which is a deliberate choice. Calendar periods -- most commonly the reporting year -- are the granularities at which the disclosure regimes this document serves already aggregate their figures, so two publishers reporting <spanx style="verb">2026</spanx> report the same nominal period, subject to the UTC default above, and their documents are directly comparable, whereas arbitrary intervals would have to be re-apportioned before any comparison. Calendar periods also keep the set of distinct parameter values small, enumerable, and canonical, which is what keeps bounded the cache-key space that Denial of Service in the Security Considerations addresses. The forms are the reduced-precision calendar dates of ISO 8601, whose use to denote a whole year or a whole month has wire precedent in vCard <xref target="RFC6350"/>, Section 4.3.1; <xref target="RFC3339"/> itself defines no interval type in its normative text. A publisher whose reporting year does not align with the calendar year can publish the constituent months, or the enclosing calendar years, and describe the alignment in the <spanx style="verb">methodology-uri</spanx> document; an explicit interval form could be introduced later as an extension under Versioning and Extensibility without invalidating any document published under this specification.</t>
  <t><strong>granularity</strong>: Defines the time "slices" within a period. This document defines the values <spanx style="verb">monthly</spanx> and <spanx style="verb">daily</spanx>; a server SHOULD ignore an unrecognized value or a granularity that is not finer than the requested period. When the granularity is finer than the period, the server SHOULD return an array of objects.</t>
</list></t>

<t>A <spanx style="verb">period</spanx> request without a (finer) <spanx style="verb">granularity</spanx> requests a single object covering exactly that period; a <spanx style="verb">granularity</spanx> without a <spanx style="verb">period</spanx> applies to the default period of the Basic service. If the server holds only finer-grained data for the requested period, it SHOULD either aggregate it into a single object or respond per the no-data rule below. Aggregation sums energy and carbon after conversion to a single declared unit; other metrics SHOULD be recomputed for the aggregated period or omitted. The server MUST NOT return an array unless a <spanx style="verb">granularity</spanx> finer than the period was requested. For a requested period that has not yet completed, the server SHOULD report the completed portion to date.</t>

<t>Servers that do not support the Extended parameters MUST ignore any such parameters and return the Basic response, rather than failing the request. If a supported parameter carries a malformed value (for example, a <spanx style="verb">period</spanx> that is not a valid date), the server MAY respond with <spanx style="verb">400 Bad Request</spanx>, or ignore the offending parameter and process the remainder of the request. (This applies to syntactically invalid values; an unrecognized value of an enumerated parameter such as <spanx style="verb">granularity</spanx> is instead ignored, as specified above.) When a server supports the requested parameters but has no data for a valid requested <spanx style="verb">period</spanx> or <spanx style="verb">target</spanx> parameter value, it SHOULD respond with <spanx style="verb">404 Not Found</spanx> (the "no-data rule").</t>

</section>
<section anchor="payload-format-json-data-model"><name>Payload Format (JSON Data Model)</name>

<t>A successful response body MUST be either a single JSON object <xref target="RFC8259"/> or an array of such objects (an array is used to convey a trend, that is, several reporting periods); the media type is <spanx style="verb">application/json</spanx>, as required in Mandatory Minimum Supported Service. A single object is equivalent to a one-element array; clients MUST accept both forms and determine which was returned from the JSON top-level type. An array response MUST contain at least one object (a server with nothing to report follows the no-data rule instead); a client that nevertheless receives an empty array SHOULD treat it as conveying no report.</t>

<t>In an array response, the entries MUST be sorted in ascending order of <spanx style="verb">reporting-period</spanx>, MUST NOT cover overlapping periods, and MUST share the same period precision and the same <spanx style="verb">target</spanx> value; <spanx style="verb">target-type</spanx> MUST be either present in every entry with the same value or absent from every entry. The same units SHOULD be used across all entries; other members (for example, <spanx style="verb">capabilities</spanx> or <spanx style="verb">provider</spanx>) are not constrained across entries.</t>

<section anchor="mandatory-response-fields"><name>Mandatory Response Fields</name>
<t><list style="symbols">
  <t><strong>version</strong> (string): An informational label identifying the schema revision the publisher used to build this document (e.g., <spanx style="verb">"2.0"</spanx>). It is a human- and debugging-oriented hint only and carries no negotiation or conformance semantics. Clients MUST NOT reject a document, or alter processing, solely because of the value of this field, and apply the ignore-unknown rule (see Versioning and Extensibility) regardless of the value present.</t>
  <t><strong>updated</strong> (string, date-time): The timestamp (<xref target="RFC3339"/>) when the document was last updated.</t>
  <t><strong>capabilities</strong> (string): A self-declared indicator of the service level. It MUST be either "basic" or "extended". "basic" denotes that only the Mandatory Minimum Supported Service is provided; "extended" denotes that one or more of the Optional Extended Query Parameters are supported. The value describes query-parameter support, not member presence: a document declaring "basic" MAY carry any optional members. The value is determined per response and MAY, at the provider's discretion, reflect the overall server, an individual response, or a specific reporting subject (the <spanx style="verb">target</spanx> member). A value of "extended" does not, by itself, guarantee support for any particular Extended parameter; clients determine actual support from the server's behavior.</t>
  <t><strong>provider</strong> (string): Information about the provider publishing the metadata.</t>
  <t><strong>measurement-method</strong> (string): The methodology used, given as a short token or reference. The values <spanx style="verb">hardware-metered</spanx>, <spanx style="verb">hardware-estimated</spanx>, <spanx style="verb">cloud-billing</spanx>, and <spanx style="verb">third-party-modeled</spanx> are RECOMMENDED and are machine-matchable tokens compared as described in the Internationalization Considerations section; a publisher whose method is not one of these gives a brief description instead, which is human-readable text.</t>
  <t><strong>methodology-uri</strong> (string): Link to the full methodology specification (calculation methodology). In general, the methodology document SHOULD describe the measurement or estimation method in enough detail to interpret the published figures, and is the designated place for details that other provisions of this document direct there -- among them: any non-UTC interpretation of calendar periods, the precise meaning of a <spanx style="verb">functional-unit</spanx>, the extrapolation behind <spanx style="verb">estimated-annual-emissions-kgCO2e</spanx>, the net-accounting basis of any negative scope values, and any anti-fingerprinting noise applied (see Privacy Considerations). See also the minimum-reporting rule in Value Constraints and Omitted Metrics.</t>
  <t><strong>reporting-period</strong> (string): The timeframe covered by the object, expressed using the same calendar-date forms as the <spanx style="verb">period</spanx> parameter (<spanx style="verb">YYYY</spanx>, <spanx style="verb">YYYY-MM</spanx>, or the <xref target="RFC3339"/> <spanx style="verb">full-date</spanx> <spanx style="verb">YYYY-MM-DD</spanx>); those forms, and the reasons this document names whole calendar periods rather than arbitrary intervals, are given in Optional Extended Query Parameters.</t>
  <t><strong>target</strong> (string): The reporting subject of this object: an identifier of the entity or scope to which the metrics are attributed. It is an opaque protocol element, not display text: clients compare it octet-for-octet and MUST NOT translate or transliterate it (see Internationalization Considerations, which gives the comparison rules for a <spanx style="verb">target</spanx> that names a host or a path prefix). Typical values are an origin or domain (for an origin-wide report the origin's host, e.g., <spanx style="verb">"example.com"</spanx>, is RECOMMENDED), a resource path prefix (e.g., <spanx style="verb">"/api/v1"</spanx>), an organizational entity, a cloud tenant or provider scope, a software product or data source (e.g., <spanx style="verb">"example-metrics-feed"</spanx>), or a device. When the response is scoped by the <spanx style="verb">target</spanx> query parameter, the member carries the matched prefix, as required in Optional Extended Query Parameters -- which also distinguishes the parameter from this member. The reporting subject SHOULD be within the provider's own operational responsibility; clients SHOULD treat a <spanx style="verb">target</spanx> naming a subject other than the origin as a claim made by the origin's operator about that subject, and nothing more (see Trust and Spoofing). The OPTIONAL <spanx style="verb">target-type</spanx> member (see Optional Response Fields) can classify the kind of subject named here.</t>
</list></t>

</section>
<section anchor="optional-response-fields"><name>Optional Response Fields</name>

<t>The JSON object MAY contain the following OPTIONAL keys to align with the GHG Protocol <xref target="GHG-PROTOCOL"/>, the ESRS E1 climate standard <xref target="ESRS-E1"/>, and other sustainability recommendations:</t>

<t><list style="symbols">
  <t><strong>energy-consumption</strong> (numeric): Total energy consumed by the reporting subject during the reporting period. The value MUST NOT be negative. It is expressed in the unit given by <spanx style="verb">energy-unit</spanx> (default <spanx style="verb">kWh</spanx>; see that member).</t>
  <t><strong>energy-unit</strong> (string): The unit of energy for <spanx style="verb">energy-consumption</spanx> (MUST be one of: <spanx style="verb">Wh</spanx>, <spanx style="verb">kWh</spanx>, <spanx style="verb">MWh</spanx>, or <spanx style="verb">GWh</spanx>). When this member is absent, the default <spanx style="verb">kWh</spanx> applies. Publishers SHOULD state the unit explicitly; an <spanx style="verb">energy-unit</spanx> member without an accompanying <spanx style="verb">energy-consumption</spanx> member has no effect and SHOULD be omitted.</t>
  <t><strong>carbon-footprint</strong> (numeric): Total gross emissions impact attributable to the reporting subject during the reporting period, expressed in the unit given by <spanx style="verb">carbon-unit</spanx> (default <spanx style="verb">gCO2e</spanx>; see that member). The value MUST NOT be negative; see Value Constraints and Omitted Metrics for the treatment of removals and net accounting.</t>
  <t><strong>carbon-unit</strong> (string): The unit of carbon measurement (MUST be one of: <spanx style="verb">gCO2e</spanx>, <spanx style="verb">kgCO2e</spanx>, or <spanx style="verb">mtCO2e</spanx>). When this member is absent, the default <spanx style="verb">gCO2e</spanx> applies, both to <spanx style="verb">carbon-footprint</spanx> and to every other member expressed "in the unit given by <spanx style="verb">carbon-unit</spanx>". A <spanx style="verb">carbon-unit</spanx> member without any member it parameterizes has no effect and SHOULD be omitted.</t>
  <t><strong>carbon-accounting</strong> (string): "location-based" or "market-based" (following <xref target="GHG-PROTOCOL"/>).</t>
  <t><strong>scope-1</strong> (numeric): Estimated Scope 1 (direct) carbon emissions.</t>
  <t><strong>scope-2</strong> (numeric): Estimated Scope 2 (indirect/purchased energy) carbon emissions.</t>
  <t><strong>scope-3</strong> (numeric): Estimated Scope 3 (value chain) carbon emissions.</t>
  <t><strong>sci-score</strong> (numeric): Software Carbon Intensity (SCI) score <xref target="GSF-SCI"/>. The value MUST NOT be negative. If <spanx style="verb">sci-score</spanx> is present, <spanx style="verb">functional-unit</spanx> MUST also be present.</t>
  <t><strong>functional-unit</strong> (string): The functional unit to which per-unit metrics are expressed (e.g., "per-request", "per-user"); its precise meaning SHOULD be defined in the <spanx style="verb">methodology-uri</spanx> document.</t>
  <t><strong>carbon-intensity-gCO2e-per-kWh</strong> (numeric): Weighted carbon intensity in grams of CO2e per kWh. The value MUST NOT be negative.</t>
  <t><strong>estimated-annual-emissions-kgCO2e</strong> (numeric): Estimated annual gross emissions attributable to the reporting subject, in kilograms of CO2e regardless of <spanx style="verb">carbon-unit</spanx>. The value MUST NOT be negative. This is an annualized figure: when <spanx style="verb">reporting-period</spanx> is shorter than a year, it is an extrapolation, and the extrapolation method SHOULD be described in the <spanx style="verb">methodology-uri</spanx> document.</t>
  <t><strong>renewable-energy</strong> (numeric): Percentage of energy from renewable sources; the value MUST be between 0 and 100 inclusive.</t>
  <t><strong>verifiable-attestation-uri</strong> (string): Link pointing to a verifiable credential or attestation, to support independent verification of the published metrics.</t>
  <t><strong>disclosure-uri</strong> (string): URI of a machine-readable sustainability disclosure index for the origin or reporting subject, that is, a single document listing links to its public sustainability disclosures (reports, certificates, hosting and energy-source evidence). This document does not constrain the format of that index, and does not define or recommend any path at which it is published: the member carries whatever URI the publisher's disclosure index actually has. A <spanx style="verb">disclosure-uri</spanx> links to supporting evidence and MUST NOT be treated by clients as proof of the metrics in this document.</t>
  <t><strong>target-type</strong> (string): A hint classifying the reporting subject named by <spanx style="verb">target</spanx>, to aid machine interpretation of that member. This document defines the values <spanx style="verb">origin</spanx> (the publishing origin itself; <spanx style="verb">target</spanx> SHOULD then be the origin's host), <spanx style="verb">path</spanx> (a resource path prefix on the origin), <spanx style="verb">organization</spanx>, <spanx style="verb">service</spanx>, <spanx style="verb">product</spanx>, <spanx style="verb">device</spanx>, <spanx style="verb">tenant</spanx>, and <spanx style="verb">data-source</spanx>. The member classifies <spanx style="verb">target</spanx>; it does not change <spanx style="verb">target</spanx>'s syntax or the attribution rules in its definition. A client that does not recognize the value interprets <spanx style="verb">target</spanx> as if this member were absent (see Value Constraints and Omitted Metrics).</t>
</list></t>

<t>The <spanx style="verb">scope-1</spanx>, <spanx style="verb">scope-2</spanx>, and <spanx style="verb">scope-3</spanx> values are expressed in the unit given by <spanx style="verb">carbon-unit</spanx>, including its default; <spanx style="verb">sci-score</spanx> is expressed in grams of CO2e per the declared <spanx style="verb">functional-unit</spanx>.</t>

<t>The three URI-valued members (<spanx style="verb">methodology-uri</spanx>, <spanx style="verb">verifiable-attestation-uri</spanx>, and <spanx style="verb">disclosure-uri</spanx>) MUST be absolute URIs <xref target="RFC3986"/> using the "https" (or "http") scheme. Clients MUST NOT automatically dereference a URI member carrying any other scheme, and clients that fetch these URIs SHOULD apply the usual protections against server-side request forgery (SSRF), such as refusing redirects or addresses into private networks.</t>

<t>Fields not defined in this specification MAY be present; clients handle members they do not recognize per the ignore-unknown rule in Versioning and Extensibility.</t>

</section>
<section anchor="value-constraints-and-omitted-metrics"><name>Value Constraints and Omitted Metrics</name>

<t>A metric that is not reported for the scope or period covered by an object is omitted from that object. This document defines no in-band "not reported" marker: a member that is present always carries an actual value. Consumers that require a value not present in a Sustainability Metadata Document SHOULD look to the linked disclosure or reporting resources.</t>

<t>Several numeric members carry range constraints in their definitions: the gross-quantity members (<spanx style="verb">energy-consumption</spanx>, <spanx style="verb">carbon-footprint</spanx>, <spanx style="verb">sci-score</spanx>, <spanx style="verb">carbon-intensity-gCO2e-per-kWh</spanx>, and <spanx style="verb">estimated-annual-emissions-kgCO2e</spanx>) are non-negative, and <spanx style="verb">renewable-energy</spanx> is bounded to 0-100. <spanx style="verb">carbon-footprint</spanx> reports gross emissions. Where the declared <spanx style="verb">carbon-accounting</spanx> methodology supports them, carbon removals, offsets, and net accounting are conveyed through <spanx style="verb">scope-1</spanx>, <spanx style="verb">scope-2</spanx>, and <spanx style="verb">scope-3</spanx>, which MAY be negative for that purpose, or through the linked attestation or disclosure resources; a publisher reporting a negative scope value SHOULD explain the net-accounting basis in the <spanx style="verb">methodology-uri</spanx> document.</t>

<t>A client encountering a defective member value SHOULD NOT reject the document; instead:</t>

<t><list style="symbols">
  <t>A value outside a member's stated range (for example, a negative value in a member defined here as non-negative) is treated as not reported.</t>
  <t>A value of the wrong JSON type (including <spanx style="verb">null</spanx>) is treated as not reported.</t>
  <t>An unrecognized value in an enumerated string member defined here (<spanx style="verb">capabilities</spanx>, <spanx style="verb">energy-unit</spanx>, <spanx style="verb">carbon-unit</spanx>, <spanx style="verb">carbon-accounting</spanx>, or <spanx style="verb">target-type</spanx>) causes that member to be disregarded. For a unit member, the numeric member(s) it parameterizes are then treated as not reported; for <spanx style="verb">capabilities</spanx>, the client relies on observed server behavior, as that member's definition directs; for <spanx style="verb">target-type</spanx>, the client interprets <spanx style="verb">target</spanx> as if the member were absent.</t>
  <t>A <spanx style="verb">sci-score</spanx> unaccompanied by <spanx style="verb">functional-unit</spanx> is treated as not reported.</t>
</list></t>

<t>Note that the CDDL and JTD schemas below close the enumerated value sets. A validating client whose schema check fails only on such a defective value SHOULD apply this tolerance rather than reject the document; a future specification extending one of these sets is expected to publish correspondingly updated schemas. The historical-document case (a document without a <spanx style="verb">target</spanx> member) is covered in Versioning and Extensibility.</t>

<t>A Sustainability Metadata Document (in an array response, at least one of its objects) SHOULD contain at least one reported numeric metric (for example, <spanx style="verb">energy-consumption</spanx> or <spanx style="verb">carbon-footprint</spanx>) or at least one of <spanx style="verb">disclosure-uri</spanx> or <spanx style="verb">verifiable-attestation-uri</spanx>. A document containing none of these is conformant only by virtue of the mandatory <spanx style="verb">methodology-uri</spanx>: in that case the publisher MUST ensure that the resource identified by <spanx style="verb">methodology-uri</spanx> (in an array response, by each object's <spanx style="verb">methodology-uri</spanx>) provides the substantive disclosure. That resource MUST be publicly retrievable without authentication or payment, MUST describe the measurement or estimation method, and MUST either state the metric values themselves or point directly to where they are published.</t>

</section>
<section anchor="versioning-and-extensibility"><name>Versioning and Extensibility</name>

<t>This document is designed so that new fields can be introduced over time without breaking deployed clients and without requiring a revision of this specification.</t>

<t><list style="symbols">
  <t>Forward compatibility rests on a single rule: clients MUST ignore members they do not recognize. Because no field defined here is security-critical, silently ignoring an unknown member is safe. The formal schemas (CDDL and JTD) are correspondingly open and permit additional members.</t>
  <t>Interoperability does not depend on the <spanx style="verb">version</spanx> member. As its definition states, <spanx style="verb">version</spanx> is an informational provenance label, not a negotiation mechanism, and the label itself never affects client processing. The value space is nevertheless under change control: the labels defined by this document are <spanx style="verb">"1.0"</spanx>, <spanx style="verb">"1.1"</spanx>, and <spanx style="verb">"2.0"</spanx>, and new values are defined only by a future RFC that revises or replaces this document. Publishers MUST NOT mint other values; introducing new members does not, by itself, call for a new value (extension members are covered by the ignore-unknown rule).</t>
  <t><strong>Extension members.</strong> New members may be introduced by a future revision of this specification, or privately by an implementer; the ignore-unknown rule above makes extensions always safe to publish. To make name collisions structurally impossible rather than merely unlikely, member names that do not contain a "." (FULL STOP, U+002E) are reserved for this specification and future documents that revise or replace it. An implementer-defined extension member SHOULD therefore be named using reverse-domain-name notation rooted in a domain the definer controls (for example, <spanx style="verb">com.example.pue</spanx> for a power-usage-effectiveness figure defined by example.com), consistent with the guidance of <xref target="RFC6648"/>. Semantics-free markers such as an "X-" or "vendor-" prefix SHOULD NOT be used. Extension member names are case-sensitive and SHOULD be lowercase, and extension values are subject to the same I-JSON expectations as the rest of the document. No IANA registry is defined for member names: the ignore-unknown rule makes central coordination unnecessary for interoperability, and the reserved undotted name space protects future revisions of this specification. Implementers introducing a member of general interest are encouraged to publish its definition, and such a member may later be adopted (under an undotted name) by a revision of this specification.</t>
  <t>The values <spanx style="verb">"1.0"</spanx> and <spanx style="verb">"1.1"</spanx> denote the historical field set used before the present data model, in which <spanx style="verb">energy-consumption</spanx>, <spanx style="verb">energy-unit</spanx>, <spanx style="verb">carbon-footprint</spanx>, and <spanx style="verb">carbon-unit</spanx> were mandatory and the reporting subject was conveyed by the optional <spanx style="verb">target-path</spanx> member (whose absence meant an origin-wide report). The value <spanx style="verb">"2.0"</spanx> denotes the field set of this document. Documents declaring any of these labels remain valid; per the <spanx style="verb">version</spanx> definition, the label itself never affects processing. Field-driven tolerance makes historical documents processable: defective values are handled per Value Constraints and Omitted Metrics, and a client that encounters a document without a <spanx style="verb">target</spanx> member SHOULD treat it as an origin-wide report -- unless the document carries the historical <spanx style="verb">target-path</spanx> member, in which case the client SHOULD treat that member's value as the reporting subject. A validating client whose schema check fails only because the <spanx style="verb">target</spanx> member is absent SHOULD apply the same interpretation rather than reject the document.</t>
</list></t>

</section>
<section anchor="formal-definition-cddl"><name>Formal Definition (CDDL)</name>

<t>The following CDDL <xref target="RFC8610"/> definition describes the response:</t>

<figure><sourcecode type="cddl"><![CDATA[
; Root: a single object, or an array of objects for trends
sustainability-response =
  sustainability-metrics / [+ sustainability-metrics]

sustainability-metrics = {
  ; Versioning and provenance
  version: tstr,
  updated: tstr,
  capabilities: "basic" / "extended",
  provider: tstr,

  ; Mandatory methodology disclosure
  measurement-method: tstr,
  methodology-uri: tstr,

  ; Timeframe of the report (YYYY, YYYY-MM, or RFC3339 full-date)
  reporting-period: tstr,

  ; Reporting subject (origin host, path prefix, entity, ...)
  target: tstr,

  ; Energy metrics; when energy-unit is absent, kWh applies
  ? energy-consumption: number,   ; non-negative
  ? energy-unit: "Wh" / "kWh" / "MWh" / "GWh",

  ; Carbon metrics; when carbon-unit is absent, gCO2e applies
  ? carbon-footprint: number,     ; gross, non-negative
  ? carbon-unit: "gCO2e" / "kgCO2e" / "mtCO2e",

  ; Other optional metric and linkage members
  ? carbon-accounting: "location-based" / "market-based",
  ? scope-1: number,              ; may be negative (removals)
  ? scope-2: number,              ; may be negative (removals)
  ? scope-3: number,              ; may be negative (removals)
  ? sci-score: number,            ; non-negative
  ? functional-unit: tstr,
  ? carbon-intensity-gCO2e-per-kWh: number,   ; non-negative
  ? estimated-annual-emissions-kgCO2e: number, ; non-negative
  ? renewable-energy: number,     ; percentage, 0-100
  ? verifiable-attestation-uri: tstr,
  ? disclosure-uri: tstr,

  ; Classification hint for the reporting subject in target
  ? target-type: "origin" / "path" / "organization" / "service"
               / "product" / "device" / "tenant" / "data-source",

  ; Extension members (reverse-domain names); clients
  ; ignore unknown members
  * tstr => any
}
]]></sourcecode></figure>

</section>
<section anchor="formal-definition-jtd"><name>Formal Definition (JTD)</name>

<t>The following JSON Type Definition <xref target="RFC8927"/> defines the reporting object:</t>

<figure><sourcecode type="json"><![CDATA[
{
  "properties": {
    "version": { "type": "string" },
    "updated": { "type": "string" },
    "capabilities": { "enum": ["basic", "extended"] },
    "provider": { "type": "string" },
    "measurement-method": { "type": "string" },
    "methodology-uri": { "type": "string" },
    "reporting-period": { "type": "string" },
    "target": { "type": "string" }
  },
  "optionalProperties": {
    "energy-consumption": { "type": "float64" },
    "energy-unit": { "enum": ["Wh", "kWh", "MWh", "GWh"] },
    "carbon-footprint": { "type": "float64" },
    "carbon-unit": { "enum": ["gCO2e", "kgCO2e", "mtCO2e"] },
    "carbon-accounting": {
      "enum": ["location-based", "market-based"]
    },
    "scope-1": { "type": "float64" },
    "scope-2": { "type": "float64" },
    "scope-3": { "type": "float64" },
    "sci-score": { "type": "float64" },
    "functional-unit": { "type": "string" },
    "carbon-intensity-gCO2e-per-kWh": { "type": "float64" },
    "estimated-annual-emissions-kgCO2e": { "type": "float64" },
    "renewable-energy": { "type": "float64" },
    "verifiable-attestation-uri": { "type": "string" },
    "disclosure-uri": { "type": "string" },
    "target-type": {
      "enum": ["origin", "path", "organization", "service",
               "product", "device", "tenant", "data-source"]
    }
  },
  "additionalProperties": true
}
]]></sourcecode></figure>

<t>Range constraints (the non-negativity rules and the 0-100 bound on <spanx style="verb">renewable-energy</spanx>), the <spanx style="verb">sci-score</spanx>/<spanx style="verb">functional-unit</spanx> co-occurrence rule, the date formats of <spanx style="verb">updated</spanx> and <spanx style="verb">reporting-period</spanx>, the unit defaults, the URI-member constraints (absolute <spanx style="verb">https</spanx>/<spanx style="verb">http</spanx> URIs), and the array-level ordering and uniformity rules are prose rules of this document; they are not captured by the schemas above, and validating implementations enforce them at the application layer.</t>

</section>
</section>
</section>
<section anchor="example-usage"><name>Example Usage</name>

<section anchor="basic-response-root-request"><name>Basic Response (Root Request)</name>

<t>Request: <spanx style="verb">GET /.well-known/sustainability-data</spanx></t>

<t>This is the common case: a publisher reporting on its own annual cycle, serving a single document with no query parameters, as the Mandatory Minimum Supported Service requires.</t>

<figure><sourcecode type="json"><![CDATA[
{
  "version": "2.0",
  "updated": "2026-03-01T12:00:00Z",
  "capabilities": "basic",
  "provider": "Example Corp (sustain@example.org)",
  "measurement-method": "cloud-billing",
  "methodology-uri": "https://example.com/methodology",
  "reporting-period": "2025",
  "target": "example.com",
  "energy-consumption": 15000,
  "energy-unit": "kWh",
  "carbon-footprint": 4140,
  "carbon-unit": "kgCO2e",
  "target-type": "origin"
}
]]></sourcecode></figure>

</section>
<section anchor="yearly-trend-monthly-granularity"><name>Yearly Trend (Monthly Granularity)</name>

<t>Request: <spanx style="verb">GET /.well-known/sustainability-data?period=2025&amp;granularity=monthly</spanx></t>

<t>The response is an array with one object per month; only the first two months are shown here for brevity.</t>

<figure><sourcecode type="json"><![CDATA[
[
  {
    "version": "2.0",
    "updated": "2026-01-05T09:00:00Z",
    "capabilities": "extended",
    "provider": "CloudProvider Ops (ops@example.com)",
    "measurement-method": "hardware-metered",
    "methodology-uri": "https://example.com/methodology",
    "reporting-period": "2025-01",
    "target": "example.com",
    "energy-consumption": 1100,
    "energy-unit": "kWh",
    "carbon-footprint": 302,
    "carbon-unit": "kgCO2e",
    "carbon-accounting": "location-based",
    "renewable-energy": 45
  },
  {
    "version": "2.0",
    "updated": "2026-01-05T09:00:00Z",
    "capabilities": "extended",
    "provider": "CloudProvider Ops (ops@example.com)",
    "measurement-method": "hardware-metered",
    "methodology-uri": "https://example.com/methodology",
    "reporting-period": "2025-02",
    "target": "example.com",
    "energy-consumption": 1050,
    "energy-unit": "kWh",
    "carbon-footprint": 288,
    "carbon-unit": "kgCO2e",
    "carbon-accounting": "location-based",
    "renewable-energy": 48
  }
]
]]></sourcecode></figure>

</section>
<section anchor="target-specific-request-day-period"><name>Target-Specific Request (Day Period)</name>

<t>Request: <spanx style="verb">GET /.well-known/sustainability-data?target=/api/v1&amp;period=2026-03-15</spanx></t>

<figure><sourcecode type="json"><![CDATA[
{
  "version": "2.0",
  "updated": "2026-03-16T12:00:00Z",
  "capabilities": "extended",
  "provider": "Example Corp (sustain@example.org)",
  "measurement-method": "cloud-billing",
  "methodology-uri": "https://example.com/methodology",
  "reporting-period": "2026-03-15",
  "target": "/api/v1",
  "energy-consumption": 1.5,
  "energy-unit": "kWh",
  "carbon-footprint": 414,
  "carbon-unit": "gCO2e"
}
]]></sourcecode></figure>

</section>
<section anchor="target-specific-yearly-trend-monthly-granularity"><name>Target-Specific Yearly Trend (Monthly Granularity)</name>

<t>Request: <spanx style="verb">GET /.well-known/sustainability-data?target=/api/v1&amp;period=2026&amp;granularity=monthly</spanx></t>

<t>As above, the array holds one object per completed month.</t>

<figure><sourcecode type="json"><![CDATA[
[
  {
    "version": "2.0",
    "updated": "2026-03-21T07:00:00Z",
    "capabilities": "extended",
    "provider": "Example Corp (sustain@example.org)",
    "measurement-method": "third-party-modeled",
    "methodology-uri": "https://example.com/api-modeling",
    "reporting-period": "2026-01",
    "target": "/api/v1",
    "energy-consumption": 45,
    "energy-unit": "kWh",
    "carbon-footprint": 12450,
    "carbon-unit": "gCO2e",
    "sci-score": 12,
    "functional-unit": "per-thousand-requests"
  },
  {
    "version": "2.0",
    "updated": "2026-03-21T07:00:00Z",
    "capabilities": "extended",
    "provider": "Example Corp (sustain@example.org)",
    "measurement-method": "third-party-modeled",
    "methodology-uri": "https://example.com/api-modeling",
    "reporting-period": "2026-02",
    "target": "/api/v1",
    "energy-consumption": 42,
    "energy-unit": "kWh",
    "carbon-footprint": 11800,
    "carbon-unit": "gCO2e",
    "sci-score": 10,
    "functional-unit": "per-thousand-requests"
  }
]
]]></sourcecode></figure>

</section>
<section anchor="highly-detailed-combined-extended-request"><name>Highly Detailed Combined Extended Request</name>
<t>Request: <spanx style="verb">GET /.well-known/sustainability-data?target=/app/storage&amp;period=2026-03-20</spanx></t>

<t>This example utilizes all optional fields, including GHG Protocol Scopes, a verifiable attestation link to combat greenwashing, the <spanx style="verb">target-type</spanx> classification hint, and a reverse-domain-named extension member (<spanx style="verb">com.example.pue</spanx>, a power-usage-effectiveness figure defined by example.com) that clients not recognizing it simply ignore (see Versioning and Extensibility).</t>

<figure><sourcecode type="json"><![CDATA[
{
  "version": "2.0",
  "updated": "2026-03-21T00:05:00Z",
  "capabilities": "extended",
  "provider": "Global Storage Inc. (compliance@storage.example)",
  "measurement-method": "hardware-estimated",
  "methodology-uri": "https://storage.example/transparency/methods",
  "reporting-period": "2026-03-20",
  "target": "/app/storage",
  "energy-consumption": 12,
  "energy-unit": "kWh",
  "carbon-footprint": 3.2,
  "carbon-unit": "kgCO2e",
  "carbon-accounting": "market-based",
  "scope-1": 0.0,
  "scope-2": 2.1,
  "scope-3": 1.1,
  "sci-score": 0.85,
  "functional-unit": "per-terabyte-day",
  "carbon-intensity-gCO2e-per-kWh": 267,
  "estimated-annual-emissions-kgCO2e": 1168,
  "renewable-energy": 45,
  "verifiable-attestation-uri": "https://verify.example/vc/storage",
  "disclosure-uri": "https://storage.example/disclosures",
  "target-type": "path",
  "com.example.pue": 1.21
}
]]></sourcecode></figure>

</section>
<section anchor="partial-reporting-omitted-metrics-and-default-units"><name>Partial Reporting (Omitted Metrics and Default Units)</name>
<t>Request: <spanx style="verb">GET /.well-known/sustainability-data</spanx></t>

<t>In this example the provider reports a carbon figure (for example, from a supplier or a CSRD report) but does not report energy for the period: <spanx style="verb">energy-consumption</spanx> and <spanx style="verb">energy-unit</spanx> are simply omitted (see Value Constraints and Omitted Metrics). <spanx style="verb">carbon-unit</spanx> is also omitted, so the default <spanx style="verb">gCO2e</spanx> applies to both <spanx style="verb">carbon-footprint</spanx> and <spanx style="verb">scope-2</spanx>. The document declares <spanx style="verb">basic</spanx> capabilities -- no Extended query parameters are supported -- while still carrying optional members, and the <spanx style="verb">disclosure-uri</spanx> points to where fuller data can be found.</t>

<figure><sourcecode type="json"><![CDATA[
{
  "version": "2.0",
  "updated": "2026-04-01T00:00:00Z",
  "capabilities": "basic",
  "provider": "Partial Metrics Co. (sustainability@partial.example)",
  "measurement-method": "third-party-modeled",
  "methodology-uri": "https://partial.example/methodology",
  "reporting-period": "2026-03",
  "target": "partial.example",
  "carbon-footprint": 4200,
  "carbon-accounting": "location-based",
  "scope-2": 4200,
  "disclosure-uri": "https://partial.example/disclosures"
}
]]></sourcecode></figure>

</section>
</section>
<section anchor="operational-considerations"><name>Operational Considerations</name>

<t>Because this endpoint can be dynamic, servers SHOULD implement heavy caching for the well-known responses (see also the rate-limiting guidance in the Security Considerations). HTTP caching and conditional requests are as defined in <xref target="RFC9111"/> and <xref target="RFC9110"/>.</t>

<t><list style="symbols">
  <t>Servers SHOULD set cache directives (e.g., <spanx style="verb">Cache-Control: max-age=86400</spanx>) <xref target="RFC9111"/>.</t>
  <t>For historical reports, a long <spanx style="verb">max-age</spanx> (e.g., one year) is RECOMMENDED.</t>
  <t>Use of <spanx style="verb">ETag</spanx> and <spanx style="verb">Last-Modified</spanx> (<xref target="RFC9110"/>, Sections 8.8.3 and 8.8.2), enabling conditional requests with <spanx style="verb">If-None-Match</spanx>, is RECOMMENDED.</t>
</list></t>

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

<t>To maximize interoperability:</t>

<t><list style="symbols">
  <t>Servers SHOULD keep their published documents current with this specification.</t>
  <t>Clients follow the ignore-unknown and version-tolerance rules of Versioning and Extensibility.</t>
  <t>Implementers SHOULD publish example payloads and test vectors.</t>
  <t>Aggregators SHOULD document how they map provider fields to their internal models.</t>
</list></t>

</section>
<section anchor="deployment"><name>Deployment</name>

<t><list style="symbols">
  <t>For multi-tenant platforms, operators SHOULD decide whether to publish per-tenant metadata at the tenant origin or a platform-level summary.</t>
  <t>Operators deploying behind content delivery networks (CDNs) or reverse proxies MUST ensure that the <spanx style="verb">/.well-known/sustainability-data</spanx> path is routed to the authoritative publisher or served with the authoritative document.</t>
  <t>Automation: Providers SHOULD automate updates to the document to reflect changes in energy sourcing or measurement.</t>
</list></t>

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

<section anchor="denial-of-service-dos"><name>Denial of Service (DoS)</name>

<t>Because this endpoint may require internal database queries to aggregate data -- especially when dynamic period or other query parameters are utilized -- it could become a vector for Denial of Service (DoS) attacks.</t>

<t><list style="symbols">
  <t>Servers SHOULD rate-limit requests to the well-known URI and cache all generated reports.</t>
  <t>Because each distinct query-string combination is a distinct cache entry, an attacker iterating unique parameter values can bypass a response cache; honoring the <spanx style="verb">target</spanx> query parameter only for a published set of path prefixes (see Optional Extended Query Parameters) bounds the key space, and servers SHOULD precompute reports rather than aggregate on demand.</t>
</list></t>

</section>
<section anchor="array-size-limits"><name>Array Size Limits</name>

<t>To prevent DoS via memory exhaustion, servers supporting <spanx style="verb">granularity</spanx> MUST enforce a documented maximum on the number of objects returned.</t>

<t><list style="symbols">
  <t>A cap of 366 objects is RECOMMENDED.</t>
  <t>When a response would exceed the limit, the server SHOULD return the most recent periods and MAY signal the truncation (for example, via an extension member), or MAY respond with <spanx style="verb">400 Bad Request</spanx> (treating the over-broad query as a client error).</t>
</list></t>

</section>
<section anchor="trust-and-spoofing"><name>Trust and Spoofing</name>

<t>Publishing sustainability metadata at a well-known location is convenient but does not provide any cryptographic assurance of correctness. An attacker who controls DNS, TLS certificates, or the origin can publish false metadata.</t>

<t><list style="symbols">
  <t>Clients MUST NOT treat the presence of a sustainability document as proof of any claim.</t>
  <t>For high-assurance use cases, clients SHOULD rely on additional attestations, signed statements, or third-party verification.</t>
</list></t>

</section>
<section anchor="consumer-considerations"><name>Consumer Considerations</name>

<t>A Sustainability Metadata Document is untrusted input fetched from an arbitrary origin, and this document deliberately positions it as safe for automated ingestion; consumers are responsible for making that true on their side:</t>

<t><list style="symbols">
  <t>Clients SHOULD enforce a response-size limit and bound the number of array entries they accept (the 366-object cap is a server obligation that a client cannot rely on a hostile server to honor).</t>
  <t>Clients SHOULD bound the time and redirects spent on a single fetch.</t>
  <t>Clients SHOULD parse the body with a JSON parser hardened against untrusted input, validate against the formal schemas before use, and treat member values as data, never as code or markup.</t>
  <t>Duplicate member names make JSON interoperability unpredictable (<xref target="RFC8259"/>); clients SHOULD reject a document with duplicate names or apply their parser's documented last-value behavior consistently.</t>
  <t>The URI-valued members carry the dereferencing restrictions and SSRF guidance given in Optional Response Fields.</t>
</list></t>

</section>
<section anchor="greenwashing-and-misrepresentation"><name>Greenwashing and Misrepresentation</name>

<t>There is a risk that providers publish misleading or incomplete metrics to appear more sustainable.</t>

<t><list style="symbols">
  <t>Beyond the mandatory <spanx style="verb">methodology-uri</spanx>, providers SHOULD link authoritative reports, signed statements, or third-party verification -- for example, cryptographically signed W3C Verifiable Credentials via the <spanx style="verb">verifiable-attestation-uri</spanx> member.</t>
  <t>Consumers SHOULD treat the document as a discovery mechanism and validate claims against external sources when necessary.</t>
</list></t>

</section>
<section anchor="privacy-and-information-leakage"><name>Privacy and Information Leakage</name>

<t>Publishing detailed operational metrics may reveal sensitive information about infrastructure, traffic patterns, or deployment topology. The privacy-related risks of this mechanism -- and the corresponding publisher guidance on aggregation, granularity, fingerprinting noise, and path disclosure -- are consolidated in the Privacy Considerations section.</t>

</section>
<section anchor="integrity-and-transport-security"><name>Integrity and Transport Security</name>

<t><list style="symbols">
  <t>As specified in the Mandatory Minimum Supported Service section, the resource SHOULD be served over HTTPS; transport security protects both integrity and privacy of the published metrics. HTTPS is a SHOULD rather than a MUST only because the data is public and some constrained origins are plain-HTTP; consumers with integrity-sensitive uses SHOULD ignore documents not served over HTTPS.</t>
  <t>Clients MUST validate TLS certificates as required for HTTPS <xref target="RFC9110"/>.</t>
</list></t>

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

<t>Publishing sustainability metadata can have privacy implications when metrics are correlated with traffic or user behavior. Providers SHOULD evaluate the privacy impact of any metric that could be linked to individual users or small groups, SHOULD avoid publishing data that could be used to infer internal architecture or expose personally identifiable information, and, when in doubt, SHOULD aggregate or redact fine-grained data. Aggregators SHOULD use privacy-preserving aggregation techniques when publishing derived datasets. Human-readable contact strings (such as the <spanx style="verb">provider</spanx> member) can carry personal data; role addresses (for example, sustainability@example.com) are RECOMMENDED over personal ones. (See also Privacy and Information Leakage in the Security Considerations.)</t>

<section anchor="traffic-analysis"><name>Traffic Analysis</name>

<t>Servers SHOULD NOT report metrics at a granularity finer than 24 hours, and real-time telemetry is NOT RECOMMENDED: either would allow an observer to correlate energy spikes with specific real-time user actions.</t>

</section>
<section anchor="hardware-fingerprinting"><name>Hardware Fingerprinting</name>

<t>Precise metrics can reveal hardware architectures. Servers MAY apply "noise" (fuzzing), as a multiplicative factor bounded within 1% of the true values, to mitigate identification with limited impact on aggregate accuracy. Noise MUST be applied once, at document-generation time, deterministically per reporting period, and consistently across arithmetically related fields, so that ratios between them (such as a published carbon intensity) are preserved; the noised values are the published values for caching and conditional-request purposes. Members bounded to a range (such as <spanx style="verb">renewable-energy</spanx>) MUST remain within their stated range after noise. Because ratios are preserved, publishers for whom ratio-based fingerprinting is a concern SHOULD omit the derived members rather than rely on noise. Providers applying noise SHOULD disclose this in the <spanx style="verb">methodology-uri</spanx> document so that auditors can reconcile published figures with filed reports.</t>

</section>
<section anchor="path-disclosure"><name>Path Disclosure</name>

<t>When the <spanx style="verb">target</spanx> query parameter is honored for arbitrary values, the difference between a scoped response and a no-data response can reveal which resource paths exist and carry traffic on the origin. For this reason, Optional Extended Query Parameters directs servers to honor the parameter only for a deliberately published set of path prefixes and to respond identically (per the no-data rule) for all other values.</t>

</section>
</section>
<section anchor="internationalization-considerations"><name>Internationalization Considerations</name>

<t>This section classifies every member of a Sustainability Metadata Document according to the distinction BCP 18 <xref target="RFC2277"/>, Section 2, draws between protocol elements, which are not localized, and text intended for human consumption, which is.</t>

<t>A Sustainability Metadata Document is JSON <xref target="RFC8259"/> and is therefore encoded in UTF-8 for interchange (<xref target="RFC8259"/>, Section 8.1), so any member value can carry the full range of Unicode characters. Publishers SHOULD emit human-readable strings in Unicode Normalization Form C (<xref target="RFC5198"/>, Section 3).</t>

<t>Nearly every member of this data model is a protocol element rather than text. Member names, the <spanx style="verb">version</spanx> label (whose value space is under change control, as Versioning and Extensibility specifies), and the values of the enumerated members (<spanx style="verb">capabilities</spanx>, <spanx style="verb">energy-unit</spanx>, <spanx style="verb">carbon-unit</spanx>, <spanx style="verb">carbon-accounting</spanx>, and <spanx style="verb">target-type</spanx>) are ASCII tokens defined by this document; they are compared octet-for-octet, and no case folding, Unicode normalization, or other transformation is applied to them by clients. The <spanx style="verb">updated</spanx> and <spanx style="verb">reporting-period</spanx> members carry the date forms specified for them, and the three URI-valued members carry URIs <xref target="RFC3986"/>. The RECOMMENDED values of <spanx style="verb">measurement-method</spanx> are likewise machine-matchable tokens, compared octet-for-octet. The <spanx style="verb">functional-unit</spanx> member is also a token rather than display text: it is the denominator in which <spanx style="verb">sci-score</spanx> is expressed, its precise meaning is defined in the <spanx style="verb">methodology-uri</spanx> document rather than in the string itself, and localizing it would make the accompanying <spanx style="verb">sci-score</spanx> incomparable. The numeric members carry JSON numbers, which have no language or script dimension; their units are carried by the enumerated unit members above. None of these are translated, and a publisher MUST NOT localize them.</t>

<t>The <spanx style="verb">target</spanx> member is an opaque identifier, as its definition states: it is compared octet-for-octet and MUST NOT be translated or transliterated, since doing so would change which subject it names. Two qualifications follow from what <spanx style="verb">target</spanx> can name. Where it is a host, the ordinary case-insensitive comparison rules for host names apply, and an internationalized host is given in its A-label form (<xref target="RFC5890"/>, Section 2.3.2.1) so that an octet comparison is well defined. Where it is a path prefix, it carries the percent-decoded form, as Optional Extended Query Parameters specifies for a response scoped by the <spanx style="verb">target</spanx> query parameter.</t>

<t>That leaves a small set of members whose values are text for human consumption: <spanx style="verb">provider</spanx>, a <spanx style="verb">measurement-method</spanx> value outside the RECOMMENDED set, and any human-readable extension member. Language is conveyed for these at the HTTP layer rather than in the data model, following the approach that problem details (<xref target="RFC9457"/>, Sections 1.7 and 3.1.3) takes for its human-readable strings: a server publishing such text in a known language SHOULD send a <spanx style="verb">Content-Language</spanx> header field (<xref target="RFC9110"/>, Section 8.5) identifying it. A server that can produce a document in more than one language MAY select a representation using proactive content negotiation on <spanx style="verb">Accept-Language</spanx> (<xref target="RFC9110"/>, Section 12.5.4), in which case it MUST send a <spanx style="verb">Vary: Accept-Language</spanx> header field so that caches do not serve one language in place of another. Because these members carry no machine-processable meaning, a client that does not understand the language of a <spanx style="verb">provider</spanx> string loses no interoperability: the metrics, the units, and the reporting subject are all unaffected.</t>

<t>No in-document language-tagging mechanism (such as a map from language tag to string) is defined, since the small set of human-readable values identified above does not warrant one; the pattern used for WebFinger titles (<xref target="RFC7033"/>, Section 4.4.4.4) is available to a future revision should localized text within one document ever be needed.</t>

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

<t>IANA is requested to register the "sustainability-data" well-known URI in the <eref target="https://www.iana.org/assignments/well-known-uris">"Well-Known URIs" registry</eref>, following the procedure outlined in <xref target="RFC8615"/>.</t>

<t>Following the registration template of <xref target="RFC8615"/>, Section 3.1:</t>

<t><list style="symbols">
  <t><strong>URI Suffix</strong>: sustainability-data</t>
  <t><strong>Change Controller</strong>: Andrei Nicolae Besleaga (andrei.besleaga@ieee.org)</t>
  <t><strong>Specification Document(s)</strong>: This document.</t>
  <t><strong>Status</strong>: provisional</t>
  <t><strong>Related Information</strong>: This suffix is used with the "http" and "https" URI schemes. The response uses the <spanx style="verb">application/json</spanx> media type <xref target="RFC8259"/> and follows I-JSON <xref target="RFC7493"/> per this document. Formal definitions of the response are provided in this document using CDDL <xref target="RFC8610"/> and JSON Type Definition (JTD) <xref target="RFC8927"/>.</t>
</list></t>

<t>A status of "provisional" is requested in keeping with <xref target="RFC8615"/>, Section 3.1: this is an Independent Submission rather than a Standards-Track or other open-standards-process document. Per that procedure, the designated expert(s) may promote the entry to "permanent" once it is found to be in broad use.</t>

<t>The suffix "sustainability-data" names the specific application registered here -- a machine-readable data document of sustainability metrics for a declared reporting subject -- rather than claiming the generic term "sustainability" for one convention, in keeping with the precision expectations of <xref target="RFC8615"/>, Section 3 (earlier revisions of this document requested the bare suffix "sustainability"). The metadata the URI names is published per origin, which is the pattern for which well-known URIs are appropriate <xref target="RFC8615"/>; resource-specific scoping is provided through the <spanx style="verb">target</spanx> query parameter rather than through additional path segments. The use of query parameters on a well-known URI follows existing practice such as WebFinger <xref target="RFC7033"/> and is permitted by <xref target="RFC8615"/>, Section 3. Registration is sought to enable interoperable discovery, not to signal endorsement of the publisher's claims.</t>

</section>
<section anchor="acknowledgments"><name>Acknowledgments</name>

<t>Thanks to the early reviewers and to members of the Internet sustainability community who provided feedback on sustainability metadata and discovery patterns.</t>

</section>


  </middle>

  <back>


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

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

&RFC2119;
&RFC3339;
&RFC8174;
&RFC7493;
&RFC8259;
&RFC8610;
&RFC8615;
&RFC8927;
&RFC3986;
&RFC9110;
&RFC9111;


    </references>

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

<reference anchor="GHG-PROTOCOL" target="https://ghgprotocol.org/corporate-standard">
  <front>
    <title>The Greenhouse Gas Protocol: A Corporate Accounting and Reporting Standard (Revised Edition)</title>
    <author >
      <organization>World Resources Institute and World Business Council for Sustainable Development</organization>
    </author>
    <date year="2004"/>
  </front>
</reference>
<reference anchor="GSF-SCI" target="https://sci.greensoftware.foundation/">
  <front>
    <title>Software Carbon Intensity (SCI) Specification (standardized as ISO/IEC 21031:2024)</title>
    <author >
      <organization>Green Software Foundation</organization>
    </author>
    <date year="2024"/>
  </front>
</reference>
&RFC9547;
<reference anchor="EU-CSRD" target="https://eur-lex.europa.eu/eli/dir/2022/2464/oj">
  <front>
    <title>Directive (EU) 2022/2464 as regards corporate sustainability reporting (CSRD)</title>
    <author >
      <organization>European Parliament and Council</organization>
    </author>
    <date year="2022" month="December"/>
  </front>
</reference>
<reference anchor="UN-SDG" target="https://sdgs.un.org/2030agenda">
  <front>
    <title>Transforming our world: the 2030 Agenda for Sustainable Development</title>
    <author >
      <organization>United Nations</organization>
    </author>
    <date year="2015"/>
  </front>
</reference>
<reference anchor="W3C-WSG" target="https://www.w3.org/TR/web-sustainability-guidelines/">
  <front>
    <title>Web Sustainability Guidelines (WSG) (W3C Group Draft Note)</title>
    <author >
      <organization>W3C Sustainable Web Interest Group</organization>
    </author>
    <date year="2026"/>
  </front>
</reference>
<reference anchor="CARBON-TXT" target="https://carbontxt.org/">
  <front>
    <title>carbon.txt: A TOML convention for discovering an origin's sustainability disclosures</title>
    <author >
      <organization>Green Web Foundation</organization>
    </author>
    <date year="2026"/>
  </front>
</reference>
<reference anchor="ESRS-E1" target="https://eur-lex.europa.eu/eli/reg_del/2023/2772/oj">
  <front>
    <title>Commission Delegated Regulation (EU) 2023/2772 supplementing Directive 2013/34/EU as regards sustainability reporting standards (ESRS; Annex I, ESRS E1 Climate change)</title>
    <author >
      <organization>European Commission</organization>
    </author>
    <date year="2023" month="July"/>
  </front>
</reference>
<reference anchor="EU-ESPR" target="https://eur-lex.europa.eu/eli/reg/2024/1781/oj">
  <front>
    <title>Regulation (EU) 2024/1781 establishing a framework for the setting of ecodesign requirements for sustainable products (ESPR; Digital Product Passport)</title>
    <author >
      <organization>European Parliament and Council</organization>
    </author>
    <date year="2024" month="June"/>
  </front>
</reference>
&RFC7326;
&I-D.ietf-green-terminology;
&RFC6454;
&RFC7033;
&RFC6350;
&RFC6648;
&RFC2277;
&RFC5198;
&RFC5890;
&RFC9457;


    </references>

</references>


<?line 662?>

<section anchor="changelog"><name>Changelog</name>

<ul empty="true"><li>
  <t>[Note to the RFC Editor: please remove this appendix before publication.]</t>
</li></ul>

<t>This appendix summarizes changes in recent revisions of this document, for the convenience of reviewers. The complete revision history, including the revisions published under the document's former name (draft-besleaga-green-sustainability-wellknown), is maintained in the project repository.</t>

<section anchor="since-04"><name>Since -04</name>

<t>This revision responds to the initial Independent Submission Editor review. It changes no member of the data model: none is added, removed, renamed, or retyped, the CDDL and JTD schemas are unchanged, and every document conformant to -04 validates unchanged against this revision's schemas.</t>

<t><list style="symbols">
  <t>Removed the sentence in the <spanx style="verb">disclosure-uri</spanx> definition that named one particular disclosure-index convention as the canonical example and cited two unregistered paths at which it is commonly published, so as not to encourage the use of unregistered well-known names. The member is now stated to be format-agnostic and location-agnostic: this document neither defines nor recommends any path for a disclosure index. The two example documents that used such a value now use a neutral URI on the publisher's own site, and the <spanx style="verb">target</spanx> definition no longer refers to a site listed in such an index. The carbon.txt convention remains cited, without any path reference, in Relationship to Other Work as adjacent and complementary work.</t>
  <t>Added an Internationalization Considerations section classifying every member per BCP 18 (RFC 2277), Section 2: member names, the <spanx style="verb">version</spanx> label, enumerated values, dates, URIs, <spanx style="verb">target</spanx>, <spanx style="verb">functional-unit</spanx>, the numeric members, and the RECOMMENDED <spanx style="verb">measurement-method</spanx> tokens are protocol elements compared octet-for-octet and never localized, while <spanx style="verb">provider</spanx>, a non-RECOMMENDED <spanx style="verb">measurement-method</spanx> description, and human-readable extension members are text, for which language is conveyed with <spanx style="verb">Content-Language</spanx> and MAY be negotiated with <spanx style="verb">Accept-Language</spanx> (with <spanx style="verb">Vary</spanx>), following the approach of RFC 9457. The section also gives the comparison rules for a <spanx style="verb">target</spanx> that names a host (case-insensitive, A-label form for an internationalized host) or a path prefix (percent-decoded).</t>
  <t>Removed the "free-form" characterization from the running text, which mischaracterized the members it was applied to: <spanx style="verb">measurement-method</spanx> is described as a token with RECOMMENDED values or otherwise a human-readable description, <spanx style="verb">target</spanx> as an opaque identifier compared octet-for-octet, <spanx style="verb">target-type</spanx> as classifying that member rather than a free-form one, and the <spanx style="verb">provider</spanx> string in Privacy Considerations as human-readable.</t>
  <t>Stated in the document the rationale for naming whole calendar periods rather than start/end instants (comparability across publishers, a bounded and canonical cache-key space, the reduced-precision calendar dates of ISO 8601 with vCard precedent, and the absence of a normative interval type in RFC 3339), together with the migration path for offset reporting years and the note that an interval form could be added later as a compatible extension.</t>
  <t>Made the relationship between <spanx style="verb">reporting-period</spanx> and the <spanx style="verb">period</spanx> parameter explicit at the point of definition, so the parameter's specification and the rationale above are reachable from the member.</t>
  <t>Changed the Basic Response example to an annual report (<spanx style="verb">"2025"</spanx>, in kWh and kgCO2e), so that the document's first example shows the case its own recommendation now calls common, and noted at that example that a parameterless annual document is the ordinary deployment.</t>
  <t>Editorial: folded the single "Caching" subsection directly into Operational Considerations, which contained nothing else, so that section no longer has exactly one child. No normative text changed.</t>
  <t>Recognized the calendar year as the common reporting cycle: the RECOMMENDED default period of the Basic service is now the period matching the publisher's own reporting cycle, a full calendar year for periodic regulatory-style disclosure or a full calendar month for publishers reporting more frequently. This relaxes a recommendation and invalidates no existing deployment.</t>
</list></t>

</section>
<section anchor="since-03"><name>Since -03</name>

<t><list style="symbols">
  <t>Renamed the requested well-known URI suffix from <spanx style="verb">sustainability</spanx> to <spanx style="verb">sustainability-data</spanx>, following Independent-Stream review feedback on the precision ("squatting") expectations of RFC 8615, Section 3; the document title changed accordingly, and the registration rationale in IANA Considerations was rewritten for the precise name. The Datatracker document name is unchanged. No IANA action had occurred on the previously requested suffix, so no migration or alias mechanism is defined.</t>
  <t>Added the OPTIONAL <spanx style="verb">target-type</spanx> member: an enumerated hint (<spanx style="verb">origin</spanx>, <spanx style="verb">path</spanx>, <spanx style="verb">organization</spanx>, <spanx style="verb">service</spanx>, <spanx style="verb">product</spanx>, <spanx style="verb">device</spanx>, <spanx style="verb">tenant</spanx>, <spanx style="verb">data-source</spanx>) classifying the reporting subject named by <spanx style="verb">target</spanx>. Unrecognized values fall under the existing enumerated-member tolerance rule; array responses share one value; added to the CDDL/JTD schemas and to two examples.</t>
  <t>Placed the <spanx style="verb">version</spanx> value space under change control: the defined labels are <spanx style="verb">"1.0"</spanx>, <spanx style="verb">"1.1"</spanx>, and <spanx style="verb">"2.0"</spanx>, and new values may be defined only by a future RFC that revises or replaces this document; publishers MUST NOT mint other values. The member itself remains informational-only.</t>
  <t>Replaced the loose vendor-extension naming advice with a normative "Extension members" rule: member names without a "." are reserved for this specification and its successors; implementer extensions SHOULD use reverse-domain-name notation, avoiding "X-"-style markers per RFC 6648; no IANA member-name registry is created. The worked example member was renamed from <spanx style="verb">vendor-example-pue</spanx> to <spanx style="verb">com.example.pue</spanx>.</t>
  <t>Corrected the CDDL root so an array response requires at least one object (<spanx style="verb">[+ ...]</spanx>), matching the prose, and fixed a "schemas above"/"below" direction error in Value Constraints.</t>
  <t>Clarifications from a full review: stated in the Introduction proper that the origin publishes the document while the <spanx style="verb">target</spanx> member declares what the data is about; required the methodology resource behind the minimum-reporting rule to be publicly retrievable without authentication or payment (and identified it per object in array responses); extended the schema-tolerance note to the historical absent-<spanx style="verb">target</spanx> case; scoped percent-encoding of the <spanx style="verb">target</spanx> parameter to characters not permitted in a query component; labeled the "no-data rule" at its definition; broadened <spanx style="verb">disclosure-uri</spanx> to the origin or reporting subject; neutralized two example methodology URLs; updated the greenwashing guidance to build on the now-mandatory <spanx style="verb">methodology-uri</spanx>; merged duplicated traffic-analysis wording; listed the date formats among the prose-only rules; noted the carbon.txt convention carries no quantitative metrics; and noted terminology alignment with the IETF GREEN Working Group's terminology document.</t>
  <t>Final pre-submission audit round (correctness): corrected the legacy-compatibility rule so a historical document carrying <spanx style="verb">target-path</spanx> is attributed to that subject rather than to the whole origin; qualified the 200-OK requirement for redirects, cache revalidation, and rate limiting; added a Cross-Origin Resource Sharing recommendation (<spanx style="verb">Access-Control-Allow-Origin: *</spanx>) for browser-based clients, following WebFinger practice; made the array <spanx style="verb">target-type</spanx> rule all-or-none; extended client tolerance to wrong-JSON-type (including <spanx style="verb">null</spanx>) values and to <spanx style="verb">sci-score</spanx> without <spanx style="verb">functional-unit</spanx>, restructuring the tolerance rules as a list; defined <spanx style="verb">granularity</spanx> without <spanx style="verb">period</spanx> (applies to the default period) and separated malformed from unrecognized parameter values; specified that <spanx style="verb">target</spanx> matching is performed after percent-decoding; stated the client behavior for an empty array; required range-bounded members to stay in range after anti-fingerprinting noise, and corrected the noise-consistency example to ratio preservation; required a documented array-size maximum.</t>
  <t>Final pre-submission audit round (editorial): consolidated duplicated normative statements to single owning locations (the ignore-unknown rule, version tolerance, the target parameter/member distinction and echo rule, the range constraints, the published-prefix rule, the unit defaults, and the greenwashing attestation guidance); rescaled the day-period path-scoped example for plausibility against its monthly counterpart; expanded GHG, ESRS, SSRF, and CDN at first use and set the header workgroup label to "Independent Submission"; merged the duplicated DoS motivation sentence; noted that non-uniform members (for example, <spanx style="verb">capabilities</spanx>) are unconstrained across array entries; and other minor wording polish.</t>
</list></t>

</section>
<section anchor="since-02"><name>Since -02</name>

<t>This revision is a <strong>breaking change</strong> to the data model and wire format; documents and clients built to -02 (<spanx style="verb">"1.0"</spanx>/<spanx style="verb">"1.1"</spanx>) interoperate with -03 (<spanx style="verb">"2.0"</spanx>) consumers only through the compatibility rules in Versioning and Extensibility. Examples now declare version <spanx style="verb">"2.0"</spanx>.</t>

<t><list style="symbols">
  <t>Removed the negative "not reported" sentinel entirely: an unreported metric is now conveyed by omitting the member. Negative values are no longer special: gross-quantity members (<spanx style="verb">energy-consumption</spanx>, <spanx style="verb">carbon-footprint</spanx>, <spanx style="verb">sci-score</spanx>, <spanx style="verb">carbon-intensity-gCO2e-per-kWh</spanx>, <spanx style="verb">estimated-annual-emissions-kgCO2e</spanx>) MUST be non-negative, <spanx style="verb">renewable-energy</spanx> is bounded 0-100, and <spanx style="verb">scope-1/2/3</spanx> MAY be negative to express removals or net accounting (resolving the previous gap for net-negative scope reporters). Clients encountering a negative value in a non-negative member treat it as not reported, preserving compatibility with historical sentinel-bearing documents.</t>
  <t>Made <spanx style="verb">energy-consumption</spanx>, <spanx style="verb">energy-unit</spanx>, <spanx style="verb">carbon-footprint</spanx>, and <spanx style="verb">carbon-unit</spanx> OPTIONAL. When a value member is present and its unit member is absent, wire-level defaults apply: <spanx style="verb">kWh</spanx> for energy and <spanx style="verb">gCO2e</spanx> for carbon (the carbon default also parameterizes <spanx style="verb">scope-1/2/3</spanx>).</t>
  <t>Added a minimum-reporting rule: a document SHOULD carry at least one reported numeric metric or a <spanx style="verb">disclosure-uri</spanx>/<spanx style="verb">verifiable-attestation-uri</spanx>; a document carrying none is conformant only because the publisher MUST ensure the mandatory <spanx style="verb">methodology-uri</spanx> leads to the substantive disclosure. (Replaces the -02 rule about documents with both required metrics unreported.)</t>
  <t>Renamed the optional <spanx style="verb">target-path</spanx> member to <spanx style="verb">target</spanx>, made it MANDATORY, and generalized it to identify the reporting subject (origin host, RECOMMENDED for origin-wide reports; path prefix, organizational entity, cloud tenant or provider scope, software source, or carbon.txt-listed site). A response scoped by the <spanx style="verb">target</spanx> query parameter echoes the matched prefix in the <spanx style="verb">target</spanx> member; the previous "absence means origin-wide" rule is removed (the member is always present). Array responses now uniformly share one <spanx style="verb">target</spanx> value.</t>
  <t>Renamed <spanx style="verb">carbon-intensity-gCO2-per-kWh</spanx> to <spanx style="verb">carbon-intensity-gCO2e-per-kWh</spanx> and <spanx style="verb">estimated-annual-emissions-kgCO2</spanx> to <spanx style="verb">estimated-annual-emissions-kgCO2e</spanx>, aligning all carbon quantities on the CO2e (CO2-equivalent) convention; stated that the annual figure is an extrapolation whose method belongs in the methodology document.</t>
  <t>Redefined <spanx style="verb">capabilities</spanx> to describe query-parameter support only ("basic" = minimum service; "extended" = Extended parameters supported); a "basic" document MAY carry optional members. The mandatory member set is now: <spanx style="verb">version</spanx>, <spanx style="verb">updated</spanx>, <spanx style="verb">capabilities</spanx>, <spanx style="verb">provider</spanx>, <spanx style="verb">measurement-method</spanx>, <spanx style="verb">methodology-uri</spanx>, <spanx style="verb">reporting-period</spanx>, <spanx style="verb">target</spanx> (8 of the 23 defined members).</t>
  <t>Versioning: <spanx style="verb">"1.0"</spanx>/<spanx style="verb">"1.1"</spanx> now denote the historical pre-2.0 field set; <spanx style="verb">"2.0"</spanx> denotes this revision. <spanx style="verb">version</spanx> remains informational-only (clients MUST NOT reject or branch on it); compatibility with historical documents is achieved through field-driven tolerance rules.</t>
  <t>Replaced the "Not-Reported Sentinel" example with a "Partial Reporting" example (carbon reported, energy omitted, default units, <spanx style="verb">basic</spanx> with optional members); added <spanx style="verb">target</spanx> to all examples; added a worked vendor-extension member (<spanx style="verb">vendor-example-pue</spanx>) to the detailed example.</t>
  <t>Added an applicability paragraph to the Introduction describing the convention's web, machine-to-machine/API, human-reader, and automated-agent/AI readiness.</t>
  <t>Consolidated the privacy material: the Security Considerations "Privacy and Information Leakage" subsection now defers to the Privacy Considerations section; the HTTPS requirement is stated once (Mandatory Minimum Supported Service) and cross-referenced from Integrity and Transport Security; corrected the <spanx style="verb">target</spanx> bullet's cross-reference to point at Privacy Considerations, Path Disclosure.</t>
  <t>Editorial: <spanx style="verb">HEAD</spanx> responses now use MUST (parallel to <spanx style="verb">GET</spanx>); the <spanx style="verb">updated</spanx> member cites RFC 3339 formally; expanded the CDDL and JTD abbreviations on first use; cited ESRS E1 formally and tied Digital Product Passports to the EU ESPR; updated the W3C-WSG reference to its current Group Draft Note form; forward-referenced the "Sustainability Metadata Document" definition at first use; aligned the prose/CDDL/JTD member ordering; noted that the formal schemas cannot express the range constraints and unit defaults; removed trailing whitespace.</t>
  <t>For the historical record: the <spanx style="verb">weekly</spanx> granularity value, introduced in the predecessor draft draft-besleaga-green-sustainability-wellknown-01, was removed before the present document series began; the defined <spanx style="verb">granularity</spanx> values are <spanx style="verb">monthly</spanx> and <spanx style="verb">daily</spanx> (this note keeps the in-document changelog in lockstep with the repository CHANGELOG, corrected in the same pass).</t>
</list></t>

</section>
<section anchor="since-01"><name>Since -01</name>

<t>This revision applies editorial and normative clarifications to improve interoperability and readiness for Independent-stream publication; no fields are added or removed, and all previously published example payloads remain valid.</t>

<t><list style="symbols">
  <t>Aligned the formal schemas with the "clients MUST ignore unknown fields" rule: the CDDL map now permits vendor extensions (<spanx style="verb">* tstr =&gt; any</spanx>) and the JTD gains <spanx style="verb">"additionalProperties": true</spanx>, so a conformant validator no longer rejects the extensions the text permits.</t>
  <t>Corrected the date-format references: the <spanx style="verb">YYYY</spanx> and <spanx style="verb">YYYY-MM</spanx> forms are calendar-date precision forms, not RFC 3339 productions (RFC 3339 defines the <spanx style="verb">YYYY-MM-DD</spanx> <spanx style="verb">full-date</spanx>).</t>
  <t>Clarified HTTP method handling (<spanx style="verb">GET</spanx>/<spanx style="verb">HEAD</spanx>; other methods -&gt; <spanx style="verb">405</spanx> with <spanx style="verb">Allow</spanx>), the no-data response (<spanx style="verb">404</spanx>), the <spanx style="verb">granularity</spanx> value set, and malformed-parameter handling.</t>
  <t>Specified that <spanx style="verb">scope-1/2/3</spanx> are expressed in <spanx style="verb">carbon-unit</spanx> and <spanx style="verb">sci-score</spanx> in gCO2e per <spanx style="verb">functional-unit</spanx>; extended the not-reported sentinel to optional numeric fields; relaxed the Basic default period so annual-only reporters can comply; and normativized that a <spanx style="verb">basic</spanx> response omits optional fields.</t>
  <t>Defined <spanx style="verb">target</spanx> prefix-matching semantics and percent-encoding (RFC 3986, added as a normative reference).</t>
  <t>Added HTTP Semantics (RFC 9110) and HTTP Caching (RFC 9111) as normative references, since the document relies on HTTP methods, status codes (including <spanx style="verb">405</spanx>/<spanx style="verb">Allow</spanx>), conditional requests (<spanx style="verb">ETag</spanx>/<spanx style="verb">Last-Modified</spanx>/<spanx style="verb">If-None-Match</spanx>), and caching; cited them at the relevant points.</t>
  <t>Redefined the <spanx style="verb">version</spanx> member as an informational, non-negotiated label (clients MUST NOT reject or branch on it) and rewrote "Versioning and Extensibility" around the must-ignore rule, so that the specification accommodates future fields without a revision and without an in-band version-negotiation mechanism.</t>
  <t>Changed the requested IANA registry status from "permanent" to "provisional" (appropriate for an Independent Submission per RFC 8615, promotable once in broad use), and added a rationale for the single-token suffix and the query-parameter design (WebFinger precedent).</t>
  <t>Sharpened the "Relationship to Other Work" section to distinguish this application-layer, origin-level HTTP disclosure surface from network-layer energy work (IETF GREEN, EMAN/RFC 7326) and from IRTF research, and to state clearly that it complements, and does not duplicate, the Green Web Foundation carbon.txt convention; cited the IAB e-impact workshop report (RFC 9547) as motivating context.</t>
  <t>Clarified that a single object is equivalent to a one-element array and that clients MUST accept both response forms; array entries are sorted, non-overlapping, and of uniform precision and target.</t>
  <t>Interoperability hardening from pre-submission review: a <spanx style="verb">period</spanx> request without finer <spanx style="verb">granularity</spanx> yields a single (possibly aggregated) object; a server scoping a response to <spanx style="verb">target</spanx> echoes <spanx style="verb">target-path</spanx> (absence means origin-wide); <spanx style="verb">target</spanx> matching is byte-wise, case-sensitive, on complete path segments, against a published set of prefixes (also closing a path-disclosure oracle and bounding the cache key space); calendar periods are interpreted in UTC; incomplete periods report the completed portion; array truncation keeps the most recent periods; anti-fingerprinting noise is applied once at generation time, deterministically and consistently across related fields; <spanx style="verb">sci-score</spanx> requires <spanx style="verb">functional-unit</spanx>; a document with both required metrics unreported carries a disclosure link; redirect responses are attributed to the final origin.</t>
  <t>Reference precision: identified carbon.txt as a TOML index, W3C WSG as a Community Group Report, and SCI by its ISO/IEC 21031:2024 form.</t>
  <t>Corrected the arithmetic of the highly-detailed example (scopes now sum to the reported <spanx style="verb">carbon-footprint</spanx>).</t>
  <t>Revised the Acknowledgments to thank the Internet sustainability community generally, without implying review or endorsement by any IETF Working Group or IRTF Research Group.</t>
  <t>Numerous editorial fixes (typos, comma splices, heading hyphenation, host/origin terminology, <spanx style="verb">Acknowledgments</spanx> spelling, bare IANA URL). The pre-rename revision history was moved out of this appendix to the project repository.</t>
</list></t>

</section>
<section anchor="since-00"><name>Since -00</name>

<t>Editorial/positioning update only; no change to the data model, field semantics, service levels, or wire format, and all published example payloads remain valid.</t>

<t><list style="symbols">
  <t>Replaced "standardized, out-of-band mechanism" with "uniform, out-of-band convention" in the Abstract, to reflect that this is an Informational document describing a common, interoperable convention (suited to the Independent Submission Stream and Research Group discussion) rather than a standards-track specification.</t>
</list></t>

</section>
<section anchor="draft-besleaga-sustainability-wellknown-00-replaces-draft-besleaga-green-sustainability-wellknown"><name>draft-besleaga-sustainability-wellknown-00 (replaces draft-besleaga-green-sustainability-wellknown)</name>

<t>This document is an administrative continuation of draft-besleaga-green-sustainability-wellknown, which it replaces. It makes no change to the field set or wire format; the previously published example payloads remain valid.</t>

<t><list style="symbols">
  <t>Renamed the document from <spanx style="verb">draft-besleaga-green-sustainability-wellknown</spanx> to <spanx style="verb">draft-besleaga-sustainability-wellknown</spanx> and recorded a "Replaces" relationship. The prior name's "green" token could imply a scope tied to the IETF GREEN Working Group; this is an individual Independent Submission with no working-group affiliation.</t>
  <t>Adopted schema version <spanx style="verb">1.1</spanx> as the default across all examples (version <spanx style="verb">1.1</spanx> introduced the optional <spanx style="verb">disclosure-uri</spanx> field; documents declaring <spanx style="verb">1.0</spanx> remain valid).</t>
  <t>Clarified the meaning of a negative value in a required numeric field: it denotes an unreported metric (not a real negative measurement); see "Unreported Numeric Metrics" (a section since removed). Also noted that <spanx style="verb">carbon-footprint</spanx> is gross (non-negative) and that the anti-fingerprinting noise is not applied to the "not reported" sentinel.</t>
  <t>Editorial and clarity corrections for publication: the URI Definition now states that this document <em>requests</em> the registration (rather than asserting it is already registered); added a "Relationship to Other Work" note (application-layer scope; does not update or obsolete any IETF-stream document; complementary to carbon.txt); and specified that servers not supporting the Extended parameters MUST ignore them and return the Basic response.</t>
  <t>Data-model and example corrections: clarified the <spanx style="verb">capabilities</spanx> semantics (a simple <spanx style="verb">basic</spanx>/<spanx style="verb">extended</spanx> indicator that is determined per response and MAY reflect the server, the specific response, or a resource path) and corrected the Target-Specific example, which had declared <spanx style="verb">basic</spanx> while carrying an optional field (<spanx style="verb">target-path</spanx>) and had reused the whole-host totals for a sub-path; pinned <spanx style="verb">reporting-period</spanx> to the same date formats as the <spanx style="verb">period</spanx> parameter; noted that <spanx style="verb">measurement-method</spanx> is a free-form string with RECOMMENDED values; bounded <spanx style="verb">renewable-energy</spanx> to 0-100; documented malformed-parameter handling (<spanx style="verb">400</spanx> or ignore); and added a "Not-Reported Sentinel" example.</t>
</list></t>

<t>The revision history of the replaced document, the former draft-besleaga-green-sustainability-wellknown (its versions -00 through -05), is not reproduced here; it is retained in the project repository's CHANGELOG.</t>

</section>
</section>


  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA+29aXMbZ5Yu+J2/IgMVcw2okeAmyTIZ7i6aomV1a7sk1b41
dSsGSSBJZgtAojMTpFAO92+/5znLuyQSJOWauRETM9UdFgjk8i7nPctztjRN
d5qimeVHSe/yNk++q1d1kxWL7KqYFc06nWZN9l3yaz6bpf+2KO8Xyefzt72d
7Oqqyu/olov46td09cbF03KyyOb0gmmVXTfpVV7P8uwmS1tvuqfbvuCudO/F
zn1ZfbmpytXyKHm7mObLnP6zaJKL1dW8qOuiXOxMsia/Kav1UVIsrsud2v3S
rJc5vnR37RTL6ihpKnrdwd7eD3sHO1/yNb1gerSTJCk9v8mrRd6krzE8/iqe
FX91mlVX5SI5mUzK1aIpFjf8bTxV/upskVc36+Ts+rqYFPlist7ZyVbNbVnJ
24pFfZScjJIPo+QnXQj6PklkhU4W0yovkg/FpJxlefLT2cW7s5M3J3xFWd1k
i+LvWUNzjFaFf83nWTE7SjJ+wMjW+M9FnucjunNnZ1FWc7r3Lsc4zn8+Pdjf
/0E/Hh4e2sdX+98/14/fP//h0L49eOEueLm/5z++sI8/HHxvD/vh1Uv9+MO+
u5Y+7h/t7GCrgmG8+eVN+un84+XH04/vjngaISm+qfJ8cVuuavqY1cmnqmxK
WhdapeS0rJZlRRQQbAjmnpzn9D3/ddHQ31k1Tfrn+V1R59PkbFpg7QY9fpPf
FPwvxfIeJb+W1QwPqctVNclrWuWaRrSi9+Dh8utPq7pY5HVNg1gtJsUsoSl5
ipnlyev8Lp+Vy7ltTZNVN3lzlNw2zbI+2t29ub1Z6lywNbsTm0xa65j5Njp5
tBJEsc+xUhc/pxenb+NFuiivm/usyo04QcmLmig26dO1g+RimU8KIkMmmaRv
Ty/+TotBC/r24uPu27PT5GB/73D/6GDv4PlDS8O7kbhX/kyTn/KDO+dYT4rR
De6o9YbRtbthN5rewXOlkBfPmYTOPqenF+ev45m+Lqp8AqpJ+mefB7jrYPfg
+cvnmEaV39Ck6sQtYxIzFrrAaKKPJz80ybNVVS7zbJF8yqpZkWELeed1qzun
mq+qdJZ/HeW4N6N/dvNZsTstql03zN3yP+I5H6T7B/TN5w/pxes3LcqvskWN
U4IBExkm96A64l90Ig72DveSkxs69tlDVPfABD8vioZ2/wNvRN29ddOberRa
MGnihRm/Lxr//gv689fD0/TXi9bof82vWtwzebMqprQidGSSPl0/oP8enhI5
EXNPmOUmH8omf/BU0vXhVPES5tp53ciDOidyf38/uj/keVye797nV22Jc+NG
1iLJl/Tn6cn5Tx8/pJf/4zKe4YTP2qj52oARXX58/44ob3FHy45Dhl2ZFvWk
vMsr4Uk0heKmWHxXt8kSl83KekWzePTYYcaPnDgZFw2LJ7w5n7OL84v0bD+e
zGk5V6lJ9DOjgwTiOM9vVjPlGXraDncPvv/+gGawXM5ykBjm5g8lUcTh7uHz
3bPP4YHcegyNERFBYFTHJPYW+dfk7ZAHmZztJ6ezYo6TPLnNFjcP0oY7sX4q
33BKaaj/F5HArpvixkk9TPe+F650dvHpPF69joV6vrv//av9hAiTKLWob5kG
kuuKWAlUGqYPnOQ6b3gpyuskn5TTvC5uFrRC/7miNcX61nxlHRA9iYzpatLw
mn06P6bVvymabAaxiO+JY9U1Fvh/D3ujhdt1091YtOfp3sudnTRNk+yqbqps
0uzsXN4WdUKq4IrfOs2vmSNgLXodKmcvgTqYfjHVapTw/fQJC3FH57amdV0t
CnDKIfHJJi2v0ytMpnUa6dzTald0Hmue61TXDd8VkPFNmSxXvFlJdnNT6SHI
F3dFVS4wWLq4mC9pEkP6lpU7ekW9mi/xjiE/VA4fva9slnTum2SeN1UxkV3M
aLaTGcnAaXgGVlf/QacnoTUihZVk9Gy25tXQsTBxMOdIiqbOZ9ejnZ2f1smq
oTX6u3KWrF4vJrc0StKRgkfPiZ5mQ3oYLVi2pOXKJjS12ay8l/E0kDBLGg+N
M55m5pWp+4LoZ9XwkLCs98W0ueW56hqAw93mGTSJupwUvGi4KVnmVQpKBnP+
5fLyU4KraPVHQhHzYjqd5Ts7fwILF9rFmd2Bxmd7Q0diUc5tnXmrcUBYl1GS
JePgHuOkt00w+JscZ+lmVl7h/hktLa0/UdMoOZvTeHFpJceVbAZ/IOsh7QSW
R0iRGJhXLVtyzKuWgTbCCkXy22+qtfz++xCPAu3iXzJC6Bn0Ps/xZsWXnF+1
VZ8iSbFdsfvtN9UEf/+dlwFPgnh8WO7+9psKa4yvWEyqPCMd9oYoDnTHRBFa
F3wmVDzJYLtOA9abfiuqjSM14t3ErY7SJuskv6b3EP/KZuB1TCp4dKyRPFXF
oSmJ8oQZ1abn4gxBRuk+KaXmzhTjJQuZKtkjVUY7RERIclh5X41zTgehyphs
JiVNd1EIp6Cznd90KZnOsqHtootKXRp/KifryYyWJgGdL3KaMWZ3RWIgr8A4
s4RufGipzUxN6nXd5PN66PZ/sqr4LN9kS5AcfZc1/Ei6hCZlPJdeWcgrZFC6
f8nbk59g2Xypb8slBnEWDeDt5gBOSAlQo0JY6oWMiPZE9fjffycS+PW24BUm
o4ueQ2xoWdbZTFiQ8suIPq5pnDDT6PttLEQPKzHX23KKuQoDIess6VX5FY4Q
dpsOJ8mPW9IPcWnGq6tUryJng1/rWvCAMuZIKnGcxJoR8RFF5DpNGL90BnFQ
WJTREMa7Iy+0djuE2pjlF5+2QF45EtE3hr/Nc2hART03/m2SLBBatFhFOS0m
w1B8qfwBJUMRAUOnLb7mZ8jKdNIZJAZtFSlflXBfWhAsTzYrFzc18RP6shYG
TK9lil9MciFqlVY6LF1oW77j6C9icXMwRObFYzl1Yxrz/AqHQYRlHZBqS2De
g8Dxq0lZkHlG208S+v62IAqhecRSNRKlyRUJtnm2puNHUynp9yqBxkDHGErX
hHQkspZzYX3YstfYYgYPaAOYOgZE4P/zrzBcEjnrMGEZYSirIx35PAMIVQlt
0YiI0DPiHctb+o2M1Wndgp4SMGsIMt55GR49hQTtFOOqILCmMN0bWWQ5gqO/
tQiVto0WbJXL2aQFnGVQc1rgGxvnWyE42VE6lyQm6Z9ryNNaGAtPBXQCPjct
SBVbgU10gnQ8ArqW1liWdYrVyhbr5O3Z5c/MdbC1bMKNEsZpcFe6dyiz/ZIL
h+MTzGrNEW1hkk3LpRA5E0zp3iY0Uy5o03t4p1BPPu35gzSkL8Ey5MGeCvVZ
pJcPPV+htX6AUAvMtrheYwqdtDrUHcAq0vvuS+M78oDaSOf040EeqK3Hbi9r
otRi1sh1ytRlHfCkSkg7kDy0EbPsin4d9w5Ge71xICPYkJKTckWM8IvpeDQ8
iM/GxkK7S5PFyaGH7OMhu/h3vzdOrot8NsUK+cNxyo+dlTeDUXJSg9Irv4nP
h7oszMihHkYqPa0SCeavoI9xJ7Ps57BS8so9sw6exUaUPKB193hwHEyZ2K1w
zoBC04uGlmDOz83vk2uSxlfZ5ItJ4CUdT5lD/hVLo5KOJhdwftFxQmMDZ5Dt
OKFyOryrGkrGkMwUGcsUpEUDWlWhBcEHNv/a1EfJ1ZrNlQnNegE1JGN2PKO5
sRi8SN6cXWKUpBoVXzcXlPfTVE0RnBPS/Q0bpfcIAkp7qwtZH+Odc74oT5sy
1Y98/cmnt07fwQroeNi0zZN/vfj4gd5YYYVBfvJ2/jwjJZrsSVIA2R8QcM93
tAwrsLj+6evX7wb8Gn7Q5XqZhxf2//WS9Op6cktcVBgZz1Vk7TShwVdrPV1k
9S5qWNR0UhuSBjyl2xX9RT+q2tCQlbS6ocUh7k8PqSdVccWmkpxkHFB5S3je
iR1/sWMxJ91hJaa5qh8lUf36mG+i95G5Xc5Z8gIua+RhJ28DZQ1L53g0n+ai
ditvkBGvLP1kGzwrhckPdSnSO9KecTqYrlibza5zUUxvoC2Z2cY0RS9a5Dcl
6V+8piRDSLTDIK0qkCNGQmT8pz8R5w2AB9sjIfAv+RqqAwmr3vvPF5e9ofyb
fPjIn8/P/vvnt+dnr/H54peTd+/cB7vi4pePn9+99p/8nacf378/+/BabqZv
k9ZX70/+0pNJ9j5+unz78cPJu56osKG4A0eT4wZarejwNgJv6zaL2vvT6adk
/7kcYHg+SHWTw7z//XP6TCqRWvIsPORP2vc1DGhiQ3gELKVJtoSlI/tJCjMd
PChTsopvSqi3eMiHcpHyX/hef9h5BqgGyAVbs2R90Q5G++43ewmpxhrLkNXF
WFdzWg80nofRhf4DWhCpMM/kyGFEczp5dHKHjiRxdvxBdzYSVPBCOAAbMFUJ
CAACGboIPfFsgYMim0ESvzIDiUyde1i8ytyEeEWbxW0XYraJdcgb6yzElh+o
/+aXNwPnDYJFHHiRYA6aIU/2eGiZO1noULCtBv5FDFAOAElOFJJ0/JUeLZAq
G/3QiAXNSGEpzAJ4F8BDAQYTIg3b4DsPHebMWHQyZw4kbBvFnwwXDNBInjVg
QsipZ8l74qk3PPacbEVMVYZb3GVkd1VF/aXeRHE8DOU0sD6DF7c0eQYnrsFz
Kraf6NNgJMTuaf9ZSzGdlrmogsJi+Ryo5Q4cYmKjpwluYbeYzNvgQWp6YYDA
283VNUyUTfLnSU6byj/ldG7B/sjmrkWqe72wdtCsmIt8REBLLDdI6XSwI8QC
q24ks0l7B2zmH1i3h6j6N30BcyB1E+5Aw4/xGgNGjTMoZmHCzQjNEFB/Ga3X
NV6EaWCIvHOl4sBFwz5XfWttXF8WnHZ5iUs/siEEpbyN1uqoWUaCI5rtkc6y
dV4Fg/D2KgOf2+BU42BmK7JNEzAoPkEjXsfO5eAt8msCnj1kQFKUHsEh9vf3
7GS63aCVuwYqUVbeuuUXr2CpzdaiE2yhvZ23C9hw9Eqi1GrIuxVT4tBewHS2
WjKVk30HUyaFjBXsSnEpZ6P/5eTDm0C3Fyq124Rw3D3lAiamU+myZehO4hUa
EXsgPsPuhqJWRVnEgSE+ML7enJ+dfYhNMDxymKjWPbSrz96ffAg8GL/99i8I
Djg8ePn776Joy5No4ytgWaQzz4C8ksjJv05mK9Cpmj1Z7KtvAx+BdkQylQgo
9+uLmc2yJfOmoa4sL1N5VZeznB30YlWmtSj39rShGaHA8cR5BXDDTCpbZqFk
fKTR5PC+8q6r+MXap4YjupvAyDLRo/CCqxwzmwpIaWgbvYLjWLBub9PXoyJv
rtX4bvxrZCmDNfiuTu5IHbgCpa3Z3G5aNqb4MpyMkfFHxE4qgfFH4Lg202DQ
GEE9astBfZWIMSMZA/9Yj72/LQHtAcuticXQYpKWIdZfTeQDAEaO1dtzorQ+
r+HXDMsv0rn9QhXM7iXn9hgmy4GhOjQdWM0WPOE4p8LWpquDClrL+UcAi8wE
Ok1sSN+ADqZlVbNcHm5BMUCSPOl4CqM2R/XEWNPSkM3NpOO309uVZPRmzJiJ
lhYqTlQqz4lFxizJOxZij3Hivdahyfrbb97LTQoSo3/s0QZw9VWoV8Sd82Oz
rdGErHu7Wzvpq7xpC2GsMtGkeEDd+ZKgmySHbFtM8gHLQ4PKnjFq+SxyqIev
mpF4G5qZi/FgE8lOhIhQ4af8VrCtpzgdEazVwMUVY5rPFrSH9CQnxrAVpC7c
5fUzED4UZnkJQz600zh+ZpnlBe+mUB8vgBwVhiGPaANah+O9IdivjXb6ZgXr
IduCUNKeL5wNm4XEJbsL72xIFywYhYeVi1yUVZjzSUZC50bGV7O/Uo1pHvVS
AYWxf35KOqaBZEO1qtvvkbHVwmmeAJzTWi1LRqJ5MFuogI7Zzp8e2N5WuB6U
oHjx/lE3tco1wVb4nED3h56hjiF5UjyOumdXrT2y9vbkA8LcFgDdFX/x2HNy
omaUf5fR4hWkBZloskisDgE06tMx++Xs5PXA7sAzVI+s2sq+c5qwpT/PSOkH
6nqXFTMDKBgnI770lL0zAucNoy16ljx79pH/ePbsKBEUbX5Fd4n2fy1YB51m
sAi1yo3M2ETq56Ob0TAZuxAFkS0jegzAPywhCya8FXiaci5iDJN82agG8/L5
i+diHj179tiRs3GyKeyIo8rJIMY5vK7K+RMWQt6lIEBlzzTHw5K3WXdAR8zK
frw3LW7rtqrPM64gISuF2eswniCvBvL+8zZI0B6IeUCY+z/Ojr7ztGeIy9Cg
8cLbsNthdITAIEKh5NFEvqTC8/3QfYTvnfw53uInknuz5llg1BlmgjAE+LGI
YOYM+Gy6iNxB3ED9F8l7N5dzQx9/BjbubUjG1zAzYv11gTOjw6rFTA4e8R7A
y2puAAit2IW40QV/qzQWNVH07CoX1GTq7Z0LWTM+6+oaHUI3alZQeqdO4DIY
Kih+nbCrtRNMC6QLP/LC2VmBXUXs46qWQzCVaAg2tWkfMeTQ/IbnCmbQrJgX
2KAhPKXEksbGiYTL0DNyCGn68WBvL/n4b2PBITI5dFflVGC5wKNbe5Z0jPvA
37Y8lU8OfFm6LJvrwS8jjWGe1zUAaryQ1Ktr+c6/0tHd0PlidWcEiVb4ZPx8
7zniGkUHG4Pb2sAQPnzD6qNslkhWUe9kYWjJdDLu0TINeuoLnEDchYefwLWR
T22p6H7+5ggsf5jII3Sa/cgovpAdS/ZfjF6MXg7YZJzQzK9Xs6RvGzBw4Hot
q7nSaJBxAAHs/kddLnA4pkUGnysdfh20OF6StylvIL8eIeWkZ+KUzLOvTPYc
XdEUwl2EUPX+YsHWo4QwLauC4wHVnTG1CJxaDurHpQpJ8T0EQnOAOPtJZkPf
YCETUfmBlk8tKKMq72lv06sMZ8ThlRLWwyEItlR+fXTMzITdwLEffG1KY2qq
cpby9qQi/I6SZ353TitiFPqDiz9PLsimBrQ21MU0IbBESB2xCHAYUvR/ZiDO
LPO9w0M+n0qfyfuTv7hTqiIxVFmO3QyZ4euuZf4W3vqsIRZ/hUB44bYq+bzJ
XoY8VI1G4iOZX6RhiF35YwPg3w9PNNVrkmJ4qlMZTsRgKhD9ZdPCsDTYR97m
lqj3U1YXk57FI4kleySKx4cSwY/ECsjUrCH6zk2D0ilUJR0s501jG4LhtQY7
Uau+AAFpctN5oHjwS3v4DCkCETNieEb3TxaBZCeR0ewBBL9LlLYlEp+ArTKJ
DsCv4JtbpeSm7GMdP1fpSGeOnqVfmaRX5rqEvS+AjQf74vAwViuq3LkzxLKm
18OPTJeIjqz5FrK6pI5nq1mTfOLAFlvmcNuF/mREkOPgjwsgTmJWN9FKSnwM
Q7hmxrHyK1/Ps2bilCunK9HG4Hi0orewWoGPCsYab98kmyFerUrWcBWZDuDj
cnzgYVo361ke2mLmCWwtuADVrcfTj+Ji9QPVU6sRXXNgZtdMdFgOWc6f2T37
wDKaO0okraphrKV8NLX77Kvyx//Oh8GfoJ2dC5WCYDN2HHt2fc8jlECP7yAj
oqPqjkut51NoG6PlQ1ZHZMcnzGlEbH8QCSIGwEyCf5H7f9zNlsXu3f6ugDDj
wVA2mv2zAAdCuPm7On5mLSolKTErHz7Akcd4Yb1eNNlXkWfIdYL3EJwC+CeR
PZaCkWaAe40G3WXKRBgLWODEaNhqikBDWqcRnV+lQwCJ6yZP7+E/F4y3ztOa
4z8Z4+CIASFzHVF+M9d4AUGvNDQLk70GJGsvmyLUnPFWJxyYempZ6azFynyw
heM4bruU/eZNJ0cyld7JCSEq50zXrZC9E+3VPUJWyr/IwEF3gRukvox1VkbQ
Js2RGqZ2szOPsVCp0gqmy4roPUcoCoGFET3F1uAzmhhsCoQCYqHd/B5lwRex
rnhbLpRLdCwtWyQWOD4jewr6M30VQG7CO4MDACVfFVAmIp6IOH77S5U6i5Lt
0KRaMdBDZD2Q1xCPER2USb5W7DS7K4upg1eMRTJYCXgOA1gt/Jj45MhCfFLP
YqyJDYlt0HhfO96nBunSsfkL52bCm5pinrPbQTVmgFKmWDj+YbwxZVeLj9wB
/dNoeCnHf6H/pe/fp69JHRYgGMF6yHrUY0yf6BiPwW35QeOBJE48S/5C/ONI
njA2JnOwd/BioL+/B0s+cq+Irkn39u2y19n6KB6Hv+4lXceXIunIWL0sisRr
hXENxEw+X57SwrN6obzRXFSBw64B0Cq7CkYywsMvOSZbVoYD+wzIn8RvjQBn
aDQFn2h6ZtVoBsCUodGMmY6LuAzJldhhWSAydGNGnba3P2ksQgFNVnIyb8iU
BrYtAgRhRvw61uU3PeyxNcs8Dk4KxDKsAw2l4djs6+IGoCFp9CUjtYFQ9eMZ
Y4fGJmCdHbko56zcyqyGjkEoh8MeTVWNya5Kg6blvT66T1gXNF/VXbJKInsY
9ICrpboqmopdQCCCOwSY3JerGVmv2Z3FvVR5mknMewledCWuMxiY8siiRjTz
JmnBVvmS50uZlbAUY6QBOxKmkNTzDNZPzuC3jz+aZItyAU4TEALH5+LJJMpg
/mq4HqMDKQKK6iU81Sx7XucLhIfTqxX2MJD0wmIVWiBoNp3SptUWSi/kbNSi
sZ2pZwSOtqdyIq6R9pq8erm3jwEDmF+JvCOOWTb+TDAdMg+Wv0X3uoUVCHUW
L8jZeUTDvTuVeBCGFQ9fRBb289HhaP844jOqZRu2vCjd5rIBnYginriE7QTR
gayyGoHqyFunxjn+WhkWsXoK5N1Cx0XplBxndndjkuJ+FtXdOH/0CFU0DO0T
7d+F7ej2jQO+JA4BHwqeLZyX2E+dXQ0Tpm2J5bIQXNKcIeVruY0TYWhd2WGf
/DsdVvrL/KFn8rNCleZxKRaGRynu4hiEl17yOGYfdZg1LSLKM6E15NTrwCsA
KZX06hnyXnr8Stb35JC1HduhO0GP1ZjXfLYe8wTG06ygz4CzVEEzMORmIYea
RgqX2M2Cs7hFR2UyDcbojAoQA96ovLyJonFtiM46DJ9AN7duNE7XeCPCoVNi
Riw4sHCNMyb6Xs2W+1ju9Mic7UuW9Pkdg2QcvHrslTZnmKj66LJq868Zs0ye
pzyeEcDoMf41bgSMW+XO1DcOrWJPlQsGDww7YAgwmDLxgmmtGhrGnt4ghCTX
kBQH/7YWmWNFdLXU/xeYy40kDLVnyyH/Ailu1+CILeiD2PW3Il6okSJBWqJY
Aez35eOShG9z2MNqUdDZFEXQDC4POoPo5stVoxhZZPFP3QpyMD6sntGGsSk4
T0wpqsa0d66T8pL7LIj/HiU/M9W3V1pIAmwatL/OGw8JdJOuE+seOlBRykKB
ZjfyNq4E4ZeSzxBAT8489uasTNod27X4U4PfxVPocAyhOo+VhTrYNTEFn2Sg
7juiy8wGEb6ZMwNYVyI7a6Z2oPCJOBAjOBchv8gkeI6nPojWTIDEGOTeo4FP
DUMbs+TQObN9fX2tTu7YnltW5cT011aeTDDD/qVmsNqZZdN7YnaNsnVntGzh
jdcsN0RriRfKwjFj4kN2i7r9ZSZTCfZV22Qq+txoIHzT8Wndibp9/v2GI+lI
CNMzC1vswNS2PYETYNM25EmF7OQhr0PSZ29zyDV66n/6lK1niNwVcCjpM/TD
0frvEYI2AOPuALrFD8OkTTzBWFkHfqTR1QcvoPBgooFw4HVXCZH03S+FOqWa
UljVGoFFVb7gg8v0CZcLgqVnG+herTkf3g3BaSUbfophokykqMSYeoIfjtGS
iDPTo/GIOyhFilmT5p3mEtAj0/GwuuDnE3Y9X5WaI6G56LnEgOWqOwuLC73K
jXmdm3KpgcWYHY3Jls1tjWLMHPwCQ2lGBkQjVrMGgztiVWi7udUgUWWDhnVt
iBo9EAMIWQ080OA5ehpdrVg3O6lET5svEdfFA1RCRVRew3EEte4vXr6wl0t4
Zdae1dAwZGZpRni1bBDmWU8sjKZSHjJ2xJHqWRp6CSQYvEYTLgMCEp1WUK1b
MyfY1FPB4k0KQ6T4V3dG+WQe298pdmncPimGlyOek4NZMbG119T5iV6nEw8r
00FwuYpWBkYWMBS8kObzk03gS2JUR9fNS3VJO4vlwDiEaIXvmH9iPGDLCmLB
hcv6N+jTNe57K/rFGrRqHs+eoQwR+7RQ7Kozd62dVieZLz6xLALqHctAoty0
Zf8bKCzJcAMOKGacgrODUj2CV6sb5HmnZVVIlvQtJwRDxVMdimmPKLWVTENL
YhmwPhh5hNol/tyL1sPHLwtCUhl1Y2hWJCHDkQhknSFRQtyVKg6dGOO5sbda
g6qIuWkGIMupdLUQpx4fWQbiHjKP4N1FnRY+u9G7lErF9JFQ26nfuCFrBins
noG4FPCxboia1MksZu5A3PWR0xX8bQaupE+VV4T0FxOI5WuphorwzQlozMYb
Ofh4e1sHrnclnkC6pZebT2LkvhabX/U6B0Y9QSYwyi6HhCwP/+j2E/kcs1dG
R/y4R4VPnNPr5LDLvpjBXQtGnoaaDF8u3jXFsmUXJ/lRmHcmS8k+Ul0CKHWS
Swol1cVZKasIX8/5jSqvxCRxoodZ58lfhi4yzPs3AdKRSONQEE0kFtWQBflM
JdKwFZ3r2T8rSV1ZEy7DadP/wAFy7tyEu6MIyZDD5DTF42ZF60gH3626aGaL
dRBZ26HhewHvpTgppxi9e45JcJnkdwgRv83uirJS5NuFggVE/zYoJCHRSuGK
bgvVkwcGqQup4C/Roy9bcDF4J82fhPZCUztv2aIpv+QLMT/ZD28J/oZYWAJQ
yuuQQ77674gTcJ4UfzuZlatpSmcb5otmI4+Jj1VTEG+zTjnfAQEsIPrAtSoM
DvUbNBuNXUYcfMijqxXa7Mj0w6pIILmKFYsO7w6mhErTxtU0LkcNIu93oJ9u
RMNJrkgmXOuLlxrbyTpSAIOKlHF5dIzi6TZF0Fi0R++CpFP2/oYbVscF/cKk
qeCyAYeF3wAHyGbD7U4C1RsiHC9MfoGSILvpX8Cqy4LDf4nsyS61oijsoIhk
89QD7OqXFMwFWWxiic0sX0keZVxTVaXSkr5N9nku5mJZKo5MkJhg+nN+xOd2
US5SIPBuXC6ytOXpqId6uHLOVqbJL7QoVwZv0GIiFJRCzxqrKvqVtKBlqatO
57kATTuqT7PFglhAmmtCQZ1+uUF6v96NWg9BFgx4cC0m6hrahcC9En4pp01F
/QLsuSnSOOWOJspOYraQpw/53tgDGUTFzkWwpZ6fqp6f/DuzzVNX+kMMlY/q
y36vIfRMxm09e4PXeA8eq90+gqXU2Jb865Kx/Km6+JwOHLv11GASAnIGshd/
ffHPDb0bzkHYW/x7kS+ObcfSXGO+ZgI8MFwMKSI+yRXvdJzFqRodvhspyCMM
l9b6cWVgFMVEtJa30z3Ng5X1PWKhai7tKgzIieJ8y8CnFlVUsZivqdOc6RAt
s/9kHVFzcNToFdWDhD0d6jWzuiMnH5VVw/YrJw2dAFrnlD95mwt6MhffAdqf
WJEy0gnFm1hozYknMHZjwMKpDdkTLxhTuRVlc0qDmLJSAoBjzkXpCLzrdHwu
JZHahGAmYLzFu1Wa3ymmlfshvUe6dwAyuoATCW03+yQIYEfRjjjMaDB8LOil
p9EuPcS58Mt9La9sphs+ZNud5DHtziIT9u60CqYEXGHlWn3uk1an0tf3W0NO
lWBSFNHg92vcgiAnQeSZqopwsEglmHY0WyvwwwQXK7NmhG1Gj2wgOk/QsLmE
UMFF8epSXZ43K5/g4zmLanCo1MADGW05eN4EVw9QSwuGWVYGMaq6HGqKeVUy
wkoCEiXqlEqS7qR7PuPpSpQ40vCLOa0SUd7VOqY6GQJDC6JYIvgnrFVjmBCb
LHziLlE2W8Jyl2V5zYnevAhWkqGFeIQxiW4r2vEw7ISkcZKIvJYhfoEYZWxQ
5iclc1xthT9tfZZEyYfII1s0CoPFwSJuyF/ytQSTxY7SN7+8ebSugBYofbwa
gOzQRg1UhD3kmpVnMW+a/xbUhAGv1ywzMPuSiyKGtSf9+dkkxumq2ixJ5B2S
Zs85vnuVO93DGL0XzC4/mliwCC5671hHzHoR56OxH2385dfbseTfMGmZNRZO
ErdsSDJ+OoLGZIrgoePNRaE3mXkvOvlRMqYXDuW99M97/gc3v6FPPvDVHV/J
AKlZXoUOQH6AeRpGyScfCKIHkuNp/EL4HGd2O8TLoa9y7kfJe0YNQYa0Oiem
96h7QErYhbHwmLI61hQygWMvdfXruujlRkA6U0QtLNekuhpT305Dw0epQ0fX
pg5RhDvo4xGilDuepJg63yRzULFikJU8L++sNgsnMTsVPFrOB2nTle7yBtIm
OZquP3ZaP6hx3vAf30KQcruR5FAcB7Rb4/bOS9wAqlEwQhwCvcE+9R7fqB5A
k3jrNijZlUkrggCh4u8kNr+Vcv0ORAvesxo4knwhwN08q76QfNFv+p6ft1m0
chrWL9L9+EycmYUmccXJPhEmm5ED21l3UsKnHDz8lIOkD9QKz9ldkoJ0yykj
csIffvDhww8+TPpyIOiRxWL7o4qUHlfl8cMe6wvAt4SlZJ8gFq6TsXvbWODP
XOh2w1BWjxd0q6sWmty6dOOw+d+FVJ1tgoqg/E1ooHj6VrW0FxQO7emfqzqv
epxLXm8Y+p5GWynV26OXIioubGFTPq+wg1MSJfFu/JoXN7fYWd1DdxNedkOH
iBEArgEIUJXuf3Q7RKA+hjlsozC5fEM+PEkwcAW7LwWtSzTw2JUQcZHHaevS
V5SUobH7XsCjI/EibPr02JAAXOkDVRGbxq7xwmLFPFLjrfoYwFFUKySEFpb4
GClUdNrvsWapHPt41T9F5alNv4FV4e5T0yrKOjDBYkWz9nj4+3t7klxWOyKQ
skf8+qAKUTeqyAn0VhYo8Xcmk4pDGTkOMyqPNOSoC0Wzg446UbUlwxU87jcP
UaK4LkA0KuRUMNa2UXNsa00JrV1gYt7b3x2U6qIGfKyTK+arFTdcLSdX0mLy
R+pZWC0LXx59o5jFRiigBWvGdYi0liIvaSZr/rVVw0iLuvCc1ZpQbwVyQC1A
uoizpI+6rGmXyoCNiNyqUVkFXXNxbszWkPWsK7QrPrjFDEtw6/xjpOdKFTSx
YoIMSzKZET14HWFR7SzlEBRjq7PlNGT/rVmXm1psbGJe+YR0pvasmBo5duDH
gdr6lNhOIU+Nw9lW2P/Ym/lm/oPlKSAfIUYDkrbY5jFiOTohoajWAi4PsSAo
puoyxUeFePBR8Bp8EnDIfDWAfpSUlZEbCcnygops9MdRQSytvmo/ov2JJE5Z
8KBKm8Khchr2PHXFOIIyFxp45wobaZBXwDHdXvkBcQX+60jdvs+5UjTHVfSf
bFUMtNjrWDVLXkdRD22hVKkbh/jgt5hJQ80a5uQdWQUYAsdtrSt65qbyIDaE
uss3FDOdRnNb5Vw1JuXBWh1lYm8bso4mul3COCKJ+cDASa8MtbmQM4wiJ1HG
nIf7e1zEo8cFSvhzT8u+5h2RFFplVQMAp7lzUBKLBw8L+Nvagr0Vh9GSIhzR
EeU7541A37UO0zK5XXTFql5J/fpGPIa1SyEUt25aC8grwc3EwG9giPUvLs5/
HvjuEjRUmbTlOtcsay2ZQUKAuSSjLxmH0BotLOEZv6/aEHsDAXt5ddtDinQO
p7Pc7XGDoqYawurPkdFOVyQJnEIPxJEoPvekg4SoQuHqUciplen23XHYBipd
QlLgPgK87aLw1LI0mBaC0xUR6eLNnGohlfXb9cFhY3L5JaUhG5+FbGWz+2xd
++DahTn7+QyNeObQ+lxCLiPSEuC5yrX4oIv+ekKVJ6XDWVk6fzAEbB5VfYsU
nyCNeudCAyV9qSrZfgn1kPIkk2CzhEMhOcmx31p0BjYTUi2ktQ54RQeONezA
J4YhC/MXbDGdjKc87lC10LRFapaE3tpWyJlvujykMtlLSY8edSEpqt21LSOG
bTQi0DPXDSBjHLvqg3jg+dBsP0OiUFzxus4tZzfGpHhiEiLJmVNSbesJwsdc
X8oKnENZjhW3DahQi0y9o76KlxJWWBhV+5i5/DpnpIThEkE1wk73tct5+CpF
zLe6wJ9ga+04ZYCbs0Dcy4tRFXCiBd746EavDgLwwlC0Y4vXYAjeRQutmloK
NMujoLU0rKbKiWkH0Ls5mw7i+Ycxa6YcBsc8oQ44GEIV4CzmgaNwOKIH31cI
b5AoYEQ2972qMF6sZrPxo8/rjIzn+lJhZLyo0J0T6MdBosMY8h62dZmOwzEM
AtrFVQRQa1VbrJyxXcaMiPIEUfCJHgr+SE05pqOIs/XrwSYoqWG8i21rcyye
htbU2GVs1dU49QDH4UqrLmkEtQVyDSUswU3gu1CB1UCVWt8TTj56zUO6a96h
ugqNhJrhamE+Bq0TsgnKPUQiO9LIxNqqoDY/c5Z/vXztavBzulEStoRyhCP0
BHamgXeWbKfzk6gqjeOl/06+cEqL5lFx3hKUpOAkR0fYVDHMoJzRO6HwxUUx
O843imdwU6dYTZJgwDifvJbBq35NjxJBYVmStMQ+tZ5GosGrtjJiF/m+Gakv
8onKKf0g/DJISWtFLEqBWtFyHle4Tp5QJLLojKaP8wKk/IqmYgxsvTtzCJyO
Fhe/bMeSdzm35Iy1hO1AoKZ4NBuQAm59wAABuUV9b2jYEhcV7i0vrYZqa5gv
nZC7omo8jw3K07Vl0JEr5Mv7GeEkYprkC1/KRYMdxDKPa/dsSrctm0TXBhXx
vqs37xz4GuCsL6+uOBsfR8cvIQiTVVEdjZllgnPN8EYE8N8x4uZIcwWO2Ths
j3TwbC0RPnz/N0ULBkkVGpDtHalKP2ovN66EKr+SS326zHj2AqgGtmau7nAt
sz4eOC/tmp5hn5baVYG+t0JwCE2IE5ClbBPyfG2RXAedab6cleuwSpimYuEq
sQFESXHZCxai1coyJo5Ocu4ekQRRRTTsXlNLzxcFMWGUHcXZRZpy96CN5+ug
kRUkrXwiEV/Urj1AOkG5Bc7pr4uZVFbiV8j6JmYeeh8mupD4fHyEQKvU6Iey
ZKCabcxOSVvUSpdcMgc2sXWpsSh01NRv95MI8FCg0oZ8jTXTxDgr9yWKcSWt
jjEMrrXy0GE2Ck4YwDDkFyAxxWpXhVkgQVsp8y9oEovk+HOCVJKxV7Q2cehz
PkLfiNREgEUcJlVJXrqCaROpInfk31O7PbxaJ5ulHLWD0zDRFk5qL4TNoUD5
AWZljzMu6aQoKqaoZYtu6rWantJbLIZnw/gJB93MOammCavM2BFjjk3DMPLt
jNJ3jSozP+Sk7+sB2M1CYVG0aQeooZ7is/bto2fPkg/BULQLW8AMwjV5+FAP
teHOnVTvEeyisLLfSCDYhrhwhinX3a19xYPaIAjr+KM8kGiolBq9C4m0nc00
btp6tki27NyVIg1VJ5LlGNxqgdYe6KIQdUQK852dVpD0Rr2k//Pnd++Si8uP
n4bJ53/a2zs4k8MNiIP1ZLE5N1AqkJyuni+DEtBVQFa09ZzmGCyZ6//U3vcA
OdfOAVe5AvyGuuGs59pNIV1IDRe1dVHyzwp1aRynBmNwIroeu828uXI+ssjN
5Yq0cCHPZXnPbufsJk8lHgKILw6zuDTDIxsEfg6GDMhwdaWg+Q16lGdabkkr
jLx8/goue1eXNb0GnisIlm8yQ5vb+x+pRFDcceV6+kO9BIFtrFmDo6R9Fiwi
FucpqkDWiu5ABdJKStax+8s9JuAqreo4HOKtdUGjFmuZpU/Xrnyg5yofSimK
7WplF577cUXRYNhHW8+WnCr4ZAGPTcqymlrl6dVikYMxI2QbD2y3MAojw5XK
iT2XjEAyQQkLV6S4bnOJeovsR4tVI/A6YooOTEBnY0nnkEFhfdjDoG1qY3sl
lnbaJkwsLH0e2JqUVQFKr90U+yJrWL4HsxoIy3tMgXkWpQiJ3FFpI90Dtb5O
E9lKQU9BTuTU2kUSPStoqe+LwrEHgnBtAR+7QYkQi+QRRUFObFd79d9vcdtf
eO8Sl4NEBlf+Xo178c5ZEKwYvmy0TyTqpOkODo9i4FQ+B7mEebBO7WyYkbP5
6iC9jz0fZgCpqiCVFsQ+P3aQv1eCQpp5RJMJVRj2UKTTiv1a3kCXgxZstef3
ejfsjqO20S8MQ5wWkmX4JM+C6zMQ+AsdThi13ttqg3clqndH8qdpWIAtMPd9
kHrYRrODNAJSdkalDj0aRYwsCXk4Jtki0D+CvVwFpZE3Cp1baOKmS4wZeMs7
/gggw60ZyFL7WeyDsNUjt4IU16SP7WO7wfpt7v3+ewSruUTYJkgtONrZ+a//
+q9kMp3Odo6Tczr0R+2aOsN2KQqrQsHaCmpN1Dutyv0uceHHnaQVGmK5D8lu
8td/2vLb33baD7Sbfkx+oycet01Xb3XQr3o0SZoR7Q/pC4We/Bchdnnkknp3
g6RXXGWZCHYfv9inOUfZgQ4+oIs280n9m1uQRPToS5f45Wq6SOMGZF0NE829
4t3Q9KzE5WahZGI72it6+EYDA/iOOZ5CkmqCcIihy30ZjUZ4sJB49LizqBnX
scSbBYIkDNH98uutheTSvf+SbEqhI+BjfMDx7BD0D2/Ac2m3fr3lrfqi/77X
f9/Qvzq4Uws6DgcXiK9wcOwWi4bXln/h4PB09nMNN0cZvIBGyc+VgfqPEtJs
w5TOcUHyOEM7IGd4lhD8pgZV+HjvHOiI+91thf0O+U51gcXzcP87NnPNuWX6
5m8bBLcf/GO3H/7x2xWu73xAB7G0IHx/9NwSbnGiPkaEj/lW/f0dd7fdq22i
WrqIx6G4Wvmu7SBuOK0Y/o2O6akGHKkdyTFevtzaRlnzhR51fmzgeCFSE2bB
JAZWwR/CKCn+QsOkejvxJvNNEjbFl0ncFH+UwCn51kdN2QnZQBpAHaFJKnbL
wMVt8F2K68V4G356xkuT/PjPUPR2fofg2ypeAby1pWtnz2WRtj8cfG/SdqMM
suaViqBFQaUdyDCsyBLxkHndO2KplsDkZNGFL2ht6E30qScexl7y+1AuUnH2
8EWhiJMr4XqiT39VcTcMpN3f3G0m8x5++KaEe+z6SOo9fHFbjD18tVDplmvo
Er6uZ0z2U8eab4qj+GnXszJrXj73rwzEUWtlIYJEMg1FMA1FLv0t2JZYuDzy
qkCmtF4lQmXoxMvQSZeNl3mR4SadBE9qCZFhS4b8jW+wR6oseWTYKjKedNXh
o1epAHjkuhbff+x0PCQJHtv/xyTBI/e3ZcEjl28XAg/PMRYLTzlFqf68SSPK
/YfK/Ict3j/0rH/Y5v2O8w8d4x86vj+M2b7Smju23qkRHdymWuXGvs83grI4
bDgQwOwP4lhZQylYwEpwExwgm7FPWsExiBXY3QwNmJRpOZmsKgmlxBs0G82K
L2SN5HUovx5boNVGnTUX5arxq1pgA7GmFpsZzs8FiEorNxob/h1zIObAw21s
rmn1Oy7zZsYSvQrDC9ZFMtfrXP9ugyXH3oXImHa2BETn4BzzWgUluwOL2gHR
ilbmcBdxHet8bpWPgoqD0pIVDkqS/gzzJp8BCnP9RSn36XKZ+zBXrYwmSWv9
dMQNoZJHO8upi3OzjcjRlnCtUmKtoVRoNhA3OJGeVppp3kqZiNvh+LqWQwMk
nlI2S8MiEaEYqxBeXWDwi8+M1w56Uib/MN3bv9w/ONrbo///P+WilnZgKsFO
rAH0bAdOy2qZ9HUN/2zwO7GAgdzTqQ/0ojpGdmFbEeh1tCPcDS6T+zp0Aszu
hfzqdICoJAT/1Cnc91/s7e2FP6vAEMm90y2mn+8/3wt/c/eo/N3ZYKPGNb2m
yY0RZuvkEqBJ0n8vRayTN76S6jdT8b/IgvyI1fhvQUnWH61CtmuI5ypJOCiH
iTModQnckG879mXdrosKbV/uSy1zLp6JW5wBdoBL66/8TkJsHHn+lZZjQ6d1
RNpFpvvp3ovLvR9CMu0g1AigaVHrKejNGkUmH5foZLGs/xx6i+y2boJtl+jy
V/8hqn2Abmm6vUj0dhHvVvLdF+rdTr/dFHy4d9CpVoYkvEVr3FASt2oyz1+Y
9P7/t/+B7T/4B7Z/78Uf2v6DV6/+N2z/K2z/zt8cx7sUlnhhtQiVuyX918SA
pFfZt/O8uF3Vf/MskMXd/ovxHxSU+y8fE5QRAf6/Slbq0rQlphVBekBajl78
AVnZJSqFzgJx2CaO/wfE43ZS2SItT5wi65Ro178gkpS+9D3f/I9Jv8P0YP9y
7/t/gP09kf62UmBHgclvZIC0xHKnkfCDxNghAENa3EaNz1/8Ed63f/DcMc1O
ouwAG/ZNWm4iC1wiAQ7RmrR3K51Q9/6Y5Pv/3tZ3CL8nbf3BH9r6/Vd737z1
e39k6wOp90txA871mit0Eoc45Vbt+dSXV1M29sfZ2XIXvnKyjNvi72DPLFvd
oWTVFDNJ7UDPOvM3SeRumEIbVfKSRpLDuOZBmOs005qraENPdvxNleeL+4xT
tYeha1xLnE02XREWftARZtYRrNbfCB0b/gNxYxqbrvHAYcyvJBOTJT9fWgTv
UwqD/1HjHIefTv6LP6JzvJmVV7STF0IIydvFZJT0refvJP+zUogt2oMayGYt
4kfVkNbjd7n6JIpWLiZr1Uvqx3WSg70OncRR90OKycG36iWHo4PHTPhO9XfD
qRrg4HujveAbYN4Ho/3gm0NWoewbz2P2Rq9Er9rGYxBBh5am02wdDW07aH3w
8ntZkScA1Pv7L1/p1nTYcMOdx4BnRwR81drRwN0k3rkNFHor9QQlQzrRFEGe
eSFiPsALfLAf6JWfUIKcqx4adNdvlzzDAbaWyZ/REGLw7fDhW00pNz7bBOUr
XVpsZlmsyo/icFjOwZaORDOuNotY2NOLc2uyNOAGOEENB44ICSr+8Ts13KMz
j0gSg8NSe4zgCHezVPBvqerQigQstCeiPkr6Qm4vysa5iijLtqUmm8vSldi+
Vg1+REkyVjmOWySnKUBWJ1zbaGvcHUArmaJgDgnGmS980K7j77H0jRQrzrWp
fY4NAnFyLfqquTDX8C/8ManwHJAt64PfDNka6Rudn5YjpxIq+f55Kdc8SSxs
0w0fkgut53+TidqWBa1nbTc5D/b2tjPwDvwiYNju3u3Mqj2lkFk5xpN8DIrV
xvWVd3Z+ckGD4BiLqWRrKa1M16hVOxlqoqyrp+GcJ8ltnt2tuRkoKNVOvmdR
DuHVbsKuaDmSTdNZQacTN7rA+If7hdIp/+Xy8pN7HxcAQe6Rq8RrzQYlTzso
ssHxED/s7+///jvfZn/v/f47J2y1ejojOJdbnGriGteftnrJp9z79NQSeObZ
15Qkxo+vXj7f2xsPwleNJBUsjCB1VaeyZIZU8LHe7roIw55H9bNBq3Q0nvVZ
WsmMzy6zG2VM77K6Sd+XU85MHGvXFpmYa1xaJ69Gr0aHfAM+HQwQTEcilGNL
uxZQOpC9vU4/oBkW9zPfqGXN3rB2Khfp+Mhg+Uo7+/d8I+r+qGOprWttUQVV
x3x8sbgyXRJFV7C6lZaRkJiubAF2/gmLS4O0Y3MrPpyh+ywO6tdhW4C+Sdml
NGFTdy6wxDta/FIS3qyvY+nvdyLkVoa8plVbejmtCYySZFFo/gILAXA77tNE
igISFvEQTTlM5iTailRrgi9nWaNV8K1WtH87LeEUncpyCfT1CQei5PEDrB+J
+UNdrXGr05a5d6hDl+Q7KaW8Zh/dKyWvkutDSIcF5OCI8JwVXOjUSuQgfPhD
PZC8ITa+sCBfXbewdm7u+FFtSAJI0d29XGkmOONnK2L9xGAkts87VVFHX5JB
XM5OfGlYtuxECxghUNQAfl9ySH7MNcrXtym1bedObdJCRzICa2nHwSoUBx5I
cbEwbpfjrrcxR1YxNzsw91+XF4NtfH7OqcpS3cZRGBYOAon1FdWNfIdTJghS
VXI+hpyOxoGsKivC7qFMWp1Kj5r+rPMUjesUTBo0V9nhg8PSZMt8YPFnE66p
tMFPvGTx7EwXP5BLqDAlHcHA5IFASFIO1wcRFo09tmXjFG7XT1taNmmJjQmD
KAIfSON0u0yezX3euJS/DJor7vKm0c2krHIHhnaDbhbA62XGDVWdl5QfeEwc
Q9N3o0j/1kJrX1s5pY6vatJJEFZtkvnxUvsDiU2RAAHX+VtTkuI9WLoOs87g
iLppOGriBAAk7EgnyxNpMgjR8Q47WLM4WYIZELXSzid3BSc+ITIh/3pLeyMp
Lvb+oFph3AlU+YcEefgMEsDkEFarueUcSwBsmE9gTRxHUl2GNF78evjypbti
U1BrP1G3c9LnPf86yXPNLMb0HmjAzFn1aF+BToyLxjUl0e5cCTfemQlbrshU
1y5CkRWHtYr6bGt9Co7Vf7wBbNLnvBUjNOThplcVGo0KqWmDAinjU1Vlpe1I
N7sM7Ox88vUSWyU5QyGThSfUlGMt+UAUwG+KDE8Vl5whNanWywalbJe3iFev
iWlariVnqU8a4G/SbNMO4v1t6TNCX3+4GCaX7y5a9UDj6qRhx/Vr0mbDrl2B
KhL0QcldHzXp4SZVUtuFSV2md1A3k2eFBhBejby5Tf3MVrWkc6KEadxzgvOA
kaHr0+8DrAS9V7VkApLnWc/SeTqrKqoKK/tqVdE25M4TKpigHywt86qW3Fzi
DFKsz+q9RS12ZKnNzI1rv82KK+bSNL9lWUttM83v4lxqZngqe/Gmm7yWzmAT
V9NNU5ulZ8dMbplLCQjRLKpVrtyAFC/M9CjcWiuD5XiJHfK0Bt8SyYOhSyRf
zFPEcZdrC1SJX5NushwfSEwltf7oxGZYnCh7KInmtDM4j9IdPaJIwWB0y6WA
7czxFZJ9LDAGo81J+CFySQxpY20lDUnAc4kVHz/GW9bxGKIYzTvjlsLMTjKJ
S+ef0AyhmubcblTLLbaoYWixebm7otksQKEZpSvLT5bDFVYK47RjkN7QkhzB
PKbSujGrvqyWGP7rlQT25XF6NCfe86jbdgsNd4mFmUhB7X7QEHmw0fBlo0Wo
LMjUvVTeBkK1JDzYPrxQ39WhaEJ7Tanr6WpUBXnls7Vl6naU/5TagIJ4WWVN
rSsIBEZTtMGjL85/9vb3ZjurVosWYQVvAq+KiCQU+dIsXyZSju+SSiR0Qor6
i1Dt0unJxkTnRT3LM+36C6+P+q9dxWBon8slGcTSyMYxzlnOHPenfF0qDT9Q
92cYvNmKMcJRFGv3zjb/NvYILTYSvJEoYhVZH/jr4SmMTfNbnbpa3TULa0vh
3VYiycqg4AQ6dtbKMc0jWcLaKJfQWPv6JmEsbC4SxtdBhbbAZoAWCRTt3iXT
a8dxbUyHB4U9Lt/l2ReOig3k/dS8jWHPJNtcMUDucrzP1SQoNrpm0jdVZiUw
EANRZdeIzFhihaqFbM/UmcNosM17L2jtUkabEosU/Z7I0YcT+2VJU4esRnVt
AgPRV3DwWiwroIGyOUy6OvsJx2LFO6jFiFdKgci6lP1wBYa7m/9Zq0vZB6Av
N2wL4uGX7OgCEm8mImusYb97ffZTwnv1RcO4CpavFaGGMhdUAip3cSx93ngA
Vn3IF1BgdL2Ixqv7sr3mvDxXeIi37rwZIWrWRvIzqx6FqwHP9kk5D8LxMWzW
MTTIHPUsU7wrVBOYabsBByUzuM6hIaHih/VwFUTxxsqM2pqhO3xtdTNqgAae
IisQo5V/2kIbT1KzocCSKHGngsFcZWR62MO2HHwQ5NgIJKInr+Ru3b524mgT
AskhkqxCWPC2TJobSgcaXz/YQAArYMq9SF0TYbyMZWY9Z2O9KldLOvaGttyV
xTQsys5TjR9rzcWJl+QBnpZVk9sCJKolePOvqKoKe6sGp4KvXQu/McsOeBOf
6KEsGZ2rabm6avyIvIkLMGuKSQOMTm+UANlk6AIGV7XnWEspTsJS1nObhIZ7
y8CBblg48Ry1G+TxUsTxl7hzLZf+ocEIegHjX2vMsPBxzeJdLUPu7sbKhC0J
P/s4qdA009e8jk3PlmsnCnFotwfmc+IeXi7QtavvOpw+Imoe8RiMBmqSCtWe
0BvWpD6hpnIEWEhlWWZdjvqhwgVsPZECQsx5Dp6TTr0yVxyt7Yx7qNPGACfW
ejZ4ZjDPIyubJ1hAxlh15qqRVhK0oqfNAYHLApU3+OgFjbPtfXwEM9HmRCL8
ovESpK6FMohYg2uXI9ObcGkHlrwWYxGdhXrkgDVABaKq9liUoW/T6u+ISBkM
Rclg3FnZCGoUZwzgWZ1mbaO4/38Yp2cLy3ri0rThBeKzYkdN9SqeNhtUEF3K
OUL4KEOmE1EHCgphcq5YvXbRLRcTqZNpDDpVlI9PUYEi8tbwG6Cd6GrLKLvG
+qSpr8np3vRuriwN2rilRdWbjVlaGJMVJeR31q4HDKcZuaMXInTtxkIDzYPS
KkVSaIy3YRoWWYkFqP6AI7nFV2YxYlZGmrb7vZoOQXntzGol20g7ktJk0bUe
je+YWVRxueXsGqAkD9xXL9RViWY49OqWzOD+Fh12cKX4SdvqFasHE2x1tbDz
DLe/WT/MD80uiiubiMmsg/ICjIndaW7OZyJqm2Loj1a5dlufrWjRy8qOHEYK
83yjtbaQ+zXryg6ClrgR+v61r+Wx4zqxbgV/0bEcRr9qER5bcaeOXZvX1nLB
6DKzhq4OuZRYuEXJ/pQQinbsQ0rfRB1MEHxSKAiolqjpDWFPE6kHzcsp/ZmH
T+n46vAJZU8GcMgZ6MK/Y9joYTBcO/AZNCocSc5238osudVA9UF5B0IYg4KI
4ql5QodjjYlUZTtsxZKr0eago8dRNkQXVGyxmLdJXRF49E+nn5L9V1p37uDg
++8DB3FyQIywyu49g2r3hHatmC3dEvAs+3AUiiG7UZjWVGnuFnpHEgT92BOK
+mlVj2lZGIwJwJbEN5/X0oCoCzUVw+bz5c/pK1/sTetshliNn++r0f6AmXPQ
B1F79Dl9hwGoFW2sMDDags+LgsEkejRJHe7p3dFfNAfvuY21LtO2MEx9yAfG
towqUOshOcVosT0v9n94FQ73END6B0lDaNOFIKSusJqww/b2RXwPe2XsXsCo
Yat6mFQL05JnrZKmXVVMWQ14yIvuTNAwFVillGtl7mqQ+74U/3ileg6SiEvV
g4RPLk7fvqVj8oXGuLXuapBhrH3Pp+2u59ZqWUp/XZezKQca2yYvwk0eeq8o
W8pemS1qp7LIyZ0HvbQExHgsX7sL+bOU7xAB0BidoMjt1hZC8qR2vx8ZTqjA
+30cb0ZrSWAfKpLes/qp3eG48bd2J8QeDLeusE5/I9E9qGwGOyGTB0WEHrew
lwpLohQsSEFYcPdsX4ZwS3OmYWe3ySKKLnpEEwjHpFer89gq4nJ5JeGoGugt
VgJD0hyGELUdDoe6kIVjQJSXqrtNDLNScUQ4Xs44ANHujM7yitsaorlSVSxR
r3suTsNjVeaw6FZBFKXxXJ59cG6Dvg6argTFPCzfzqoqaJ+1ZIu0b5Vgh+Fk
4oVp1Vp2dRS1Qyv2DC50V55d2jh0Vok2GthGah2N7WyojP/yX+K855DSAqrT
tGS4pdQdU8YoC+xKGEmHOhzle2Td09SuHeaiYUvsB0MXPz9PyCLcZ01rtEaY
1kYTPQoVT6u1lHUtFh6lkjkWtWvJxjIZHmWtBQsdVzdgYXCIaSqoI45L6W3O
I4AVPUlFMoCpOFn16oe9SJUYHY4OSLx6/Xch6xwOiR4MV6+dofYEo7JvRVyN
UWtSpdNcJD/Gwlv+BNXRSSFVDJ06q1qvkvQ2tZrpUPocIB4wUzBK9Ugj/EBq
qm0G3ahTJToKEBdEBHbyz7idTdNivrXJIGgyLa2j7fkfJe/spBdB/VMVCTie
YjRxkCVXvOhiXWERV1+FSgtmVGXGLdjE10ODmKsDoDZ6+eH5i++j2MT90fc8
gcPR/uhwkDRca5TVOHQ869SjjrxfdBlCnni1KKJ0gYYR2IxdZCeznPGpBKGl
tiJjxLK6yLvuOEpSG18MjNOshVGjUqcBONJXgpVnFBgPXYA0orlUw8VxWOR+
XBzNkc/EZRg70bTeNS+qHmqJnAvL1qNUzAn7kIO5dA9//2D0YvR80C5YSgeM
mZ4tzb8TQzlKNp4ZrY8dbg5Jqq2uOC9EPD16lVQAZ8iXtR9v/wvVxYJqUTol
Iagta4J32KoL60JBWC1F4wyr3G8iDZZTgGuq4IUhrz3kWiGq4kq0SrRWBCeI
ut+sUMfY2QxtrqWmrrbhQX8636VWB5Q22c2NtGYyv1OAAyEGlAWBGz9dzm1Y
pSVqoHeY/GFtIuRDrSOjjChoXyIl6d3K3SMogT39+bHa0OxVE8QcB/HX/Erg
xKQpGsgSPcrf7x0ehvT1fMT/x6PM7ujQW/vpzSr79S1LS2dFyrlV+AgE5BYu
lxZNRPP5lBcWhjVqh7cNaf6yqC3qL1c7HgXG1W7vdYSI9tpRgcrl/tr7Fd//
m31f91yx8r/1Lf7+/v5+VGSLDNmsu7DcbxZsLO/6Z0IVhNETc0qm7Cm7HFbN
LApSf/Vy/wW7eX6O7tCXmwNgvmSYmAvJu5sCg3G0z0Erz55hShera5Kkz54d
tQvbYgH4qlPRWjSmfZZXuPhkMa3yIvlApswsy+nQwlN/kyX9jH8YXekXfy7y
XBJ6+VkXUZMAM+f79QDPjNq3SOOGC2J2qxo/8imtWYjzL+cKpga4v3tGzXNi
g7QO43Wl7ygfVmtHiiWQnqFqSzmxry3LSOIHtZ52kRYDJXMKlzzqKrYRCNnL
2sre88/fP/+BzoJW4o5KemsZx6AZo6+kayBb5VK0fEtQdwJECmwUUeZGLF21
H7lKZFgBkvGWmpcZr+4F69yLTwwawuf5Eu/jFd1KXAqCsgb+NmgmfrG60qy+
lqv2Aqw5q6Z1elllky/eFEbLmLR2vyrPDzuQmGh1h0bhS278wwSCxgMVSIwD
Cui6uZWn5+hbMAJkLxJfzFHWs+RUE9Y1ryUCqpTOIInENxJZqMmhVNbNOKyv
hm9LFpUMM9ZjTXng69/sjs7alNtq2p1Nxy37awzJ1JaVm0KIHh+uOId1GPNg
rwccrbQG7cn0+NFguRJlKUhFmxA0gnEi3Dtq9LCVByV9IFYFu1PabRO8bey5
NeLHJCWua9F7A2tarUBhI5FPug1hg3Q+hRZFaKBjJNrEr4AfYu6vqUPQY5dV
AQ4bTO3Ygdyp23AYDooHuAMcduPcitBHgJzeEIRrsgVU5zdzjwCtJPlnI6Ce
I/RaQsw4FMPwokNChURYh+oaXqaHstwAVmnfpD3dtzCB5DwUSWDJmARnNnBy
UZT+M8t9JJI0X4JSI0HM3NCkzu0AhK4sBMRJgJII/pMJ5jjLp7IwbI9po3o+
7YyQgtrye8Yg5GybgqkPF1ielKXWUUOtPeh6a44Ldtt5TYrHFbOsxfbg5cU0
iLSysCQac0rHEjdj8CJkZ+XNzs4/J//zr9KnUQaOjkxn7CYiKYg2erm0l1Vn
EwLgFlM6ExoBKZEtEpv7N3UhuGskCYcrKwSZJRpHvv0kDl36nou2Fq3dLaeQ
oQvQc7qcZLetw5oNIt3sVf5gCngcRql9x6xtrkh00p9W2XWTmmqRcv2GtMV+
QexM6wPOSYPnsclCLI72jnkiuGSNVdW4tQvWmNO957pmbgrq7nGExKKUSHOL
aJOt0pUZJW99Ds+ijKD50Fo+klaG2KrpFPq77DB/4OISQ4kVgcoxFRHX2byT
E2gW8kKF0MQnEHZPtA6JNB+args4qv2dQaBtsBLokqutMKE/nssQRcghKDVI
0tzIPg7wNmnExxUzMGfOU50gkCIsC17Qun4NpI5FoZAJXS44WdKS69iPyFEA
KPmH/rdOtIq7MWuMzxvAN2f/n6M8cfbUxnlcsx0x8ISzRs8NGKpBd7d5gDzS
L+bgFu1BVNQ0u1kg/nriIF2O3rRvj1rSb6ExIb6pecUu4vkc/SsY02FJoNLf
Bw7y2smYsCS2UK0+XKwaa7sg611+z9NF57UVt02CuFCvbMh1MXE6OnmQbW6i
LNhngMclSxEOMpZoXb4vmRWmUcoAFuGYxVMzar424f5LEEEtWz303V1sFSyQ
OWf9hK0D8JfbYon3SuOCX8vqC9vS0//ImONJ4IMr90rnBLmGnMCHYygK7KN+
2raHltGfyBUHnUN9rH2wc7hYBwEsehQFm3d63IYbjXjpuqmkoUA5Gbo9GG46
RLo6KQeoRYgZdsKM6gtTUyR2/j6MmEukfeAQljIGMbSJ0sePjkGawSxddN1j
gKbHV4eBSjfrAjklx2kT9bOEKmn2wKiau3oTVpPvAZCNN2x6h34SKwEBAOgU
ajfaYUfVDeeSN7dbIPqglZFjoob5J/02zD+MIflraYnTjeYPNGXXY+sc0RCC
6ZwjEvL8HtrRYbvnPe/1thPCQBVL+tWCnWKyEbIJJCqDG/RxtmuFdODyPs+j
bnqQ9q7cH2gqAJk4+XgbulyQalSyqzFrU09EXWFz7i4v0gMe37iCVFZHPCFs
gB5bwG4pIRIDtrqBTRJv2xL8nbUBcezXRROGjfsE41uNryIakCQnJOjCnrtF
5CYd1hwmt8ssDAdLgq1qdgEHQ0PIuL63uRlF89XoNx+qhTNukWMS9mNCnCHi
NEgYFeWQW3Cm3qZ0AxI9hQ7R24uPyauXe/uy3XenaKiL6zlpIqgofhXk1S0E
KLpT4+MOOZKARyAv6EyiPRHKqJc3kvjubNt5caOGjJO35fU1EFVvaaMqgy/X
vnBt1u3E4WW8vy7mmBU97c4n6ZLaDzjkZdjD95m6dqpQqFkwToe331OPfuEt
SzLOyThAEpomHnKqN61O2BNOy3C4u77rau4Zk5DAxpI9l6nz3rGAIDNF1Ut8
26qM7ioSlZzwJ8XKrZ3UWEpnjwV7QHMmGoEUhhr4OMq26cB1oO25KABtKiT7
NUSNcQpVpjrLPXegNTXRQjhwiKxNm6+dxGHAbpm4UZwOPGxCHflifSIK1kNs
BTImjjg8xJRpyajrnUp4Zo/bfquYcL2yad/KB6q3GKvVbq45T4I9YfkMCSe2
ZvZcr6zdZlweil/CyA8J7Cl35fTnhwF5tRVELGjzac2QseOKU+E0d6lW748M
V6I/2lBArAqTFQu4DqhFWzaYjq0uX1zGMSMOQW/pqq13DtnnwGWUwnHiXMvT
OI76hkwSWIdp3axnYbt1EZXxA7ieqjzBx3z517J775rhLM7NS9TCnGUcVtim
QgZaFt4uW5QerAkJKDRbD8UkE7tKuIWBZy38RyE0Pp7j2HqGptf+ToplhApN
YPimF8gtm6u1G8EhMSrY79X/ucoarm402MAIwX4BIgUQ0nFLYsG5lDjz1IIZ
Z1Gz1gBy8qyJOEaHS4h1jCq/r4BkLXxdMg3lkcgK6GevafZNJSnh3jTjvoiB
wey71krEPZ0iKAdcoGYarMZdUa7q2TrYHNkNPpDAB5yo4cDRIgtz0Lx/z1so
eO7HT5dvP344eddSPoTtHnGavzcduKFWfywIKGwFbldJ/4btUfC3njW+RPqh
4KP0Q8EnqfjC3/l+KONBS+HpcokKjV6tnZ41Sj4vKs9CLEJd3KYGCrkT4Cdj
vUbisj3Hmknty0vVt5BMYGb86GOVvYrnAEjZjUAUQQYD25nrfXyCq3rass3C
AMjtPdwtHEwbtH57y3ZtOfd/Q9f245BDbe/aHkMa0hrWTPAgz4kMTIxFZMDS
L9Cs5DgXaUftLTPVMrMpc3HNBfdipbfRPa3HOxqbx0FnV3Qof2o3ckj8ejWB
A6ms0JXeF24Km68HmVYP9RIfSl4ZZoPu2yokrDc37H1sCVp4o7WesAaZhDwn
bG49QXoueAiWHAAEe61EydCJC7eSgyOM260tX5dyX3Iw73bFWUkI5hoXujcM
HKIVusQ4t06La92SSDBT3YRVxPvjv/4Temz+DSZuLHPRjUfoFsHyCBbpRW12
ers9Iv7yvmdl0+ArQmkQcOiNQo6SFplVYSycFJ6UsGuWN0eGsql981Z7aouu
zt4FrxlqkQ6j/lZPX4ElIihLl96Vcbx3OqbmkHL+8bHPydTgENdi1aU9aG0r
sSU4pzb1XJG7lQtMKNA9iwcUgbhjNdpR+4ru53wDkw/LTDKa+5lLRpBEXqn2
XroWiS1+ODhOrECv6Ju8TUHxs0XgfQjK00kD0jQIQayJl2p4nKEFHHTPGfvX
8XJ6IwTJbC5KXmq1OJcSR2eJGwv2ULlglsV802CHMMOil3AL5zCe81gctVxR
YgOG1kn5MmUb0unYwE/RZgP8NNzaz+fviIVo2LW4UcOyBy4VHPu6Iv3ZVRAq
79MHShEc00sqKDiuIMTUsmPSTPMTwSGwwMeGoipJ+g5e2bwMDyVzaEGRjtWU
abbCrBZNyQ2gMjTVFdbsOtN6e0hy42Q9aLkkvMVbzW/PLn9O3pyfnX1g3JWr
dSMzl3Ty8M4w3uPngt2btFm196dwihRqtKHBQlCtZ3BktXtM5uQ3yIs1M1qw
CD5dHALe0aHc11GNe3fjbDc03ytfFw6mkqovkXdWi4cxbCJUdWwxvDqsg729
9OO/GZfg115L3q/kKg21FliVWwsyMzuh4yRWB9OUliw5BbqSfhQSPnfJ97fS
EL5lSvQZqKTrNXwnPYEWr3cfJc/GA+2HRNYxajhxEp0mF4Q6v3cJm7cYfXAV
mBD+EmufvPCkwaUkpBYcPuZ4jsXoOX6DmrQV0SyHzPD9Sd/7C8cL4vg0Toua
Fe0sjHM3FtmBe3NNEy4NYYKqXeORsRccpWOnXsXlwdzTDU7pB4WBVbsLLNaB
Fj0Dv5MaYjN2YqrgXoWabru223GQjNFE4d5O1ooDXp8oiZMRUMukYs6nW9dt
3tWIURg4ny+B1GHjAgnG2UypQXWGyHKIYbZmT3GQrwnukG4vZxEfTv4hdUmy
k3UI+LDJY1memTBxN6aoIJt0CORiSlqb7Wl8IzeghblGUFAjYLReD/W1XSQS
QTrL3y8kONT0Ea7K1ComKj0V1TrwpCa4puyl3/Rd0zCCTDz22E5uy6A7Y9Xu
FzmMQA7GSWHQ+ztanRnNQI5EVNgXwcTVgKNYAGqYVFkrqMjIZ6qi3naO4Y5Z
tnKJXOY1hkDW9jQJp1sRhWRVAxawzJi03vzyZpicXZxfDLnIkIzx9PUHiHPB
7VaaXwqYlfUQiTCGeswFHjQPDdFb3Y74nhOmPBW/zygVOC9po2Xy5rr2shGe
FckcY8TWZZxFVQzi9LOBed6DMiIuCTwo6yXyUwwtiMDKpHmyLLGbMaZz0A5F
4ASIZ8+uyGBggSq25rNnjhP5VL+Ma/dVphUcB+5fPp1acgTaiUYCHABnZaN0
V23SQRCl06i9lu4dMh6L6wZBSRRtv+ejmzblMMeaPFhP1xpoCrynmrc7TvrW
jeAD14i95wvOo7c8dpZ2AkFETYGEbsZCwIC1nI2WGFE00bkDr7TKvEkMS5D4
YO8J8jc8bqo1T49Qf4TkrWpPa08+XbXuhx1F5YehbPMXbGmiwJmPj3VPsEz8
q6jNLKh4I2cfq2ECgLvODsMi9/u7B7uH48ApqnhwaTlxEriColVwKuWSdywJ
l+iEToz3zluMAoclNwhsl8vd0MSssM2sUN7bquRwfAbokmnID0KgGDYgwkma
HSdFsKQcYEgnwySopBITLRN8oDcaQaVXuShb7kw5P82WTe7OTQ33nBc5alNg
sN7IKobKBH2YiaaDOHQjSLET87RmXxi4gNZgNpkgGV5HyRgEJPXJpKYIj0Lb
H0iFCK440fcGg9N22GHtZBmHlEVEMgjCKLaYvUdhFowCL5LoEWEP7rz6AAY+
t+IRb5l4uw8VSTsOX+iUfwu9CkKjNupGtdIQXbXpByvLYQ4+bgxeHPhLuVa0
G/Qo6Z97oI65vurOXN3Mc20mRq6U5VQji//1LG00aHkBXIOI2MJxwGkQNcLq
PPJ9Tj68Prn8eP4XIUqpiiLmcMGiwpKctsC7fbWuJRMxdO2w55R/TO+Rr6aV
LI7jnL4QiM6EeaNwGvcb9HXGfTl0JjoA6NcNV6oRg4gD5ryNm6qxjPCjAfKy
vjG9j5Uy3SLWxfOpBUoUrXobsrbHMY/rmScauUp1uAoCcUqovci0vhc6ksJ8
n63dacfgW/A2x22JsoJygg7sdiNixjEKKKNbpjiRIkDiw2JHWMVjkkce9bh8
GgqCwBxd+puA1agMhaml+AkuTvoYK87AHdxvzSDALwLTxxp1i0NWW9lIUgJZ
olVGCpdWEuKcTDm7CSBKLcbQhvNCpOI8d7ZipAdiuhaVoqXAPQlpAWphLn1t
h5L8aMzRvJvHQf8s+tVlrAZh3a4xzAAczZ7kOBvEs/DRdn8YhfUdy1Iqg5It
WtCR920MfV2Btro7jAK4usJzhl11NjdjFYJYm/4rgwwPDp0lrsNmWeI1x6Ok
paiquriwzI5AZsMqJLXRUhNz0oRVj9Qb1D9iOvYocO5sd3gk/Um7mrOWdmUw
hYypW+m9jhKwD+oUnsGDNsnGz++CNAEedTqtONG6hVxsOF16H8omPc9drUZR
VnrOXlN/i2u443pN+Uv6evK8cqSKgeuVZOJfEx+tt5E05m5R28BAKx+2VvL5
NreaB7XU7bHhMXKd9Dr8HQMPwGgZUXN8hAGcmnajy49DxMVX7d7IZ6BH1zRU
z1e+Q0761dCl6DRlqh93Tz69HQaRV1xjALmyVmgaDVwWze7JW4TGTAsuNK5F
Wh0KIaJCwrpwk4SE4NsttetoEx+ufRcFjcjpsBhcPPbhAqIiu6S8ZIhbwq8m
7JWzpPpPKBUqaBhbwqkL0VUo7LEKpcctDMlR0RVaVyHEp/Vc7lXCEU3E/Lun
OGxXzGqF4Yx/OTt5PW4LVysf1wf50LsZd0DPtfFA1spXYFGCRZhy7cLKtFj1
bB1AIM4VZzH82RV3pbeoiIUHQo41wB2ASXK2754myA7AwtekTjR08D4JLdMk
61p6K+iGn32muz+dxz6LXw9P018v3iTRAhZBYx0G7JPXSLtIOCUFbz7Gf0nT
moYbyvznsbJNvTA8PER6jkX8u5NAAnnXueUtZ6KasskX4TS4vFUIXGuemz3a
iaDxwkUo2bHTvnDJTGIhsYfw7FuN/ZZoAZBbTeWcju/z/MuMzOewKiTrXYhZ
ExaTBzkopD+IJzrhpJbkm1Jb0r39obqEZcya+qOPZqPQl5qTRi1XZA7rwe6G
uQNQY2y9pUXJm9KCrNHy4ZZ1hCbn9D9Z2jCNfWI5TJjmrJx8IY176R1CPuEm
Of3l5MObs3cf3wyDI27Vb+AeR3eTQQyG7bfBMEPhHbarvilDcSex+xikPYfW
stl6yip1CndmMyWMcaolxilIrGKfvrZh4qRAFjbs1dG0HRYBs1kY8+MznTb6
QmmFRHYASSuR4Di06NtnM0cqiFYbNiBaBmfhE47XoIYAOJo4XGuVt2H8Q3/8
LGloxsmP/4zkivHAwcc4iwzwkgLlsxE/8UJqiz8U7xxLOk1oTatjCxBPkBMi
/VEktMe9nnFyRBfqCDfDF8C+UpF3nnHVegr/Qv9TqsXH9P37sVa5kupEEq6X
srvUB6dpJyywDcexl04rqCVng7+1XBz3MnpD+poExhhhCfzc8SCIXaAxc8EU
tS7ogEyZt/RZeOyKtDk2QFj6zybpP6PhyouxZRrAB4d4C/GjtIot9unS5/Zr
x4n2RWCcIyowSWxAHCvecj1FiB+Wz5W9wlGNsSqFCIPKUwkbdhyIsOGWa8Uf
0LqnDuNxoC2dV6dPGvAjVH2skZNhHHErapQjW9jUFOe3wYhSwg8ZP+vjiF1o
7CpH9JpO69a45LPSakPNzSKMk7ogB4YEUuetq9HAqLHurRsxEkJYP7x6OTRF
uI4Cohx9B2Aa09OFey4/AsVc5KDyrxo47H7bHwjoufHYOiwUEqRdz9TkDmgX
l0qVAGSD1JGDFsS66+m0s2tgXxoT7raaEu62GglqCUCtTGuKT4OqdyruaXT5
HfewKy1QyFvjcXCeag6SxREZcUODiC2pR6saPtWqU4lxjwr2Se8hnwYC1Fwn
lTkJ9FQ5tbjrwtj1VszahCOmJQJYw/xU5PgAOC8MtVWT5MRBLF9xJwdtbBgW
BXIBpe2IfB+UyuFqLkRN95119rBUAldOCMtF9MPkeHU0b8mStQg5ifqVqgwc
7lRqFqmrtqAUYYZinLbSuHD5VLJ/NLjZZFYbgpG6EEk/DGfQpBE+YoiiWOZG
Sb3taYQ9FzkPxEciU1foWWI52aYqpFwra2iIn+DwfK6CiHL6zzUiSHmJteOh
3Gj2N75J+j6mZpicvT/5sIsl/P7w4KUQpFhV53QNlEBU7B5auATbbaQSSRY8
k1zRBLmP6iZ2hX+cv1QECzd1QRAI6cEriy3pjCAKjiyR0U9Jnmpxbu7ieFsu
XVIHM6cXz79n5mQOWWk6ylVIIymqrNl88RraRsqfgwElvRScxOqaiudVSAHl
qMKzrZ2VFE9XPs96wHHssZVGzAqGgGkgjX9GGywFpxZTyQ4WV7FXKfitLBS4
SWhb4ZSeR5gt71krdMGiGzMfc2Ilue2MS8H5WN6vVSG1VeqTvo02VmtfFX06
0LU79lXSrExFoFQEfgEDvmP/QX8rnE0GcWfQCjeGv+foEE5UDNIUy4UvHBDV
thi6iIKuPoWuRSF7onCUZBYcqhCla2QTzRNnx6ZDdzjsyuWeAalr571l1vuS
XqYmyufL0+OwFZFLkROqNs/3jK9nfA1nQkgq6MbnLaiOTn7H22NrwnKwzCqJ
sJ9Qt35bhfq4JP1xpMO5QOAO/a3dwOoxv5SLK4wS1dHN49hFwgWgC9tUrQg8
SD9uAiHlwVnsG2zhzt1RGAcb8CfWqy4/vn8nieZD7rYE6IN/OHXFPQTwEGBU
TvfF6Vv4hqAAvr34uPv27DQ52N873D862Dt4zhxj00Txdf8N0kZ3vtk6bQOV
SZ+VbK0YsJrbTN2ybXqKNQ33jov849pW2RMNV1x8MXTzkXIm6t5DIo3xFkTG
ryWWkLN62D3sy7Ag72CxlvjOKLITF7L0OVfpI19jwB+gwMMP5o11PbzNmrgU
V/idE0eC0IFWeqttv27Xy9t8oTGRcCjuqnMxCCEdIhk7WoMxVKnZjDk0Vw1i
febz+buBNX1CkSWNw48LlTCsIqAKlsIKobgCKrpBjxUR2dvZcaDirjUjxIQE
fmMXEIMImi2yEb8zdA4LVfSHLvmNVQhpaxUE+ASQwzfgDM5/0LMqW5KlT3NP
y2vRIZ2+2JOz3lNpF1/lNYCeITknV8DbJs0wbGis2m5QICxQy8Nujg6Jz1wu
ZlwzKIha7terImAUW3ROzVXDaGMKZZ604osGrcRsX3yMk8DaDcax5y3objto
t4cIGHX1f1spG4W+wqxSjG4qPL7KXAHQgmxeSQ+4/rZXDH2NFBsj166Zc8XV
DUJ13rQWFcZe728EvcK4BTdVyXb5prmI0/mJ2zJWUw5QrmStWDhGL0q4du3i
JFk+/65OejyMntYdkMRu5p3WKkOweSPKLfHwx+FpCLpabSFiPoKLktVpOFIl
GBIpArNCiRJIQblkMIUxQx9Atz/aH1s+rovj0TDFwC2X9OM7AgA7jilpp1cw
WYShhhLCxyDB/mhvHO35oK3h+wrqkq7fEdjlVIwIEeLa3ebN7Qzx68Omwe0A
k3xgmHNbk/KHRte9z/7OD/qG96LMwLp1Np+AJgr2IiJjxumbzi2xKba5XDYv
dD8MTht480SCFR5Q+3gKUSeAbQGPkU9Lwz3FI6Fou+RTWbayMDNBUJEg/Dqs
4aOVjOqAcbuz+czQnWeqtQQJuP2Ij9Z1LkFCWsV7BrR9nfiaSgPvCn7Q6mb3
Q3/DvpbzdhyU/FU5izSoumRN3ZQWw/N9RmRcAgjpSU5zHAhM2ArLt/YyXNfY
txVnR1tHuEYI0AuUxSzHNfMWCNPUXwYWkVLrA3mNdwbbd2T+DUO94jgUDzyC
bDnX0XDN3bGhr2PmNxNG5gUSqJ3tkE+12VXQ60f6gpscty7Cwwi8cncMEyuj
7nv/DDoyAy7FrrTKsD7C2voQTH1lSxdtwNl6LoCPa7SE4GzSj8xVeS2eVOUr
05s5Zyfl0jlN2SBiVUrskB3Odx0nZBUzuLtZYcMi+qBBxqlX1iuvXXkj8lpu
q2cT1oHRei9bqtkcuxjdjgheGh1H7h6HmRMPof/sRCDujFxMplKlenciHw4s
0XqoG6q0q2SrOqavJmhurbz6Ni0l6YvTqhJnEVQqi5RJ915IxT9liSawUF71
WNlOlT9WCpCkuvNNjnb+F/G+0e80OwEA

-->

</rfc>

