<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.43 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-mora-oauth-entity-profiles-02" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title abbrev="OAuth Entity Profiles">OAuth 2.0 Entity Profiles</title>
    <seriesInfo name="Internet-Draft" value="draft-mora-oauth-entity-profiles-02"/>
    <author fullname="Sreyantha Chary Mora">
      <organization>Microsoft Corporation</organization>
      <address>
        <email>sreyanthmora@microsoft.com</email>
      </address>
    </author>
    <author fullname="Pamela Dingle">
      <organization>Microsoft Corporation</organization>
      <address>
        <email>pamela.dingle@microsoft.com</email>
      </address>
    </author>
    <author fullname="Karl McGuinness">
      <organization>Independent</organization>
      <address>
        <email>public@karlmcguinness.com</email>
      </address>
    </author>
    <date year="2026" month="October" day="16"/>
    <area>Security</area>
    <workgroup>Web Authorization Protocol</workgroup>
    <keyword>OAuth</keyword>
    <keyword>Entity Profile</keyword>
    <keyword>Subject Profile</keyword>
    <keyword>Client Profile</keyword>
    <keyword>AI Agent</keyword>
    <keyword>Actor Profile</keyword>
    <keyword>Delegation</keyword>
    <abstract>
      <?line 66?>

<t>This specification introduces Entity Profiles as a mechanism to categorize OAuth 2.0 entities—clients and subjects—based on their operational context. Entity Profiles provide structured descriptors for the client initiating the OAuth flow and the subject represented in tokens. This document defines new JWT Claim names and metadata parameters for use in JWTs issued or consumed in OAuth flows, including but not limited to access tokens, ID tokens, JWT authorization grant assertions, and transaction tokens, as well as in token introspection responses, dynamic client registration, and Authorization Server metadata. It also defines vocabulary for classifying acting entities within delegation chains.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://drafts.srey.io/draft-mora-oauth-entity-profiles.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-mora-oauth-entity-profiles/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Web Authorization Protocol Working Group mailing list (<eref target="mailto:oauth@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/oauth/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/oauth/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/Sreyanth/draft-mora-oauth-entity-profiles"/>.</t>
    </note>
  </front>
  <middle>
    <?line 70?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This specification introduces a mechanism for classifying entities participating in OAuth 2.0 and OpenID Connect flows using standard or custom-defined "Entity Profiles." These profiles offer a structured way to describe the nature or operational context of clients and token subjects, enhancing authorization decisions, policy enforcement, risk assessment, and audit capabilities.</t>
      <t>This specification introduces two new Claims:</t>
      <ul spacing="normal">
        <li>
          <t><tt>client_profile</tt>: Describes the nature of the client software or application initiating the OAuth flow (e.g., web app, native app, AI agent).</t>
        </li>
        <li>
          <t><tt>sub_profile</tt>: Describes the entity represented by the subject (<tt>sub</tt>) Claim in an issued token (e.g., user, service, AI agent).</t>
        </li>
      </ul>
      <t>This specification establishes a registry for OAuth Entity Profiles and defines an initial set of Entity Profile values. This document also defines how the Entity Profiles can be used in any JWT issued or consumed in OAuth flows, including but not limited to access tokens, ID tokens, JWT authorization grant assertions, and transaction tokens, as well as in token introspection responses, dynamic client registration, and Authorization Server metadata.</t>
      <t>This specification also defines the use of Entity Profiles in delegation scenarios through the <tt>act</tt> Claim <xref target="RFC8693"/>, introducing the concept of an Actor Profile to classify acting entities. By applying the same Entity Profile vocabulary to each actor in a delegation chain, this approach enables consistent classification of entities across both direct and delegated access contexts.</t>
      <section anchor="conventions-and-definitions">
        <name>Conventions and Definitions</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

<t>This specification uses the Augmented Backus-Naur Form (ABNF) notation of <xref target="RFC5234"/>.</t>
      </section>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>This document uses the terms "User", "Resource Owner", "Client", "Authorization Server", "Resource Server", and "Access Token" defined in <xref target="RFC6749"/> and the terms "JSON Web Token (JWT)", "Claim", "Claim Name" defined in <xref target="RFC7519"/>.</t>
        <ul spacing="normal">
          <li>
            <dl>
              <dt><strong>Entity Profile</strong>:</dt>
              <dd>
                <t>A string-valued descriptor classifying an OAuth entity (client or subject) according to its operational role or context.</t>
              </dd>
            </dl>
          </li>
          <li>
            <dl>
              <dt><strong>Client Profile</strong>:</dt>
              <dd>
                <t>An Entity Profile that characterizes the client software or application initiating the OAuth flow (e.g., web app, native app, AI agent, etc.).</t>
              </dd>
            </dl>
          </li>
          <li>
            <dl>
              <dt><strong>Subject Profile</strong>:</dt>
              <dd>
                <t>An Entity Profile that characterizes the entity represented by the token subject (e.g., user, AI agent, service account, etc.).</t>
              </dd>
            </dl>
          </li>
          <li>
            <dl>
              <dt><strong>Actor Profile</strong>:</dt>
              <dd>
                <t>An Entity Profile that characterizes the acting entity within an <tt>act</tt> Claim node <xref target="RFC8693"/>.</t>
              </dd>
            </dl>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="motivation-and-use-cases">
      <name>Motivation and Use Cases</name>
      <t>As OAuth 2.0 continues to be used in increasingly diverse environments—including cloud-native architectures, zero-trust systems, IoT ecosystems, and AI-driven platforms—the nature of entities participating in OAuth flows has become more heterogeneous.</t>
      <t>Current OAuth deployments lack a standardized way to represent and reason about these differing entity types. The introduction of Entity Profiles helps address several practical needs:</t>
      <ul spacing="normal">
        <li>
          <t><strong>Access Control and Policy Enforcement</strong>: Resource Servers can apply different access policies depending on whether the caller is a user, service, device, or AI agent.</t>
        </li>
        <li>
          <t><strong>Risk Scoring and Security Posture</strong>: Authorization Servers can assess and adjust risk and their security measures based on client type (e.g., public native app vs. backend service).</t>
        </li>
        <li>
          <t><strong>Auditing and Forensics</strong>: Security logs become more useful and interpretable when entity types are made explicit.</t>
        </li>
        <li>
          <t><strong>Future-Proofing OAuth Flows</strong>: As AI agents and autonomous systems take on greater roles, profiles offer a way to signal and manage their participation explicitly.</t>
        </li>
        <li>
          <t><strong>User Experience</strong>: Customized interfaces and consent flows, such as enhanced disclosures and controls for human users and granular permissions for AI agents.</t>
        </li>
      </ul>
      <t>By introducing a consistent way to describe the operational context of clients and subjects, this specification enhances the overall authorization decisions, policy enforcement, risk assessment, and audit capabilities in OAuth 2.0 and OpenID Connect deployments.</t>
    </section>
    <section anchor="entity-profiles">
      <name>Entity Profiles</name>
      <section anchor="standardized-entity-profiles">
        <name>Standardized Entity Profiles</name>
        <t>The following is a list of Entity Profile values defined by this specification. These identifiers are not intended to be exhaustive, and additional profiles can be defined by implementers or through other specifications. The values defined herein are an intentionally small set that covers the most common scenarios.</t>
        <section anchor="user">
          <name><tt>user</tt></name>
          <t>A user is a human resource owner who interacts with the system through a client such as a web application, native application, user-agent-based application, or device interface. Users provide consent, make authorization decisions, and are typically assumed to have access to their own credentials, session tokens, and authorization settings on their devices. While users often act directly through a client, they may also delegate access to applications or AI agents acting on their behalf. It is assumed that users can make informed consent decisions, understand the implications of delegated access, and manage their own permissions within the system.</t>
        </section>
        <section anchor="device">
          <name><tt>device</tt></name>
          <t>A device is a hardware-based computing entity (e.g., smart TVs, IoT sensors, mobile phones, kiosk terminals) that can host client applications. Devices may have limited user interfaces and may act autonomously or under user control. They are often constrained in security capabilities (e.g., lack of secure storage, no local display, indirect input methods) and typically require indirect authorization mechanisms such as the Device Authorization Grant <xref target="RFC8628"/>. Devices are generally considered public clients unless they can securely protect credentials.</t>
          <t>Devices are distinct from backend services or virtualized compute instances (e.g., VMs, containers) based on their physical deployment and user-facing interaction model.</t>
        </section>
        <section anchor="nativeapp">
          <name><tt>native_app</tt></name>
          <t>Same as "native application" defined in <xref section="2.1" sectionFormat="of" target="RFC6749"/>.</t>
        </section>
        <section anchor="webapp">
          <name><tt>web_app</tt></name>
          <t>Same as "web application" defined in <xref section="2.1" sectionFormat="of" target="RFC6749"/>.</t>
        </section>
        <section anchor="browserapp">
          <name><tt>browser_app</tt></name>
          <t>Same as "user-agent-based application" defined in <xref section="2.1" sectionFormat="of" target="RFC6749"/>.</t>
        </section>
        <section anchor="service">
          <name><tt>service</tt></name>
          <t>A service is a non-human actor that represents a logical service, backend process, or microservice within a distributed system. When acting as a client in OAuth flows, services are classified as confidential applications, meaning they can securely store credentials and access tokens. Unlike user-facing applications, services do not involve direct user interaction and typically operate within system-defined scopes and trust boundaries, often performing automated tasks or facilitating communication between components in the system.</t>
        </section>
        <section anchor="aiagent">
          <name><tt>ai_agent</tt></name>
          <t>An AI agent is an autonomous or semi-autonomous system capable of initiating actions and making decisions independently or on behalf of a user or organization. These agents may participate in OAuth flows as clients, subjects, or both. They might perform delegated tasks based on user instructions, operate persistently across sessions and services, possess their own identity, credentials, and entitlements. They are typically powered by machine learning or reasoning systems, exhibiting adaptive, context-aware, non-deterministic, and proactive behavior over extended sessions and across multiple systems.</t>
          <t>AI agents can be deployed in various environments, such as backend services, cloud-based systems, edge devices, or within user-controlled platforms. Depending on their operational context and deployment, AI agents can be clients -- making outbound API calls and initiating OAuth flows; or, subjects -- acting as the resource owner in systems that authorize autonomous services. Depending on their ability to securely store credentials and maintain integrity, they may be classified as either confidential or public clients. In some contexts, even well-secured AI agents may be treated as public clients due to the inherent complexity and unpredictability of their behavior. While it can be difficult to objectively verify that an entity truly qualifies as an AI agent, trusted publishers or registries may attest to the nature of the entity.</t>
        </section>
      </section>
      <section anchor="private-or-custom-entity-profiles">
        <name>Private or Custom Entity Profiles</name>
        <t>Entity Profiles can be defined at will by those using this specification. However, in order to prevent collisions, any new Entity Profile should either be registered in the IANA OAuth Entity Profiles registry (see <xref target="oauth-entity-profiles-registry"/>) or be a collision-resistant value. The definer of the value needs to take reasonable precautions to ensure they are in control of the part of the namespace they use to define the Entity Profile.</t>
      </section>
      <section anchor="representation-in-token-claims-and-metadata">
        <name>Representation in Token Claims and Metadata</name>
        <t>The value of an Entity Profile, whether appearing as a Claim in JWT tokens or as a parameter in metadata or introspection responses, is expressed as a space-delimited, case-insensitive list of strings. Each string represents a classification of the entity (either a client or a subject) and <bcp14>MUST</bcp14> adhere to the syntax defined below.</t>
        <t>Multiple values <bcp14>MAY</bcp14> be included if the entity fits into more than one category. The order of values is insignificant, and there is no implicit hierarchy or relationship between the values. When multiple Entity Profiles are present, each value is interpreted independently. Values <bcp14>SHOULD NOT</bcp14> be duplicated within a single Entity Profile list; receivers <bcp14>SHOULD</bcp14> ignore duplicate values. When including multiple values, the Entity Profile combinations <bcp14>SHOULD</bcp14> be semantically meaningful and validated against expected usage patterns. Conflicting profiles (e.g., <tt>user service</tt>) <bcp14>SHOULD</bcp14> be avoided unless a clear operational justification exists (e.g., <tt>user ai_agent</tt> to indicate an AI agent acting as a digital employee).</t>
        <sourcecode type="abnf"><![CDATA[
entity-profile = profile-token * ( SP profile-token )
profile-token = 1*( ALPHA / DIGIT / "-" / "_" / "." )
]]></sourcecode>
        <t>Examples:</t>
        <ul spacing="normal">
          <li>
            <t><tt>"user"</tt></t>
          </li>
          <li>
            <t><tt>"ai_agent"</tt></t>
          </li>
          <li>
            <t><tt>"service ai_agent"</tt></t>
          </li>
        </ul>
        <t>All profile values <bcp14>MUST</bcp14> either:</t>
        <ul spacing="normal">
          <li>
            <t>Be registered in the OAuth Entity Profiles IANA registry (see <xref target="oauth-entity-profiles-registry"/>), or</t>
          </li>
          <li>
            <t>Be privately defined (see <xref target="private-or-custom-entity-profiles"/>).</t>
          </li>
        </ul>
        <t>When processing these values, Authorization Servers and Resource Servers <bcp14>MUST NOT</bcp14> assume any implicit relationships or hierarchies between the Entity Profiles unless explicitly agreed upon by the Authorization Server and the Resource Server or if defined in a different specification.</t>
        <t>Entity Profiles are orthogonal to the OAuth 2.0 client type (public or confidential) as defined in <xref section="2.1" sectionFormat="of" target="RFC6749"/>. The client type classifies a client based on its ability to maintain credential confidentiality. The same Entity Profile value may apply to both public and confidential clients.</t>
        <t>Authorization Servers that process tokens containing syntactically valid Entity Profile values whose semantics they do not understand locally <bcp14>SHOULD</bcp14> preserve those values unchanged when producing derived tokens, provided the values are registered for the applicable usage location or are valid private Entity Profiles. Authorization Servers <bcp14>MUST NOT</bcp14> preserve values that are syntactically invalid or invalid for the applicable usage location.</t>
        <t>For example, a token might include the Entity Profiles <tt>ai_agent acme_verified_robot</tt>, where <tt>acme_verified_robot</tt> is a vendor-defined profile used to identify industrial automation clients from ACME Corp. These two profiles are independent — the presence of both does not imply that one is a subtype of the other, nor that they share privilege or trust levels. Treating <tt>acme_verified_robot</tt> as a subclass of <tt>ai_agent</tt>, or vice versa, could result in incorrect access decisions.</t>
      </section>
    </section>
    <section anchor="entity-profile-jwt-claims">
      <name>Entity Profile JWT Claims</name>
      <t>This specification defines two new Claim Names: <tt>client_profile</tt> and <tt>sub_profile</tt>. These Claims may appear in JWTs like JWT access tokens <xref target="RFC9068"/>, OpenID Connect ID tokens <xref target="OIDC"/>, and Transaction Tokens <xref target="I-D.ietf-oauth-transaction-tokens"/>, as well as in JWT authorization grant assertions <xref target="RFC7523"/> presented to the token endpoint. These Claims <bcp14>MAY</bcp14> also appear in other OAuth-related JWTs when their use is defined by the relevant specification or profile.</t>
      <section anchor="clientprofile-claim">
        <name><tt>client_profile</tt> Claim</name>
        <t>The <tt>client_profile</tt> (Client Profile) Claim indicates the Entity Profile(s) of the Client identified by the <tt>client_id</tt> (Client ID) Claim in a JWT. If included, the value of this Claim <bcp14>MUST</bcp14> conform to the rules defined in <xref target="representation-in-token-claims-and-metadata"/>. Use of this Claim is <bcp14>OPTIONAL</bcp14>.</t>
      </section>
      <section anchor="subprofile-claim">
        <name><tt>sub_profile</tt> Claim</name>
        <t>The <tt>sub_profile</tt> (Subject Profile) Claim indicates the Entity Profile(s) of the Subject represented by the <tt>sub</tt> (Subject) Claim in a JWT. If included, the value of this Claim <bcp14>MUST</bcp14> conform to the rules defined in <xref target="representation-in-token-claims-and-metadata"/>. Use of this Claim is <bcp14>OPTIONAL</bcp14>.</t>
        <t>The <tt>sub_profile</tt> Claim <bcp14>MAY</bcp14> also appear within <tt>act</tt> (Actor) Claim nodes <xref target="RFC8693"/> to identify the Entity Profile of the acting entity at each step in a delegation chain. This allows acting entities in delegation scenarios to be classified using the same Entity Profile vocabulary. The value <bcp14>MUST</bcp14> conform to the same syntax and registry requirements defined in <xref target="representation-in-token-claims-and-metadata"/>.</t>
        <t>Below is a non-normative example illustrating how the new Entity Profile Claims can appear within a JWT access token. Other standard Claims are omitted for brevity:</t>
        <sourcecode type="json"><![CDATA[
{
  "sub": "user123",
  "sub_profile": "user",
  "client_id": "client456",
  "client_profile": "service ai_agent"
}
]]></sourcecode>
        <t>Below is a non-normative example illustrating how <tt>sub_profile</tt> appears within an <tt>act</tt> Claim node in a delegation context. Other standard <tt>act</tt> members such as <tt>iss</tt> are omitted for brevity.</t>
        <sourcecode type="json"><![CDATA[
{
  "sub": "user123",
  "sub_profile": "user",
  "client_id": "client789",
  "client_profile": "ai_agent",
  "act": {
    "sub": "client789",
    "sub_profile": "ai_agent"
  }
}
]]></sourcecode>
      </section>
    </section>
    <section anchor="authorization-server-metadata">
      <name>Authorization Server Metadata</name>
      <t>If an Authorization Server supports publishing metadata as defined in <xref target="RFC8414"/> and also implements the mechanisms defined in this specification, it <bcp14>SHOULD</bcp14> advertise its support for the mechanisms defined in this specification using the following metadata parameter in its Authorization Server Metadata document:</t>
      <dl>
        <dt>"entity_profiles_supported":</dt>
        <dd>
          <t><bcp14>OPTIONAL</bcp14>. JSON object containing members: <tt>client</tt>, <tt>subject</tt>, and <tt>actor</tt>, each a JSON array of supported Entity Profiles. The <tt>client</tt> array lists Entity Profiles supported for client classification. The <tt>subject</tt> array lists Entity Profiles supported for subject classification.
