<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" ipr="trust200902" docName="draft-ainp-protocol-00" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" indexInclude="true" scripts="Common,Latin" submissionType="IETF" tocDepth="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title abbrev="AINP Protocol">AI-Native Network Protocol (AINP) for Semantic Agent Communication</title>
    <seriesInfo name="Internet-Draft" value="draft-ainp-protocol-00" stream="IETF"/>
    <author initials="E. P." surname="Nagulapalli" fullname="Eswara Prasad Nagulapalli">
      <organization showOnFrontPage="true">Servesys Labs</organization>
      <address>
        <email>contact@servsys.com</email>
      </address>
    </author>
    <date month="11" year="2025" day="24"/>
    <area>Internet</area>
    <workgroup>Independent Submission</workgroup>
    <keyword>AI agents</keyword>
    <keyword>semantic routing</keyword>
    <keyword>decentralized identity</keyword>
    <keyword>intent exchange</keyword>
    <keyword>negotiation protocol</keyword>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">This document specifies the AI-Native Network Protocol (AINP) version 0.1, a semantic communication protocol designed for intent exchange between AI agents. AINP replaces location-based routing with semantic routing, byte-stream delivery with intent delivery, and simple handshakes with multi-round negotiation. AINP enables agents to discover each other by capability rather than network location, negotiate terms autonomously, and exchange structured intents with cryptographic security.</t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t indent="0" pn="section-boilerplate.1-1">
        This Internet-Draft is submitted in full conformance with the
        provisions of BCP 78 and BCP 79.
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
        Internet-Drafts are working documents of the Internet Engineering Task
        Force (IETF). Note that other groups may also distribute working
        documents as Internet-Drafts. The list of current Internet-Drafts is
        at <eref target="https://datatracker.ietf.org/drafts/current/" brackets="none"/>.
        </t>
        <t indent="0" pn="section-boilerplate.1-3">
        Internet-Drafts are draft documents valid for a maximum of six months
        and may be updated, replaced, or obsoleted by other documents at any
        time. It is inappropriate to use Internet-Drafts as reference
        material or to cite them other than as "work in progress."
        </t>
        <t indent="0" pn="section-boilerplate.1-4">
        This Internet-Draft will expire on 28 May 2026.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t indent="0" pn="section-boilerplate.2-1">
            Copyright (c) 2025 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t indent="0" pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) in effect on the date of
            publication of this document. Please review these documents
            carefully, as they describe your rights and restrictions with
            respect to this document. Code Components extracted from this
            document must include Revised BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Revised BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.1.2">
              <li pn="section-toc.1-1.1.2.1">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.2.1.1"><xref derivedContent="1.1" format="counter" sectionFormat="of" target="section-1.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-terminology">Terminology</xref></t>
                <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.1.2.1.2">
                  <li pn="section-toc.1-1.1.2.1.2.1">
                    <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.2.1.2.1.1"><xref derivedContent="1.1.1" format="counter" sectionFormat="of" target="section-1.1.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-definitions">Definitions</xref></t>
                  </li>
                </ul>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.2">
            <t indent="0" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-architecture-overview">Architecture Overview</xref></t>
          </li>
          <li pn="section-toc.1-1.3">
            <t indent="0" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-wire-format">Wire Format</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.3.2">
              <li pn="section-toc.1-1.3.2.1">
                <t indent="0" pn="section-toc.1-1.3.2.1.1"><xref derivedContent="3.1" format="counter" sectionFormat="of" target="section-3.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-encoding">Encoding</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.2">
                <t indent="0" pn="section-toc.1-1.3.2.2.1"><xref derivedContent="3.2" format="counter" sectionFormat="of" target="section-3.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-message-envelope">Message Envelope</xref></t>
                <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.3.2.2.2">
                  <li pn="section-toc.1-1.3.2.2.2.1">
                    <t indent="0" pn="section-toc.1-1.3.2.2.2.1.1"><xref derivedContent="3.2.1" format="counter" sectionFormat="of" target="section-3.2.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-envelope-fields">Envelope Fields</xref></t>
                  </li>
                </ul>
              </li>
              <li pn="section-toc.1-1.3.2.3">
                <t indent="0" pn="section-toc.1-1.3.2.3.1"><xref derivedContent="3.3" format="counter" sectionFormat="of" target="section-3.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-message-types">Message Types</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.4">
                <t indent="0" pn="section-toc.1-1.3.2.4.1"><xref derivedContent="3.4" format="counter" sectionFormat="of" target="section-3.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-quality-of-service-paramete">Quality of Service Parameters</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.5">
                <t indent="0" pn="section-toc.1-1.3.2.5.1"><xref derivedContent="3.5" format="counter" sectionFormat="of" target="section-3.5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-capability-query">Capability Query</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.6">
                <t indent="0" pn="section-toc.1-1.3.2.6.1"><xref derivedContent="3.6" format="counter" sectionFormat="of" target="section-3.6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-signature-format">Signature Format</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.4">
            <t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-semantic-addresses">Semantic Addresses</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.4.2">
              <li pn="section-toc.1-1.4.2.1">
                <t indent="0" pn="section-toc.1-1.4.2.1.1"><xref derivedContent="4.1" format="counter" sectionFormat="of" target="section-4.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-decentralized-identifiers-d">Decentralized Identifiers (DIDs)</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.2">
                <t indent="0" pn="section-toc.1-1.4.2.2.1"><xref derivedContent="4.2" format="counter" sectionFormat="of" target="section-4.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-semantic-address-structure">Semantic Address Structure</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.5">
            <t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-intent-schemas">Intent Schemas</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.5.2">
              <li pn="section-toc.1-1.5.2.1">
                <t indent="0" pn="section-toc.1-1.5.2.1.1"><xref derivedContent="5.1" format="counter" sectionFormat="of" target="section-5.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-request_meeting-intent">REQUEST_MEETING Intent</xref></t>
              </li>
              <li pn="section-toc.1-1.5.2.2">
                <t indent="0" pn="section-toc.1-1.5.2.2.1"><xref derivedContent="5.2" format="counter" sectionFormat="of" target="section-5.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-approval_request-intent">APPROVAL_REQUEST Intent</xref></t>
              </li>
              <li pn="section-toc.1-1.5.2.3">
                <t indent="0" pn="section-toc.1-1.5.2.3.1"><xref derivedContent="5.3" format="counter" sectionFormat="of" target="section-5.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-submit_info-intent">SUBMIT_INFO Intent</xref></t>
              </li>
              <li pn="section-toc.1-1.5.2.4">
                <t indent="0" pn="section-toc.1-1.5.2.4.1"><xref derivedContent="5.4" format="counter" sectionFormat="of" target="section-5.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-invoice-intent">INVOICE Intent</xref></t>
              </li>
              <li pn="section-toc.1-1.5.2.5">
                <t indent="0" pn="section-toc.1-1.5.2.5.1"><xref derivedContent="5.5" format="counter" sectionFormat="of" target="section-5.5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-freeform_note-intent">FREEFORM_NOTE Intent</xref></t>
              </li>
              <li pn="section-toc.1-1.5.2.6">
                <t indent="0" pn="section-toc.1-1.5.2.6.1"><xref derivedContent="5.6" format="counter" sectionFormat="of" target="section-5.6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-request_service-intent">REQUEST_SERVICE Intent</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.6">
            <t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-negotiation-protocol">Negotiation Protocol</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.6.2">
              <li pn="section-toc.1-1.6.2.1">
                <t indent="0" pn="section-toc.1-1.6.2.1.1"><xref derivedContent="6.1" format="counter" sectionFormat="of" target="section-6.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-negotiation-flow">Negotiation Flow</xref></t>
              </li>
              <li pn="section-toc.1-1.6.2.2">
                <t indent="0" pn="section-toc.1-1.6.2.2.1"><xref derivedContent="6.2" format="counter" sectionFormat="of" target="section-6.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-negotiation-message-structu">Negotiation Message Structure</xref></t>
              </li>
              <li pn="section-toc.1-1.6.2.3">
                <t indent="0" pn="section-toc.1-1.6.2.3.1"><xref derivedContent="6.3" format="counter" sectionFormat="of" target="section-6.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-negotiation-convergence">Negotiation Convergence</xref></t>
              </li>
              <li pn="section-toc.1-1.6.2.4">
                <t indent="0" pn="section-toc.1-1.6.2.4.1"><xref derivedContent="6.4" format="counter" sectionFormat="of" target="section-6.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-timeout-behavior">Timeout Behavior</xref></t>
              </li>
              <li pn="section-toc.1-1.6.2.5">
                <t indent="0" pn="section-toc.1-1.6.2.5.1"><xref derivedContent="6.5" format="counter" sectionFormat="of" target="section-6.5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-multi-party-negotiation">Multi-Party Negotiation</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="7" format="counter" sectionFormat="of" target="section-7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-protocol-handshake-sequence">Protocol Handshake Sequence</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.7.2">
              <li pn="section-toc.1-1.7.2.1">
                <t indent="0" pn="section-toc.1-1.7.2.1.1"><xref derivedContent="7.1" format="counter" sectionFormat="of" target="section-7.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-five-step-handshake">Five-Step Handshake</xref></t>
              </li>
              <li pn="section-toc.1-1.7.2.2">
                <t indent="0" pn="section-toc.1-1.7.2.2.1"><xref derivedContent="7.2" format="counter" sectionFormat="of" target="section-7.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-advertise-phase">ADVERTISE Phase</xref></t>
              </li>
              <li pn="section-toc.1-1.7.2.3">
                <t indent="0" pn="section-toc.1-1.7.2.3.1"><xref derivedContent="7.3" format="counter" sectionFormat="of" target="section-7.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-discover-phase">DISCOVER Phase</xref></t>
              </li>
              <li pn="section-toc.1-1.7.2.4">
                <t indent="0" pn="section-toc.1-1.7.2.4.1"><xref derivedContent="7.4" format="counter" sectionFormat="of" target="section-7.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-error-phase">ERROR Phase</xref></t>
              </li>
              <li pn="section-toc.1-1.7.2.5">
                <t indent="0" pn="section-toc.1-1.7.2.5.1"><xref derivedContent="7.5" format="counter" sectionFormat="of" target="section-7.5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-offline-intent-queueing">Offline Intent Queueing</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="8" format="counter" sectionFormat="of" target="section-8"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.8.2">
              <li pn="section-toc.1-1.8.2.1">
                <t indent="0" pn="section-toc.1-1.8.2.1.1"><xref derivedContent="8.1" format="counter" sectionFormat="of" target="section-8.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-authentication">Authentication</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.2">
                <t indent="0" pn="section-toc.1-1.8.2.2.1"><xref derivedContent="8.2" format="counter" sectionFormat="of" target="section-8.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-identity">Identity</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.3">
                <t indent="0" pn="section-toc.1-1.8.2.3.1"><xref derivedContent="8.3" format="counter" sectionFormat="of" target="section-8.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-rate-limiting">Rate Limiting</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.4">
                <t indent="0" pn="section-toc.1-1.8.2.4.1"><xref derivedContent="8.4" format="counter" sectionFormat="of" target="section-8.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-replay-protection">Replay Protection</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.5">
                <t indent="0" pn="section-toc.1-1.8.2.5.1"><xref derivedContent="8.5" format="counter" sectionFormat="of" target="section-8.5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-dos-protection">DoS Protection</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.6">
                <t indent="0" pn="section-toc.1-1.8.2.6.1"><xref derivedContent="8.6" format="counter" sectionFormat="of" target="section-8.6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-replay-protection-and-deliv">Replay Protection and Delivery Semantics</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.7">
                <t indent="0" pn="section-toc.1-1.8.2.7.1"><xref derivedContent="8.7" format="counter" sectionFormat="of" target="section-8.7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-capability-attestations">Capability Attestations</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.8">
                <t indent="0" pn="section-toc.1-1.8.2.8.1"><xref derivedContent="8.8" format="counter" sectionFormat="of" target="section-8.8"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-timeouts">Timeouts</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.9">
                <t indent="0" pn="section-toc.1-1.8.2.9.1"><xref derivedContent="8.9" format="counter" sectionFormat="of" target="section-8.9"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-outlier-detection">Outlier Detection</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.10">
                <t indent="0" pn="section-toc.1-1.8.2.10.1"><xref derivedContent="8.10" format="counter" sectionFormat="of" target="section-8.10"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-discovery-scalability">Discovery Scalability</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.11">
                <t indent="0" pn="section-toc.1-1.8.2.11.1"><xref derivedContent="8.11" format="counter" sectionFormat="of" target="section-8.11"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-lite-mode-for-resource-cons">Lite Mode for Resource-Constrained Agents</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.9">
            <t indent="0" pn="section-toc.1-1.9.1"><xref derivedContent="9" format="counter" sectionFormat="of" target="section-9"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-cbor-encoding-optional">CBOR Encoding (Optional)</xref></t>
          </li>
          <li pn="section-toc.1-1.10">
            <t indent="0" pn="section-toc.1-1.10.1"><xref derivedContent="10" format="counter" sectionFormat="of" target="section-10"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-extensibility">Extensibility</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.10.2">
              <li pn="section-toc.1-1.10.2.1">
                <t indent="0" pn="section-toc.1-1.10.2.1.1"><xref derivedContent="10.1" format="counter" sectionFormat="of" target="section-10.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-custom-intent-types">Custom Intent Types</xref></t>
              </li>
              <li pn="section-toc.1-1.10.2.2">
                <t indent="0" pn="section-toc.1-1.10.2.2.1"><xref derivedContent="10.2" format="counter" sectionFormat="of" target="section-10.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-custom-negotiation-terms">Custom Negotiation Terms</xref></t>
              </li>
              <li pn="section-toc.1-1.10.2.3">
                <t indent="0" pn="section-toc.1-1.10.2.3.1"><xref derivedContent="10.3" format="counter" sectionFormat="of" target="section-10.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-versioning">Versioning</xref></t>
              </li>
              <li pn="section-toc.1-1.10.2.4">
                <t indent="0" pn="section-toc.1-1.10.2.4.1"><xref derivedContent="10.4" format="counter" sectionFormat="of" target="section-10.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-lite-profile-trusted-networ">Lite Profile (Trusted Networks)</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.11">
            <t indent="0" pn="section-toc.1-1.11.1"><xref derivedContent="11" format="counter" sectionFormat="of" target="section-11"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-success-metrics">Success Metrics</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.11.2">
              <li pn="section-toc.1-1.11.2.1">
                <t indent="0" pn="section-toc.1-1.11.2.1.1"><xref derivedContent="11.1" format="counter" sectionFormat="of" target="section-11.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-route-success-rate">Route Success Rate</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.2">
                <t indent="0" pn="section-toc.1-1.11.2.2.1"><xref derivedContent="11.2" format="counter" sectionFormat="of" target="section-11.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-latency-p95">Latency (p95)</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.3">
                <t indent="0" pn="section-toc.1-1.11.2.3.1"><xref derivedContent="11.3" format="counter" sectionFormat="of" target="section-11.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-negotiation-completion-rate">Negotiation Completion Rate</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.4">
                <t indent="0" pn="section-toc.1-1.11.2.4.1"><xref derivedContent="11.4" format="counter" sectionFormat="of" target="section-11.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-false-route-rate">False Route Rate</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.5">
                <t indent="0" pn="section-toc.1-1.11.2.5.1"><xref derivedContent="11.5" format="counter" sectionFormat="of" target="section-11.5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-abuse-resilience">Abuse Resilience</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.12">
            <t indent="0" pn="section-toc.1-1.12.1"><xref derivedContent="12" format="counter" sectionFormat="of" target="section-12"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.13">
            <t indent="0" pn="section-toc.1-1.13.1"><xref derivedContent="13" format="counter" sectionFormat="of" target="section-13"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-references">References</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.13.2">
              <li pn="section-toc.1-1.13.2.1">
                <t indent="0" pn="section-toc.1-1.13.2.1.1"><xref derivedContent="13.1" format="counter" sectionFormat="of" target="section-13.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
              </li>
              <li pn="section-toc.1-1.13.2.2">
                <t indent="0" pn="section-toc.1-1.13.2.2.1"><xref derivedContent="13.2" format="counter" sectionFormat="of" target="section-13.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.14">
            <t indent="0" pn="section-toc.1-1.14.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-address">Author's Address</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section anchor="introduction" numbered="true" removeInRFC="false" toc="include" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1">Traditional network protocols (TCP/IP, HTTP, SMTP) were designed for reliable byte stream delivery between machines. AINP represents a paradigm shift: it is designed for semantic intent delivery between AI agents, with built-in understanding, negotiation, and adaptation.</t>
      <t indent="0" pn="section-1-2">AINP Phase 0.1 provides:
- Wire format specification (JSON-LD + CBOR)
- Message envelope structure with cryptographic signatures
- Intent schemas for common agent interactions
- Semantic address format with Decentralized Identifiers (DIDs)
- Negotiation protocol for multi-agent consensus
- Discovery and routing mechanisms</t>
      <section anchor="terminology" numbered="true" removeInRFC="false" toc="include" pn="section-1.1">
        <name slugifiedName="name-terminology">Terminology</name>
        <t indent="0" pn="section-1.1-1">The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in <xref target="RFC2119" format="default" sectionFormat="of" derivedContent="RFC2119"/>.</t>
        <section anchor="definitions" numbered="true" removeInRFC="false" toc="include" pn="section-1.1.1">
          <name slugifiedName="name-definitions">Definitions</name>
          <t indent="0" pn="section-1.1.1-1"><strong>Agent</strong>: An autonomous software entity capable of semantic understanding and intent exchange</t>
          <t indent="0" pn="section-1.1.1-2"><strong>Intent</strong>: A semantic representation of an agent's goal, including embeddings and structured semantics</t>
          <t indent="0" pn="section-1.1.1-3"><strong>Semantic Address</strong>: An identity-based address using DIDs and capability descriptors</t>
          <t indent="0" pn="section-1.1.1-4"><strong>Negotiation</strong>: Multi-round protocol for establishing consensus on resources, terms, and capabilities</t>
          <t indent="0" pn="section-1.1.1-5"><strong>Capability</strong>: A semantic description of what an agent can do, including natural language and embeddings</t>
          <t indent="0" pn="section-1.1.1-6"><strong>Trust Vector</strong>: Multi-dimensional reputation score tracking reliability, honesty, competence, and timeliness</t>
        </section>
      </section>
    </section>
    <section anchor="architecture-overview" numbered="true" removeInRFC="false" toc="include" pn="section-2">
      <name slugifiedName="name-architecture-overview">Architecture Overview</name>
      <t indent="0" pn="section-2-1">AINP consists of four layers:</t>
      <t indent="0" pn="section-2-2"><tt>
+-----------------------------+
| Intent Layer                |  Semantic exchange (intents)
+-----------------------------+
| Negotiation Layer           |  Multi-agent consensus
+-----------------------------+
| Routing Layer              |  Semantic routing
+-----------------------------+
| Substrate Layer            |  Physical transport (TCP/IP, etc.)
+-----------------------------+
</tt></t>
      <t indent="0" pn="section-2-3">Phase 0.1 runs as an overlay network on TCP/IP with WebSocket or HTTP/3 transport.</t>
    </section>
    <section anchor="wire-format" numbered="true" removeInRFC="false" toc="include" pn="section-3">
      <name slugifiedName="name-wire-format">Wire Format</name>
      <section anchor="encoding" numbered="true" removeInRFC="false" toc="include" pn="section-3.1">
        <name slugifiedName="name-encoding">Encoding</name>
        <t indent="0" pn="section-3.1-1">AINP messages MUST support both:
- <strong>JSON-LD</strong>: Human-readable, linked data format with <tt>@context</tt> for semantic interoperability
- <strong>CBOR</strong>: Binary encoding (<xref target="RFC8949" format="default" sectionFormat="of" derivedContent="RFC8949"/>) for efficient transmission</t>
        <t indent="0" pn="section-3.1-2">Implementations SHOULD negotiate encoding during handshake. JSON-LD is the default for Phase 0.1.</t>
      </section>
      <section anchor="message-envelope" numbered="true" removeInRFC="false" toc="include" pn="section-3.2">
        <name slugifiedName="name-message-envelope">Message Envelope</name>
        <t indent="0" pn="section-3.2-1">All AINP messages MUST be wrapped in an envelope structure:</t>
        <t indent="0" pn="section-3.2-2"><tt>json
{
  "version": "0.1.0",
  "msg_type": "INTENT",
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "timestamp": 1728259400000,
  "ttl": 30000,
  "trace_id": "trace-abc123",
  "from_did": "did:key:z6Mk...",
  "to_did": "did:key:z6Mk...",
  "schema": "https://ainp.dev/schemas/intents/request-meeting/v1",
  "qos": {
    "urgency": 0.7,
    "importance": 0.8,
    "novelty": 0.1,
    "ethicalWeight": 0.5,
    "bid": 5
  },
  "payload": { ... },
  "sig": "base64signature..."
}
</tt></t>
        <section anchor="envelope-fields" numbered="true" removeInRFC="false" toc="include" pn="section-3.2.1">
          <name slugifiedName="name-envelope-fields">Envelope Fields</name>
          <ul spacing="compact" bare="false" empty="false" indent="3" pn="section-3.2.1-1">
            <li pn="section-3.2.1-1.1">
              <t indent="0" pn="section-3.2.1-1.1.1"><tt>version</tt> (string, REQUIRED): Protocol version, MUST be "0.1.0"</t>
            </li>
            <li pn="section-3.2.1-1.2">
              <t indent="0" pn="section-3.2.1-1.2.1"><tt>msg_type</tt> (string, REQUIRED): Message type (see <xref target="msg-types" format="default" sectionFormat="of" derivedContent="Section 3.3"/>)</t>
            </li>
            <li pn="section-3.2.1-1.3">
              <t indent="0" pn="section-3.2.1-1.3.1"><tt>id</tt> (string, REQUIRED): UUID v4 for message identification</t>
            </li>
            <li pn="section-3.2.1-1.4">
              <t indent="0" pn="section-3.2.1-1.4.1"><tt>timestamp</tt> (number, REQUIRED): Unix epoch milliseconds</t>
            </li>
            <li pn="section-3.2.1-1.5">
              <t indent="0" pn="section-3.2.1-1.5.1"><tt>ttl</tt> (number, REQUIRED): Time-to-live in milliseconds</t>
            </li>
            <li pn="section-3.2.1-1.6">
              <t indent="0" pn="section-3.2.1-1.6.1"><tt>trace_id</tt> (string, REQUIRED): Distributed tracing UUID for thread tracking</t>
            </li>
            <li pn="section-3.2.1-1.7">
              <t indent="0" pn="section-3.2.1-1.7.1"><tt>from_did</tt> (string, REQUIRED): Sender DID (<xref target="W3C.DID" format="default" sectionFormat="of" derivedContent="W3C.DID"/>)</t>
            </li>
            <li pn="section-3.2.1-1.8">
              <t indent="0" pn="section-3.2.1-1.8.1"><tt>to_did</tt> (string, OPTIONAL): Recipient DID (for direct addressing)</t>
            </li>
            <li pn="section-3.2.1-1.9">
              <t indent="0" pn="section-3.2.1-1.9.1"><tt>to_query</tt> (object, OPTIONAL): Semantic query (alternative to <tt>to_did</tt>, see <xref target="capability-query" format="default" sectionFormat="of" derivedContent="Section 3.5"/>)</t>
            </li>
            <li pn="section-3.2.1-1.10">
              <t indent="0" pn="section-3.2.1-1.10.1"><tt>schema</tt> (string, REQUIRED): JSON-LD context URI</t>
            </li>
            <li pn="section-3.2.1-1.11">
              <t indent="0" pn="section-3.2.1-1.11.1"><tt>qos</tt> (object, REQUIRED): Quality of Service parameters (see <xref target="qos" format="default" sectionFormat="of" derivedContent="Section 3.4"/>)</t>
            </li>
            <li pn="section-3.2.1-1.12">
              <t indent="0" pn="section-3.2.1-1.12.1"><tt>payload</tt> (object, OPTIONAL): Application payload (intent, negotiation, etc.)</t>
            </li>
            <li pn="section-3.2.1-1.13">
              <t indent="0" pn="section-3.2.1-1.13.1"><tt>sig</tt> (string, REQUIRED): Ed25519 signature in base64 encoding</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="msg-types" numbered="true" removeInRFC="false" toc="include" pn="section-3.3">
        <name slugifiedName="name-message-types">Message Types</name>
        <t indent="0" pn="section-3.3-1">AINP defines the following message types:</t>
        <ul spacing="compact" bare="false" empty="false" indent="3" pn="section-3.3-2">
          <li pn="section-3.3-2.1">
            <t indent="0" pn="section-3.3-2.1.1"><tt>ADVERTISE</tt>: Publish capabilities to discovery index</t>
          </li>
          <li pn="section-3.3-2.2">
            <t indent="0" pn="section-3.3-2.2.1"><tt>DISCOVER</tt>: Query for agents by capability</t>
          </li>
          <li pn="section-3.3-2.3">
            <t indent="0" pn="section-3.3-2.3.1"><tt>DISCOVER_RESULT</tt>: Discovery results</t>
          </li>
          <li pn="section-3.3-2.4">
            <t indent="0" pn="section-3.3-2.4.1"><tt>NEGOTIATE</tt>: Multi-round negotiation</t>
          </li>
          <li pn="section-3.3-2.5">
            <t indent="0" pn="section-3.3-2.5.1"><tt>INTENT</tt>: Send intent payload</t>
          </li>
          <li pn="section-3.3-2.6">
            <t indent="0" pn="section-3.3-2.6.1"><tt>RESULT</tt>: Response with optional proof</t>
          </li>
          <li pn="section-3.3-2.7">
            <t indent="0" pn="section-3.3-2.7.1"><tt>ERROR</tt>: Error response</t>
          </li>
        </ul>
      </section>
      <section anchor="qos" numbered="true" removeInRFC="false" toc="include" pn="section-3.4">
        <name slugifiedName="name-quality-of-service-paramete">Quality of Service Parameters</name>
        <t indent="0" pn="section-3.4-1">QoS parameters enable priority-based routing and resource allocation:</t>
        <t indent="0" pn="section-3.4-2"><tt>json
{
  "urgency": 0.7,        // 0-1, time sensitivity
  "importance": 0.8,     // 0-1, impact magnitude
  "novelty": 0.1,        // 0-1, information gain
  "ethicalWeight": 0.5,  // 0-1, moral importance
  "bid": 5               // Token amount or credits (non-negative)
}
</tt></t>
        <t indent="0" pn="section-3.4-3"><strong>Priority Calculation</strong>: Implementations SHOULD calculate message priority as:</t>
        <t indent="0" pn="section-3.4-4"><tt>
priority = (urgency * w_urgency) + (importance * w_importance) + 
           (novelty * w_novelty) + (ethicalWeight * w_ethical)