</t>
          <t>The <tt>actor</tt> array, if present, lists Entity Profiles that the Authorization Server recognizes and will validate when they appear as <tt>sub_profile</tt> values within <tt>act</tt> nodes <xref target="RFC8693"/> in inbound tokens, actor assertions, or issued tokens. Actors whose <tt>sub_profile</tt> values are not listed in this array <bcp14>MAY</bcp14> be rejected by the Authorization Server. Its absence indicates that no support for Actor Profile usage in delegation contexts is declared.</t>
          <t>Authorization Servers <bcp14>SHOULD</bcp14> include all supported profiles in each array but <bcp14>MAY</bcp14> omit some supported profiles from this metadata if desired. Values in the <tt>actor</tt> array need not match those in the <tt>subject</tt> array, as an Authorization Server may support different profiles for different contexts. Empty arrays <bcp14>MUST NOT</bcp14> be included, and members with no values <bcp14>SHOULD</bcp14> be omitted. When entity_profiles_supported is present, it <bcp14>MUST</bcp14> include at least one of client, subject, or actor, and that member <bcp14>MUST</bcp14> contain at least one value. If no Entity Profiles are supported, the entire parameter <bcp14>SHOULD</bcp14> be omitted.</t>
        </dd>
      </dl>
      <t>Clients can use this metadata to determine which Entity Profiles the Authorization Server recognizes, to understand how their own Entity Profiles might be interpreted or classified, and to determine whether the Authorization Server supports Entity Profiles in delegated access scenarios. Receivers encountering an empty array for any key <bcp14>SHOULD</bcp14> treat it as equivalent to the key being absent.</t>
      <t>Below is an example of how this metadata parameter might be included in the Authorization Server Metadata document. Other standard parameters are omitted for brevity:</t>
      <sourcecode type="json"><![CDATA[
{
  "entity_profiles_supported":
  {
    "client": ["native_app", "web_app", "browser_app", "service", "ai_agent"],
    "subject": ["user", "device", "service", "ai_agent"],
    "actor": ["service", "ai_agent"]
  }
}
]]></sourcecode>
    </section>
    <section anchor="dynamic-client-registration-metadata">
      <name>Dynamic Client Registration Metadata</name>
      <t>If an Authorization Server supports Dynamic Client Registration as defined in <xref target="RFC7591"/> and also implements the mechanisms defined in this specification, it <bcp14>SHOULD</bcp14> allow clients to declare their Entity Profile using the following metadata parameter in their registration requests:</t>
      <dl>
        <dt>"client_profile":</dt>
        <dd>
          <t><bcp14>OPTIONAL</bcp14>. The Entity Profile of the client. This value <bcp14>MAY</bcp14> be included in the client's registration request and, if present, <bcp14>SHOULD</bcp14> match the client's actual Entity Profile. If omitted, the Authorization Server <bcp14>MAY</bcp14> assign a default Entity Profile based on its policies or the client's other metadata.</t>
        </dd>
      </dl>
      <t>If the provided <tt>client_profile</tt> does not match the server's policy or fails the server's validation and verification checks, the Authorization Server <bcp14>MUST</bcp14> reject the registration request with an <tt>invalid_client_metadata</tt> error. The verification mechanisms for the <tt>client_profile</tt> value are out of scope for this specification, but it is recommended that Authorization Servers implement appropriate checks based on their security policies and operational context. They may also employ verification strategies like checking against known registries, validating against trusted sources, admin approval, metadata inference, out-of-band attestation by an accountable party etc.</t>
      <t>An Authorization Server that recognizes a <tt>client_profile</tt> value as valid but chooses not to apply it based on policy is not required to reject the registration request; it <bcp14>MAY</bcp14> omit that value from the effective profile in the registration response. Authorization Servers <bcp14>MAY</bcp14> also choose to assign additional Entity Profiles that are not requested by the client based on their policies. When the Authorization Server has determined a <tt>client_profile</tt> value — whether from the client's request, server policy, or default assignment — it <bcp14>MUST</bcp14> include the effective value in the registration response in accordance with <xref section="3.2" sectionFormat="of" target="RFC7591"/>. If the Authorization Server modified, augmented, or assigned a <tt>client_profile</tt> that differs from the client's request, the response reflects the server's authoritative assignment.</t>
      <t>Below is an example of how this metadata parameter might be included in a Dynamic Client Registration request. Other standard parameters are omitted for brevity:</t>
      <sourcecode type="json"><![CDATA[
{
  "client_name": "Example Client",
  "redirect_uris": ["https://example.com/callback"],
  "client_profile": "service ai_agent"
}
]]></sourcecode>
      <t>Below is an example of how the Authorization Server's registration response might reflect a modified <tt>client_profile</tt>. In this case, the server assigned only <tt>service</tt> based on its policies:</t>
      <sourcecode type="json"><![CDATA[
{
  "client_id": "client456",
  "client_name": "Example Client",
  "redirect_uris": ["https://example.com/callback"],
  "client_profile": "service"
}
]]></sourcecode>
    </section>
    <section anchor="token-introspection-response-parameters">
      <name>Token Introspection Response Parameters</name>
      <t>If an Authorization Server supports Token Introspection as defined in <xref target="RFC7662"/> and also implements the mechanisms defined in this specification, it <bcp14>SHOULD</bcp14> include the following parameters in its introspection responses:</t>
      <dl>
        <dt>"sub_profile":</dt>
        <dd>
          <t><bcp14>OPTIONAL</bcp14>. The Entity Profile of the resource owner identified by the <tt>sub</tt> Claim associated with the token.</t>
        </dd>
        <dt>"client_profile":</dt>
        <dd>
          <t><bcp14>OPTIONAL</bcp14>. The Entity Profile of the client identified by the <tt>client_id</tt> Claim associated with the token.</t>
        </dd>
      </dl>
      <t>When the introspection response includes the <tt>act</tt> parameter as defined in <xref target="RFC8693"/>, the Authorization Server <bcp14>SHOULD</bcp14> include a <tt>sub_profile</tt> member within <tt>act</tt> objects, using the same syntax and semantics as the <tt>sub_profile</tt> Claim, to classify acting entities when it has assigned an Actor Profile.</t>
      <t>The following is a non-normative example of how these parameters might appear in a token introspection response for a direct (non-delegated) access context. Other standard parameters are omitted for brevity:</t>
      <sourcecode type="json"><![CDATA[
{
  "active": true,
  "sub": "user123",
  "sub_profile": "user",
  "client_id": "client456",
  "client_profile": "native_app"
}
]]></sourcecode>
      <t>The following is a non-normative example of how these parameters might appear in a token introspection response for a delegated access context. Other standard <tt>act</tt> members such as <tt>iss</tt> are omitted for brevity:</t>
      <sourcecode type="json"><![CDATA[
{
  "active": true,
  "sub": "user123",
  "sub_profile": "user",
  "client_id": "client456",
  "client_profile": "native_app",
  "act": {
    "sub": "ai_agent_789",
    "sub_profile": "ai_agent"
  }
}
]]></sourcecode>
    </section>
    <section anchor="client-behavior">
      <name>Client Behavior</name>
      <section anchor="registration">
        <name>Registration</name>
        <t>Clients implementing this specification:</t>
        <ul spacing="normal">
          <li>
            <t><bcp14>MAY</bcp14> declare <tt>client_profile</tt> at registration when using OAuth Dynamic Client Registration</t>
          </li>
          <li>
            <t><bcp14>MUST</bcp14> use registered or private Entity Profiles</t>
          </li>
          <li>
            <t><bcp14>MUST NOT</bcp14> attempt to register with Entity Profiles that do not match their actual nature</t>
          </li>
        </ul>
        <t>In environments where clients are manually registered or configured (e.g., enterprise deployments), <tt>client_profile</tt> provided <bcp14>MUST</bcp14> accurately represent the nature of the client. The value <bcp14>MUST</bcp14> be a registered Entity Profile or follow the naming conventions for private Entity Profiles.</t>
        <t>Clients are incentivized to declare accurate <tt>client_profile</tt> values because authorization and access policies rely on them. Misrepresenting profiles may cause stricter enforcement, failed authorizations, or rejection due to incompatible policy constraints. Moreover, Authorization Servers and Resource Servers should monitor client behavior to ensure consistency with the declared profile, with deviations potentially resulting in penalties or revocation of access.</t>
      </section>
    </section>
    <section anchor="authorization-server-behavior">
      <name>Authorization Server Behavior</name>
      <section anchor="client-registration">
        <name>Client Registration</name>
        <t>During client registration (dynamically or otherwise), Authorization Servers implementing this specification:</t>
        <ul spacing="normal">
          <li>
            <t><bcp14>MUST</bcp14> verify the <tt>client_profile</tt> value during client registration, if present in the registration request.</t>
          </li>
          <li>
            <t><bcp14>MUST</bcp14> ensure that the <tt>client_profile</tt> value conforms to the rules defined in <xref target="representation-in-token-claims-and-metadata"/>.</t>
          </li>
          <li>
            <t><bcp14>MUST</bcp14> reject registration requests with syntactically invalid <tt>client_profile</tt> values or values that are neither registered in the OAuth Entity Profiles registry nor valid private Entity Profiles.</t>
          </li>
          <li>
            <t><bcp14>SHOULD</bcp14> provide clear error messages when rejecting registration requests due to invalid or unrecognized <tt>client_profile</tt> values.</t>
          </li>
          <li>
            <t><bcp14>MAY</bcp14> log Client Profile information for auditing and monitoring purposes.</t>
          </li>
          <li>
            <t><bcp14>MAY</bcp14> restrict clients from updating their <tt>client_profile</tt> after registration or limit the frequency of such updates, depending on their policies.</t>
          </li>
        </ul>
      </section>
      <section anchor="subject-profile-assignment">
        <name>Subject Profile Assignment</name>
        <t>The Authorization Server <bcp14>MAY</bcp14> determine the <tt>sub_profile</tt> value based on:</t>
        <ul spacing="normal">
          <li>
            <t>Attributes of the subject (e.g., user, service account, AI agent) as provided during registration.</t>
          </li>
          <li>
            <t>Subject attributes returned during authentication.</t>
          </li>
          <li>
            <t>The grant type used (e.g., <tt>client_credentials</tt> implies service account).</t>
          </li>
          <li>
            <t>Preconfigured mappings.</t>
          </li>
        </ul>
        <t>The client’s declared profile or request parameters <bcp14>MUST NOT</bcp14> directly influence or determine the value of <tt>sub_profile</tt> to prevent manipulation or unauthorized elevation of subject classification.</t>
      </section>
      <section anchor="jwt-issuance">
        <name>JWT Issuance</name>
        <t>Authorization Servers implementing this specification:</t>
        <ul spacing="normal">
          <li>
            <t><bcp14>MAY</bcp14> include <tt>sub_profile</tt> and <tt>client_profile</tt> Claims in access tokens and ID tokens, according to their policies and client registration metadata. When included, these Claims <bcp14>MUST</bcp14> conform to the rules defined in <xref target="representation-in-token-claims-and-metadata"/>.</t>
          </li>
          <li>
            <t><bcp14>SHOULD</bcp14> issue registered Entity Profile values only in the usage locations defined for those values in the OAuth Entity Profiles registry (<xref target="oauth-entity-profiles-registry"/>), such as <tt>client_profile</tt>, top-level <tt>sub_profile</tt>, or <tt>sub_profile</tt> within <tt>act</tt> nodes. Private Entity Profile values <bcp14>SHOULD</bcp14> be issued only in usage contexts consistent with their private definitions.</t>
          </li>
          <li>
            <t><bcp14>MAY</bcp14> automatically include Entity Profile Claims for certain categories of clients, such as always providing <tt>client_profile</tt> for autonomous AI agent clients.</t>
          </li>
          <li>
            <t><bcp14>SHOULD</bcp14> include these Claims when explicitly requested by clients through supported mechanisms (e.g., OpenID Connect Claims parameter <xref target="OIDC"/>, specific scope requests).</t>
          </li>
          <li>
            <t><bcp14>SHOULD</bcp14> populate these Claims consistently using verified Entity Profile information obtained during client registration or other trusted validation methods.</t>
          </li>
          <li>
            <t>When issuing refreshed or exchanged tokens, Authorization Servers <bcp14>SHOULD</bcp14> re-evaluate the Entity Profiles and update them if context or identity has changed. Entity Profiles <bcp14>MUST NOT</bcp14> be assumed to persist across sessions without validation.</t>
          </li>
        </ul>
        <t>This specification does not prescribe how clients request Entity Profile Claims, but it is expected that existing mechanisms will be re-used. Future extensions may define additional request mechanisms along with any associated rejection rules and error handling. In practice, Authorization Servers may enforce the inclusion of these Claims by default, especially for high-risk or privileged profiles such as AI agents, to ensure consistent and secure policy enforcement. For other entity profiles, to reduce token size and privacy exposure, Claims may be omitted by default and included only when explicitly requested. This approach balances the need for security and efficient token management, while preventing clients from arbitrarily adding or omitting Entity Profile information to manipulate access control decisions.</t>
        <t>As an example, in OpenID Connect deployments, clients may use the <tt>claims</tt> request parameter <xref target="OIDC"/> to request Entity Profile Claims. The following is a non-normative example of requesting both <tt>client_profile</tt> and <tt>sub_profile</tt> in an access token:</t>
        <sourcecode type="json"><![CDATA[
{
  "access_token": {
    "client_profile": null,
    "sub_profile": null
  }
}
]]></sourcecode>
      </section>
      <section anchor="token-introspection-responses">
        <name>Token Introspection Responses</name>
        <t>Authorization Servers implementing this specification:</t>
        <ul spacing="normal">
          <li>
            <t><bcp14>SHOULD</bcp14> include <tt>sub_profile</tt> and <tt>client_profile</tt> parameters in token introspection responses. If included, Authorization Servers <bcp14>MUST</bcp14> ensure that the values of these parameters conform to the rules defined in <xref target="representation-in-token-claims-and-metadata"/>.</t>
          </li>
          <li>
            <t><bcp14>MAY</bcp14> include <tt>sub_profile</tt> within <tt>act</tt> nodes in introspection responses when the token is associated with a delegation context and the Authorization Server has assigned an Actor Profile to the acting entity.</t>
          </li>
        </ul>
      </section>
      <section anchor="validation-requirements">
        <name>Validation Requirements</name>
        <t>Authorization Servers:</t>
        <ol spacing="normal" type="1"><li>
            <t><bcp14>MUST</bcp14> verify that Entity Profile values conform to the syntax in <xref target="representation-in-token-claims-and-metadata"/> and are either registered in the OAuth Entity Profiles registry for the applicable usage location or are valid private Entity Profiles used in a context consistent with their private definitions.</t>
          </li>
          <li>
            <t><bcp14>SHOULD</bcp14> ensure that Entity Profile assignments are trustworthy and not based solely on unverified self-assertion. The mechanisms for these verifications are out of scope for this specification, but it is recommended that Authorization Servers implement appropriate checks based on their security policies and operational context.</t>
          </li>
          <li>
            <t><bcp14>MUST</bcp14> enforce authentication assurance and policy requirements appropriate to the Entity Profile.</t>
          </li>
        </ol>
        <t>If validation fails during:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Client registration</strong>: Authorization Servers <bcp14>SHOULD</bcp14> return <tt>invalid_client_metadata</tt> (as defined in <xref target="RFC7591"/>).</t>
          </li>
          <li>
            <t><strong>Token issuance</strong>: Servers <bcp14>MAY</bcp14> refuse to issue tokens or omit the invalid profile Claims.</t>
          </li>
          <li>
            <t><strong>Token introspection</strong>: Servers <bcp14>SHOULD</bcp14> ensure introspection results match stored profile metadata and <bcp14>MUST NOT</bcp14> fabricate or guess unknown profiles.</t>
          </li>
          <li>
            <t><strong>JWT authorization grant processing</strong>: Servers <bcp14>SHOULD</bcp14> return <tt>invalid_grant</tt> as defined in <xref section="3.1" sectionFormat="of" target="RFC7523"/> if the assertion contains syntactically invalid Entity Profile values, values that are not valid for the applicable usage location, or values that are disallowed by local policy.</t>
          </li>
          <li>
            <t><strong>Token exchange</strong>: When processing inbound tokens or assertions (e.g., <tt>subject_token</tt> or <tt>actor_token</tt> in <xref target="RFC8693"/>), Authorization Servers <bcp14>SHOULD</bcp14> validate Entity Profile Claims in the presented tokens and <bcp14>MAY</bcp14> reject the exchange request if the values are invalid, unrecognized, or conflict with local policy.</t>
          </li>
        </ul>
        <t>Clear, actionable error responses <bcp14>MUST</bcp14> be returned in accordance with OAuth and OpenID Connect error handling frameworks.</t>
        <t>Authorization Servers <bcp14>MAY</bcp14>:</t>
        <ol spacing="normal" type="1"><li>
            <t>Log Entity Profile assignments to support auditing and forensic analysis.</t>
          </li>
          <li>
            <t>Incorporate Entity Profiles into rate limiting and other risk-based controls.</t>
          </li>
          <li>
            <t>Return clear, descriptive error messages if Entity Profile validation fails.</t>
          </li>
        </ol>
      </section>
      <section anchor="consuming-tokens-and-assertions">
        <name>Consuming Tokens and Assertions</name>
        <t>When an Authorization Server consumes tokens or assertions containing Entity Profile Claims, such as during token exchange <xref target="RFC8693"/> or JWT authorization grant processing <xref target="RFC7523"/>, it acts in a role analogous to a Resource Server with respect to evaluating those Claims. In addition to the validation requirements defined in <xref target="validation-requirements"/>, Authorization Servers in this context:</t>
        <ul spacing="normal">
          <li>
            <t><bcp14>SHOULD</bcp14> use Entity Profile Claims in the presented tokens and assertions to inform authorization and policy decisions for the requested operation.</t>
          </li>
          <li>
            <t><bcp14>MUST NOT</bcp14> interpret or infer additional meaning beyond the profile's definition.</t>
          </li>
          <li>
            <t><bcp14>SHOULD</bcp14> treat Entity Profile values that are syntactically invalid or that appear in a usage location not defined for that value in the registry as unrecognized, and apply policies accordingly.</t>
          </li>
          <li>
            <t><bcp14>MAY</bcp14> reject a token containing a <tt>client_profile</tt> member within an <tt>act</tt> node or ignore the offending member for the purposes of authorization decisions.</t>
          </li>
          <li>
            <t><bcp14>MUST NOT</bcp14> preserve values that are syntactically invalid or invalid for the applicable usage location.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="resource-server-behavior">
      <name>Resource Server Behavior</name>
      <t>Resource Servers handling tokens with Entity Profile Claims:</t>
      <ul spacing="normal">
        <li>
          <t><bcp14>SHOULD</bcp14> use <tt>sub_profile</tt> and <tt>client_profile</tt> Claims to inform access control decisions and apply appropriate policies.</t>
        </li>
        <li>
          <t><bcp14>SHOULD</bcp14> apply conservative or default-deny policies when Entity Profile Claims are missing, unrecognized, or have unknown semantics for the usage location that the Authorization Server has advertised support for in <tt>entity_profiles_supported</tt>. For example, if the <tt>subject</tt> array is present in <tt>entity_profiles_supported</tt> but <tt>sub_profile</tt> is absent from a token, the Resource Server <bcp14>SHOULD</bcp14> apply conservative policies for subject classification.</t>
        </li>
        <li>
          <t><bcp14>SHOULD NOT</bcp14> penalize tokens for missing Entity Profile Claims for unadvertised usage locations.</t>
        </li>
        <li>
          <t><bcp14>MAY</bcp14> log Entity Profile information for auditing, monitoring, and anomaly detection purposes.</t>
        </li>
        <li>
          <t><bcp14>MUST NOT</bcp14> interpret or infer additional meaning beyond the profile's definition.</t>
        </li>
        <li>
          <t><bcp14>SHOULD</bcp14> treat Entity Profile values that are syntactically invalid (i.e., do not conform to the <tt>profile-token</tt> syntax in <xref target="representation-in-token-claims-and-metadata"/>) or that appear in a usage location not defined for that value in the registry as unrecognized, and apply policies accordingly.</t>
        </li>
        <li>
          <t><bcp14>MAY</bcp14> reject a token containing a <tt>client_profile</tt> member within an <tt>act</tt> node or ignore the offending member for the purposes of authorization decisions.</t>
        </li>
      </ul>
      <t>This specification does not prescribe specific behaviors or policies for Resource Servers based on Entity Profiles. However, it encourages Resource Servers to use these Claims to strengthen security, enforce fine-grained policies, and improve user experience.</t>
      <t>When a Resource Server obtains Entity Profile values from both a JWT access token and a token introspection response, and the values differ, the introspection response <bcp14>SHOULD</bcp14> take precedence as it reflects the Authorization Server's current state. A mismatch between the two sources <bcp14>MAY</bcp14> be logged as an anomaly for monitoring purposes.</t>
      <t>When rejecting a request due to invalid, missing, or unsupported Entity Profile Claims, Resource Servers <bcp14>SHOULD</bcp14> provide informative error responses to assist with diagnostics and troubleshooting. These responses <bcp14>SHOULD</bcp14> use existing OAuth 2.0 and HTTP mechanisms, such as the <tt>WWW-Authenticate</tt> <xref target="RFC6750"/> header or the <tt>error_description</tt> field <xref target="RFC6749"/> in the response body, to convey additional context.</t>
      <t>These messages are intended for human end-users or developers and are not standardized by this specification. Clients <bcp14>MUST NOT</bcp14> rely on specific error formats for automated decision-making.</t>
      <section anchor="handling-multiple-entity-profiles-in-authorization-policies">
        <name>Handling Multiple Entity Profiles in Authorization Policies</name>
        <t>When multiple Entity Profiles are present, authorization policies associated with each should be evaluated in combination. Entity Profiles do not define an inherent hierarchy or ordering; no profile is automatically "more trusted" than another. However, when policy outcomes conflict, deployments <bcp14>SHOULD</bcp14> apply the most restrictive outcome to avoid unintended privilege escalation. Implementers should avoid writing Entity Profile checks that override previous decisions imperatively, as this can lead to inconsistent behavior.</t>
        <t>Here is a non-normative pseudo-code example of how these values can be used for enforcing authorization policies at a Resource Server:</t>
        <sourcecode type="python"><![CDATA[
raw_client = token.get("client_profile", "").strip()
client_profiles = set(raw_client.split()) if raw_client else set()

raw_sub = token.get("sub_profile", "").strip()
sub_profiles = set(raw_sub.split()) if raw_sub else set()

# Define applicable policies
policies_to_apply = []

if "service" in client_profiles:
    # Add service-specific policies
    policies_to_apply.append(apply_service_policy)

if "ai_agent" in sub_profiles:
    # Add AI agent-specific policies
    policies_to_apply.append(apply_ai_agent_policy)

if "user" in sub_profiles:
    # Add user-specific policies
    policies_to_apply.append(apply_user_policy)

# Evaluate combined policies (e.g., intersection of permissions or most restrictive)
final_decision = evaluate_combined_policies(policies_to_apply, mode="most_restrictive")

]]></sourcecode>
      </section>
    </section>
    <section anchor="entity-profiles-in-delegation-contexts">
      <name>Entity Profiles in Delegation Contexts</name>
      <t>Entity Profiles classify entities participating in OAuth flows. They do not, by themselves, create or imply delegation relationships.</t>
      <t>When OAuth 2.0 Token Exchange <xref target="RFC8693"/> is used to represent delegation, the <tt>act</tt> Claim allows tokens to include information about acting entities, and the <tt>sub_profile</tt> Claim can be used within each <tt>act</tt> node to indicate the Actor Profile that classifies those entities. This specification defines the "Actor Profile" usage location in the OAuth Entity Profiles registry (<xref target="oauth-entity-profiles-registry"/>) and the <tt>actor</tt> array in the <tt>entity_profiles_supported</tt> metadata (<xref target="authorization-server-metadata"/>) to support this use.</t>
      <t>At the top level of a token, <tt>sub_profile</tt> classifies the primary subject of the token (e.g., a user or service account). Within <tt>act</tt> nodes, <tt>sub_profile</tt> classifies the acting entity at each step of the delegation chain (e.g., an AI agent acting on behalf of a user). Client classification using the <tt>client_profile</tt> Claim <bcp14>MUST</bcp14> be expressed only at the top level of the token. The <tt>client_profile</tt> Claim <bcp14>MUST NOT</bcp14> appear within <tt>act</tt> nodes.</t>
      <t>The value of <tt>sub_profile</tt> within an <tt>act</tt> node, when included, <bcp14>MUST</bcp14> conform to the syntax defined in <xref target="representation-in-token-claims-and-metadata"/> and <bcp14>MUST</bcp14> use values from the OAuth Entity Profiles registry (<xref target="oauth-entity-profiles-registry"/>) with the "Actor Profile" usage location, or valid private Entity Profiles as defined in <xref target="private-or-custom-entity-profiles"/>.</t>
      <t>An <tt>act</tt> node can contain another <tt>act</tt> node, forming a chain that represents multiple hops of delegation. By including <tt>sub_profile</tt> in each <tt>act</tt> node, the Authorization Server can provide consistent classification of all entities involved in the delegation, enabling Resource Servers to make informed access control decisions based on the nature of each actor.</t>
      <t>The Authorization Server is responsible for constructing the <tt>act</tt> chain, validating subject tokens, and assigning appropriate <tt>sub_profile</tt> values based on its policies and the delegation context. The rules for these operations are expected to be defined in a separate specification focused on actor and delegation chains.</t>
      <t>If a Resource Server encounters an <tt>act</tt> node without a <tt>sub_profile</tt> member, and the Authorization Server’s metadata indicates support for Actor Profiles through the <tt>actor</tt> array in <tt>entity_profiles_supported</tt>, the Resource Server <bcp14>SHOULD</bcp14> treat the acting entity as unclassified. Where local policy for the protected resource requires Actor Profile information, the Resource Server <bcp14>SHOULD</bcp14> apply conservative or default-deny policies consistent with <xref target="resource-server-behavior"/>. If the Authorization Server’s metadata does not declare support for Actor Profiles, the absence of <tt>sub_profile</tt> carries no normative significance under this specification.</t>
      <t>Below is a non-normative example of a multi-hop delegation chain where a user delegates to an AI agent, which in turn delegates to a backend service. Each <tt>act</tt> node includes a <tt>sub_profile</tt> member to classify the acting entity. Other standard <tt>act</tt> members such as <tt>iss</tt> are omitted for brevity:</t>
      <sourcecode type="json"><![CDATA[
{
  "sub": "user123",
  "sub_profile": "user",
  "client_id": "agent_app",
  "client_profile": "ai_agent",
  "act": {
    "sub": "agent_app",
    "sub_profile": "ai_agent",
    "act": {
      "sub": "tool_service",
      "sub_profile": "service"
    }
  }
}
]]></sourcecode>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="trust-and-verification">
        <name>Trust and Verification</name>
        <t>Entity Profile Claims should only be trusted when issued by verified and trusted authorities. Without proper validation, self-asserted or spoofed Claims may result in misclassification and undermine security policies. Authorization Servers should enforce strict validation during client registration and token issuance.</t>
      </section>
      <section anchor="entity-profile-spoofing">
        <name>Entity Profile Spoofing</name>
        <t>Malicious clients may attempt to register or use false Entity Profiles to bypass access controls. To mitigate this, Authorization Servers should require verification for all profiles, especially privileged types like "ai_agent", and restrict dynamic registration of sensitive profiles unless additional validation is performed.</t>
        <t>Implementations are encouraged to monitor client behavior for consistency with the declared profile, applying penalties or revoking access when discrepancies indicate potential abuse or security risks.</t>
      </section>
      <section anchor="entity-profiles-in-jwt-authorization-grant-assertions">
        <name>Entity Profiles in JWT Authorization Grant Assertions</name>
        <t>When Entity Profile Claims are conveyed in JWT authorization grant assertions <xref target="RFC7523"/>, the Authorization Server receives classification information from an external issuer rather than from its own registration or authentication processes. This introduces additional trust considerations. Authorization Servers must not accept <tt>client_profile</tt> or <tt>sub_profile</tt> values from JWT assertions at face value, and should verify these values against independent knowledge of the client or subject, or against the issuer's attestation trustworthiness.</t>
        <t>An attacker who compromises or forges a JWT assertion could include a misleading <tt>sub_profile</tt> value (e.g., <tt>user</tt> for a service account) to obtain access privileges not intended for the actual entity type. Authorization Servers should apply the same level of scrutiny to Entity Profile Claims in JWT assertions as they do to other assertion Claims such as <tt>sub</tt> and <tt>aud</tt>.</t>
      </section>
      <section anchor="consistency-and-semantics">
        <name>Consistency and Semantics</name>
        <t>Authorization Servers, Resource Servers, and Clients must interpret Entity Profile Claims consistently. To avoid misclassification or policy errors they should follow the definitions and semantics outlined in the specification, and not infer additional meanings or relationships beyond the defined Entity Profiles. This consistency is crucial for interoperability and security.</t>
      </section>
      <section anchor="separation-from-authentication-and-assurance">
        <name>Separation from Authentication and Assurance</name>
        <t>Entity Profile Claims are intended solely for classification and do not convey authentication strength or assurance. It is advised not to use these Entity Profile Claims as replacements for Claims such as <tt>acr</tt> (Authentication Context Class Reference <xref target="OIDC"/>). Authorization decisions should incorporate authentication context Claims alongside Entity Profiles to ensure robust access control.</t>
        <t>Different Entity Profiles may require different levels of authentication assurance. It is recommended that Authorization Servers define minimum assurance requirements per Entity Profile, express these through the <tt>acr</tt> Claim, and reject authorization requests that do not meet the required assurance level. This alignment helps prevent unauthorized access by weakly authenticated entities.</t>
      </section>
      <section anchor="layered-policy-enforcement">
        <name>Layered Policy Enforcement</name>
        <t>It is recommended that Entity Profile Claims be used as one element within a multi-layered authorization policy. Relying exclusively on Entity Profile Claims can create brittle or exploitable policies. Implementers should combine Entity Profile Claims with scopes, roles, authentication assurance, and other contextual information.</t>
      </section>
      <section anchor="audit-and-monitoring">
        <name>Audit and Monitoring</name>
        <t>It is recommended that Entity Profile Claims be incorporated thoughtfully into logging, telemetry, and audit trails to improve visibility into system behavior and support forensic investigations. However, implementers should balance these benefits against potential privacy concerns, ensuring that sensitive classification information is not overexposed or retained longer than necessary. Careful access controls and data minimization practices are advised when handling logs containing Entity Profile details.</t>
      </section>
      <section anchor="default-handling">
        <name>Default Handling</name>
        <t>While it is recommended to apply conservative or restrictive policies when Entity Profile Claims are missing, Resource Servers should also consider backward compatibility. Many existing tokens and systems may not include these Claims, so resources might need to accept requests without them. In such cases, applying default or fallback policies that balance security and usability is advised. Monitoring and logging requests missing Entity Profile Claims can help identify when stronger enforcement or client registration updates are needed.</t>
      </section>
      <section anchor="misclassification-risks">
        <name>Misclassification Risks</name>
        <t>Entity Profile Claims can be misclassified or misinterpreted, leading to incorrect access control decisions. It is recommended that implementers validate Entity Profile Claims against known registries or trusted sources to ensure accurate classification. Implementers should also consider the implications of misclassification and implement fallback mechanisms or default policies to mitigate risks.</t>
      </section>
      <section anchor="token-bloating">
        <name>Token Bloating</name>
        <t>Entity Profile Claims can increase the size of JWT access tokens or ID tokens, especially when multiple profiles are included. This can lead to performance issues, particularly in environments with limited bandwidth or storage. Implementers should consider the impact of token size on their systems and apply data minimization principles, only including Entity Profile Claims when necessary. Implementers should enforce reasonable limits on both the number of Entity Profile values in a single Claim and the length of individual profile value strings. Excessively large profile values could increase token sizes, degrade performance, or be exploited as a denial-of-service vector.</t>
      </section>
      <section anchor="actor-profile-verification-in-delegation-chains">
        <name>Actor Profile Verification in Delegation Chains</name>
        <t>When <tt>sub_profile</tt> values appear within <tt>act</tt> Claim nodes <xref target="RFC8693"/>, they introduce additional classification assertions about acting entities in a delegation chain. Authorization Servers must not accept or issue <tt>sub_profile</tt> values in <tt>act</tt> nodes without verifying them against registration data, trusted issuer assertions, attestation evidence, or other policy inputs. Resource Servers must not trust <tt>sub_profile</tt> values in <tt>act</tt> nodes unless they are obtained from a trusted Authorization Server and the token or introspection response has been validated according to the applicable OAuth and JWT requirements.</t>
        <t>Unverified actor profiles may enable privilege escalation; for example, an attacker could craft a delegation chain where an inner <tt>act</tt> node claims a <tt>sub_profile</tt> value of <tt>"user"</tt> when the actual actor is a <tt>"service"</tt>, potentially causing a Resource Server to apply user-level permissions to a service.</t>
      </section>
      <section anchor="delegation-chain-depth">
        <name>Delegation Chain Depth</name>
        <t>Deeply nested <tt>act</tt> chains can contain many <tt>sub_profile</tt> values, increasing token size and processing complexity. Implementers should impose a maximum chain depth appropriate to their deployment context to prevent resource exhaustion. A depth limit of 3 to 5 levels is generally sufficient for most delegation scenarios.</t>
      </section>
      <section anchor="confused-deputy-risk-in-delegation">
        <name>Confused Deputy Risk in Delegation</name>
        <t>When a token carries both a top-level <tt>sub_profile</tt> and a different <tt>sub_profile</tt> within an <tt>act</tt> node (e.g., a top-level <tt>sub_profile</tt> of <tt>"user"</tt> and an <tt>act</tt> <tt>sub_profile</tt> of <tt>"ai_agent"</tt>), Resource Servers that use Entity Profiles in authorization decisions must consider the delegation context and must not treat the top-level <tt>sub_profile</tt> as fully describing the active actor. Relying only on the top-level subject classification can lead to a confused deputy scenario where the acting entity obtains access beyond what the delegation context warrants.</t>
      </section>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>Entity Profile Claims can reveal sensitive information about clients, users, or system architecture. When exposed improperly, they may increase risks related to fingerprinting, profiling, or data leakage. Implementers should evaluate the privacy impact of using these Claims and apply protective measures accordingly.</t>
      <section anchor="fingerprinting">
        <name>Fingerprinting</name>
        <t>Entity Profile Claims can potentially be used to fingerprint clients or subjects based on their operational context. It is recommended that implementers consider the privacy implications of exposing Entity Profile information in tokens, especially when these Claims are accessible to untrusted parties. It is recommended to only include Entity Profile Claims when necessary, and assess whether their inclusion could enable cross-context tracking or re-identification.</t>
      </section>
      <section anchor="profiling-and-behavioral-inference">
        <name>Profiling and Behavioral Inference</name>
        <t>Entity Profile Claims may unintentionally support profiling of users or clients, enabling assumptions about behavior, preferences, or roles. It is recommended that implementers carefully consider the potential for behavioral inference and ensure that Entity Profile Claims are not used to make unwarranted assumptions about user behavior or preferences. Implementers should also be cautious about exposing sensitive Entity Profile information in tokens that could be accessible to untrusted parties.</t>
      </section>
      <section anchor="minimization">
        <name>Minimization</name>
        <t>Implementers should apply data minimization principles when including Entity Profile Claims in tokens. This means only including Entity Profile information that is necessary for the intended purpose and avoiding overexposure of sensitive classification details. Implementers should also consider whether Entity Profile Claims are needed in all contexts or if they can be omitted in certain scenarios to reduce privacy risks.</t>
      </section>
      <section anchor="data-exposure">
        <name>Data Exposure</name>
        <t>Entity Profile Claims may reveal sensitive information about system architecture or user categories. It is advised to carefully consider the exposure of these Claims in tokens accessible to untrusted parties. Limiting or anonymizing Entity Profile information can reduce the risk of unintended data disclosure.</t>
      </section>
      <section anchor="delegation-chain-exposure">
        <name>Delegation Chain Exposure</name>
        <t>When <tt>sub_profile</tt> values are present within nested <tt>act</tt> Claim nodes <xref target="RFC8693"/>, the resulting token preserves the Entity Profile of each principal in the delegation chain. This may reveal sensitive information about organizational structure, internal service topology, or delegation patterns across domains. Implementers should consider whether the full delegation chain needs to be present in tokens presented to Resource Servers, or whether a truncated representation is sufficient. Data minimization principles from <xref target="minimization"/> apply to <tt>sub_profile</tt> values within <tt>act</tt> nodes as well.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="oauth-entity-profiles-registry">
        <name>OAuth Entity Profiles Registry</name>
        <t>This specification requests the creation of a new IANA registry titled "OAuth Entity Profiles Registry" within the "OAuth Parameters" group. This registry will contain the string identifiers used to represent the Entity Profiles described in this specification.</t>
        <t>NOTE: Private or vendor-specific Entity Profiles may use namespaced values and do not require IANA registration.</t>
        <section anchor="registration-template">
          <name>Registration Template</name>
          <t>Each registry entry <bcp14>MUST</bcp14> include:</t>
          <ul spacing="normal">
            <li>
              <t>Entity Profile Name: A case-insensitive ASCII string representing the entity type (e.g., "user") conforming to the <tt>profile-token</tt> syntax defined in <xref target="representation-in-token-claims-and-metadata"/>.</t>
            </li>
            <li>
              <t>Entity Profile Description: Brief human-readable description of the entity type.</t>
            </li>
            <li>
              <t>Usage Location: The location(s) where the Entity Profile can be used. The possible locations are "Subject Profile", "Client Profile", and "Actor Profile".</t>
            </li>
            <li>
              <t>Change Controller: The party responsible for the definition (e.g., IESG).</t>
            </li>
            <li>
              <t>Specification Document: A stable URL or RFC that defines the semantics and use of the value.</t>
            </li>
          </ul>
          <t>Designated Experts reviewing registration requests <bcp14>SHOULD</bcp14> verify that the proposed Entity Profile Name is clearly defined and appropriate for its declared Usage Location. For registrations that include the "Actor Profile" Usage Location, Designated Experts <bcp14>SHOULD</bcp14> verify that the value describes a type of acting entity relevant to OAuth delegation scenarios and is suitable for use as a <tt>sub_profile</tt> value within an <tt>act</tt> object.</t>
        </section>
        <section anchor="initial-registry-contents">
          <name>Initial Registry Contents</name>
          <section anchor="user-1">
            <name>user</name>
            <ul spacing="normal">
              <li>
                <t>Entity Profile Name: "user"</t>
              </li>
              <li>
                <t>Entity Profile Description: Human resource owner interacting through a client.</t>
              </li>
              <li>
                <t>Usage Location: "Subject Profile", "Actor Profile"</t>
              </li>
              <li>
                <t>Change Controller: IESG</t>
              </li>
              <li>
                <t>Specification Document: <xref target="standardized-entity-profiles"/> of this document.</t>
              </li>
            </ul>
          </section>
          <section anchor="device-1">
            <name>device</name>
            <ul spacing="normal">
              <li>
                <t>Entity Profile Name: "device"</t>
              </li>
              <li>
                <t>Entity Profile Description: Hardware device or IoT endpoint</t>
              </li>
              <li>
                <t>Usage Location: "Client Profile", "Subject Profile"</t>
              </li>
              <li>
                <t>Change Controller: IESG</t>
              </li>
              <li>
                <t>Specification Document: <xref target="standardized-entity-profiles"/> of this document.</t>
              </li>
            </ul>
          </section>
          <section anchor="nativeapp-1">
            <name>native_app</name>
            <ul spacing="normal">
              <li>
                <t>Entity Profile Name: "native_app"</t>
              </li>
              <li>
                <t>Entity Profile Description: Native application running on a device (e.g., mobile app, desktop app).</t>
              </li>
              <li>
                <t>Usage Location: "Client Profile"</t>
              </li>
              <li>
                <t>Change Controller: IESG</t>
              </li>
              <li>
                <t>Specification Document: <xref target="standardized-entity-profiles"/> of this document.</t>
              </li>
            </ul>
          </section>
          <section anchor="webapp-1">
            <name>web_app</name>
            <ul spacing="normal">
              <li>
                <t>Entity Profile Name: "web_app"</t>
              </li>
              <li>
                <t>Entity Profile Description: Web application as defined in <xref target="RFC6749"/>.</t>
              </li>
              <li>
                <t>Usage Location: "Client Profile"</t>
              </li>
              <li>
                <t>Change Controller: IESG</t>
              </li>
              <li>
                <t>Specification Document: <xref target="standardized-entity-profiles"/> of this document.</t>
              </li>
            </ul>
          </section>
          <section anchor="browserapp-1">
            <name>browser_app</name>
            <ul spacing="normal">
              <li>
                <t>Entity Profile Name: "browser_app"</t>
              </li>
              <li>
                <t>Entity Profile Description: User-agent-based application as defined in <xref target="RFC6749"/>.</t>
              </li>
              <li>
                <t>Usage Location: "Client Profile"</t>
              </li>
              <li>
                <t>Change Controller: IESG</t>
              </li>
              <li>
                <t>Specification Document: <xref target="standardized-entity-profiles"/> of this document.</t>
              </li>
            </ul>
          </section>
          <section anchor="service-1">
            <name>service</name>
            <ul spacing="normal">
              <li>
                <t>Entity Profile Name: "service"</t>
              </li>
              <li>
                <t>Entity Profile Description: Non-human backend service or microservice.</t>
              </li>
              <li>
                <t>Usage Location: "Client Profile", "Subject Profile", "Actor Profile"</t>
              </li>
              <li>
                <t>Change Controller: IESG</t>
              </li>
              <li>
                <t>Specification Document: <xref target="standardized-entity-profiles"/> of this document.</t>
              </li>
            </ul>
          </section>
          <section anchor="aiagent-1">
            <name>ai_agent</name>
            <ul spacing="normal">
              <li>
                <t>Entity Profile Name: "ai_agent"</t>
              </li>
              <li>
                <t>Entity Profile Description: Autonomous or semi-autonomous AI-based entity.</t>
              </li>
              <li>
                <t>Usage Location: "Client Profile", "Subject Profile", "Actor Profile"</t>
              </li>
              <li>
                <t>Change Controller: IESG</t>
              </li>
              <li>
                <t>Specification Document: <xref target="standardized-entity-profiles"/> of this document.</t>
              </li>
            </ul>
          </section>
        </section>
      </section>
      <section anchor="jwt-claims-registration">
        <name>JWT Claims Registration</name>
        <t>This document requests registration of the following Claims in the "JSON Web Token Claims" registry:</t>
        <section anchor="clientprofile-claim-1">
          <name><tt>client_profile</tt> Claim</name>
          <ul spacing="normal">
            <li>
              <t>Claim Name: "client_profile"</t>
            </li>
            <li>
              <t>Claim Description: Client Entity Profile information</t>
            </li>
            <li>
              <t>Change Controller: IESG</t>
            </li>
            <li>
              <t>Specification Document: <xref target="entity-profile-jwt-claims"/> of this document.</t>
            </li>
          </ul>
        </section>
        <section anchor="subprofile-claim-1">
          <name><tt>sub_profile</tt> Claim</name>
          <ul spacing="normal">
            <li>
              <t>Claim Name: "sub_profile"</t>
            </li>
            <li>
              <t>Claim Description: Subject, resource owner, or acting entity Entity Profile information</t>
            </li>
            <li>
              <t>Change Controller: IESG</t>
            </li>
            <li>
              <t>Specification Document: <xref target="entity-profile-jwt-claims"/> of this document.</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="authorization-server-metadata-registration">
        <name>Authorization Server Metadata Registration</name>
        <t>IANA is requested to register the following fields in the "OAuth Authorization Server Metadata" <xref target="RFC8414"/> registry:</t>
        <section anchor="entityprofilessupported">
          <name><tt>entity_profiles_supported</tt></name>
          <ul spacing="normal">
            <li>
              <t>Metadata Name: entity_profiles_supported</t>
            </li>
            <li>
              <t>Metadata Description: JSON object containing JSON arrays (<tt>client</tt>, <tt>subject</tt>, and <tt>actor</tt>) listing the Entity Profiles supported.</t>
            </li>
            <li>
              <t>Change Controller: IESG</t>
            </li>
            <li>
              <t>Specification Document: <xref target="authorization-server-metadata"/> of this document.</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="dynamic-client-registration-metadata-registration">
        <name>Dynamic Client Registration Metadata Registration</name>
        <t>IANA is requested to register the following field in the "OAuth Dynamic Client Registration Metadata" registry:</t>
        <section anchor="clientprofile">
          <name><tt>client_profile</tt></name>
          <ul spacing="normal">
            <li>
              <t>Client Metadata Name: "client_profile"</t>
            </li>
            <li>
              <t>Client Metadata Description: Entity Profile information of the registering client</t>
            </li>
            <li>
              <t>Change Controller: IESG</t>
            </li>
            <li>
              <t>Specification Document: <xref target="dynamic-client-registration-metadata"/> of this document.</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="token-introspection-response-registration">
        <name>Token Introspection Response Registration</name>
        <t>IANA is requested to register the following fields in the "OAuth Token Introspection Response" <xref target="RFC7662"/> registry:</t>
        <section anchor="clientprofile-1">
          <name><tt>client_profile</tt></name>
          <ul spacing="normal">
            <li>
              <t>Name: "client_profile"</t>
            </li>
            <li>
              <t>Description: Entity Profile information of the client</t>
            </li>
            <li>
              <t>Change Controller: IESG</t>
            </li>
            <li>
              <t>Specification Document: <xref target="token-introspection-response-parameters"/> of this document.</t>
            </li>
          </ul>
        </section>
        <section anchor="subprofile">
          <name><tt>sub_profile</tt></name>
          <ul spacing="normal">
            <li>
              <t>Name: "sub_profile"</t>
            </li>
            <li>
              <t>Description: Entity Profile information of the subject, resource owner, or acting entity</t>
            </li>
            <li>
              <t>Change Controller: IESG</t>
            </li>
            <li>
              <t>Specification Document: <xref target="token-introspection-response-parameters"/> of this document.</t>
            </li>
          </ul>
        </section>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC5234">
          <front>
            <title>Augmented BNF for Syntax Specifications: ABNF</title>
            <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
            <author fullname="P. Overell" initials="P." surname="Overell"/>
            <date month="January" year="2008"/>
            <abstract>
              <t>Internet technical specifications often need to define a formal syntax. Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications. The current specification documents ABNF. It balances compactness and simplicity with reasonable representational power. The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges. This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="68"/>
          <seriesInfo name="RFC" value="5234"/>
          <seriesInfo name="DOI" value="10.17487/RFC5234"/>
        </reference>
        <reference anchor="RFC6749">
          <front>
            <title>The OAuth 2.0 Authorization Framework</title>
            <author fullname="D. Hardt" initials="D." role="editor" surname="Hardt"/>
            <date month="October" year="2012"/>
            <abstract>
              <t>The OAuth 2.0 authorization framework enables a third-party application to obtain limited access to an HTTP service, either on behalf of a resource owner by orchestrating an approval interaction between the resource owner and the HTTP service, or by allowing the third-party application to obtain access on its own behalf. This specification replaces and obsoletes the OAuth 1.0 protocol described in RFC 5849. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6749"/>
          <seriesInfo name="DOI" value="10.17487/RFC6749"/>
        </reference>
        <reference anchor="RFC6750">
          <front>
            <title>The OAuth 2.0 Authorization Framework: Bearer Token Usage</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="D. Hardt" initials="D." surname="Hardt"/>
            <date month="October" year="2012"/>
            <abstract>
              <t>This specification describes how to use bearer tokens in HTTP requests to access OAuth 2.0 protected resources. Any party in possession of a bearer token (a "bearer") can use it to get access to the associated resources (without demonstrating possession of a cryptographic key). To prevent misuse, bearer tokens need to be protected from disclosure in storage and in transport. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6750"/>
          <seriesInfo name="DOI" value="10.17487/RFC6750"/>
        </reference>
        <reference anchor="RFC7519">
          <front>
            <title>JSON Web Token (JWT)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Token (JWT) is a compact, URL-safe means of representing claims to be transferred between two parties. The claims in a JWT are encoded as a JSON object that is used as the payload of a JSON Web Signature (JWS) structure or as the plaintext of a JSON Web Encryption (JWE) structure, enabling the claims to be digitally signed or integrity protected with a Message Authentication Code (MAC) and/or encrypted.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7519"/>
          <seriesInfo name="DOI" value="10.17487/RFC7519"/>
        </reference>
        <reference anchor="RFC7591">
          <front>
            <title>OAuth 2.0 Dynamic Client Registration Protocol</title>
            <author fullname="J. Richer" initials="J." role="editor" surname="Richer"/>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="M. Machulak" initials="M." surname="Machulak"/>
            <author fullname="P. Hunt" initials="P." surname="Hunt"/>
            <date month="July" year="2015"/>
            <abstract>
              <t>This specification defines mechanisms for dynamically registering OAuth 2.0 clients with authorization servers. Registration requests send a set of desired client metadata values to the authorization server. The resulting registration responses return a client identifier to use at the authorization server and the client metadata values registered for the client. The client can then use this registration information to communicate with the authorization server using the OAuth 2.0 protocol. This specification also defines a set of common client metadata fields and values for clients to use during registration.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7591"/>
          <seriesInfo name="DOI" value="10.17487/RFC7591"/>
        </reference>
        <reference anchor="RFC7662">
          <front>
            <title>OAuth 2.0 Token Introspection</title>
            <author fullname="J. Richer" initials="J." role="editor" surname="Richer"/>
            <date month="October" year="2015"/>
            <abstract>
              <t>This specification defines a method for a protected resource to query an OAuth 2.0 authorization server to determine the active state of an OAuth 2.0 token and to determine meta-information about this token. OAuth 2.0 deployments can use this method to convey information about the authorization context of the token from the authorization server to the protected resource.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7662"/>
          <seriesInfo name="DOI" value="10.17487/RFC7662"/>
        </reference>
        <reference anchor="RFC7523">
          <front>
            <title>JSON Web Token (JWT) Profile for OAuth 2.0 Client Authentication and Authorization Grants</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="B. Campbell" initials="B." surname="Campbell"/>
            <author fullname="C. Mortimore" initials="C." surname="Mortimore"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>This specification defines the use of a JSON Web Token (JWT) Bearer Token as a means for requesting an OAuth 2.0 access token as well as for client authentication.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7523"/>
          <seriesInfo name="DOI" value="10.17487/RFC7523"/>
        </reference>
        <reference anchor="RFC8414">
          <front>
            <title>OAuth 2.0 Authorization Server Metadata</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <date month="June" year="2018"/>
            <abstract>
              <t>This specification defines a metadata format that an OAuth 2.0 client can use to obtain the information needed to interact with an OAuth 2.0 authorization server, including its endpoint locations and authorization server capabilities.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8414"/>
          <seriesInfo name="DOI" value="10.17487/RFC8414"/>
        </reference>
        <reference anchor="RFC8693">
          <front>
            <title>OAuth 2.0 Token Exchange</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="A. Nadalin" initials="A." surname="Nadalin"/>
            <author fullname="B. Campbell" initials="B." role="editor" surname="Campbell"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="C. Mortimore" initials="C." surname="Mortimore"/>
            <date month="January" year="2020"/>
            <abstract>
              <t>This specification defines a protocol for an HTTP- and JSON-based Security Token Service (STS) by defining how to request and obtain security tokens from OAuth 2.0 authorization servers, including security tokens employing impersonation and delegation.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8693"/>
          <seriesInfo name="DOI" value="10.17487/RFC8693"/>
        </reference>
        <reference anchor="RFC9068">
          <front>
            <title>JSON Web Token (JWT) Profile for OAuth 2.0 Access Tokens</title>
            <author fullname="V. Bertocci" initials="V." surname="Bertocci"/>
            <date month="October" year="2021"/>
            <abstract>
              <t>This specification defines a profile for issuing OAuth 2.0 access tokens in JSON Web Token (JWT) format. Authorization servers and resource servers from different vendors can leverage this profile to issue and consume access tokens in an interoperable manner.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9068"/>
          <seriesInfo name="DOI" value="10.17487/RFC9068"/>
        </reference>
        <reference anchor="OIDC" target="https://openid.net/specs/openid-connect-core-1_0.html">
          <front>
            <title>OpenID Connect Core 1.0</title>
            <author>
              <organization/>
            </author>
            <date year="2023" month="December"/>
          </front>
        </reference>
        <reference anchor="I-D.ietf-oauth-transaction-tokens" target="https://datatracker.ietf.org/doc/html/draft-ietf-oauth-transaction-tokens">
          <front>
            <title>Transaction Tokens</title>
            <author>
              <organization/>
            </author>
            <date year="2026" month="March"/>
          </front>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC8628">
          <front>
            <title>OAuth 2.0 Device Authorization Grant</title>
            <author fullname="W. Denniss" initials="W." surname="Denniss"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="August" year="2019"/>
            <abstract>
              <t>The OAuth 2.0 device authorization grant is designed for Internet- connected devices that either lack a browser to perform a user-agent- based authorization or are input constrained to the extent that requiring the user to input text in order to authenticate during the authorization flow is impractical. It enables OAuth clients on such devices (like smart TVs, media consoles, digital picture frames, and printers) to obtain user authorization to access protected resources by using a user agent on a separate device.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8628"/>
          <seriesInfo name="DOI" value="10.17487/RFC8628"/>
        </reference>
      </references>
    </references>
    <?line 762?>