adjusted_priority = priority + 0.5 * tanh(bid / bid_scale)
</tt></t>
        <t indent="0" pn="section-3.4-5">Where <tt>bid_scale</tt> is node-configurable (RECOMMENDED default: 10 credits).</t>
        <t indent="0" pn="section-3.4-6"><strong>Default Weights</strong>:
- <tt>w_urgency = 0.3</tt>
- <tt>w_importance = 0.3</tt>
- <tt>w_novelty = 0.2</tt>
- <tt>w_ethical = 0.2</tt></t>
      </section>
      <section anchor="capability-query" numbered="true" removeInRFC="false" toc="include" pn="section-3.5">
        <name slugifiedName="name-capability-query">Capability Query</name>
        <t indent="0" pn="section-3.5-1">For semantic discovery, agents use capability queries:</t>
        <t indent="0" pn="section-3.5-2"><tt>json
{
  "description": "Find agents who can schedule meetings",
  "embedding": "base64-encoded Float32Array[1536]",
  "tags": ["scheduling", "calendar"],
  "min_trust": 0.7,
  "max_latency_ms": 5000,
  "max_cost": 10
}
</tt></t>
      </section>
      <section anchor="signature-format" numbered="true" removeInRFC="false" toc="include" pn="section-3.6">
        <name slugifiedName="name-signature-format">Signature Format</name>
        <t indent="0" pn="section-3.6-1">Messages MUST be signed using Ed25519 (<xref target="Ed25519"/>) with detached signatures in base64 encoding.</t>
        <t indent="0" pn="section-3.6-2"><strong>Signing Process</strong>:
1. Serialize envelope fields (excluding <tt>sig</tt>) to canonical JSON (<xref target="RFC8785" format="default" sectionFormat="of" derivedContent="RFC8785"/>)
2. Compute SHA-256 hash of canonical JSON
3. Sign hash with Ed25519 private key
4. Encode signature as base64
5. Add <tt>sig</tt> field to envelope</t>
        <t indent="0" pn="section-3.6-3"><strong>Verification Process</strong>:
1. Extract <tt>sig</tt> field
2. Remove <tt>sig</tt> from envelope
3. Serialize remaining fields to canonical JSON (<xref target="RFC8785" format="default" sectionFormat="of" derivedContent="RFC8785"/>)
4. Compute SHA-256 hash
5. Verify signature using Ed25519 public key from <tt>from_did</tt></t>
      </section>
    </section>
    <section anchor="semantic-addresses" numbered="true" removeInRFC="false" toc="include" pn="section-4">
      <name slugifiedName="name-semantic-addresses">Semantic Addresses</name>
      <section anchor="decentralized-identifiers-dids" numbered="true" removeInRFC="false" toc="include" pn="section-4.1">
        <name slugifiedName="name-decentralized-identifiers-d">Decentralized Identifiers (DIDs)</name>
        <t indent="0" pn="section-4.1-1">Agents MUST have a DID conforming to <xref target="W3C.DID" format="default" sectionFormat="of" derivedContent="W3C.DID"/>.</t>
        <t indent="0" pn="section-4.1-2"><strong>Supported DID Methods</strong> (Phase 0.1):
- <tt>did:key:</tt> - Self-certified cryptographic keys
- <tt>did:web:</tt> - Web-based identifiers</t>
      </section>
      <section anchor="semantic-address-structure" numbered="true" removeInRFC="false" toc="include" pn="section-4.2">
        <name slugifiedName="name-semantic-address-structure">Semantic Address Structure</name>
        <t indent="0" pn="section-4.2-1"><tt>json
{
  "did": "did:key:z6Mk...",
  "capabilities": [
    {
      "description": "Schedule meetings with calendar integration",
      "embedding": {
        "b64": "base64-encoded float32 array",
        "dim": 1536,
        "dtype": "f32",
        "model": "openai:text-embedding-3-small"
      },
      "tags": ["scheduling", "calendar"],
      "version": "1.0.0",
      "evidence": "https://credentials.example.com/vc/scheduling"
    }
  ],
  "trust": {
    "score": 0.85,
    "dimensions": {
      "reliability": 0.9,
      "honesty": 0.85,
      "competence": 0.8,
      "timeliness": 0.85
    },
    "decay_rate": 0.977,
    "last_updated": 1728259200000
  },
  "credentials": ["https://credentials.example.com/vc/scheduling"]
}
</tt></t>
      </section>
    </section>
    <section anchor="intent-schemas" numbered="true" removeInRFC="false" toc="include" pn="section-5">
      <name slugifiedName="name-intent-schemas">Intent Schemas</name>
      <t indent="0" pn="section-5-1">AINP defines six core intent types for Phase 0.1. All intents MUST include:
- JSON-LD <tt>@context</tt> for semantic interoperability
- Embedding (Embedding object; base64 Float32Array inside <tt>b64</tt>)
- Budget constraints
- Semantic payload</t>
      <section anchor="requestmeeting-intent" numbered="true" removeInRFC="false" toc="include" pn="section-5.1">
        <name slugifiedName="name-request_meeting-intent">REQUEST_MEETING Intent</name>
        <t indent="0" pn="section-5.1-1"><strong>Schema URI</strong>: <tt>https://ainp.dev/schemas/intents/request-meeting/v1</tt></t>
        <t indent="0" pn="section-5.1-2"><tt>json
{
  "@context": "https://ainp.dev/contexts/meeting/v1",
  "@type": "RequestMeeting",
  "version": "1.0.0",
  "embedding": {
    "b64": "base64-encoded Float32Array",
    "dim": 1536,
    "dtype": "f32",
    "model": "openai:text-embedding-3-small"
  },
  "semantics": {
    "participants": ["did:key:..."],
    "duration_minutes": 30,
    "preferred_times": ["2025-10-07T14:00:00Z"],
    "location": "virtual",
    "constraints": {
      "timezone": "America/Los_Angeles",
      "max_latency_ms": 5000,
      "min_notice_hours": 24
    }
  },
  "budget": {
    "max_credits": 10,
    "max_rounds": 5,
    "timeout_ms": 30000
  }
}
</tt></t>
      </section>
      <section anchor="approvalrequest-intent" numbered="true" removeInRFC="false" toc="include" pn="section-5.2">
        <name slugifiedName="name-approval_request-intent">APPROVAL_REQUEST Intent</name>
        <t indent="0" pn="section-5.2-1"><strong>Schema URI</strong>: <tt>https://ainp.dev/schemas/intents/approval-request/v1</tt></t>
        <t indent="0" pn="section-5.2-2"><tt>json
{
  "@context": "https://ainp.dev/contexts/approval/v1",
  "@type": "ApprovalRequest",
  "version": "1.0.0",
  "embedding": { "b64": "...", "dim": 1536, "dtype": "f32" },
  "semantics": {
    "request_type": "purchase",
    "description": "Purchase office supplies",
    "amount": 500,
    "currency": "USD",
    "justification": "Quarterly restock",
    "deadline": "2025-10-10T00:00:00Z",
    "approvers": ["did:key:..."],
    "threshold": 1,
    "constraints": {
      "requires_attestation": true,
      "max_latency_ms": 5000
    }
  },
  "budget": {
    "max_credits": 10,
    "max_rounds": 5,
    "timeout_ms": 30000
  }
}
</tt></t>
      </section>
      <section anchor="submitinfo-intent" numbered="true" removeInRFC="false" toc="include" pn="section-5.3">
        <name slugifiedName="name-submit_info-intent">SUBMIT_INFO Intent</name>
        <t indent="0" pn="section-5.3-1"><strong>Schema URI</strong>: <tt>https://ainp.dev/schemas/intents/submit-info/v1</tt></t>
        <t indent="0" pn="section-5.3-2"><tt>json
{
  "@context": "https://ainp.dev/contexts/submit-info/v1",
  "@type": "SubmitInfo",
  "version": "1.0.0",
  "embedding": { "b64": "...", "dim": 1536, "dtype": "f32" },
  "semantics": {
    "data_type": "form",
    "payload": { "field1": "value1" },
    "schema_ref": "https://example.com/schema.json",
    "privacy_level": "encrypted",
    "retention_policy": {
      "duration_days": 90,
      "delete_after": true
    },
    "constraints": {
      "requires_acknowledgment": true,
      "max_latency_ms": 5000
    }
  },
  "budget": {
    "max_credits": 5,
    "max_rounds": 3,
    "timeout_ms": 15000
  }
}
</tt></t>
      </section>
      <section anchor="invoice-intent" numbered="true" removeInRFC="false" toc="include" pn="section-5.4">
        <name slugifiedName="name-invoice-intent">INVOICE Intent</name>
        <t indent="0" pn="section-5.4-1"><strong>Schema URI</strong>: <tt>https://ainp.dev/schemas/intents/invoice/v1</tt></t>
        <t indent="0" pn="section-5.4-2"><tt>json
{
  "@context": "https://ainp.dev/contexts/invoice/v1",
  "@type": "Invoice",
  "version": "1.0.0",
  "embedding": { "b64": "...", "dim": 1536, "dtype": "f32" },
  "semantics": {
    "invoice_id": "INV-2025-001",
    "from": "did:key:...",
    "to": "did:key:...",
    "amount": "1000.00",
    "currency": "USD",
    "line_items": [
      {
        "description": "Service fee",
        "quantity": 1,
        "unit_price": "1000.00",
        "total": "1000.00"
      }
    ],
    "due_date": "2025-11-01T00:00:00Z",
    "payment_methods": ["crypto", "wire"],
    "constraints": {
      "requires_escrow": true,
      "max_latency_ms": 10000
    }
  },
  "budget": {
    "max_credits": 5,
    "max_rounds": 3,
    "timeout_ms": 30000
  }
}
</tt></t>
      </section>
      <section anchor="freeformnote-intent" numbered="true" removeInRFC="false" toc="include" pn="section-5.5">
        <name slugifiedName="name-freeform_note-intent">FREEFORM_NOTE Intent</name>
        <t indent="0" pn="section-5.5-1"><strong>Schema URI</strong>: <tt>https://ainp.dev/schemas/intents/freeform-note/v1</tt></t>
        <t indent="0" pn="section-5.5-2"><tt>json
{
  "@context": "https://ainp.dev/contexts/freeform/v1",
  "@type": "FreeformNote",
  "version": "1.0.0",
  "embedding": { "b64": "...", "dim": 1536, "dtype": "f32" },
  "semantics": {
    "subject": "Meeting notes",
    "body": "Discussion summary...",
    "format": "markdown",
    "attachments": [
      {
        "url": "https://example.com/doc.pdf",
        "mime_type": "application/pdf",
        "size_bytes": 102400,
        "hash": "sha256:abc123..."
      }
    ],
    "thread_id": "thread-123",
    "in_reply_to": "msg-456",
    "constraints": {
      "max_latency_ms": 5000
    }
  },
  "budget": {
    "max_credits": 1,
    "max_rounds": 1,
    "timeout_ms": 10000
  }
}
</tt></t>
      </section>
      <section anchor="requestservice-intent" numbered="true" removeInRFC="false" toc="include" pn="section-5.6">
        <name slugifiedName="name-request_service-intent">REQUEST_SERVICE Intent</name>
        <t indent="0" pn="section-5.6-1"><strong>Schema URI</strong>: <tt>https://ainp.dev/schemas/intents/request-service/v1</tt></t>
        <t indent="0" pn="section-5.6-2"><tt>json
{
  "@context": "https://ainp.dev/contexts/service/v1",
  "@type": "RequestService",
  "version": "1.0.0",
  "embedding": { "b64": "...", "dim": 1536, "dtype": "f32" },
  "semantics": {
    "service_type": "plumbing.leak.fix",
    "geo": {
      "lat": 37.7749,
      "lon": -122.4194,
      "radiusKm": 10,
      "zip": "94102"
    },
    "time_window": {
      "earliest": "2025-10-08T09:00:00Z",
      "latest": "2025-10-08T17:00:00Z"
    },
    "constraints": {
      "eco": true,
      "access_notes": "Ring doorbell",
      "evidence_required": ["photo_before_after"]
    },
    "details": {
      "urgency": "high",
      "description": "Kitchen sink leak"
    }
  },
  "budget": {
    "max_credits": 20,
    "max_total": 200,
    "escrow_required": true,
    "max_rounds": 10,
    "timeout_ms": 60000
  }
}
</tt></t>
      </section>
    </section>
    <section anchor="negotiation-protocol" numbered="true" removeInRFC="false" toc="include" pn="section-6">
      <name slugifiedName="name-negotiation-protocol">Negotiation Protocol</name>
      <section anchor="negotiation-flow" numbered="true" removeInRFC="false" toc="include" pn="section-6.1">
        <name slugifiedName="name-negotiation-flow">Negotiation Flow</name>
        <t indent="0" pn="section-6.1-1">Negotiation MUST follow this state machine:</t>
        <t indent="0" pn="section-6.1-2"><tt>
START -&gt; OFFER -&gt; COUNTER &lt;-&gt; COUNTER -&gt; ACCEPT
                  |         |
                ABORT     TIMEOUT
                  |         |
                REJECT    REJECT
</tt></t>
      </section>
      <section anchor="negotiation-message-structure" numbered="true" removeInRFC="false" toc="include" pn="section-6.2">
        <name slugifiedName="name-negotiation-message-structu">Negotiation Message Structure</name>
        <t indent="0" pn="section-6.2-1"><tt>json
{
  "negotiation_id": "uuid",
  "round": 1,
  "phase": "OFFER",
  "proposal": {
    "price": 100,
    "latency_ms": 500,
    "confidence": 0.9,
    "privacy": "encrypted",
    "terms": {}
  },
  "constraints": {
    "max_rounds": 10,
    "timeout_per_round_ms": 5000,
    "convergence_threshold": 0.9
  }
}
</tt></t>
        <t indent="0" pn="section-6.2-2"><strong>Negotiation Phases</strong>:
- <tt>OFFER</tt>: Initial offer
- <tt>COUNTER</tt>: Counter-offer
- <tt>ACCEPT</tt>: Accept proposal
- <tt>REJECT</tt>: Reject and end
- <tt>ABORT</tt>: Abort negotiation
- <tt>TIMEOUT</tt>: Timeout occurred</t>
      </section>
      <section anchor="negotiation-convergence" numbered="true" removeInRFC="false" toc="include" pn="section-6.3">
        <name slugifiedName="name-negotiation-convergence">Negotiation Convergence</name>
        <t indent="0" pn="section-6.3-1">Implementations MAY auto-accept proposals when convergence threshold is met:</t>
        <t indent="0" pn="section-6.3-2">```
convergence_score = 1 - (abs(offer.price - counter.price) / max(offer.price, counter.price))</t>
        <t indent="0" pn="section-6.3-3">if convergence_score &gt;= convergence_threshold:
  auto_accept()
```</t>
      </section>
      <section anchor="timeout-behavior" numbered="true" removeInRFC="false" toc="include" pn="section-6.4">
        <name slugifiedName="name-timeout-behavior">Timeout Behavior</name>
        <ul spacing="compact" bare="false" empty="false" indent="3" pn="section-6.4-1">
          <li pn="section-6.4-1.1">
            <t indent="0" pn="section-6.4-1.1.1"><strong>Per-round timeout</strong>: If no response within <tt>timeout_per_round_ms</tt>, sender MAY send TIMEOUT message</t>
          </li>
          <li pn="section-6.4-1.2">
            <t indent="0" pn="section-6.4-1.2.1"><strong>Overall timeout</strong>: If negotiation exceeds <tt>max_rounds * timeout_per_round_ms</tt>, MUST terminate with TIMEOUT</t>
          </li>
        </ul>
      </section>
      <section anchor="multi-party-negotiation" numbered="true" removeInRFC="false" toc="include" pn="section-6.5">
        <name slugifiedName="name-multi-party-negotiation">Multi-Party Negotiation</name>
        <t indent="0" pn="section-6.5-1">For intents involving multiple agents (e.g., scheduling a meeting with 5 participants, multi-signature approvals), negotiation MUST support group consensus mechanisms.</t>
        <t indent="0" pn="section-6.5-2"><strong>Group Proposal Structure</strong>:
<tt>json
{
  "negotiation_id": "multi-abc123",
  "phase": "OFFER",
  "proposal": {
    "participants": ["did:key:agent-a", "did:key:agent-b", "did:key:agent-c"],
    "voting_mechanism": "majority",
    "convergence_threshold": 0.75,
    "terms": {
      "preferred_times": ["2025-10-07T14:00:00Z", "2025-10-07T15:00:00Z"],
      "duration_minutes": 30
    }
  }
}
</tt></t>
        <t indent="0" pn="section-6.5-3"><strong>Voting Mechanisms</strong>:
1. <strong>Unanimous</strong>: All agents must ACCEPT (default for high-stakes)
2. <strong>Majority</strong>: More than 50% must ACCEPT
3. <strong>Weighted</strong>: Votes weighted by trust scores</t>
        <t indent="0" pn="section-6.5-4"><strong>Multi-Party Flow</strong>:
1. Fan-out: Send NEGOTIATE(OFFER) to all participants
2. Collection: Each agent responds with individual proposal
3. Aggregation: Broker aggregates and computes consensus score
4. Convergence Check: Compare score to threshold
5. Auto-accept if converged, else synthesize counter-proposal and repeat
6. Termination: ABORT after <tt>max_rounds</tt> or timeout if no consensus</t>
      </section>
    </section>
    <section anchor="protocol-handshake-sequence" numbered="true" removeInRFC="false" toc="include" pn="section-7">
      <name slugifiedName="name-protocol-handshake-sequence">Protocol Handshake Sequence</name>
      <section anchor="five-step-handshake" numbered="true" removeInRFC="false" toc="include" pn="section-7.1">
        <name slugifiedName="name-five-step-handshake">Five-Step Handshake</name>
        <ol spacing="compact" type="1" indent="adaptive" start="1" pn="section-7.1-1"><li pn="section-7.1-1.1" derivedCounter="1.">
            <t indent="0" pn="section-7.1-1.1.1"><strong>ADVERTISE</strong>: Agent publishes capabilities to discovery index</t>
          </li>
          <li pn="section-7.1-1.2" derivedCounter="2.">
            <t indent="0" pn="section-7.1-1.2.1"><strong>DISCOVER</strong>: Agent queries for matching capabilities</t>
          </li>
          <li pn="section-7.1-1.3" derivedCounter="3.">
            <t indent="0" pn="section-7.1-1.3.1"><strong>NEGOTIATE</strong>: Agents negotiate terms (OFFER → COUNTER → ACCEPT)</t>
          </li>
          <li pn="section-7.1-1.4" derivedCounter="4.">
            <t indent="0" pn="section-7.1-1.4.1"><strong>INTENT</strong>: Agent sends intent after successful negotiation</t>
          </li>
          <li pn="section-7.1-1.5" derivedCounter="5.">
            <t indent="0" pn="section-7.1-1.5.1"><strong>RESULT</strong>: Recipient responds with result</t>
          </li>
        </ol>
      </section>
      <section anchor="advertise-phase" numbered="true" removeInRFC="false" toc="include" pn="section-7.2">
        <name slugifiedName="name-advertise-phase">ADVERTISE Phase</name>
        <t indent="0" pn="section-7.2-1">Agent publishes capabilities to discovery index:</t>
        <t indent="0" pn="section-7.2-2"><tt>json
{
  "version": "0.1.0",
  "msg_type": "ADVERTISE",
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "timestamp": 1728259200000,
  "ttl": 86400000,
  "trace_id": "trace-abc123",
  "from_did": "did:key:z6Mk...",
  "schema": "https://ainp.dev/schemas/advertise/v1",
  "qos": {
    "urgency": 0.1,
    "importance": 0.5,
    "novelty": 0.3,
    "ethicalWeight": 0.5,
    "bid": 0
  },
  "sig": "base64signature...",
  "payload": {
    "capabilities": [
      {
        "description": "Schedule meetings with calendar integration",
        "embedding": { "b64": "...", "dim": 1536, "dtype": "f32" },
        "tags": ["scheduling", "calendar"],
        "version": "1.0.0",
        "evidence": "https://credentials.example.com/vc/scheduling"
      }
    ],
    "trust": {
      "score": 0.85,
      "dimensions": {
        "reliability": 0.9,
        "honesty": 0.85,
        "competence": 0.8,
        "timeliness": 0.85
      },
      "decay_rate": 0.977,
      "last_updated": 1728259200000
    },
    "credentials": ["https://credentials.example.com/vc/scheduling"]
  }
}
</tt></t>
      </section>
      <section anchor="discover-phase" numbered="true" removeInRFC="false" toc="include" pn="section-7.3">
        <name slugifiedName="name-discover-phase">DISCOVER Phase</name>
        <t indent="0" pn="section-7.3-1">Agent queries for capabilities:</t>
        <t indent="0" pn="section-7.3-2"><tt>json
{
  "version": "0.1.0",
  "msg_type": "DISCOVER",
  "id": "660e8400-e29b-41d4-a716-446655440001",
  "timestamp": 1728259300000,
  "ttl": 10000,
  "trace_id": "trace-def456",
  "from_did": "did:key:z6Mk...",
  "to_query": {
    "description": "Find agents who can schedule meetings",
    "embedding": "base64...",
    "tags": ["scheduling", "calendar"],
    "min_trust": 0.7,
    "max_latency_ms": 5000,
    "max_cost": 10
  },
  "schema": "https://ainp.dev/schemas/discover/v1",
  "qos": {
    "urgency": 0.5,
    "importance": 0.7,
    "novelty": 0.2,
    "ethicalWeight": 0.5,
    "bid": 1
  },
  "sig": "base64signature..."
}
</tt></t>
        <t indent="0" pn="section-7.3-3">Discovery index responds with <tt>DISCOVER_RESULT</tt> containing matching agents with similarity scores, trust ratings, and estimated latency.</t>
      </section>
      <section anchor="error-phase" numbered="true" removeInRFC="false" toc="include" pn="section-7.4">
        <name slugifiedName="name-error-phase">ERROR Phase</name>
        <t indent="0" pn="section-7.4-1">On error, agent MUST respond with ERROR message:</t>
        <t indent="0" pn="section-7.4-2"><tt>json
{
  "msg_type": "ERROR",
  "error_code": "TIMEOUT",
  "error_message": "Negotiation timed out",
  "intent_id": "770e8400-e29b-41d4-a716-446655440002",
  "retry_after_ms": 5000
}
</tt></t>
        <t indent="0" pn="section-7.4-3"><strong>Standard Error Codes</strong>:
- <tt>INVALID_SIGNATURE</tt>
- <tt>UNAUTHORIZED</tt>
- <tt>UNSUPPORTED_SCHEMA</tt>
- <tt>TIMEOUT</tt>
- <tt>RATE_LIMIT_EXCEEDED</tt>
- <tt>INSUFFICIENT_CREDITS</tt>
- <tt>NEGOTIATION_FAILED</tt>
- <tt>ESCROW_REQUIRED</tt>
- <tt>EVIDENCE_INSUFFICIENT</tt>
- <tt>DUPLICATE_INTENT</tt>
- <tt>AGENT_OFFLINE</tt>
- <tt>INTERNAL_ERROR</tt></t>
      </section>
      <section anchor="offline-intent-queueing" numbered="true" removeInRFC="false" toc="include" pn="section-7.5">
        <name slugifiedName="name-offline-intent-queueing">Offline Intent Queueing</name>
        <t indent="0" pn="section-7.5-1">When recipient agent is offline or unreachable, broker MAY queue intents for later delivery instead of immediately failing.</t>
        <t indent="0" pn="section-7.5-2"><strong>Queue Behavior</strong>:
- TTL enforcement: Intent expires after <tt>ttl</tt> milliseconds from original <tt>timestamp</tt>
- Broker SHOULD send ERROR to sender immediately: <tt>error_code: "AGENT_OFFLINE"</tt>
- ERROR response SHOULD include <tt>retry_after_ms</tt> field
- Broker MUST NOT queue intents indefinitely (maximum queue time = <tt>ttl</tt>)</t>
        <t indent="0" pn="section-7.5-3"><strong>Queue Delivery Protocol</strong>:
1. Agent Offline Detection: Broker detects agent offline
2. Queue Intent: Insert into queue with <tt>expires_at = timestamp + ttl</tt>
3. Send ERROR: Notify sender with <tt>AGENT_OFFLINE</tt> and <tt>retry_after_ms</tt>
4. Agent Reconnect: When agent comes online, broker delivers queued intents in priority order
5. Delivery Ordering: Process queue as FIFO within each priority level
6. Retry Logic: If delivery fails, increment retry_count and retry after exponential backoff
7. Expiration Cleanup: Periodically purge expired intents</t>
      </section>
    </section>
    <section anchor="security-considerations" numbered="true" removeInRFC="false" toc="include" pn="section-8">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <section anchor="authentication" numbered="true" removeInRFC="false" toc="include" pn="section-8.1">
        <name slugifiedName="name-authentication">Authentication</name>
        <ul spacing="compact" bare="false" empty="false" indent="3" pn="section-8.1-1">
          <li pn="section-8.1-1.1">
            <t indent="0" pn="section-8.1-1.1.1">All messages MUST be signed with Ed25519</t>
          </li>
          <li pn="section-8.1-1.2">
            <t indent="0" pn="section-8.1-1.2.1">Signatures MUST be verifiable using public key from <tt>from_did</tt></t>
          </li>
          <li pn="section-8.1-1.3">
            <t indent="0" pn="section-8.1-1.3.1">Unsigned messages MUST be rejected</t>
          </li>
        </ul>
      </section>
      <section anchor="identity" numbered="true" removeInRFC="false" toc="include" pn="section-8.2">
        <name slugifiedName="name-identity">Identity</name>
        <ul spacing="compact" bare="false" empty="false" indent="3" pn="section-8.2-1">
          <li pn="section-8.2-1.1">
            <t indent="0" pn="section-8.2-1.1.1">Agents MUST have a valid <xref target="W3C.DID" format="default" sectionFormat="of" derivedContent="W3C.DID"/></t>
          </li>
          <li pn="section-8.2-1.2">
            <t indent="0" pn="section-8.2-1.2.1">DIDs MUST be resolvable to DID documents containing public keys</t>
          </li>
        </ul>
      </section>
      <section anchor="rate-limiting" numbered="true" removeInRFC="false" toc="include" pn="section-8.3">
        <name slugifiedName="name-rate-limiting">Rate Limiting</name>
        <t indent="0" pn="section-8.3-1">Implementations MUST enforce rate limits:
- Default: 100 intents per minute per agent
- Burst: Up to 200 intents in 10-second window
- Discovery queries: 10 per minute per agent</t>
      </section>
      <section anchor="replay-protection" numbered="true" removeInRFC="false" toc="include" pn="section-8.4">
        <name slugifiedName="name-replay-protection">Replay Protection</name>
        <t indent="0" pn="section-8.4-1">Recipients MUST reject duplicate messages with the same <tt>(from_did, id)</tt> seen within <tt>ttl + 60000ms</tt>.</t>
      </section>
      <section anchor="dos-protection" numbered="true" removeInRFC="false" toc="include" pn="section-8.5">
        <name slugifiedName="name-dos-protection">DoS Protection</name>
        <t indent="0" pn="section-8.5-1">Implementations MUST:
- Validate message signatures before processing
- Enforce TTL (drop expired messages)
- Limit negotiation rounds (max 10)
- Reject messages exceeding 1MB payload size
- Require attachments by reference (URLs) rather than inlining large binaries</t>
      </section>
      <section anchor="replay-protection-and-delivery-semantics" numbered="true" removeInRFC="false" toc="include" pn="section-8.6">
        <name slugifiedName="name-replay-protection-and-deliv">Replay Protection and Delivery Semantics</name>
        <ul spacing="compact" bare="false" empty="false" indent="3" pn="section-8.6-1">
          <li pn="section-8.6-1.1">
            <t indent="0" pn="section-8.6-1.1.1">Recipients MUST reject duplicate messages with the same <tt>(from_did, id)</tt> seen within <tt>ttl + 60000ms</tt></t>
          </li>
          <li pn="section-8.6-1.2">
            <t indent="0" pn="section-8.6-1.2.1">Implementations MUST allow a clock skew of +/-60000ms when validating <tt>timestamp</tt></t>
          </li>
          <li pn="section-8.6-1.3">
            <t indent="0" pn="section-8.6-1.3.1">At-least-once delivery is RECOMMENDED; senders MUST use UUID v4 <tt>id</tt>s and recipients MUST make intent handling idempotent with respect to <tt>id</tt></t>
          </li>
        </ul>
      </section>
      <section anchor="capability-attestations" numbered="true" removeInRFC="false" toc="include" pn="section-8.7">
        <name slugifiedName="name-capability-attestations">Capability Attestations</name>
        <ul spacing="compact" bare="false" empty="false" indent="3" pn="section-8.7-1">
          <li pn="section-8.7-1.1">
            <t indent="0" pn="section-8.7-1.1.1">Agents advertising capabilities SHOULD provide Verifiable Credentials (VCs)</t>
          </li>
          <li pn="section-8.7-1.2">
            <t indent="0" pn="section-8.7-1.2.1">VCs MUST conform to <xref target="W3C.VC" format="default" sectionFormat="of" derivedContent="W3C.VC"/></t>
          </li>
          <li pn="section-8.7-1.3">
            <t indent="0" pn="section-8.7-1.3.1">Discovery indices MAY reject advertisements without VCs</t>
          </li>
        </ul>
      </section>
      <section anchor="timeouts" numbered="true" removeInRFC="false" toc="include" pn="section-8.8">
        <name slugifiedName="name-timeouts">Timeouts</name>
        <ul spacing="compact" bare="false" empty="false" indent="3" pn="section-8.8-1">
          <li pn="section-8.8-1.1">
            <t indent="0" pn="section-8.8-1.1.1"><strong>Intent delivery</strong>: 60 seconds default TTL</t>
          </li>
          <li pn="section-8.8-1.2">
            <t indent="0" pn="section-8.8-1.2.1"><strong>Negotiation per round</strong>: 5 seconds default</t>
          </li>
          <li pn="section-8.8-1.3">
            <t indent="0" pn="section-8.8-1.3.1"><strong>Overall negotiation</strong>: 30 seconds default</t>
          </li>
          <li pn="section-8.8-1.4">
            <t indent="0" pn="section-8.8-1.4.1"><strong>Discovery query</strong>: 10 seconds default</t>
          </li>
        </ul>
      </section>
      <section anchor="outlier-detection" numbered="true" removeInRFC="false" toc="include" pn="section-8.9">
        <name slugifiedName="name-outlier-detection">Outlier Detection</name>
        <t indent="0" pn="section-8.9-1">Discovery indices SHOULD flag agents with:
- Trust score &lt; 0.3
- Capability embeddings &gt;3 standard deviations from cluster mean (potential false advertising)
- Success rate &lt; 50% over last 100 intents</t>
      </section>
      <section anchor="discovery-scalability" numbered="true" removeInRFC="false" toc="include" pn="section-8.10">
        <name slugifiedName="name-discovery-scalability">Discovery Scalability</name>
        <t indent="0" pn="section-8.10-1"><strong>Phase 0.1 Architecture</strong>: Centralized discovery index using PostgreSQL with pgvector extension for semantic search.</t>
        <t indent="0" pn="section-8.10-2"><strong>Vector Indexing</strong>: Discovery indices SHOULD use Approximate Nearest Neighbor (ANN) indexing for efficient semantic search at scale.</t>
        <t indent="0" pn="section-8.10-3"><strong>Recommended Algorithm</strong>: HNSW (Hierarchical Navigable Small World)
- <strong>Structure</strong>: Multi-layer graph with hierarchical routing
- <strong>Parameters</strong>: <tt>m = 16</tt>, <tt>ef_construction = 64</tt>, <tt>ef_search = 40</tt>
- <strong>Distance Metric</strong>: Cosine similarity
- <strong>Performance</strong>: ~10ms search latency for 1M agents, ~99% recall</t>
        <t indent="0" pn="section-8.10-4"><strong>Scaling Strategies</strong>:
1. <strong>Vertical Scaling</strong>: Increase HNSW parameters, use NVMe SSDs, scale PostgreSQL memory
2. <strong>Horizontal Scaling</strong>: Read replicas, connection pooling (PgBouncer), Redis caching
3. <strong>Partitioning</strong>: Capability sharding, tag-based routing, geographic partitioning
4. <strong>Query Optimization</strong>: Pre-filtering, batch queries, approximate search</t>
        <t indent="0" pn="section-8.10-5"><strong>Performance Benchmarks</strong> (Phase 0.1 targets):</t>
        <table align="center" pn="table-1">
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Agent Count</th>
              <th align="left" colspan="1" rowspan="1">Index Size</th>
              <th align="left" colspan="1" rowspan="1">Build Time</th>
              <th align="left" colspan="1" rowspan="1">Query Latency (p95)</th>
              <th align="left" colspan="1" rowspan="1">Recall@10</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">1K</td>
              <td align="left" colspan="1" rowspan="1">2 MB</td>
              <td align="left" colspan="1" rowspan="1">5s</td>
              <td align="left" colspan="1" rowspan="1">2ms</td>
              <td align="left" colspan="1" rowspan="1">99.5%</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">10K</td>
              <td align="left" colspan="1" rowspan="1">20 MB</td>
              <td align="left" colspan="1" rowspan="1">45s</td>
              <td align="left" colspan="1" rowspan="1">5ms</td>
              <td align="left" colspan="1" rowspan="1">99.2%</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">100K</td>
              <td align="left" colspan="1" rowspan="1">200 MB</td>
              <td align="left" colspan="1" rowspan="1">8 min</td>
              <td align="left" colspan="1" rowspan="1">12ms</td>
              <td align="left" colspan="1" rowspan="1">98.8%</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">1M</td>
              <td align="left" colspan="1" rowspan="1">2 GB</td>
              <td align="left" colspan="1" rowspan="1">90 min</td>
              <td align="left" colspan="1" rowspan="1">25ms</td>
              <td align="left" colspan="1" rowspan="1">98.0%</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="lite-mode-for-resource-constrained-agents" numbered="true" removeInRFC="false" toc="include" pn="section-8.11">
        <name slugifiedName="name-lite-mode-for-resource-cons">Lite Mode for Resource-Constrained Agents</name>
        <t indent="0" pn="section-8.11-1">For lightweight agents (e.g., IoT devices, mobile, embedded systems), implementations MAY use a minimal envelope to reduce payload size and processing overhead.</t>
        <t indent="0" pn="section-8.11-2"><strong>Required Fields</strong>: <tt>version</tt>, <tt>msg_type</tt>, <tt>id</tt>, <tt>timestamp</tt>, <tt>from_did</tt>, <tt>to_did</tt>, <tt>sig</tt></t>
        <t indent="0" pn="section-8.11-3"><strong>Optional Fields</strong> (MAY be omitted):
- <tt>ttl</tt> (default: 60000ms)
- <tt>trace_id</tt> (no distributed tracing)
- <tt>to_query</tt> (explicit addressing only)
- <tt>capabilities_ref</tt> (no VC attestations)
- <tt>attestations</tt> (trust by DID only)
- <tt>qos</tt> (default: all 0.5, bid 0)</t>
        <t indent="0" pn="section-8.11-4"><strong>Lite Mode Constraints</strong>:
- Lite mode SHOULD NOT be used for high-stakes intents
- Agents using lite mode MUST still provide valid Ed25519 signatures
- Discovery indices MAY reject lite mode advertisements
- Brokers MAY apply lower trust scores to lite mode agents by default</t>
      </section>
    </section>
    <section anchor="cbor-encoding-optional" numbered="true" removeInRFC="false" toc="include" pn="section-9">
      <name slugifiedName="name-cbor-encoding-optional">CBOR Encoding (Optional)</name>
      <t indent="0" pn="section-9-1">For efficiency, implementations MAY use CBOR (<xref target="RFC8949" format="default" sectionFormat="of" derivedContent="RFC8949"/>) encoding:</t>
      <t indent="0" pn="section-9-2"><strong>Key Map (v0.1)</strong>:
- 1: version
- 2: msg_type
- 3: id
- 4: timestamp
- 5: ttl
- 6: trace_id
- 7: from_did
- 8: to_did
- 9: to_query
- 10: schema
- 11: qos
- 12: capabilities_ref
- 13: attestations
- 14: payload
- 15: sig</t>
      <t indent="0" pn="section-9-3">CBOR encoding SHOULD be negotiated during ADVERTISE or DISCOVER phase.</t>
    </section>
    <section anchor="extensibility" numbered="true" removeInRFC="false" toc="include" pn="section-10">
      <name slugifiedName="name-extensibility">Extensibility</name>
      <section anchor="custom-intent-types" numbered="true" removeInRFC="false" toc="include" pn="section-10.1">
        <name slugifiedName="name-custom-intent-types">Custom Intent Types</name>
        <t indent="0" pn="section-10.1-1">Agents MAY define custom intent types beyond the core set. Custom intents MUST:
- Include <tt>@context</tt> with unique URI
- Include <tt>version</tt> field
- Include <tt>embedding</tt> field
- Include <tt>budget</tt> constraints
- Register schema URI in public registry (future)</t>
      </section>
      <section anchor="custom-negotiation-terms" numbered="true" removeInRFC="false" toc="include" pn="section-10.2">
        <name slugifiedName="name-custom-negotiation-terms">Custom Negotiation Terms</name>
        <t indent="0" pn="section-10.2-1"><tt>Proposal.terms</tt> field allows extensible negotiation parameters. Common extensions:
- <tt>privacy_guarantees</tt>: ZK proof requirements
- <tt>sla_guarantees</tt>: Service level agreements
- <tt>data_retention</tt>: Data retention policies</t>
      </section>
      <section anchor="versioning" numbered="true" removeInRFC="false" toc="include" pn="section-10.3">
        <name slugifiedName="name-versioning">Versioning</name>
        <t indent="0" pn="section-10.3-1">AINP uses semantic versioning. Breaking changes MUST increment major version. Phase 0.1 is backwards-compatible within 0.x series.</t>
      </section>
      <section anchor="lite-profile-trusted-networks" numbered="true" removeInRFC="false" toc="include" pn="section-10.4">
        <name slugifiedName="name-lite-profile-trusted-networ">Lite Profile (Trusted Networks)</name>
        <t indent="0" pn="section-10.4-1">In trusted or closed-network deployments, the following simplifications are PERMITTED:
- Omit <tt>capabilities_ref</tt> and <tt>attestations</tt> if peers are pre-authorized
- Prefer JSON-LD for small payloads; negotiate CBOR for payloads &gt; 4KB
- Allow <tt>to_query</tt>-only routing within a single administrative domain</t>
        <t indent="0" pn="section-10.4-2">Nodes MUST still sign messages, enforce TTLs, and implement replay protection.</t>
      </section>
    </section>
    <section anchor="success-metrics" numbered="true" removeInRFC="false" toc="include" pn="section-11">
      <name slugifiedName="name-success-metrics">Success Metrics</name>
      <section anchor="route-success-rate" numbered="true" removeInRFC="false" toc="include" pn="section-11.1">
        <name slugifiedName="name-route-success-rate">Route Success Rate</name>
        <t indent="0" pn="section-11.1-1"><tt>
route_success_rate = (intents_delivered_correctly / total_intents_sent) × 100%
</tt></t>
        <t indent="0" pn="section-11.1-2"><strong>Target (Phase 0.1)</strong>: &gt;=95%</t>
      </section>
      <section anchor="latency-p95" numbered="true" removeInRFC="false" toc="include" pn="section-11.2">
        <name slugifiedName="name-latency-p95">Latency (p95)</name>
        <t indent="0" pn="section-11.2-1">95th percentile time from INTENT sent to RESULT received.</t>
        <t indent="0" pn="section-11.2-2"><strong>Target (Phase 0.1)</strong>: &lt;=2000ms</t>
      </section>
      <section anchor="negotiation-completion-rate" numbered="true" removeInRFC="false" toc="include" pn="section-11.3">
        <name slugifiedName="name-negotiation-completion-rate">Negotiation Completion Rate</name>
        <t indent="0" pn="section-11.3-1"><tt>