<section anchor="example-usage-in-various-flows-and-use-cases">
      <name>Example Usage in Various Flows and Use Cases</name>
      <t>The following non-normative examples illustrate how Entity Profiles might appear in various OAuth flows.</t>
      <table>
        <thead>
          <tr>
            <th align="left">Flow / Use Case</th>
            <th align="left">Client Profile</th>
            <th align="left">Subject Profile</th>
            <th align="left">Actor Profile</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">Authorization Code Flow (Web App)</td>
            <td align="left">
              <tt>web_app</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">Authorization Code Flow (SPA)</td>
            <td align="left">
              <tt>browser_app</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">Authorization Code Flow (Mobile App)</td>
            <td align="left">
              <tt>native_app</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">Client Credentials Flow (Backend Service)</td>
            <td align="left">
              <tt>service</tt></td>
            <td align="left">
              <tt>service</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">Device Authorization Flow (Smart TV app)</td>
            <td align="left">
              <tt>native_app</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">IoT sensors reporting telemetry</td>
            <td align="left">
              <tt>device</tt></td>
            <td align="left">
              <tt>device</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">A web app talking to a downstream API on behalf-of a user</td>
            <td align="left">
              <tt>service web_app</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">Resource Owner Password Credentials Flow (legacy)</td>
            <td align="left">
              <tt>web_app</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">S2S OBO Flows (e.g., Service Mesh)</td>
            <td align="left">
              <tt>service</tt></td>
            <td align="left">
              <tt>service</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">An AI acting as itself (e.g., Workspace bots)</td>
            <td align="left">
              <tt>service ai_agent</tt></td>
            <td align="left">
              <tt>ai_agent service</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">AI agent acting on behalf of a user (e.g., personal assistant)</td>
            <td align="left">
              <tt>ai_agent</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">
              <tt>ai_agent</tt></td>
          </tr>
          <tr>
            <td align="left">An AI agent running in a desktop app</td>
            <td align="left">
              <tt>native_app ai_agent</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">
              <tt>ai_agent</tt></td>
          </tr>
          <tr>
            <td align="left">Multi-hop delegation (planner -&gt; tool -&gt; user)</td>
            <td align="left">
              <tt>ai_agent</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">
              <tt>ai_agent</tt> (nested)</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="document-history">
      <name>Document History</name>
      <section anchor="draft-02">
        <name>draft-02</name>
        <ul spacing="normal">
          <li>
            <t>No changes</t>
          </li>
        </ul>
      </section>
      <section anchor="draft-01">
        <name>draft-01</name>
        <ul spacing="normal">
          <li>
            <t>Introduced Actor Profiles to classify acting entities in delegation contexts</t>
          </li>
          <li>
            <t>Extended Entity Profile use to JWT authorization grant assertions</t>
          </li>
          <li>
            <t>Added Karl McGuinness as co-author</t>
          </li>
          <li>
            <t>Clarified DCR behavior when the AS modifies or omits a requested client_profile</t>
          </li>
          <li>
            <t>Refined RS behavior to condition enforcement on entity_profiles_supported advertisement</t>
          </li>
          <li>
            <t>Editorial refinements to definitions and examples</t>
          </li>
        </ul>
      </section>
      <section anchor="draft-00">
        <name>draft-00</name>
        <ul spacing="normal">
          <li>
            <t>Initial draft</t>
          </li>
        </ul>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors would like to thank the following people for their contributions and reviews of this specification: Adrian Frei, Anna Barhudarian, Diana Smetters, Emily Lauber.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+192ZLjxpXoO78Ct/TgKgVJqVuyLLXHnqleJJVHvdyukhQO