negotiation_completion_rate = (negotiations_accepted / total_negotiations) * 100
</tt></t>
        <t indent="0" pn="section-11.3-2"><strong>Target (Phase 0.1)</strong>: &gt;=80%</t>
      </section>
      <section anchor="false-route-rate" numbered="true" removeInRFC="false" toc="include" pn="section-11.4">
        <name slugifiedName="name-false-route-rate">False Route Rate</name>
        <t indent="0" pn="section-11.4-1"><tt>
false_route_rate = (intents_misrouted / total_intents_sent) * 100
</tt></t>
        <t indent="0" pn="section-11.4-2"><strong>Target (Phase 0.1)</strong>: &lt;=5%</t>
      </section>
      <section anchor="abuse-resilience" numbered="true" removeInRFC="false" toc="include" pn="section-11.5">
        <name slugifiedName="name-abuse-resilience">Abuse Resilience</name>
        <t indent="0" pn="section-11.5-1">Detection rate of:
- DoS attacks (&gt;1000 requests/min from single agent)
- Sybil attacks (multiple DIDs from same source)
- False capability advertising (capability mismatch &gt;0.5 cosine distance)</t>
        <t indent="0" pn="section-11.5-2"><strong>Target (Phase 0.1)</strong>: &gt;=90% detection rate</t>
      </section>
    </section>
    <section anchor="iana-considerations" numbered="true" removeInRFC="false" toc="include" pn="section-12">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t indent="0" pn="section-12-1">This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references" pn="section-13">
      <name slugifiedName="name-references">References</name>
      <references anchor="sec-normative-references" pn="section-13.1">
        <name slugifiedName="name-normative-references">Normative References</name>
        <reference anchor="RFC2119" quoteTitle="true" target="https://www.rfc-editor.org/rfc/rfc2119" derivedAnchor="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 indent="0">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="RFC8949" quoteTitle="true" target="https://www.rfc-editor.org/rfc/rfc8949" derivedAnchor="RFC8949">
          <front>
            <title>Concise Binary Object Representation (CBOR)</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="December" year="2020"/>
            <abstract>
              <t indent="0">The Concise Binary Object Representation (CBOR) is a data format whose design goals include the possibility of extremely small code size, fairly small message size, and extensibility without the need for version negotiation. These design goals make it different from earlier binary serializations such as ASN.1 and MessagePack.</t>
              <t indent="0">This document obsoletes RFC 7049, providing editorial improvements, new details, and errata fixes while keeping full compatibility with the interchange format of RFC 7049. It does not create a new version of the format.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="94"/>
          <seriesInfo name="RFC" value="8949"/>
          <seriesInfo name="DOI" value="10.17487/RFC8949"/>
        </reference>
        <reference anchor="W3C.DID" target="https://www.w3.org/TR/did-core/" quoteTitle="true" derivedAnchor="W3C.DID">
          <front>
            <title>Decentralized Identifiers (DIDs) v1.0</title>
            <author>
              <organization showOnFrontPage="true">W3C</organization>
            </author>
            <date year="2022" month="July" day="19"/>
          </front>
        </reference>
        <reference anchor="W3C.VC" target="https://www.w3.org/TR/vc-data-model/" quoteTitle="true" derivedAnchor="W3C.VC">
          <front>
            <title>Verifiable Credentials Data Model v1.1</title>
            <author>
              <organization showOnFrontPage="true">W3C</organization>
            </author>
            <date year="2022" month="March" day="03"/>
          </front>
        </reference>
      </references>
      <references anchor="sec-informative-references" pn="section-13.2">
        <name slugifiedName="name-informative-references">Informative References</name>
        <reference anchor="RFC8785" quoteTitle="true" target="https://www.rfc-editor.org/rfc/rfc8785" derivedAnchor="RFC8785">
          <front>
            <title>JSON Canonicalization Scheme (JCS)</title>
            <author fullname="A. Rundgren" initials="A." surname="Rundgren"/>
            <author fullname="B. Jordan" initials="B." surname="Jordan"/>
            <author fullname="S. Erdtman" initials="S." surname="Erdtman"/>
            <date month="June" year="2020"/>
            <abstract>
              <t indent="0">Cryptographic operations like hashing and signing need the data to be expressed in an invariant format so that the operations are reliably repeatable. One way to address this is to create a canonical representation of the data. Canonicalization also permits data to be exchanged in its original form on the "wire" while cryptographic operations performed on the canonicalized counterpart of the data in the producer and consumer endpoints generate consistent results.</t>
              <t indent="0">This document describes the JSON Canonicalization Scheme (JCS). This specification defines how to create a canonical representation of JSON data by building on the strict serialization methods for JSON primitives defined by ECMAScript, constraining JSON data to the Internet JSON (I-JSON) subset, and using deterministic property sorting.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8785"/>
          <seriesInfo name="DOI" value="10.17487/RFC8785"/>
        </reference>
        <reference anchor="Ed25519" target="https://ed25519.cr.yp.to/" quoteTitle="true" derivedAnchor="Ed25519">
          <front>
            <title>High-speed high-security signatures</title>
            <author initials="D. J." surname="Bernstein">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="N." surname="Duif">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="T." surname="Lange">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P." surname="Schwabe">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Yang">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2011" month="September" day="26"/>
          </front>
        </reference>
      </references>
    </references>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.a">
      <name slugifiedName="name-authors-address">Author's Address</name>
      <author initials="E. P." surname="Nagulapalli" fullname="Eswara Prasad Nagulapalli">
        <organization showOnFrontPage="true">Servesys Labs</organization>
        <address>
          <email>contact@servsys.com</email>
        </address>
      </author>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA9V963LayLbwf56ii6mpAQ/CgG8xe5LaGOOEiW8DxDl775rC
AjWgsZDYkrDDJHN+ngf4/nwPdN7kPMm3Lt2tFuDYSeZM1ZeaSYTU6svqde+1
lhzHKaR+GsimKLa6zqWb+vdSXMr0IYrvxHUcpdE4CkSp1b28LotJFIu+nLth
6o9FayrDVLSj+XwZ+mN4MQqLBXc0iuV9U2B783rBi8ahO4cxvNidpI7rhwtn
oR46tVoB3pbTKF41RZJ6BX8RN0UaL5O0Uasd1xoFN5ZuU3TDVMahTAs4tWkc
LRd4z5MLCX/BTPrL0dxPEphG4U6uoJHXLAjhwFSEi1NN6Feipw8dpH44pZue
HEOD2A3836UnfOzOT1f0yIdRoXP5YTxzw6mkeyFMNvVpxUIvo5CkbugN3SAK
YZ0rmRQWPo8Pj3nkKE5jOVHTWM3N9TiaL9xxyveXI/snXM9p6gV3mc6imHqE
/wXMK2mKTlVcV8WlO10G7sINAp8eMag7yYMbu7AHbuJ6G22ieNqErYzvZbJK
xLk7Sug2AMcPmjBsmMIU/p5AA3hehWkUCmEUzwk9cBK9s3ajXj9Wly+OXhzo
y+N9uvt+r1097Z42qVuNYac5OHcJzhNfxokoQdukLO7r1VqRXvEAJZqiUWs0
nNqRUz+mmxkQzBpgHB7CjacybYpZmi6S5u7uw8ND9WGvCm12B71dz/eccRTL
XTWzm3Z+Yjcyhom4o0CKdixpXm6QiFM3dcVF5MkAZ1bfnNke/PdtM7sfO9Ch
68xxlN1CwQ8nNpw7XuPggOGczfaNP505yUICDGd0KcfLGBBWJP40dNNlLJPi
llk5jDSnVfFzVZwALSWp9MP8w8uqOF36k/zNQRUwhJHfuguY1x/PHtzR2v2T
qviHS4SVwaped2rHTuNwK0Akr7E6jqurRTWNAAqO4wjASUAVIITCYOYnAnjI
EmlBwMLHiDWJSGdSPM207gG/kFJr1XpFuBkDGNucy9Ax8AKEIoAWmd0a9YsR
jCFlmPGUKnO6WC4CdwxTCiLuzxm5CfShmIx48NPZBuupiNEqlQ6sUrpzGDeA
VcQrbqsG1jdh4qEH2ztfAIbCVLxk5t7BcNR2vgxS34FOoYnFmtTUZIhonaj5
AjcSnp+MI+hVSHc8ExFAMYaZiDGwh5EfIB7FLt1MYSTokcGqV1YxY0gBDHme
IJZFYTSPlkmgJmrgBWtbjhEhPbUiNeVxvFqk0TR2FzOAh8bfKm/83Pe8QBYK
3yHLjyMPekCmXhjErufjpRuYWeltAw4yaF/vdq8r4s1gAH/3Lwaw9w8ylvkd
jQGiROcIe7EOe72/c4CMH0pre4GmaPquWLg4j+lcJDN/AmjspwLR0x7E7PTa
Nm7iT4XhMVr6Qer4oYA9BHRFUUIIYm0nQ9b13EXK21sosJCdAaYhciMs7kF2
Jc2CI977sHDmJJpgFKKXfu5fXTrnp+JH0T656pWh8YVMEpgOoMq9DKKFtW1b
d8swGXi1ywtMxjNYckKLR7qCcWh9BAAkYhgZmxvlwfU86CDRU6RhnpIO8P7l
FslLgzIN8JggvWCvkiUOeKpwfUXQ0+Q4l4iffjIHwfrdd2IAaOyHURBNV8hs
pAD9QaACkYjixbv+oFjhf8XlFV33Or+86/Y6p3jdf9M6PzcXukX/zdW789Ps
KnuzfXVx0bk85ZcvWv8o8r4Wr64H3avL1nkRQAaEZzM8UH+QbEeSoQmomAJ8
XMK5ceyPiLjEx49KJv/xRxVX9R3Ac+KHPoO+sLND+trODuhmoUWyoJZM0gcc
gpUeZgNAH9EkQ+McVtJ819Ui6J9RgQawWJ2mHN4z6NRVqPFDIqaRG1Sgq3Gw
pI7lHNaCVwmzu4x56P5oIZkGykik1qTVNsV6NYYtE+waEYg6tbgcgw8wO6Zu
LdzCHi8srppDNQmAGAU+UD/0a3BNwOpgvGgZgxioMGes5EcEkYXjtM0M1mCl
56MA9TADwtDQgl5CwAgbWkSEwAoD2IAlki9xXgNCHGqASrS4kWNYY7Ymzwe0
SpiPwv4s1d4kqCAJFLl32D0zSppnRcxAq03wApVTQL9wLHlxKfQVIKdEShKt
GNhmKpl1XAHZ3fvyQfEphJSfAAeFpU0ATDDvFSBVs1C4vb0t/Oh87s+PhU+a
05zjW2LtzyeRcRYje0pK4pSf0bnNV9ZHgM4vtnKXp7vtKX6zZdL2lLUp8nSH
YOOgUgSSa6NL6PB6tkqAzQe4iWGyAHsjk4oyHVefhgRuRSGTKPEyTJDRAO4h
E4UdM4IXAMVdM+9+L0f9aHwnU9B9SQLv7mWzQH7EEumM2D0x3U44jhBRFXrM
WQYlghhtslzQ9EegnaA429lRUgux+M0S4OaA4PaQUVUE4N8dEDyq0Tl5cvt3
tGPkh/R2UyjHIOZihd7UP8pC7PzED12QFlLNTpSIr6JV88cfbADLCchSH1GB
FqhtzkIXlbO5ZnWJUJw/05ZMnx5oO/CP0eNAIVcy2Wel1pMTF1COhjO7QVzd
yOqOktUAviAQW0AI4uIBJPaCpQPs4KZ0Z9r7LYHZfwTNvKg05SKYGDherVjB
u/NkOkxXC4m3u5eDzuWA7/se3jk4qMkX+7WaIxvHI2e/7u077lH90NnfPzw8
ONiHJzXVD7IKYJ3zBbxWP2q8aBwc09MaP00DuL+X/QY+JIc8Bl077mhcb+xx
X5M4mg89fgr/NEFgN38/vLirVqtqsOizj1lfwcfaCEGfRNWT97tKldlV3GM3
lv9ewryduZRIpLv3de7i31EC738ki6a4BIsmHK/gRq16VOF7oKwDCrvAKun2
C3U7BEoKUm5aV/ckCHyg2/cSrLmUnhyoJyNaxAH8+INGXbirIHLx3kcBq1F3
QSXDtaDgO9w3+hmutvAH0/R3RHEKAc58GXjAsB1xq7b8VpQAK0jl1MpNuZlZ
UqpVxWCWwg/sQaPH9i40umILaCAl6CnwhoO/E6Ao7MH3tr/77l33VNzvs36n
+vGVVsjKLL5t0Ao6CZcg/uJ8J6H/QchFBJbO3A9AbEtgCl5Cb6bB9ncG0KWT
Rg4q7Ug8Gy8q3Nw+bVA54eZoiUoatkRSp6XgOtIZ8i0jZbE3jcvbe+ujdytG
/QVZkfKqKMAxklvvaSUS3uuBzr8gLkWv4tgecOBxqhUjeEF3Agger6CbaPQb
NMh1Y2QUtRElN0AnHBvcoJPqKVQEb22mXTn0gpoo09T2BWrWp3i1eNfr4itA
XtaMrPa/LF3S3kCNQP+VP5Zkkc1BK0FLgecBb6uhFcFsX11rsQiMA4AbarVh
zfZi8YlL8afb16E8NZl5hJjDFGk4f46DD5AExMfvMnJQotBDvV25NyZREEQP
bLNklIRaE8yldXrT6Q26/c4t0OqSdNKctmkb+yuYjic/4Gun3X77Ct68RWDi
E0QO5R7I+QHsxsNep//ufHDbtEwqQCOQUkQSl53XV4Nua4BTudjuj8BmLD9u
Ga21EaEgj8/NID0JmgMoWizJo4Uy+0ERjybYsNPrXeECOnFMRj23JvhuQZDr
DEE+foe4USj8EvVtvGEvCfTvR3FmQ2h7kWxHpdwLN9CukHX5mZcCWjHb3RU1
p14hVVmg6gh7c8/u5U0ZkXvDJ0ewmLtTMOOWHvrZ1sTH+hjGewgIPXXJubdV
uGRvzCO0IbJ5FDKhs6ZkwxuD6E6CLgF2Y0iK3hhsMx+wphRGoQNbTXyhrGXO
zs61Aqdou8F4GRjb6hFVaaxaSYPsej9ACVWGgrnzUpQUvMWOeBiq67L4ESjY
rIYeZT/xacFaUklBk5qpa+ohBzN6qu6UC673GxhV0htaMzGXPyJ0oT2MNisB
GMWugL+HCbwJcCGovJ+hT+rW3L5FpS+MPOkAB5z4U7DpEBNLlqtA64OgN9U0
zMtVBPCpUhR5omgJI3EYaMDUatW9W75nQcW+rUGA9xrqnlqsvodUlVmtiml8
/G6D2RcKZ7aebVhPRXOXJRC0ZYDjW75M1snIsoNRqznz0e/FHTzMIrKEUaB4
ywARhbSyhHUyY/1m2pBDvBdo+Qx4TLrXaMWxu/pX/WDv8FelKbpTVOT+VVR9
4tsVUcStCT03Lv7KSrAfDulIKlPxinP3wxCxFQA9nGMfB1p5xSfjiBrXa5kK
JvpGNmhD6GJdZ1deRPZaaJlCTNCTqYtTtBxwW0QMoQWOg++DAjdmB0mhXkVu
6JNzLTMFJqQJAr5/0F4FEnBllBwA5ygkNEARrQ2hoxcHKFkbVTz5W4CSA8Tb
choHh2DOgPgBppt/r7BXpWXzY1qIXhVQzT0SO2jnhf0qG4TSkp9gePLiCgdV
9PUo4UtzxglKYwLt7PABjhLl+WV3PtAxgv02Tr8n54Cc+i7oYFl/ezasYjwT
I2gqYD0Fmv3toMFF0CytY5q1bV6gDB+T95EmlKmGaECvu70kOy+f9JoWWkw7
hGEzF9bskk6I7CZCx+cUl2TploxCbIFDl9j2AjhC5AFERcnYo2XiNdq8uhXo
3Q0mzljGNAFvzW0MjRL9woMc0Qvv5UhJWj+bN1PK2mJFXxut68ziM1aerQsh
iRPr/6gEwDqb6a+zFOX7VnyAlBVYCzWv6D5shvPRSJbi6HB/CweaMAcSLrIg
0wetYY6cAniSfVPb3JO9ht2YDgrxPmBq6PpNVJodMw9nz0nmoKEU1Qt/mKk+
i89RS8sNAEaecgPwcvF8gZUVYziPs/PSqvzgomTH8+Ld+/GuNRL18Af8/auy
7pmVKvOZXI+sAWnD1zgpEwu0RcspSc2PzdSUhzLXCaKA8VfaRrjyRrDjUr1S
sMAFuDF2V0N0tPEwR9qoD9wkHS4XeK7pZX6MBvkxjJFugYQg/mWg+tUIDO3z
7LNLYs08SMCwJZetUqPJMFhzGQl0DumTN2IA7D+WSLva8voCP1lH45koZZds
WP1NSyJb0OKJMKAMqDuH+7doP50svalkJyrwLD9Mc6dC2hJADoCmVac/GF50
OoPu5WsFC2JNBA40FFGXvP0KD87tGhPRANjqEFLPkt11D9DfNYX2eIALfs4P
txLRFn7xCK+wgVjMSCLHJraxiC9gD8p1pE9WshmBWQQ3/AXcZ/zVzBUZ6696
7CXzwiEIEBB1CTnv1LNFLCcyBmQfknOG+mjUGgdOvebUjgb1/WatBv/903Sm
DSqc970fp2DB6fVYmGIzAuz4dyB5fKM1B7E6dnfPo2TYCqcykEnGsh5V0vgp
qHUhGKhjOZyBdYfPG/uGVzGERoSyGXhIuWMlnPS7SnabbF4aRN3EaYINySPv
aSZhaYSt6+ve1U3rfKjQ/RvQ3F3gAbAbOArfvxrPdUebiN5STxTCPxvTDZaT
aM5h8hoWP46ValXGFb0AYxz5nKGOvDi/Vo9BI52gCwBPFALfYEaRjVjGB41q
S8BZtt+L7/qnuiWae0a3xGe/LIFAZByQAySNxnfZFFwPZQo20vherw0I2Qnf
9dgERhk/Tl3oJkxmUUAy5vOUgHDxofXQTVN0hKpZgoSVnyeCvxLN++9OLrqD
Yffy7OobMDzBCD8Mk5hEX43c+T7W8JtCCNMuPPtLURtPrgxeo06uEcX29hfJ
/KgTi3SDpawXjbbCcBoC17XXbmsY3KKKwDJ9o/UF+BDIexYYgB2osINeU9EU
h2BHHr+IwC5Z2Vhn2L/nrnAlxxlPBfkDLw7dCdCIQsScbvUkHo/vwughkN4U
PUR/PiofbMPkvW2YXD/YxOTu5c1Vt935Biz2w/sIONJXY3D2/hr2dvnBX4q6
ajLqoA6A4xDjq9XqGovQhrUtNG2d0SHdIw8Mcy7WYQeqtVrx8ywame7QT+U8
M/OEbY+tm3rKLTyR0ras/r10KYAk47l0exn6KTr72OzJT0gtI3UD+5m2vejf
TGGSQ48NCiUc6k6tvikcgOYR74dzNrlJRLAljXv0ACRipMRTlISrjh6epKB6
7X+PhLYJg7Nep3N21bsYXl4NvoWQJrGUyC0d0OC+npx0L5v0dKaeXEL3fylR
gYxCiwobKptC4BKN7jKKPKIAPIlZUvQBqDfzuRuvLBrigwBsBg/uvOjBcH5Q
FNzxjOLKt5PLMg4eEyReNK4uvEnOIQH7baSXm52o7a61S/zf5RCjLhnnGvuZ
Ho72u5vMsINk5jYODpt82E8n2NuIiY9RdXgA/XB0cABxpSFG5K6GzGHwhG3/
4PAJk+JPUJK2kUV9G1nUt5CFNnj7nd7Nt0kYbfAmzOe+Xlcy7283eBUf/Wtp
g8fMzIBgOR+h3zuQ7l114n/QuzyVkb27AdHC3lH16Gg/8xoFNGFAnUZ1v368
b+5jhO8yeTu3NF+4+7uPsSvF433A3mJOp8HNHT74oUfs1gwq3RhtjtQ2CGov
BrXjPM/n6W22qx/pds9RoOQ4Wmf17hj94ENmHrhvFH0URfFIBkE2uHbrDZXk
8EjoLGZRGg1HyAK1Nvdrbh54IOEHuTlkJ6BFzEzIhliTwG/9FHAW2JYf3gnc
ueIXEVrDtka0+G0YQ47lnr2aDCprxFnbRp2HG9SZCxA0aU1ItfaDsyB6KBTs
O+Ry4zN8DupFA03q8HJ1pNkftHoD4bwSV2dnnR5etK/eXQ7g8ifrGi5b7Xbn
emB4ZvbnU3a18bR1cgW9459B96Jz9e5L3+91fu60B9mV4Ve5darz2se89FYY
gGLay6XPhkaRNkMzSsA6tOmhAQGDW4C1vIgS2mTtolLqWN3s+TrnzmhlYnzW
xl+sjZ+tZg+F7uJQGTZuo7gnEGkhY3667nXCzoBXTongbDsfZmfjXC4gmV26
+nyXQHOL2W8+OpPRxSFjfKBwBR61UYGWsWMeMe7AkxbwhEUqNEw56gI3lqIu
fqMIIQwkDikgg7AH3xphOOZaNIdCqFuOmIJVi2hMGrq3gSDtbNGbkZIXrX9Q
RLrj5ueG573AJCyACQMwPDUHFVmRkA1TjmN+KerCESV3lJQIBlVCGUqpI8jw
77LYBWL8YDeprLUoFwr+RGwO8Oql2LqTmG2FixnyYkplQzAaSCdy5t77UVyg
wNNr2CWOlVGoQwESE9D4TFgLnUT5Ice6rSMXxV5RjBiCES81oesoChoGo7Hd
IFgfxNoi+WEspZeI2wyxMZJh+5DE2FLKm0CGRkdlmr9QkBPFAF27cbqy8YAj
BPSBBBqPwT0FN2FzzG1S5/wlWZ1WKyI7FRGuPpfjsQ6E7aWuqPwP6+xYeSqT
ci6QKx9dTEmkVgh/lhZCR6Cv6fG1QsaMtyEVPsHdVDqKFbH6TL72mOud4OK4
rDXZt0abt8bGQLyPEGJDsy62Bn6jWJXik+zo6GCdI2pp/mwHf0Xk7h+sOf7F
I+cImTKQccMbWgtIGr1H6nh/Z+ddCDcwl4XyKQDHFRLNMfmB+Z4o2SHVnDSZ
YgYdRTLs7FwooFCSBKVBYOrbQe17uxOMC9jZ4VAb6WHTG1SsxIO6g8FzdLDJ
qRSUgWHTAaoHatJnbugAVak4OBM8VyLkoOgLpFUbGzjiIggk5VI1RQdz9zgj
gdmEl+jMQc8HfW7J0XLM42Hirek0pgAtfPkkju4kxvzxPalSYzhqIbEoghbC
EQ0ZD27P5PiuSUEOmDek8kaijDdTvIbFzy3+6VWEDICjJaswnUk0CTW7dfRs
VbTdQrpp4bCqkrPUxFmZIWXU5lO3GIymOBWOBrwzS9MA7c0EMr/RIfcAeDBh
SBqhR8K/l04/lYusQYFxy4RYEm4RuBccaYlweiLWklBLB1BmHaiwJ45rdtMx
JxLZWUKEaAYrzJvJRuolI4z4n//6P0ZPxGvGVwpF2dnhmMtseBQRiT40ZlAm
SzIUJssgJ+IP8HUOycTXs5DiPMZxGCgfZ2lwscKiYk+eD7Ivz0gwI/5pSQmN
9aSEF4d2nsK35SU8I/HA9e4xhCaRT6caaN/CWhip5tt2rKj2zj2VapBFMTye
VMDCKzubUIJkW7TNZ92wXxFx860uBdXHs4NhHnNs6Ll8W0DMhlsrFxYjtgXG
iEdCY8RngmPEY+Ex4vEAGfFYiIwdU/RYmIx4MlDG8mZ8Y7BM3ommuW2e/9gc
10bTL2c3un+b2xwePslt6o9ym711blP/DKsBJUb7MZ+VAkVhuRmFfnVgrdga
Wmuf5DyPnraF0T7mebWeZaG0hjc9zUa1ZHmaix5s56JHW7ho45lctP4MLqqx
9jQvAteE60YCBhdn4YhUoz3oXaQyE/7cD1yuB0J6aEVppchKYUdViYYEkBGJ
UyjIc3oh5VVo4rkCoxDzK1T8NhtPanoqlJeaKztznZpsuqGGyiWMXQ4xzAkf
KKPRfqS6w6e2CwGJxxOg4SnaIwVGkcfR0ZMk2FDeJpnGK3ZnWl5+Y2X0Mcnd
jT2VWNKGWWqvS/fypnXePR32u68vW4N3vQ4Fy7+7bL0bvLnqdf/ZOVU3+u+u
r0FN7UDT9pvORevW9pWQvwWUuuF5FyMiOv/R7nRO1atdePXsrNvugr42bPc6
p91B/9bOruleXQ7PWt1z1b7Tb/eu3g91EhLfu+medi7bnaHdGT05fXd93m3j
0CoLh/w7r3Es0CLPu5edW52i07tsnQ85xYaw4moyQUGg4xF/WcqlpHSm9+if
iY1eqGo+YI43vwAgXIYx1hnhVN0RGx7oqfg3dmJcAciZERHjrFaGj/VpXA9D
yv05bD2qvcFKTFw/0HHuNBHjT+F9GgzOhcTI5jG5mJp60vLDAg9FtfFAyX92
Yh+HXIMVOPUx08jKK8SwRZ63ylMhJwujPqiwyvtizbEpbjMkRx3VBnIR++OX
jX9H9atiM8VtHkl10LqZhq5FsQZDZB9U8QHBVALG6c+Xc9WGko9e8rLLGehO
NbC1haTsUxabettPZarNTjUDj+6oojJ6t9He4W4Z5Aj6BFRZnGCk5sE8Te3F
0E1hTgbQ4keB0+Pwew3hprgEDoBB8wxm7iCPtsTQ1oGGxg8vo4cbHMJ8m4Lw
Vefxw7AiCnHmBjEV8iU8W88CbZbjE8UwD7SNDPCu8A7gZFNnHqjFuok4655d
afcdldsx3VDcDRq4PZy3OI+m/ph8coYAENMTqvgQEyoLXiHZy8pIxjcZoQGk
oOKRviRG7vgO9qRwhMkPAGnlgg2kG2LRtGuYbOSh/AI8WaAkVMRh1svpBqqo
VDuiGF7uhaPzwbif4VgqCxcwE90uG/nnKpfFTvrAaN8sfUU3vM/Kb3FGxGcy
IRzxLlQdbwwYk/9auZ+7uowbTm8zBeLeDXzPTnvAajFYJSTrLImCe5oUoC9m
QeiKLIktg7OpMmx6VJ0BZDCVdNj0dWPvij8JquQQYFsq2nOapXnVDOotYHPZ
N0aXhLwUSB0n0PLdAifXsNoDotVrDjM1wUeSuTo4OukKc8m29k2LwHpWzBWk
qr5krP9E6wF0VuAt+cBfZrtB+43Jq4kLTOe2pPcOUNkr32KmcJh5tNMAyJ4O
3IBmWQc5jfq5kbeBEMF1gztoZwtaiVF8bIkesDHnOiPTVVBHCVHy4mhh0F5P
HSPUaetyPmPlC0eOCkDDNuqcxKyYXeeIDfWLE5NJjN4takzHkMIKu0BPIblQ
yZ9Wetc7T8q5ols+siXsL8BaaWKERSl8lfCzsTfECwwz0sH0lN//V2waVoHa
huQunXq6YhxE4zuR3MkHFOU/7jrqRT7cuedNpNSznMhtpQ4wrCR1IoRRphUk
wsqM/JsSC2pIzC/UVQOwrECi2GQeCHP0/yn/F9bgoPMF4HCg/tM97dRaIKgw
yZ0TsHI5kK0s2DaxGIz23ax79LSEVyW6xCP1Bks3bcJB+IenqnK0sgStmzYz
Kttm8LHwHKpUaneNA2lujAL0i0Kn9jFUwsdP3XyFMvTzHdaE1om01xxIhlrn
6m8BshJp4DsH66/kDp3CfGmlvY0BqHWeR9FU6pstSR9dpoGPVRGkYRKbEFEg
nwRuzj4iHTHz0ouf0DkG96zNtepQvdoTiTYJwLr0FYKTUAJlLUHROwe5KkqM
PCh+Jy56uC1UwC3ts4uVWf5PdLRANfjQT2Lze+aAZjF9kNI6/QYTqk1pHrvU
EkKqbSUBrjlVlUy9Bit6Gsv+L+eM4YvpPRWGAu6Vsj8pn/6TSBfGqHJ2JTXE
aqsfoCsc71F4Iw1SnsAHsi/FJXQDpAL/gq08gl5KrcvLMs+MsipzJXXWRhdY
vg69CDQNVOSwHiomyLSCKepRszlVBLrsvxelN4AS+BIlZl6CSTAlAutjwot4
H8WBVyY8sw/y1EEl1aISlKrIwJnZfen6THRca2oGUCzWHA+aD28roNNOhhwm
wOUK4f7hvrqv1vJS7NduNaZzIvYFaHD+mPYvSlDVzox3fThMcXzQFhv9Zx35
pupO2e0EwPqFqSf4n8fH3yPLg0Vz7JhL/K1PZaOmvszOzW4QP3F9qg2dCaOy
iThGIM0KJFRoXy9vLgCe/dOkwrti49RczqN4xWceb2BrfkcVKdd3D605jMuD
QRM8ZielnFhJFNEkS9fTE+AoYxmXK9Ac8Bi4KHk4+EgEz9GooJ3q0aLZZAYk
SjU5UneaL99QEVNp0lAXVhd8PsLp7FcLkD7+74ZHXcfSmfhY7YQrdaKnRetO
FT5eVgjO20HUme0WGKUhCHs3vssnzarip0m5WSh8MiWUUaH/xOQF6vHvEn6c
LP3AI14NP3iK52rDS4vjgzLc7dEm/x145KfCp1whr0/P+7H1LvQl6m+F+fNJ
NAQoNfrHQWI/mWe/srvHx9WD7/ka+6q9td+omc4+if2sM+j4sb4adl9ZZ59I
61WdfRIvUJHVT+pbJgZ9vai+sPq6yK/xdbbG45rpDJ5smRj1VdN9Icc+B15M
lYKJHHuqVojT1oFDyLG4CDVFQAToN+Rz47WQh240IEFDVQTnEWA3WKcskDD1
f5VglHuZaoNsxNAgibo4dUDMIEvyTzGSxFtSoZxMMyXVKNOPSRrNgEIVp+XQ
OVUqilidLhVVsWo+VUg5qtiqW8Uy1ipWgSBKtMe+r3QxF923KOHkweKKQPMG
640Ty7k6k6l8oZTG8lr9pZCOENfrLa0XNgI9H5iOb9c+Qst/Re1sPQ1zaLjX
m7awEqp4XPsGtGKvKqjyaBua7rhwkZk3yh6quILVQGrkeslwpZ3FlbHzih5h
CqfI6oYiZJaJqixrhS4YjcFonyznA9MHB7ukfhAYxZOt3o1aRclTOmXWaV67
NE4pFcW1WAQrAXo/GjJWKATioNWFqTWUKXVUjNYUBRQljSVlJhitIYxXj6M+
9ZCv16erYjQR7m/lSly4C1G6x+oFDPB6Uxc3gx+NptCYDb/2mmAUwL/7zcxF
BT8PmuilgovDptCICL+OmkKjPfx6Ac8idX1M14SKOGCtqarl4g8YHvAFr2Ds
dUTE2zAJG+vwFswnq5hUh+nALhYKtHhTYVBhD2COiRjwdNnB7Iw+irPzMopP
okKNHVYHtdKJdg9sJOi7ylSgulVZVQkAPmekizE3y6Wjj+QK/RBoWJK2nci0
qvuz89KbVEtYuT+zfHTSxZahD9BThcFMI1O5TjtHzROjvm95xnHFt2sJ6D1Q
jEiVT0ykPbn82LUT01OsfjZZIrGUbaDYFhGGqgBkbnXIWJWCNHTFErKHE61t
o2aa+46AUbWofMicAvKUXk7OoVudsDddQlOAj0xum+Kfb7kmllDBzpoob5PA
zbfUSU/kdwQSjGXWmBIQTbof1vjCWprmhqD8P+1/uGHAZ6U7gfaSTHG/N4+r
wBqkS8VkuSRrVoJAOTQpFk2/UbVKWfsJOTEfQKdLHPogQkoQUx6IWvUDDIiq
WDWTvgB1UNikKJF1B/iuCsJjCZRuyOwID5Bi9EgAP3V0KVMPVNKIkq7wqCxX
dI0qrpvk34RKMV93ehfdwaBzirtyhc6iLSKEPNJ5eeFPwGRGRumSY0o6XJ0f
LTbo6Jr8QaYmA1licw4CI1pP/mYF/xCxYxP9ULwS+29P2A8bPViyz0G5lCtD
j8VAMe5+itGWHioLVFEWC/p5EZa6KRQu8dTLlh4oJ4yrqGLcl4PBuTpNNCyZ
K+GvqGIyK/fEU7T1y/aO8mNFVCJHPUG3Kcfy4mTlUIUkUXAB1vpSzGKoHBXS
A2srxnqGsLxdQTkAQ90G602XxX//X9QXv9cnewNSvO36NajVvHp5fPA945Ct
XRcKxwdoIssYi+sgVtEBCpn9fHqGjifyDvGxLFpcEibG6tP2sX562SAdZktw
NIKPLjMw2EGlY9PAwMN6nKhQY+kZSNhPy2IHAfEUHF7UGA5n5L3gzclmQz6N
IW/N+pbM/YQeeI9sxDOG/+ml2oXWCCU56M9ATRyeZ3w87DqJJuQpj/rsT70D
xfkVhkwIlfSU7KLqThulkRwFFblgVkCj2Wsm5pi8/vwG+j5ZdccXGBRWwTLb
vVey7gME6ChevMLyb2M25T1l5Jc/i31gRXi5FVLdl9Zla+PcJf8VDOgHwxyp
paqvT5TW025lhWb6YyK5B/9SpeJ/LQDomZFi0jt9OeZlER4WBeWYvyxiq+Lu
K2xHXx959daUxkf+g5sF4IY3SMXrouKIu9TLpJE4R4GT/LTL7/PgWCvr6cGx
VW5wqrbV1sW3lLXO5XGA7//c7pfXhgE18BnDQKvcMAD5MSi4uhb0FWVjot/d
LmVfoq8nWOOpg6Rfs36e9bkb0wO8xhLh1U9RPHVDtbxX0O9Pu7k7P+2qhvgO
nYCspBu/xFDrRhFU7DCdvSz+vAxWReG5q5fFbAsJC1898Y0cmBG3U4u6aVtr
et6Xcv63FnWBrha1qr3nLCr/eR1rZXhAmH1qJ08dyjyyVv2ML+5sLln4nJ+T
vCzSN3eKIlnGjH7m6ztqDRsvXNqt8Ys8jzUc2A3pKz2Ptby2W6ov9zzW9sRu
i1/zUQ1z+1Kvm33po/jBOspqbxqH2zdn41M/1o44jkPfEFjgB738D6LV1IJR
2sXjwT6hYEAwefRTFR6Ix0tKOD8SkfQ1Bc6fH1r0rQXOpzP/6MXx56P7Zu5/
TE/+eXofpad35weNg6OJ6/+e+q/9duOX9O3568UoDDuvU7fhRW8/Vwl9MXjT
e3FzmZx8+Eer9f7NMm28lq7nHf/Wf1ie3Lz40Ita4cP7xLu/S9/8f14y/Uvj
mL+qGJj4fDmwx8OIt5YQ1EHN7XZ795eHVuv67iILthTbCgZuLxf4RcUCTTWZ
jaTrLYlJVlD3t2Dnlj6+CDNVF0+kE5mnf2Le0uMlyx7JF6UHzy1b9vmgWH7+
aOkyHVWuN3Qtl1o8VttpPac1izjfWtJjLUPL4twnTatQ4GsZKh12/QiP1AVU
g6/gvVYXrNat2En+W2Lw5apohSvty+QwQu0cBev6tpM5fpBOqeor5lzD6AlW
JK2SOFisQNiFBeY1gglD/1L1ZtUvPswrFDw5EVNehhya+ZVwuvjFyriMydmg
+ab8pT0T1vdS9V7NDpSreLyWypLZR6LQl8VHCDPbb2BAy/QlNqNbZfrbvABD
6VGrqO/8q/ZrNqgQ6CFJME6PeAYXIgVFB7v4Ttfdxa932QVK6am6w2U7YBCG
SHUBFlRp8sPHQIYlM0z5j8kPFbGT/dYDnFgVirkUFLA36ExFkcMPflTKjVYG
fkt3f1imE+fFD2UFW2De4WatVfg7x0+QP+ZnZz/+E0qrmojhDNNZ/e0pb+G2
OufaU+35E1I3U2sHaXAu7I9nJEgRdOzy2bkAbeCO4iedKtqZXrZ6EOeoXX22
H4owgn72akcN7EedkcuQkkLEAL9xg3qyPvFO1BMntZ40YS7OBeiP5xfO+aFz
38AOX+xn/bG3NFe+hBecy+2Yr9TUKGw/z1Ta5oy8nwW45z5Iq7629JlYEKo/
vn7Q/kge3lp58jzXCJfzBRalF+GC2QP3Osx6zTBv6DahWRVjSICsKtmWD0f2
A2IiRAFNG9NR74hSu7dcD5jAnjETaBxg9PK0ih9rtV9CL8yjT0dlxVMA3hfk
xwBuagHolZV2r44pQWcrF6wmL7dAgDyQGb+sWLAdWlxibSysOX+UAwGHJa4L
mdMmGaB+Kvp0KCpKlj1X3vg4Ijmp3RBQMZpMnPEMhLMqpS+w1JyMd3Y4FGWM
H8aj6rfk+ruXyWOff6iKEwxt474SCQo+Ozzoa5CsZ6BThOfQYJcu+ZPH5EvC
49csYID8hmpBrTHH+OYyzukAcsopD7c6l/O0e4r3R26AfWDdByqQhoKM7ugv
lVBG8X3k44mvHPsU7BNEiTpOJZ8dGHWhxJ7P/YkkbyfeQZmVtQELOEztJglt
Bn/HBp0j8T110VbfhdC32FfNTc2xT4nLtNAU7GwxVU6CQ8JBZFGEFDEbd6zV
CAWoa1CgKBTEjrBQUbQUYmE+UKk94CWMWptFizJaDLW6/ppCIf9pSVKBqEWu
yVqAGjc4sBr00yjGQFQa5eLEAVuYBrI70bXhqQ0Ht0GbG8B+/u4D5/ADOpWt
hV4ttB9QocLODnDb1ATtcB0Q/TmOOYKY0tEtB38U03c67E8/zrkL5tDM6CV9
J1DvX6ruISZHoT7Zy7zR9GKHttF+Lbft5C8hT5t1YL2zc7KMTRSPem20jPUH
VPGgwovdB1hUCcgDk9l1RQcCyxkdxDVtAuxnBKiQoVFWwOr02k6jBjSAXy8Z
mS8v6Th4Du5R9/AwzYH/+njGjtsVA5k42RGR9clL7bDI1atM+Aui7FFJxEO0
BKYZ+HcqQ94N79Rni4E7vY9iOh3jQhOcgh9yLAO+Sy/I9S8TVwv/D+f3T2C0
fQAA

-->

</rfc>