h6MLJJNFuEGAgwSqmva0wx8xL/ftfsv9FH/JPWsuQIJV3W557IhxONQsEsjl
5Nm3nM1mk7ZoS/MgO3p+2rWb7P780+xJBd/tsxdNvS5KY48m+WLRmGv3zOD3
Zd6aq7rZP8hsu5pMVvWyyrcw5qrJ1+1sWzf5rM7hzZmhN2c7eXP26f2J7Rbb
wtqirtr9Dt45e3Lx9aTqtgvTPJisYOAHk2VdWVPZzj7I2qYzE1jJZ5O8MTms
6NwsuwbGPJrc1M3rq6budvDtj2aR4VLrpvhj3sLYuNi2Xtbl0eS12cOjqweT
bCYbOqKP8a74u/Nu8QezbOMvH5UF7CP+7vQsO72Cb+WvZVs38QOPTWmuaClH
k2tTdbCtLLvLcrOM4XL0I+yvqK6yb/Al/H6bFyV8T5D9t8K063ndXOEPebPc
wA+btt3ZB598gs/hV8W1metjn+AXnyya+saaT2iET/DNq6LddAsEa2P2eQXf
3naE+FYJp2TbYEZ6yc4tDDIv6lvHmG/aLex0khMI8GBg0Cxbd2XJeOSWk2eP
Nnmzz57CWEf0EOwlrwRq8ODTYtnUtl632aO62cFTDHF80gi8rIyF6/m3rT4/
X9bbo8TML+CfMs8eA+TpKN9ryh0NMl/RILfP+e95U2ZPl990RVUZa5OznlUr
szPwH8K5cK5uURbLf3sNY2yXVzIEzzSp6mYLA1wT8r38+tHP73/2uXz84hef
f+U+/vxT+fiLn9/7yn386p5+/OKL++7b+5/Jxy8/v6eDffnFV/rtV59+8SV+
fH72+NEDWqjjN7D8s8cANFjhkoBnsnvzT3k3bd5cmRClani6WM0r035id2Zp
5YvZkl+Hfxszu/fqU8ElHIOYB1Le0iA3ye5/ev8z/OVs9pjoQJCxbfLK5kuE
66ytXwOjidd54X/PLuj3kSXCfDkMtnxtGk9nwAs/wSUJERycN1r2U6RQXPMX
R5OiWvdO7ssv7gNYJ7PZLMsXFmdtJ5OLTWEzhE6xLpbMR4qqbepVtzS2z7Wz
HP6fbc1yA2hlt1lbZ8LGiz+azAsDotXC2L/+5b+WxPjgtWqVWeaM+PUit2aV
wWTtxhRNBgfDNJCXGZxOa96088HkQPrXxcqAvGi6Zds1MMDK2GVT7IBz2gy2
i6NlPCPsApYAYwL3w295ceuyvqGl4FeynKwxu8aAsGhhwAJWRHCdZwQZOIpu
i8OtzLoAqsgqc5P95seL7FGZF9sMiY/3tjVtjoeZ7fIGvmyNrKizBgeFV2wG
IqvDXTe4Rwvj0nx+ZXYKfy/LDmk+W3RtVtVtVhbbAlcGsM6XcCZWFjjNgBD0
I64oj4TBFWBKC+dlTYN/wzO07QAv9V040xtTlviv7p5RALGCngTo7FCcwsOr
PWy5WCqQG3NVICbhYzxDLJLOTXMNVKTAmWdnsKbS1g6c1/UyX3Ql8meE1rKE
FRfrPQIAlwn/KC5lNyBnYIErJxQzQMMCTopRelusVqWZTD7KzgR/8ZnbEDzE
5v4C3MxwpG2xLHaMTe7IENNxyz2mRCcJ547P2hYeyBs+88629XbGO1/1dQc7
PwKMAzTMVMJl9XoNsMtDfL/J94gIjPYLQ2hc5fgbzpCgIhgkC0mQj1cJcQp7
hM0vCdzRwa0AXpbxZleDbNjDkwAf4Iow1DRrCvuakMta/gLHzgFxW2AIu3xR
lAS5+W3gb29qoiiiJovMKbvk5b4SMFw+yB7Lbm203XVI7CgZb3KGQr7blX6q
MSZwbOZX8ylg/gJfmOKwwCn5MyhmOSpmJ3NcDwBrdDGslEQcZLGPmMsxvn95
IvwCcCevlA/wWchCgE800wz+c10sTbSEFAhBdcpBZNsNobBQIZNQUt2m81Ga
yxUuJcxHGBI/nV3nZWcGHDCi2w2AELfZn2cJgwNedpZ5W17tiTf9D+dLHmME
UgQnSovBedDqArZnl6bKm6LGV0Cvv9rQq5ewuUtBsz/9SRSqt2+njtyUCOAE
lmZH5w6HFZkdJNCFA/b57zx7uCfa2utAFuTcAHU8P4exTA7qSE4zIDIMePcU
xgGgwKhNjY/CvhaERQBzgC7CWZajEINFO7aco0pss0UNSLQqGqQ2RnOaBBBH
sEZYIXKjjz5CNn2NQ8AU9PhjBH9Bf+MZmQxsvQyNPQv61PfnF0dT/jd79pw+
v3zyv78/e/nkMX4+//b0u+/ch4k8cf7t8++/e+w/+TcfPX/69Mmzx/wyfJtF
X02Onp7+9oiR6ej5i4uz589Ovzsi1IwJsaGDWqBiAXoGsB7arJ2oWCDievjo
xf/7v/c+B1z4X4AM9+/d++rtW/njy3u/+Bz+uNkYQd26KvfyJxzsfgIHYnI+
MyAP4OhFC6hKBGOB8qtsYxoD4Pz4dwiZ3z/I/mWx3N37/NfyBW44+lJhFn1J
MBt+M3iZgZj4KjGNg2b0fQ/S8XpPfxv9rXAPvvyXfy2BQLPZvS//9deTJB0D
2TL9nnZXWxYDD0Gn7+zsWd412degiGfHpw+ffX2CjM1hMpEp2lNv3zJuXphm
W1R1WV/tZR536G4KOPEtoOb3wN4IqYytO5DL2fObir9hVwN+SnGk6B33FaHc
KZML2StHmeopgAS0TjT2AGlUeZZl/Ob8+bMMXREXLMyAHZ/wIoAPuQ/ZM2AV
wyHRUqStz7KPP44ZyccfP5g8yE5R9wF2MyOJFKr7saaookTE8bHwaHhMxPAJ
8gKgaWJddVaANhQqS01dGhFOZHrwimKfjayo6nO8dpO3yM3QnDJoB9mfXjEB
va1dzk9knT2H0zsudFyFiXTFWE/xCxGNheDb9VcWCZd3XFcofvaq/MNJh3Ku
qsEcDIQdUlH2tAaAiXwFZAVCyR6BtQnc/dQGmjuedVF1OFsdqiyghzQmR+0d
eOIKQN9YBNJ10dQVUiJar15XWZZ1t5rpGaHDrDWkqwO3/KNparDYQe3P7B6k
2RY1l/oiM8va/U2Kw9ls1cD7VbYr8xatdpwj1nVvs0XY6NgAg17A8CCXt+ga
2aAdWsNBmbpD8feoaxrESn5nZXZlvac9ZSWwKzI12F6BU3DGhsMMWizCBiG7
qEFLa8lgWRVoqASHhc5HUh+NUz6U5fU1m40pdyCHV6sGWY81AG6gxx3iApBK
CcaBWbFdgNhE/AkEOIxZ0mpesG3yxNsmgGVZj7+xVkqqi6yVNsOjkXWDgGXX
GO4CVgqyEPYm/gSQgfAR9ZS+lr4y/C8guVLEnJb6Eu2jc+A4zJ5WmbqcYcUW
zxSXmWLPslayrNioWv0BEYgNLua9BbA1HW4Lx4HYljmHijAePAOlWXbvBZwk
u4bjWaDXCb0yvJsTXvkpGnG6ahBcoCgXS4vLdVsA8RSjGUBl3fGBOI0EFTlS
KSKkIN1lmwPVmjfIDAuB19cdAmUGaAF4AZMzgn6NSE2Qsg6+ApWurat6C1it
pJW1+WuTkfpvQPlriKej9dq3pgWrbXGFnJ9cN3kFQwtkA/pCO0tWWe55nSh1
sydvQHQAkJd0io/IrCeCoc2v86XYWxyCaNXAsR0qw1ZMbpRmhQX2wccnzyNi
s99o08GyCN/4R7RqUK/OdqgjUOyDH3SAAfoGDT3U9vNQkU65Du7gMPCugjZh
hvJWmGHXRLvlT+JIuNXpEvAyEgI9PkPa1XnI3AYPILda1yWcFTFWpHYwsMfN
Y6fNkLTsg2YuzpwCne3wLR0j4D7atYgm1YoN2wVSwiYHHALSlN2vVoWcya5n
VgdTFttdSTDEkcnzyaZgTXwrWouw4t6yUYVHiQqLIodAy0YRnOA+s1s8SHQO
sHCuiTPhIW+BfcHf221oh5Ly+lF2idh6CWKW0JZByGjcKEOuUUkFtlAzrQCX
Z78e25NEyW4nudOhhHByVYpUiwqVI/8dTj4jkpgxU4x+BVAx1/bUOkcdofH+
ZaHbKTAGYCmj6ExnhabYfoeiCsAGeEyuDTjXTX5tvNdCvdxgOYFyQShB9hSi
feSQYNYWzAdngNzYelc5rx7O9McNIiNzCNAygdPmSAhkCJf7ARjZtIM97dXt
wGZysMoAUDaUaVaVMbeIhdnk5ZrcuXjMum9EFl4QIiyBj8MQxnPDAIIdUEFD
KgedP6K0n349MOSnQ26NEA0ZoqiJHpsUNRlqhJx6/ISewA5QPRdMAcTedaHa
KQIU6KFps4sfRIHDwHLdwB/beoFnsNvUFcqa10ALr8kyKoCO7IlQD4BiQ2TD
6BxCeZ495uOkcyGkUa8X01AsUejw0M3hxB8cNAYZEJD8hggRIvk94SfjBoK/
bXK1v5wCEXFZ2S4pg3AA9BDGW+oGQA7UVoPsR60MJBeoqnv0LYnjpagAcOjt
2tQr2DgdqaOLxvxHB4/5p2Mcdx5460gdD5Ah09OSviHnnqj8978Eld9BEPeK
qm5Dc5LkA6jAdkX9UanWVSXhO8IHz4Z3Ca8A/aPyHpIooE84POwbsAN9/E29
7StQRDJgJrRdXpKIYWzCbSOOLz18f3gKyIIHhcfRALh60bDdZm9J+/VSjSBK
nA2wgTV/5p8EQDCDSsV0ZomvAMsA28/RRQfwPBoyyp45fi4ez/vze3j0zuDX
YYH19sfsceN3HJDzCJr+oIe49zvOIOdCRK9mKlF9VVczFkzsmyQydWYOSf76
ig7Aafp61oAjzIrgNY7Jy8BqoBKOgILVIQ0LDwJWzdyZlDLrJVvfB+4wCZFN
PZ/k20N0WReClhELmaINUIkjoYfRSLkmxGeWMKEzHYRfVRavTYRc8fhuVata
9Jfrurw26nP1jErQMSZ+1jEdgBgkLgpml/VOmBtbymBXopJWID9lzgXvowiR
GFW9JYnQ5vY1ERyuGLgXm8OomHSVaqcL094YYn3bHTBoPNmkbMiLV4RwiCiV
E3qEKlVoaaA7yWyL2cD4YCZakqEeOHYYHMq5KQ/HCT/khZqLwTycFoxSlRzz
DFX8OkjhUKVShDJKA2+umL4zAJGGWd400OJhSHSYi3zYFlebViEcCFwGr2NL
csQciGSk0GOFf8TCQAWIPfKi1ogBIdiD+j+btV50M0K3IEgitQhfox9Yw7WB
MPN4tatviLsvUKdZbtBDW5q8IUqATbKfgmKw6msBRbtYiHG7ynescYvZM8tR
DZgSa1gZFuHI7Je8GopPEAfFM7ou8GAwvANvsiofbVnAsO3KtgAtXVcA+OY1
KqfRI4dnjnaNynRnI2eTNxv70mYqvic+JL/J1ZVRHZFOW+iOyFuUgxKForqa
UIAGno/RfAyJrahAmmaDvaiAxWA8o3vdtUTP2emLM/KjWHESOBoJEPaXsFqP
qTiK55hItD0jwvESy/xbdQoTOQcEWMlNst7D3oDDHHMLghqFNbG5q4Yw1mnT
iz6rNgXZYBHHhoOI1RDQnWED6ELR8BScHfoAMSI54/WsAhjLTC15N2ianlqz
6oxYGrDKDfu4kPOV5g1ukvSHCkTcqli2unMOoos+j1itVkXROgQt1mBHAibj
4DWdDZABQArQH6OEDHvv5Wk6+O0/UAVaF5IwVAXuYmLyqpPZjRivEkwtRA/O
W8wN1N3EAX+eh8MlLxp09JJvnb0wQ6t+JD6t4gfWflOAqUs2PMhySdtI2fPf
Ar+5Ru8foEHdoL4N6wN4XjOgy9LbhXvKaeh5Deym7sqVIsfCyKaJh4lYOjt9
djoSv3ch/mNrTPa73x9/lE6O1edOTojTG/IBydrgR2TVqECTL4DdAgyKRuFL
v7DblQ4AbTjmpSThYMNLmJhYHQZ4K3RfMS3kpOGrAaLjoYDSz5QttQNrhl/A
YHer8e9ENgEf8kvVyzRwIqEmThkhvH4qQXZ24vAOOLodDzh1fl0OcDp1zCVn
YDYB60UUsMHfXD4X/u6yvCiiPZIpALhj3uCiLRNqntGmQa6IbQesG5j2rKAM
5YLEirqaON4F3OEJxsP5r1g1HQbEgyjOsaCX0zBrSiByQTAEFgZo8xVyCKUw
uwfovvHeJQPsGID/VOWXeI6env6Wg84Y/ECsjaZeF6RfwZDkEwa+AIurjCYI
7hnbmHJg0TJmge+gL5Z2pA7AllYHv4HFyV4BYEibAmRSs9zsmWOUrJ5uip1T
9Bz+WlG5nQQepMM0hMrs5qEsBcYaWo6PqUdK2jz7gdfso8/ESjrWlTFgojYA
RY8GuRF4xr+ElS8NRZV0HNg8AsyNE2/Bh5q28XFMExSDDH9RVOJCkfFhjaC2
AmxFcRJzQT32MFqxYplyhel0LSIvYAu5INDTskN23KCl8AgkGqyRhLJzTYpN
S84/lbeXJ8Hk+XVdILqI3Y2oickFoYqBIY7Aq/wGANUb2OnoFL4FQU6QCkRL
ZF6tiivMWMjMlrQrjG1M/vznP+eLaj2JOWb2K90J59NmH2fH2fmL3pcnk/jv
X2X3Pj7OTr978e1p9kn2+Oybswv492h2hP99Rf+dH8FbMCeIoDc5SmHJbiMD
9+iSPuqm5E8XSvVfT05L5wV2ZIgEzHROQz5MiZK0FCEB8+6iBPVInmjHEhcD
acIs3CDy06wGNZMzHXsDnuApEE6LES02q/UYnY6IIZYOQnqaZyLOR5K6jlWE
3IE4ufIO1DBCbtEHkOCoD/sAcjUGkXeH9tlekjwSiV7qxOwtlATFOvRb5EEM
MlYxhtoKJw7AbFdEJsKugxh2GOsTfbCONc8TpIi7uU2IQYdDOrU2cFk4mxDZ
faBBOxXZ687ROlBpowmSWWPEfEn1oygtBkYwq0u2JMExr02rDg30kcQYUkoF
y1Sei7+NLUL4uFR+SAxwJMZzQ0qhsk9xGoobJPBek1cUhhKmR5IFViI6pYzV
VejmvEI5IUQgYToYBgTCykUBJA6xCuQZYUJA5ZrrLo6aBQUCkFnjSlgvaOgd
3pzQZh/d5yME52jLbURWwcp+Y3oQLCqehpQi/njrAuHsvq7RgCbmCGJf0k3Y
IyE6RpJGnb8GWP7WvCI7BCyvV00NOHNJOl5D6ZDDH9n9Bxr7CriUEoWyV0oA
QenCITvc1qpDDSwv1fFUuPi6ZRfw6aOnT6iER10zmNC8C8k3UCGyv/7lv1gn
Js1jSUoqZy/WWFmArrUtoT+CGXUnWi5ob0SNoulRgA8dFeK3JJS0G9ZoimuY
+IosInanlWCflOhAQbsRkS0Nl1wmIorHmbxTbMpubVgt4kaOHhO0Y2ALaBRy
wkzdsFufHYvOyZWIxPraCZvMpHPJsGFiOKWP2QeD1HBiDFF+th6DGAfCUSSX
kWowyNdJScOhF5QjClh3hBmzvdiyyzaGp7AkCR/BmYdFPvDArYVC9HaUeHx7
CrOmy93/7O3bzOdpiTxgwgEc29XAg3sgQKWd4n0eDhwiJikyI0kJQxFsiC+x
Q4DKVnoxbuRAgE95X3CRcyM02QbnRGth62zw23GcZucz5VnHswkecGxPlBrk
ZRdmd0vVeYqVn+LscZiHj3ueZ2drZ9BMAwOYhgcA8OPEEFECoZdUoN50pYkk
KypBTWSsgoXHhz5b0mHMAGtmakKeUNi5NxF80ARUAWWI3REcox+OezmA7wjF
80QllMIRyxfc+P9c8BvCSZbTowmx2ziz8JiSFk+CDEMbphhGEiJhgQlE4+xF
YNOG7XmzS2fCS7FFXrLrvlf6NJr/X/e8j+q+ui05P8gISR4OvS1uAc76E5tB
QrmcNPi3HN5k8hDdDD4g5+pMVSfIirLsuMQC9qQFJwnPmnA6SfILDjQfMPp5
9pzzY7QuS71IqGhvi7YV3QpL12GKB2Q2/sHW1eRPkyw7Alw6esAxynv3Pzua
yneKX/ob/+AYEH7Nf3z+8y+i34L3Bsbf5C2bj+8OphjlGST2UAbtACO1ArMH
LH5xS5WxPlZ/WVh7OQbB+QeG4C++/GoMgg5y9DssFb78E1XH6qzxEMOZPeyz
7K3C/6O0ved9jmdcR5N6yHa7HdhvVt3d5MZRF2LfLpNyaMmxJ/7kkrwk+con
SgRvDp3VU/Tfiy2Sr65RiUBx3lpdkFPP7zpiwFh8jtyw5JXUQZjmIMRcTQNQ
1xEzSD0E+0oWaODIJw88L8+ozoDDD6ElJ7joVEPQVi/F23nJStolhfgvxcuX
80B50+QU/XDTDU2jQFm5lBdK8kv17RE/BheQkqoRe2llNF3ZOwyn2fe98SaA
oRdS9AW74wGn6GlwXs306GoypI8ItPj6qqIUfIQdhUbUP+i0Q6dSI+1HrEaN
5lCcDgUomQwcFnR5b5SGEZbsoSkZVEmiqbqkKm+2yJPzan4l7jxAZAa2OK8b
8wf2bR7w5WBaG/o22EYLVagcCxMjIorL59jE7RUpS3iP1Wk4R7Df6fzStrc6
hcUApjxMhxHOsoQpGJ9pb1gwiftD/ssxxcQrZK8SQBzdkmPKFrgg9W2L+zDC
K4oGEWRB8iw34tXQJ2OknmrEL1kMCWMp8LwTzK8QczPd165qL3uy3aEOhcMH
vokgEiGJgSKXKJ8Ujuk68tYvnHgSx/oo58GDclQEAKUZ3XmgSZ1bNs9dqrQL
WxPiEuw0kJG3sjCnZ5GXLBpHonEgSGDZKR+gW9vURVwaE7Dd4R4nk0fip1hy
Gnnv6CnuxmkOSNnFcugsvgOXmOI4gR9MlDTJ7ugPyK6dXtmiL+Uq9CB7a/OV
GIdlbH86T4a+FNSnLGcvXRwGyBxLl4wUa2DUQPGNcBJdy1gUKlCmEDwiBob6
QRuG0yOPKWvO+ODC0EjIQNpI0a2c0gaow8AKD8UfaAAqDbZV4yAYSNaB5hY0
pbijqntIMGeqVzH2g+r0uyOfdohVf5ItiB+DPD/8U/Rc/OjUrd97dQyJiMbr
pL6RU1lue5NIjt5LPhXrc4+lklu8Ai+DSu53VOsOjZRQ77AdzodW71AZcz5J
ohwSMUKGPUvp7locvx4WuZPpZ0CnQLWtr31HutrFqFXMr4mtK9ZnP6hcBU/+
zCaXgBCMlR2Bhsqn4H3AjC4v+5kFyGuFCKYH6Ar9BBaj02QfrXP0ePZ2FsVD
XDFZ1IoGVsEut6AZwJlkR6irf+AWcy5hvydyxTc/s1pIQ9mPRWnjH0Vf00RM
9vQu1dVglq/toR2jjGIdSRx+CeiTgEU7Upz9r2Ttur3LzDQN5hKRjyGcP8Bw
tUAGG2e0IC7VcUoEpojK80NSQN2noGRNFEvbrVTWoNxNK1iO6LjtwK4pULll
yPQTsV2WvDtYqpZPNSu6iIorOPAcb57gCPA04oSmKUlQSNz9dYVS0+dCTd1Z
Bg9pAhVHGVF3Xm2LivcCj08D7a4iTYrqE7t2Vq9nC+I8lFwlGbJ7SnHl0l3O
78kb2C7W8HIybApJJF3amwqjhyjYSIe03NS1FZyWWpM9npwDuWB1wY+Io2nF
FagHEfKXpKWp/kur4/lF5QWFCZRKTt/UYI+wmd5wnMIzGhZTtyFvhXYh3MGX
bCUNLrVMZMHe/OgHVSX/X7BNNNVRat2QjBFNaTV+Dhh3Uj3KwSTgsLSoqbAQ
OQeplGKex9vcagyrrxTHIJZMmgMAJocT1eNjWQTzEx+X/mx+X+LSLC+JWY/C
YFuvVHXU3gushNOS01ChM2FLwx4CiGSd8pobsy4pMTXithK3aaW8wsHpA6p9
+UE1Qxb7ATQ+gRIm6aEzTNJWMm0ngY9g9ihG+l4BV7SkbmkfO9kg9gz8BIPC
mK3M2tn7+ToTIEsjwFBFkPNiWMqpYZ8vQZQBOlAmLp0IZuVNg/P1SEQNUlxB
SVroj8DzkP/37wfrI6/+cvrkWZS9+FKh9sKhzd004NRgKc33iy/uf2DNN2Q+
XpsN0F58kSNpmqjFRu7fO6qw/Sz0YeCRAmbsXQf8qZeFyw300dr536pD3xLx
vH16J1nS8FHwWucOugz4VMp1Ld2mRhl137HV8+GJkyTyHdZatNILawWBKZ+a
I1UCiXjf9FBbK3ZrYnppbgOh0WuMNU/Wh6fjMZ5hWRPiIzOkoLXSwY5j7HnQ
GqtjrksRb8ZJr7PVB2D+XN1yxM2Spz9xrCvwFShb+m+C7kirsA8R+fpHgfBo
NEyl76t3DoiJHvJQikYkTd8LYe98dHw+XVVB+auoVqvXYpjhE3faY2pldsBp
kAd0Ixwb1dTORrlzlK2SzIfTFyitFM5zu2vZ/OB3mYkmFXxJCXS2etGo44Gr
V0CYVlFdl2SpuU4b1Bal6qRcOlwrJT5eUTWQZEQbdp9iTC9oe3EyHULPuRc4
6X8J1ixn7/qePu2gwsY7aaIMAaolCZbWl06N0K+MuOV6TN9rbz0O98BbzSlz
S3zpmoqoA5eWrn/EzKGeNDkedpxMFZS8OjOear3Y3trOs6eFdQCJctvRnuch
0SLH9lRx9xJ0v5heywYOXrHJShltXJeFWXJb7CpDVjabuq4mH6McT+vG1FRg
9A5Z0FJUtK2rovXBR1ej6Ct0XCOY5d7rAhqO0g1P+Sd0uUoJwa6mtiCClpjx
J12ndgaM3VZcXcDwal+OwrCej0bOI7aRItvJ467h3lqDTpvZsbTh5NLihh1r
N0AKJ2NwuxMLQgR3BW2jTqnV6LpCb+SI6ctmmk7mCqckHDsyo6Tl2A+XNKUL
EJ9K0sPLaJDO8R2jPUwS7SUJV1KMdNfqBJdkVPFgBxKXYRcu11qatlBRCTke
QU5bDMSKbiekSHVUqc06AnVJzF3lvFujG56L5CrrK0ViZYWu8zrMQnpG2FJL
SJXYTNfs0CWmQ8EhEpeJU4y7nXgAWawMJeS6NT1PPcxJlWZsG9FGke4p3wHk
E41ILW2HNbHO9cQdk+KswuzU+TdYYxv1mvv43VAnZ8xWE5ro77SVlglWhVCy
6+Cg16Drkkz1sCrshExDkBDCyJC5n6wxIPgq/woyckOFUvoS7pKzcSkHm3LE
tTBJTiIoFr7kEhRj+0slunuBWOWE+RaUMyr1Y1DyYH/9y/+xA7bMLJZ974HG
61QV1/IHEK/sOLG86R2By8qMzyIoYQX1o9h1pcOgrnIV1auM8n6VwY/mpADG
YMLdmbUdOvbGqjPuqhSqqdjLZ6sSNClpfOxXDNK68eGgWXTUBDRGeC4ySUgc
37s+qMeTsFGQZv2TZLh6NkfJMAfUL+XCFaEBTR/XW/iFcCQlKEy5G1M+vlul
mLONekeERvhuRuUI8YGSuhQf8TCBaO5qvdP79gkQ2mlcAMFAcDk4YT880YIK
r5aufCto5cla+KFCkDGytwjBAUr/Mg1XQcm1GMzRgj4c0sqsvMFkFmZZVJbR
x2gWHK6RgStzdKVPs4QjzOMjd170ZWxR5MGFi6VFmE99CRxxwuX6N67w8N4V
5EsilIglYKfyNcTiXU0cprdWfyjlXmw7rU/pQzoUrfWi5XZW42qZ0xBd2CyI
jkqzKlweUzZgDssNEJl2w9aXeaNFW8pDDqZtNWZmECVlj8k2/Cx+yfRArdH1
XWxcOxTyRcm8w2tQwgyooOOcNGIZ9GBBPMdIqt95uhe9Czgjf+IWkZsgtUAF
UBL1wzCsqx4mPZBqeTnNwGEWd1xADJmhPJ1n3P2Tm6nwotHwkr4AQWxN1xCM
lZc1DC4R6X3o8fQWGPNhaipD6iG8uyphTeT4l1azZuxgcSVi84m7FKjN+sp7
j8aLvcbLwEQn2BLPoGaexdVmRq0uxQimKq0gOU/5guv3MU3Zbq24PKkr27Cb
5hz7tQq+CyLpBFP2Y+ClG9rWmTqlVKJi40BvdtSLdBoWT/mMsmB70sNFIlSu
d3yS3Whdg3b4X+Sl7xhKeYWU5apxdjokbDjCRahcEUgN/9jgvqHuJKKyeKIX
VTlvFgVQflNg3e5qJZ2AaAP4+QAvoQJW0X9M6AzEThZhPdtpGJuiXiDjjUin
bnUISs7BI0sPwXs5VOkcL+XDOkBv7Jy5q79UhqKrNbDa8PYyuowLBUJdaujO
xN9e0W/etTjwRFZdWSZ9i/hD5FU8HJiyf4sy2ROUd9An4zDSwZtBeiVQBypq
+za/6mzKR4JJfwpNclylTiRsF6P7dXngChY7iDOliklcgfxoJsNo8EWhENVU
sbnxgxfnL4PKpBFkAWS4N+85e/IBicmx9CuiOOb0HrB3jWLf1x3yYYq9/Z08
7kjeQRu+P1cqCrG4Bzmf/sCOXFK6brCBAXN21C6kXVldige2q5yuZ025nrki
AOZxw4wxG+eU2X+6VLHJZ3PlB6xWxF4H0ukaSowh8cxiPqq7C1cj6BmfBCcY
Brou5wmyovwgut0iVJfHm9I79Rb9JQcS/45Hs16lvfyF8Az2EHBbeZ9dBaq3
NIVie9e3YqrVnaVuul0sEMPBQ74VzhAj8IC9gWZjJYJDXeD8HL5kS/snofq9
zhcNt6GB9V11KCm7inP4VO3iZY3Vd+9cG5TEKvugplcuR5t5fOaaeUiVuDRn
cuSklQd2xK+bZILToU+3Fkvidq40TfmEV4WllGVWKLmbMKN4eIRqdSFc+h1j
4tqhLKobcq45cVGxenJJHgZKEdcv4qyF0diBnIUrgUrb/cLFw7p853xirHbp
i7oxp94V61AV4OgXTTeNvNBTjQRi+yVm1jHsJo/Q/z2VnqN0GmzseLmtUTzn
9Exk4bEkSvTXjy0nULdBU8HLk8d7sMDOWd5+Vw9U71BQtL6gKnKUr+XuCfgj
L/cgp0gInWGzCbowdyjgqPkY/ULebx2IDSK0vlyXb75ngTjxS6azJYNPLxgi
DTqOJRSpewAi/uruFwObHCe/8Ghw6lBUMm/GEqvkejybRu+g8nHEDldDUnwi
bUROURkejHw7YwobT1DyFXXsJyWC7kzCs6mv0EGFybCD5keEUw0ZwxRJF98I
q+q19ebMmc+hVYkWQPdQ0bl/bBY+Nh4O1Fw/lsahfYCi590pPDgeiiKR0jiM
QIsc9w2AlX96z5xTFuZhIoIrluL2OnSJiXeJaO/nhdnXomCL8PmZDTS4wAfH
5Utpnff2/j78RJBl09NEUT7EjmaXjR2HRdFX02NxBE1KC/c6lDrs+QKWgJtq
fk9AEolM3zirLA9tHAInt97DZeH1MBwLk3f0fDRKR6Ht9F0Q0Xn9tD2TPhrQ
mA+nD7IDHLsWdE3kr4Q3rwZkcPeQS4DzI16T4FxDxdVHGt3M/BBdFNFcsxvD
J6HPVqYKMIOs0DS1UjJNQfwrIUXpkgVV1Hz6oAK/h8+H66XJbNUC+1VUGIz2
tBmrobtkV513I61dnDQsEPeFqLcMR6ZNz4MjFcxyV4GQC+dn9lFoHPwO3Idq
0WdhR0xKDEHfouDcmhrlszAZD5t0VQDGXuAqjLQfcOGFkfZpEGYXvlLV25za
FraiMUfR939AZntczA2ospJZ1vNGXMq8M9Fn3987cfI/XH2Uq98xTOICX5p3
RWpbRDoD1uy8B/3MlqDPdMuVyQ2pn4MRsPLa9iJpqEsDylVX6FBwLomp8zTg
Cc6u5BYYXSAfUbHFYCRfA0ExHL7hTDPFh7odh9/6ZdeK3HxBSk3OwH4THkaJ
g15V1wbY3VpF1TrTQxnrSnLYsRrbVGNWxpKK0ApXBzJe1Q4UvJTbEbE6DovA
kG+xPyBsGYqd6aT4TotXgTNhNIc7HyinIcaXSvZhgPqspNwZg3Em0tQLMeKQ
Y71KnO4/QJFeipTjltdD41Bq2bS6c1XkQESWE+vpbo66w5uZN3XdUuTsgtDO
vx/oDi7kF1/Y9u3FxYvAnedNFeJnP/744+zU+8GAyOXS2Z9/CrbKxuQr7qVK
D9PiXzlbrQYGuC5MuYouqnWMSdBjUa/2XAmASan7kK/7a195W87mY3tcrnjw
t/LB3zO5d4vu4zIlqu7WOXqRPUQ3aY5cEadJr078aFqq4yh8THxs1uUE8BUo
yqhmfNkCW5/fqsr3dKz1ddG3PF8IHxDEvFvP7Jhnes7eiwRw1zNOUsWr7iQ2
TtZb0Kt6GOQWsacxYOQTcqdB1Aac2onDdn+JnTNcbaftpW0ccUdyTgE4yqg1
OZAp+gUCfstdWaW0umvxekvrfC7T6LbUSGGiAia830vz90hv5QGIrrD/NdCv
QyTfphMwOC8FAmfhhX4CMn71pilS8UvxQ3OzUNhBgzSOoVG6RCS4aWbLdiXe
2jBlgiu4LUgJZKW5yS4S4K6CmEy+lS7s/djizppuVc+W9WqkLkNDKHzZAgUe
EHdZDGmiXQp92qGg4cDjbg8vVJMmvxGnc/YrKWW6Mu1xP+44zY6OTuZ4Grvj
k0n8o4U3Lbzjh5pbsLfaY1CFQA8PZjAl9f6FXyY0Mei/8axhRDOeMvglnA++
HkyGo4YzfcQ30kdmoAJooh9etfUrxr5fgcY3mcBYrtKPaCve8gOKwH6Una7c
/TEzx2Pc4PjMYII5qoXV6pj+eCUvv2IyOeGJXZUIzhzuPJxWMxveb15XqxJN
TNUxhyalS2/ea0J800/2UfZEs3qYawXqk/qcyXSwxt10HF5LSKpAzCFOJmu8
JPCV0ikcpHLHVzrHK53jeLDaKV369qsjHPZVMOzRyUSrdBKM/7EPyz6SlLjE
FSlaKWe0RO7QndPS+YD59VRqEbfWlNd0RRFdV0NKOXU2DuLCUY921Yq8ysCB
gCcpz2VhXa9mX8fiR54GJYtSB8ldNcUiZYZHYfDQfuQbrXvVgV4PTfURDfmb
GCMk8AJzJLytgFTPOLBN90P6LuvsFNXJJXdmpEEyDHYUjXbUt9o+YF6nB0PU
GEx7gB3wTLjYGc0T8f0ZV1mHtmgQDCApBaDFAEMr+QY77mfNN6SJQyM+mAiY
1BF7mzd757qQ7HI2PYRw/V1rg6Tt7MdBZsQtEx7o+ypz9zu/umUM77Koh1fC
najW2L8HxpfIpj11Lvzjr6ahzK08AVtfJxx2QUwOSKVyiS66nLXbu5AnmXUS
me+ihfl0mmRz2vi6mvdNyXC1gaHJ+sEIxhVZHSZSDZIeyNvIBzGP26/a4O4t
AR9CVuV6z7HqG4Hd3bAoSNm/EtNZBZt6F17OS6rrQ82MpkzmfiJZjyUeKBHH
Re6CS5hFIx3eeIRdEZ10kusoXTZNKAkMhkJxVSn3SXw/8aj7Okz0CEoluf8i
nu38QDEMJZuQBUqFf2sO48pFikqwBBuCe9TyR5lWdDs0RU7ljk7nS0+2w0x3
plJGnmr3e+FSzXyujQtKsQHos3vr8B41vvXIYAZba3oSa10vO1mJ9PmkiwRj
Lmg5ZWXoZnLN+WzP0ad5zelGAl5wp46FymyCRkna4XO0s6fPlU8KwQMC8KDH
nd3DCblBt4W4tohUetKYKOTvPZl8azFlPMskEgi1PW0j0HbeNQ4wGobpp5Ax
J+ZhVb6rRXlysJNPfCbOzarFv+NHw3vRdq0DMbOEUyposMxbsP7GsaWR27MT
Dpo7NN8mwUzMcQaccSjcucxbVAxtN8DutvBaRO7AiQwMkxHi5/o3f8rdcAEp
uF4dI001wvYXw0TKn6DXwft3NmArz/UteJ8u3/EQB5oa+N6Rbgw/SlvXpZq7
8uRwKNdcB398GzdJONeEwEdyE3ku+R+Y6Ux3syCH+iFIZeybYurVF2cQqWsL
58cSTYnLnRZ7XzLj7lL2lelsTfwoHBPlhmmCBItpmHrJdS8gsuq1WYW1AP7G
F7BrezKZbxddScHhIBdyrKOa3okp4Qkpfw0yPw6U9uSaA+ayCdkD2oPhOW4E
xphMnua4GPSNhWn5qT4PNd9/ss7LQUYI37mw3+E1ObHGgOYa6BQA6ys29orR
YiHZtrDpuEsg+Xj9pW82qiUJSkewHFUaCQYYLZc1CCClVr5XErXO/LWTzkel
l/N5p3hwChiH5iuiqbOw81SGeoFGqkgzGOtHoOrPHToRkBCiwEm/0wD3TGTY
Ew2sAB1BVQUUYHVQzG3XuwBkAx5nWGeC2WA2hS/uQp745L6hvKhBFtd4/gEH
GVgzerf7fQ7ox3J1pO1rxFEYnKL9FRVTNXiOxCEazIvjNsq5PINaYdBv0ieS
x9nIkgvmvBEUfMM6oghZ+LKpZcTpxoh+i4+iaMczBMobmJeDetDQQCNgesCB
+rTGC2XpEUZ/oS7fzsGbeNpEM7yUCxNBSro1O26w5RMeuJ+g9t/cSI0pdf8L
emn6ZHf0z1i2wOABFN4Ntq2n25hhC4VlXIYzoxhTvCW5Xsu3yYLn0U8/NK3Y
rA5vyZSq0YEfg69uZttPGqEoI5Frx8IYl2gI2LxG1FHkNbewcB8KoQ5dzpUA
lNmBskFX+o3m1vXP1N+zhwsnvPXwUaGoegm1W+ObHrrVpc/BVB6DP51rms9I
suowdsqopAE6QlmfG5LeSFjGSrKAozdDYanJAXsO78luBZBBE52gAKPX6wyk
eOm75Jl+oYPWWowlsNj+Dbo2TGlRm26QmXAheZMOtPgnGLLIYjnlCQBE9qJc
C+mqFV29zjmbiI5RncbMRlJlufxhTB2KgrJSSMI3bwxUEp88QxHfeDLNlJAc
W54U734gfX91TblI0q3WZ1qMrAnN/F2ZLyVJFdfTR9R82eDtUvEixA2PD1tM
8pCWva4U8KRPd94vIQhTBBnRvR0u/eCF1soig07pNFIV0dQLUk0j1QbO7rG7
l6H/LquGrMn42xv43kHNrklVtyik71iLI5Fg0C+LbbcNimSi5GDUa+MFTtXh
KefXs+Mb1yOQNSfOQopW4BrFRJ2+jNGGxNKn2K+I9u4u9NLGuRtT7qzrthF1
1xBogxJ/Y/LXZYSp2HxD4wFEQt/le6ode8Es5Imv/wXNLA3RNM5q5CK3dAmF
kVInd3cWW7WlTJeI2O4xe56VNPOGqqKvJX9hhEHmlQaEFsASWu5sglXDddFG
cc50NFzCYiOjc88iLAAD5o3J6XY6invToDBAiATFXaBHMaxPMZ+QncUuk+fd
oRxQKD6K6NeuO871A8rD7CHK8mnpCNpmL64+mhz7g5UctJIMLWBMhTBYet/u
gR1vvZJNXNd7S7iIogAOaMk0YdXMZ5klAC1F2kIxC1MZutxdVSCvWGvtOMBw
iVeET5mNsGMTQOINjQMaqzT8xhQGqkFnAxTkLKepIdNSxbUySCh0f92jHIvF
yr4RxmwfPUjEKRy+SpU/Sw9l7mQ9uCRpOIdDFRYrXJAWeTyWSnhNt0F7gFxs
Q9SoR/xpYbbIO2c1jzWC4/bkooaT4+gGXTraeq7ga5ifYqsEl6YV1DIwKjFP
ZwVi2FpkCjLXuRq17yZV8uNWWaWPGomhy6GlPntnFUtD7LNsAxNP+wqgUiz9
jD1ICJEUI6NGAZ1VRcML7HlAqRlfzUzU5Zd0OBkZeRRyan/HIx0JHBWjYdBu
IfMGbmRDSXstaYFmVmQzA848HSiCL9EKHVNzJLgcqI9MGPBFcH/ONFPjQPJ4
opt4hx0MxoRuxAZuqXcbu6/A3Tps3PUEgWbhujf2r0ZLJj5FeEw2F93tLh4H
UCvSPihfsesQKagg9l7sAL0Cn03gFeD0g4dlTaGYQ2cEQAeZJs0dqKsGrG54
wTDMHTSiCnw6N1HSnXPISCNMCoOq6h2kbIk/hoiCzFG8N5zSNPB+T+59FPcb
pZpBrItDdyHA6qZYse6Lxa75lRmTufEZ5BJE9z1EfAW0MA+f8J3iw7An3Ch2
yazKMG44ItUROgHbT61R3Yd4DFL7SBu1FECvxcVUdeQLr1NlfNIFCyxnTEo3
mjYiBlEpZsKafEvXxarLnX9OrHAkAOzlhgkrWDlHihAcxJWJH7TevBekcYCk
fnxXTY5JfP5wyffAUXvUkiTLGJ6sAHvwTg+19a+NhCJRbYnCPqGLuZ8ERKE3
cWal79RLxPZHbsadsh3rHERRhm2PVANjP5V2k43ckXs3h1Itdwemd9RrdOHa
I5G7SEKyW8fjIs6O+Dx1LE4ca+GthaE/yGAYW0+QVU294aTadS3dQNYT4m4j
7E67y/LFb0uQp+CMNsXSqh9ZbNKfqAjOSMgWfCqzHsucFpj/roJhNeikF2Yr
+iJiZIOhfQbo+b3v98DR4F1oSBom31SG7C85hVRLpvLAucY0tWzydZtAG43B
IfJXUdpDthSBlvSsYSSRw1SXvueJOMZ46RQXvHRRoMtp1C8XGwdzSkU/zup0
QspPZF9ZmC5IUT+N9om+GdMsfLFrN2CWG4PjVFxAGiQS2CjjY4sKXwqdpsqJ
fLFw0BjKVQGj/liCwtiOcGAQDJi4Bsw+f0PmOQN+hYtMdKsomiCb2nkpgl6U
LpJt3mwAiqwnnMp43NoUTuczfOXn6mqAw7gCS6Uh2NvONZFaa/Jl6gZt5y5c
kykMUO1AMqBeFnNKVwUj5UkSU5YCl5HOhlLn4p0it+c/+Zy0sTFDrOTCNnk9
8ZiLC12eJEwG0vuGNc/MfEd8TtvQzT+SR8Jtbj0rMz7FLA0lm7E1zAUdC02L
4Yb5kmLjPA2kNdRVb8R0aWKkMVHbGz7mFR+zYoEwiGEahpY4qX+GfaQ3WhKa
2PoNpoQwo/uIW1YuhwHgcV0S0R+4izebhwmqrpUkFaCQcBEHABZFFJgKAtq2
3nEq9jS5DoDDYN5wqxeVOR2E1F72B7MVh/FS6jBfcTElH5VWIpFWB1B9Pao0
Ri0Q1UfglUeXqugL14IiQU5nwc1vYXVd068XRIL9OlrgIYiGDFkdXvEOXTTY
B3wGzX2SN77dxZKKSCWARGTK0Cnd0qBOu5AlbIcYkI22r6N8M7qeVXUAsg9M
2gasQ3V81MUWKeMuIU0CsRJfRHj5JolL0dBJrFNnypnj903O99+RM2SmF9qE
3YRfKOLRVFrpDodwpnfbjZ09ddzjkhs+t9JfPezQmZFR6rgcYbmcQWquuQvV
VPWxIUmoq176/dflCGSHOMGeK3EJeexwXjVKrPF7dff4cXfE8fZbAQog51Vc
pzTHrhLWJJ7qeF+UneQciKSUue0dMNAXmFfatZRTwQM5VPYs7C5ILYnwWiZ2
GwKLO8XblUFOwiAmecgIDbONx21Qt0yxwzGKZm8xX6PmkoQC1lOOC7P6kjCu
DmWKwrAhYad6RCXjdNSbqq7JO7hSlE4PoA65rEgJKB23IwrhLgV79UxpHhiW
G0nXY6dXBe1GlesFzpXHeCRPZGeHKPgO8jAh/CR/pwmaMPfDepgRlybDEOAR
Z/XIeit//U7bD5E3vq72gHq34AhLf+7PumGRTNzJVw1yWiR6vWh9I3aBh+oB
m94XcqoSGhkQh+z74BYQVoW13QmXP/R2qGnSQnHEzJJFEEpZdzvzurnKK6Fm
fJSyqal1LXlG6Ttxi4CKWJf1lV5n6Wbdoane0GFSu+RVvaUs5MNOsPAycsSd
oa2J1GMlOTq8D4QxJ2wglEg5qP0MZLlXS+lkHFY2IBp782bOxDTG38gLgDm5
4QMnmq1Rp/Ej0Q4UdPQbU5ak1p6dPjtNJTWmyybkZpd9splCEFo1HBrUBH8A
5A3P5OouYFy8bOfo8DxHunyqveBn/aWGR9lVU3c7QTc3NHWkVmOZ/Ljkz/OX
7DWpkrMhwlu1YTQ1I5FS/Oz5xZMHrp09Vn8AfddBmWIqwI5mGl4WaUGH5i7m
neTySzxaI/AhyLwiFV/PlV3g9cQwO7BepE4HBtgU/De82pX6AvWI+hms4wFY
4xjFmQHNOEI9PX90dqagiy5UIsbqc4nUymU79kTrewJv0kh/k7+xA25vI499
A4EH2UMQE2uu758BIq5IYQ1aDGh2WJgSBUN+T9U830k1zwMqodDanmN7EpiW
vcmD2kEuvAC+zTLF39iAjPqodwcLFhrH981I1mevzggX94hrJx9xFKg0Da+P
73jul6XEGUd6RGdPzr/hDv4R4T6ulx0yScQDy7H7719+h9gM4kISJYJCxeCW
RorbuVw7QmRMLzGYkU/c7gn2HqGG89eFuRm/tkd7MwaNfKUcgm3eBNZSwhI2
+iv3DpXE8nQeKkpkaoNLWOIT5sZN4YpEeQ2vI+2XfMVDTLPEbkd2I/dOCVNB
dyPRD92yFXoqGrqghVqmCx9Oebs4RIbiQ/It1pLpnI/5QPs+Kr6RU3jKGaIK
yFplvZzMRO2XP8LfkbpH+QfT/i1E+S212+hfuYqyOdfyKc7myfXWugRJpigo
PqA0qSDqH0B8ZEBhk49BDR7jeIG6Bb8zF7jg/WpouY5Bhn+/FTYw7w21VKXH
KcBYY1Ph1a4GEKUAMeAbA9D8nSHhr6kch0Z4WehhiDzj3AqJRDC36KpKKmlz
BZRwtm29wBHgaWr7+RorYOGPkyQK9SD3dwbTjVkchpE8cBuAfjSLCDqJZs3c
POcfEAaLpr7BngwH4RA8dBssvsfQC3ekYGffPytgxNIZB4orUrqFekCD4vZG
vXozTjpBM0kjUu/FWv67ua4GQ8YB5W+7PQypU38tE9WUbItZdFOTIBSv7J8R
WhS3FbdHfDPnRfis18X6BUZkH7vbSeImuke/OX/+jFgR59jwr0fOCnnAykW6
6QAeHrsn5Mx6BYLu5+jABNzj7pf3Bm4Mz9kfbloxPsbwMNVHZLCpsMowvaNz
rUyJdSOuVIk0w3+ATY9cE6mlvjGGkQFbuPum1OaWyrwYsajpm0csVnwPTnYk
Dq3P733+9u0A5cxoFTddSagL5lMafTh8NDo0QvxaApU+z5S+plJymx0L2l/6
HvaXU6luoZrzk6zUtM2E98GtYcT6u8PhHu7QMnLABy7h/mDn3Dvmu0x5K1Nh
yqMBeqebZCzxg9HZHnDtCj/Uvfl61vc+I6nrnPEws5D73npUhy5Z+tCkeGgu
ocRffPHF/QQlJs5p9Fze8Rz+RtizhylKlJppotTM3+B0N/4f7KvH899xU/au
8uC/Zd+z2YyUSupKJo0TWCcCfPkBXROgN31NPbqQ1X2PQZec7vy6iJAs2YIB
kK4sO8JavrFw4D+lDHXf3fhaJgybmE0m/0kLyD5xs2fv+L//7F8D7b7v36JM
X8Y5mvIorGL2N/0vGxkg+X36YVpFLEQfYWYSgecY9bZTsJJvg8WlmKSX/e+5
TjX+8tknp8MhDq3i/MXpLSuQ2QKD8DL8/oOs4il7EG4BB8zmXRiX0ffvsgpB
rkf+smlZxUOx1s7ZOhtZCswm5lt/wsT346t4zC6UGCRyJtu8abOLH8iJ8tPC
Av1cGHbA2tnGoMZDCpGWT41MHs7GrqDLO3x/AC/QL4O7zdq8fC3BC+xcc4P9
nUy+zU5fnPkebjPXw83NpgZ2RCvvCAsXRXxOztEXubU3dbNKIAr6g5f73tF8
IEo9v3+ePX/4XJi4eNgEI0FjspvD5PqBsPOUW+pIW23s+419TXQ5P+J1RRg/
w7RNm1hQcCLqCriU7/XvzC3nwCpu7+KnS8Ku0RTC5t7bOdbqB7Nd9laXOpHU
wwEsaCHqBZWseufrPHwinlIDcLzjKp6mOiMd78qcMrFnv86wzQ7+S70NU6t4
T1gcc0YDgJM66qrH4tsCq132pAmvMF989ul9UsJquW/Zhj/dw5/OtJ5hNWgJ
FrRVShQwDNNDLTqW3kg+R0+pk3vvbu8VAmOcrnCAf8+bMnu6/KbDtHZLMfpl
PeOX2WsgefaPH730yV0uk/30HFvIcufKmi/Ys74XPV6TFWnaMOJLcYm+PPfD
cT91ubkpKo6rxi1kf2fKllXxJysq2aMrnnEOdzNYvwWC6nzhKX3Kp8SxKPoO
j/x0qY09+EbQPz3gAiCz+tURNfY5esvqJQPMZjeU6kENdSgInVevezbOztQ7
HywtuHS4KRadXx8HLa1TguO7aOHgYJMgMBtTTIFCqzx7mDebbpXj19PsMfw3
z85BiLWUD/JkizcZf5d3sO755P8DCbDAUXjnAAA=

-->

</rfc>
