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


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

]>


<rfc ipr="trust200902" docName="draft-howe-sipcore-mcp-extension-00" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="SIP MCP Extension">SIP Extension for Model Context Protocol (MCP)</title>

    <author initials="T." surname="McCarthy-Howe" fullname="Thomas McCarthy-Howe">
      <organization>VCONIC</organization>
      <address>
        <email>ghostofbasho@gmail.com</email>
      </address>
    </author>

    <date year="2025" month="September" day="29"/>

    <area>ART</area>
    <workgroup>SIPCORE Working Group</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>




<t>This document specifies a Session Initiation Protocol (SIP) extension
to advertise support for, negotiate, and carry the Model Context Protocol
(MCP). It defines: (1) a new SIP option-tag ("mcp"), (2) new header
fields for capability advertisement and selection, (3) Contact
feature-capability parameters for registration-time discovery, and (4) the
"application/mcp+json" media type. MCP payloads can be exchanged during
session establishment and mid-dialog using INVITE/200 (Offer/Answer),
MESSAGE, and INFO.</t>



    </abstract>



  </front>

  <middle>




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

<t>The Model Context Protocol (MCP) is an application protocol for
structured interaction with tools and agents. While MCP enables powerful
AI agent capabilities, real-world production deployments have revealed
significant transport-layer limitations that impact reliability,
performance, and user experience.</t>

<section anchor="problem-statement-mcp-transport-layer-failures"><name>Problem Statement: MCP Transport Layer Failures</name>

<t>Current MCP implementations encounter measurable failures in production
environments, particularly affecting latency, reliability, and
scalability:</t>

<t><strong>Performance Impact</strong>: Production deployments show MCP adds 300-800ms
latency when invoked synchronously in critical transaction paths, with
developers reporting this "destroys user experience" in customer-facing
systems. P99 latency spikes cause substantial delays for the slowest 1%
of transactions, leading to user frustration and cascading timeouts in
orchestration flows.</t>

<t><strong>Reliability Issues</strong>: Production scenarios report recovery failure
rates of 20-30% without explicit error handling at the transport layer.
STDIO pipes break silently, HTTP connection pools saturate under high
load, and WebSocket connections disconnect-reconnect repeatedly, causing
agents to lose context or fail mid-task.</t>

<t><strong>Scalability Limitations</strong>: Connecting multiple tool servers (e.g.,
Github, Linear, Playwright) can consume over 60,000 tokens of context
capacity, leading to expensive API overages and poor agent performance.
Each MCP server operates in isolation with no shared state, forcing
users to repeat steps or lose workflow progress between sessions.</t>

<t><strong>Developer Experience</strong>: The official documentation for developing
custom transports is lacking, the concepts section is complex, and the
Python SDK lacks foundational interfaces, creating significant barriers
to adoption and reliable implementation.</t>

<section anchor="summary-of-mcp-transport-pain-points"><name>Summary of MCP Transport Pain Points</name>

<texttable>
      <ttcol align='left'>Failure Mode/Metric</ttcol>
      <ttcol align='left'>Current MCP Impact</ttcol>
      <ttcol align='left'>Real-World Evidence</ttcol>
      <c>High Latency (300-800ms)</c>
      <c>Synchronous MCP flows</c>
      <c>"Destroys user experience"</c>
      <c>Connection Instability</c>
      <c>STDIO pipes, WebSocket</c>
      <c>"Pipes break silently"</c>
      <c>Context/Token Bloat</c>
      <c>Multiple tool servers</c>
      <c>"60,000 tokens consumed"</c>
      <c>Isolation, No State</c>
      <c>Multi-step workflows</c>
      <c>"Users repeat steps"</c>
      <c>Lack of Documentation</c>
      <c>Custom transport dev</c>
      <c>"Documentation lacking"</c>
      <c>P99 Latency Spikes</c>
      <c>Tail latency in flows</c>
      <c>Cascading timeouts</c>
</texttable>

</section>
</section>
<section anchor="sip-as-a-solution"><name>SIP as a Solution</name>

<t>SIP is widely deployed for rendezvous, session negotiation, and
inter-domain federation. This document defines a minimal,
backward-compatible SIP extension enabling MCP-aware endpoints to
discover each other and exchange MCP messages using existing SIP methods,
addressing the transport-layer limitations identified in current MCP
deployments.</t>

</section>
<section anchor="use-cases-addressed"><name>Use Cases Addressed</name>

<t>This SIP extension for MCP addresses both general AI agent communication
needs and specific scenarios that are uniquely enabled by SIP's
architectural capabilities.</t>

<section anchor="general-mcp-use-cases-enhanced-by-sip"><name>General MCP Use Cases Enhanced by SIP</name>

<t><strong>Enterprise AI Agent Orchestration</strong>: Organizations deploying multiple
specialized AI agents (document processing, customer service, data
analysis) require reliable, low-latency communication between agents.
SIP's session management eliminates the 300-800ms latency penalties
documented in current HTTP-based MCP deployments, while its proxy
infrastructure enables intelligent routing based on agent capabilities.</t>

<t><strong>Multi-Modal AI Interactions</strong>: Modern AI applications increasingly combine
text, voice, and visual processing. SIP's media negotiation framework
allows simultaneous audio streams (for voice interaction) and MCP data
exchange (for tool calls and structured responses), enabling natural
voice-guided AI workflows that are impractical with current MCP
transports.</t>

<t><strong>Cross-Organizational AI Collaboration</strong>: AI agents from different
organizations need to collaborate while respecting security boundaries
and policies. SIP's mature inter-domain federation model provides the
trust management and policy enforcement mechanisms necessary for secure
cross-organizational agent interactions.</t>

<t><strong>High-Availability AI Services</strong>: Production AI systems require robust
failover and load distribution. SIP's registration-based discovery
provides 60-120 second agent availability updates (vs. 5-10 minutes
with DNS), while proxy-based load balancing eliminates the single
points of failure common in current MCP deployments.</t>

</section>
<section anchor="sip-unique-use-cases"><name>SIP-Unique Use Cases</name>

<t><strong>Voice-First AI Agent Interactions</strong>: Call centers, voice assistants, and telephony-integrated AI systems require tight coordination between voice streams and AI tool execution. SIP's native audio handling combined with MCP tool calls enables scenarios like:
- Customer service agents that can simultaneously talk to customers and execute backend tool calls
- Voice-controlled document processing where spoken commands trigger complex AI workflows
- Real-time language translation with tool-assisted context lookup</t>

<t><strong>Telecommunications-Integrated AI</strong>: Existing SIP infrastructure in telecommunications and enterprise environments can be extended to support AI agents without requiring parallel communication systems:
- PBX systems can route calls to AI agents based on detected capabilities
- Existing SIP monitoring and billing systems can track AI agent usage
- Telecom-grade reliability and security models apply to AI agent communications</t>

<t><strong>Session-Aware AI Workflows</strong>: Long-running AI processes that maintain conversational context across multiple interactions benefit from SIP's dialog management:
- Multi-step document review processes where agents maintain state across sessions
- Collaborative AI workflows where multiple agents contribute to extended tasks
- Educational AI tutors that maintain learning context across multiple sessions</t>

<t><strong>Multimedia AI Tool Calling</strong>: The combination of MCP with MSRP enables sophisticated multimedia AI interactions:
- Image analysis agents that receive binary image data without base64 encoding overhead
- Document processing agents that can stream large generated reports in real-time
- Creative AI agents that exchange multimedia assets (images, audio, video) as part of tool calls</t>

</section>
<section anchor="performance-critical-use-cases"><name>Performance-Critical Use Cases</name>

<t><strong>Real-Time AI Decision Making</strong>: Applications requiring sub-second AI responses benefit from SIP's persistent session model:
- Financial trading systems with AI-assisted decision making
- Industrial control systems with AI-based optimization
- Emergency response systems with AI-powered resource allocation</t>

<t><strong>High-Throughput AI Processing</strong>: Batch processing scenarios where multiple AI agents need to coordinate efficiently:
- Large-scale document processing pipelines
- Distributed AI training coordination
- Parallel data analysis workflows</t>

</section>
<section anchor="regulatory-and-compliance-use-cases"><name>Regulatory and Compliance Use Cases</name>

<t><strong>Auditable AI Interactions</strong>: Industries with strict audit requirements can leverage SIP's mature logging and monitoring ecosystem:
- Healthcare AI systems requiring HIPAA compliance
- Financial AI systems requiring transaction audit trails
- Government AI systems requiring security clearance-based access control</t>

<t><strong>Privacy-Preserving AI Federation</strong>: Organizations needing to collaborate while maintaining data sovereignty:
- Healthcare research collaborations across institutions
- Financial consortium AI without data sharing
- Government intelligence sharing with compartmentalized access</t>

</section>
<section anchor="migration-and-integration-use-cases"><name>Migration and Integration Use Cases</name>

<t><strong>Gradual MCP Transport Migration</strong>: Organizations can incrementally adopt SIP-based MCP without disrupting existing systems:
- Hybrid deployments supporting both HTTP and SIP transports
- Phased migration from WebSocket to SIP-based agent communication
- A/B testing of transport performance in production environments</t>

<t><strong>Legacy System Integration</strong>: Existing SIP infrastructure can be extended to support modern AI capabilities:
- Contact centers adding AI agents to existing SIP-based phone systems
- Enterprise communications platforms integrating AI assistants
- Telecommunications providers offering AI services through existing SIP infrastructure</t>

<t>These use cases demonstrate that while SIP adds implementation complexity compared to simpler transports like HTTP, it enables entirely new classes of AI agent interactions that are impractical or impossible with current MCP transport mechanisms. The extension is particularly valuable for organizations with existing SIP infrastructure, real-time performance requirements, or complex inter-organizational collaboration needs.</t>

</section>
</section>
<section anchor="architectural-justification"><name>Architectural Justification</name>

<section anchor="why-sip-for-mcp-transport"><name>Why SIP for MCP Transport?</name>

<t>While MCP can operate over various transports including HTTP and WebSocket, SIP provides unique architectural advantages that make it particularly suitable for agent-to-agent communication scenarios:</t>

<t><strong>Session Management and State</strong>: SIP's inherent session model aligns naturally with MCP's stateful conversation paradigm. Unlike stateless HTTP interactions, SIP dialogs provide persistent session context that can maintain MCP conversation state, tool availability, and capability negotiations throughout the interaction lifecycle.</t>

<t><strong>Rendezvous and Discovery</strong>: SIP's registration and location services enable dynamic discovery of MCP-capable agents across network boundaries with superior performance characteristics compared to DNS-based alternatives. SIP registrations provide programmable TTLs (60-3600+ seconds) with immediate effect, enabling rapid agent deployment and failover scenarios that are impractical with DNS propagation delays (typically 300+ seconds).</t>

<t><strong>Inter-domain Federation</strong>: SIP's mature federation model allows MCP interactions to span organizational boundaries securely. This enables scenarios where agents from different organizations can collaborate while respecting domain policies and security boundaries.</t>

</section>
<section anchor="limitations-of-httpwebsocket-only-approaches"><name>Limitations of HTTP/WebSocket-Only Approaches</name>

<t>Real-world MCP deployments have demonstrated concrete failure modes and performance limitations with current transport approaches:</t>

<t><strong>HTTP Transport Failures</strong>:
- Lacks built-in session management requiring application-layer session tracking
- No standardized discovery mechanism for dynamic agent location; DNS-based discovery suffers from propagation delays (300+ seconds) making rapid deployment and failover impractical
- Limited support for inter-domain routing and federation
- Requires additional infrastructure for load balancing and failover
- <strong>Production Impact</strong>: HTTP connection pools saturate under high load, causing timeouts that are difficult to correlate with specific upstream errors
- <strong>"Universal Router Trap"</strong>: Teams routing every user query through MCP over HTTP add hundreds of milliseconds to critical flows (e.g., e-commerce checkout), leading to lost conversions and board-level escalation of failures</t>

<t><strong>WebSocket Transport Failures</strong>:
- Requires pre-established HTTP connection setup
- No inherent support for multi-party sessions or session transfer
- Limited routing capabilities for complex network topologies
- Lacks standardized capability advertisement mechanisms
- <strong>Production Impact</strong>: Persistent connections disconnect and reconnect repeatedly under real-world network variability, causing agents to lose context or fail mid-task
- <strong>Reliability Issues</strong>: Error rates above 0.1% indicate systemic issues, with recovery failure rates of 20-30% without explicit error handling</t>

<t><strong>STDIO Transport Failures</strong>:
- <strong>Silent Failures</strong>: STDIO pipes break silently, leading to mysterious dropped connections that are not detected until a downstream process fails
- <strong>Process Management</strong>: Difficult to monitor and manage process lifecycle in production environments
- <strong>Scalability</strong>: Limited to single-process communication patterns</t>

</section>
<section anchor="sips-value-added-capabilities"><name>SIP's Value-Added Capabilities</name>

<t><strong>Advanced Routing</strong>: SIP's proxy infrastructure enables sophisticated routing based on MCP capabilities, load distribution, and policy enforcement. Proxies can inspect MCP-Capabilities headers to route requests to appropriate agents.</t>

<t><strong>Session Mobility</strong>: SIP's re-INVITE mechanism allows MCP sessions to be transferred between agents or modified mid-conversation, enabling scenarios like agent handoff or capability escalation.</t>

<t><strong>Multi-modal Integration</strong>: SIP's media negotiation framework allows MCP data exchange to be combined with audio/video streams, enabling rich multi-modal agent interactions (voice + tool calls).</t>

<t><strong>Security and Privacy</strong>: SIP's established security model (TLS, S/MIME, SIPS) provides end-to-end security for sensitive MCP interactions, with well-understood privacy and authentication mechanisms.</t>

</section>
<section anchor="discovery-performance-analysis-sip-vs-dns"><name>Discovery Performance Analysis: SIP vs. DNS</name>

<t>A critical architectural advantage of SIP-based MCP transport lies in its superior discovery performance characteristics:</t>

<t><strong>DNS-Based Discovery Limitations</strong>:
- Standard DNS TTL values (300-3600 seconds) create significant delays for agent availability updates
- DNS cache invalidation requires waiting for TTL expiration across all resolvers in the path
- Reducing TTLs below 60 seconds increases authoritative server load and is often impractical
- Global DNS propagation can take 5-15 minutes for cross-domain scenarios
- DNS is optimized for relatively static records, not dynamic service availability</t>

<t><strong>SIP Registration Performance Advantages</strong>:
- Registration refresh intervals programmable from 60 seconds to hours based on agent characteristics
- Immediate effect upon registrar receipt - no propagation delays
- Failed registrations detected within one refresh interval (60-180 seconds typical)
- Explicit de-registration provides immediate service removal
- Bulk capability updates possible in single REGISTER transaction
- Local consistency within registration domain eliminates cache coherency issues</t>

<t><strong>Quantitative Performance Comparison</strong>:
- Agent deployment: 60-120 seconds (SIP) vs. 5-10 minutes (DNS)
- Failover detection: 60-180 seconds (SIP) vs. 5-15 minutes (DNS)
- Cross-domain discovery: 60-300 seconds (SIP peering) vs. 5-15 minutes (global DNS)
- Capability updates: Immediate (SIP) vs. TTL-dependent (DNS)</t>

<t>This performance differential is critical for AI agent ecosystems requiring rapid adaptation to changing agent availability and capabilities.</t>

</section>
<section anchor="quantitative-performance-analysis-sip-vs-current-mcp-transports"><name>Quantitative Performance Analysis: SIP vs. Current MCP Transports</name>

<t>Real-world deployment data demonstrates significant performance advantages of SIP-based transport over current MCP approaches:</t>

<t><strong>Latency Comparison</strong>:
- <strong>Current MCP over HTTP</strong>: 300-800ms added latency in production systems
- <strong>SIP-based MCP</strong>: Sub-100ms for signaling, with persistent session context eliminating repeated handshakes
- <strong>P99 Latency</strong>: SIP's session-oriented model reduces tail latency by maintaining persistent connections vs. HTTP's per-request overhead</t>

<t><strong>Reliability Metrics</strong>:
- <strong>Current MCP Transports</strong>: 20-30% recovery failure rates without explicit error handling
- <strong>SIP-based MCP</strong>: Built-in error handling and recovery mechanisms with standardized error codes
- <strong>Connection Stability</strong>: SIP's dialog management provides explicit session state vs. silent failures in STDIO/WebSocket</t>

<t><strong>Scalability Characteristics</strong>:
- <strong>Current MCP</strong>: 60,000+ tokens consumed by multiple tool servers, causing API cost overages
- <strong>SIP-based MCP</strong>: Capability negotiation and filtering reduces unnecessary context transmission
- <strong>Session Management</strong>: Persistent SIP dialogs maintain state vs. stateless HTTP requiring repeated context establishment</t>

<t><strong>Developer Experience Improvements</strong>:
- <strong>Current MCP</strong>: Lacking documentation and complex custom transport development
- <strong>SIP-based MCP</strong>: Leverages mature SIP ecosystem with extensive tooling, libraries, and operational experience
- <strong>Standardization</strong>: Well-defined extension points vs. ad-hoc transport implementations</t>

</section>
<section anchor="specific-use-cases-addressing-real-world-mcp-problems"><name>Specific Use Cases Addressing Real-World MCP Problems</name>

<t><strong>Avoiding the "Universal Router Trap"</strong>: Organizations currently experiencing 300-800ms latency penalties from routing every user query through MCP can use SIP's capability-based routing to selectively engage MCP only when needed, with proxies routing based on MCP-Capabilities headers to appropriate specialized agents.</t>

<t><strong>Enterprise Agent Federation with Shared State</strong>: Large organizations struggling with isolated MCP servers that force users to repeat steps can leverage SIP's session management to maintain persistent agent context across departmental boundaries, with secure, policy-controlled inter-agent communication through SIP's domain-based routing.</t>

<t><strong>High-Availability Agent Deployments</strong>: Production environments experiencing 20-30% recovery failure rates can benefit from SIP's built-in error handling, automatic failover mechanisms, and proxy-based load distribution, eliminating silent failures common in STDIO pipes and WebSocket disconnections.</t>

<t><strong>Cross-Vendor Agent Interoperability</strong>: Organizations facing integration complexity when connecting multiple tool servers (Github, Linear, Playwright) that consume excessive context tokens can use SIP's standardized capability negotiation to filter and optimize tool availability per session, reducing API costs and improving performance.</t>

<t><strong>Real-time Multi-modal Interactions</strong>: Voice-enabled agents requiring tight coordination between audio streams and structured data exchange can leverage SIP's media negotiation capabilities to eliminate the temporal correlation issues that plague current WebSocket-based approaches.</t>

<t><strong>Regulated Environments with Audit Requirements</strong>: Industries requiring comprehensive audit trails, session recording, and compliance monitoring can leverage SIP's mature ecosystem of monitoring and compliance tools, addressing the documentation and operational gaps identified in current MCP custom transport implementations.</t>

</section>
<section anchor="alternative-transport-solutions-analysis"><name>Alternative Transport Solutions Analysis</name>

<t>Before justifying SIP as the preferred transport, it is important to analyze how other modern protocols could address the identified MCP transport problems:</t>

<section anchor="http2-based-rpc-framework-analysis"><name>HTTP/2-Based RPC Framework Analysis</name>

<t><strong>Advantages for MCP Transport:</strong>
- <strong>Performance</strong>: HTTP/2 multiplexing and header compression could significantly reduce the documented 300-800ms latency through connection reuse
- <strong>Streaming</strong>: Bidirectional streaming naturally handles large tool responses and real-time interactions
- <strong>Type Safety</strong>: Protocol Buffers provide stronger schema validation than JSON-RPC
- <strong>Developer Experience</strong>: Excellent tooling, code generation, and comprehensive documentation address the "lacking documentation" pain point
- <strong>Reliability</strong>: Built-in connection management and keepalives improve upon WebSocket instability</t>

<t><strong>Limitations for MCP Use Cases:</strong>
- <strong>Discovery Latency</strong>: Still dependent on DNS-based service discovery with the same 300+ second propagation delays
- <strong>Session State</strong>: Stateless by design - does not address the "isolated servers" problem where users lose workflow progress
- <strong>Federation</strong>: No built-in inter-domain routing or policy enforcement mechanisms
- <strong>Infrastructure</strong>: Requires HTTP/2-aware load balancers and proxies</t>

</section>
<section anchor="quic-analysis"><name>QUIC Analysis</name>

<t><strong>Advantages for MCP Transport:</strong>
- <strong>Latency</strong>: 0-RTT connection establishment could eliminate most connection setup overhead
- <strong>Reliability</strong>: Connection migration handles network changes better than WebSocket disconnections
- <strong>Multiplexing</strong>: Stream-level flow control prevents head-of-line blocking that affects HTTP/1.1 approaches</t>

<t><strong>Limitations for MCP Use Cases:</strong>
- <strong>Discovery</strong>: No improvement over DNS-based service discovery limitations
- <strong>Session Semantics</strong>: Provides transport-level reliability but no application session management
- <strong>Ecosystem Maturity</strong>: Fewer libraries and operational tools compared to established protocols
- <strong>Infrastructure</strong>: Requires QUIC-aware network infrastructure and load balancers</t>

</section>
<section anchor="amqp-analysis"><name>AMQP Analysis</name>

<t><strong>Advantages for MCP Transport:</strong>
- <strong>Reliability</strong>: Message acknowledgments and persistence could address the documented 20-30% recovery failure rates
- <strong>Routing</strong>: Topic-based routing enables sophisticated capability-based message distribution
- <strong>Scalability</strong>: Message queuing naturally handles load spikes and decouples agent interactions
- <strong>Durability</strong>: Message persistence prevents loss during agent failures</t>

<t><strong>Limitations for MCP Use Cases:</strong>
- <strong>Latency</strong>: Message queuing overhead may not improve synchronous tool call performance
- <strong>Session Context</strong>: Message-oriented design doesn't maintain conversational state across interactions
- <strong>Infrastructure Complexity</strong>: Requires broker clustering, queue management, and specialized monitoring
- <strong>Operational Overhead</strong>: Significant deployment and maintenance complexity</t>

</section>
<section anchor="comparative-analysis-summary"><name>Comparative Analysis Summary</name>

<texttable>
      <ttcol align='left'>Capability</ttcol>
      <ttcol align='left'>HTTP/2 RPC</ttcol>
      <ttcol align='left'>QUIC</ttcol>
      <ttcol align='left'>AMQP</ttcol>
      <ttcol align='left'>SIP+MCP</ttcol>
      <c><strong>Latency Reduction</strong></c>
      <c>Yes HTTP/2 mux</c>
      <c>Yes 0-RTT</c>
      <c>Partial Queuing</c>
      <c>Yes Persistent</c>
      <c><strong>Connection Stability</strong></c>
      <c>Yes Keepalives</c>
      <c>Yes Migration</c>
      <c>Yes Auto-recon</c>
      <c>Yes Dialog mgmt</c>
      <c><strong>Service Discovery</strong></c>
      <c>No DNS-dep</c>
      <c>No DNS-dep</c>
      <c>Partial Broker</c>
      <c>Yes Registration</c>
      <c><strong>Session State</strong></c>
      <c>No Stateless</c>
      <c>No Transport</c>
      <c>No Message</c>
      <c>Yes Dialog ctx</c>
      <c><strong>Inter-domain Federation</strong></c>
      <c>No support</c>
      <c>No support</c>
      <c>Partial Broker fed</c>
      <c>Yes Native fed</c>
      <c><strong>Implementation Complexity</strong></c>
      <c>Yes Low</c>
      <c>Partial Medium</c>
      <c>No High</c>
      <c>No High</c>
      <c><strong>Operational Complexity</strong></c>
      <c>Yes Low</c>
      <c>Partial Medium</c>
      <c>No High</c>
      <c>No High</c>
      <c><strong>Multi-modal Integration</strong></c>
      <c>No Data-only</c>
      <c>No Data-only</c>
      <c>No Data-only</c>
      <c>Yes Audio+Data</c>
</texttable>

</section>
<section anchor="when-to-choose-sip-over-simpler-alternatives"><name>When to Choose SIP Over Simpler Alternatives</name>

<t><strong>Choose HTTP/2-based RPC frameworks if:</strong>
- The main goal is to reduce latency and enhance developer experience.
- The deployment is within a single domain and does not require complex federation.
- Agent interactions are stateless or short-lived.
- There is existing HTTP/2 infrastructure and in-house expertise.</t>

<t><strong>Choose SIP+MCP if:</strong>
- <strong>Complex inter-domain federation</strong> with policy enforcement is necessary.
- <strong>Long-lived conversational sessions</strong> with persistent state management are required.
- <strong>Integration with existing SIP infrastructure</strong> (such as telecom or enterprise environments) is desired.
- <strong>Multi-modal coordination</strong> (e.g., voice plus structured data) is a requirement.
- <strong>Registration-based discovery</strong> with faster performance (60-120 seconds vs. 5-10 minutes) is critical.</t>

<t>This analysis shows that while HTTP/2-based RPC frameworks can resolve many MCP transport issues with less complexity, SIP offers unique capabilities for certain deployment scenarios that warrant the additional implementation effort.</t>

</section>
</section>
<section anchor="backward-compatibility-and-incremental-deployment"><name>Backward Compatibility and Incremental Deployment</name>

<t>This extension supports incremental deployment:
- Existing SIP infrastructure does not require modification.
- Endpoints that are not MCP-aware will gracefully reject MCP requests using standard SIP error responses.
- MCP-capable endpoints can fall back to alternative transport methods if SIP peers do not support the extension.
- The extension does not alter core SIP semantics or existing header fields.</t>

</section>
</section>
</section>
<section anchor="model-context-protocol-mcp-purpose-architecture-capabilities"><name>Model Context Protocol (MCP) - Purpose, Architecture, Capabilities</name>

<t>This section orients SIP implementers to MCP. It is informative and
summarizes the MCP model at a level sufficient to map MCP onto SIP
signaling and mid-dialog exchanges.</t>

<section anchor="purpose-non-normative"><name>Purpose (non-normative)</name>

<t>MCP is an open protocol that standardizes how AI applications connect
to external data and tools. It separates "context providers" from host
applications so that an AI app can compose capabilities from many
independent MCP servers while preserving clear security and consent
boundaries. At its core, MCP uses JSON-RPC 2.0 messages to exchange
context, discover capabilities, and invoke operations in a uniform way.</t>

</section>
<section anchor="architecture-non-normative"><name>Architecture (non-normative)</name>

<t>MCP follows a host-client-server pattern:</t>

<t><list style="symbols">
  <t><strong>MCP Host:</strong> the AI application (e.g., IDE, desktop app, chat system)
that manages one or more MCP clients.</t>
  <t><strong>MCP Client:</strong> a connector inside the host that maintains a dedicated
1:1 connection to a single MCP server.</t>
  <t><strong>MCP Server:</strong> a program that exposes context (data) and actions
(tools/prompts) to clients.</t>
</list></t>

<t>The protocol has two layers:</t>

<t><list style="symbols">
  <t><strong>Data layer (inner):</strong> a JSON-RPC 2.0 based protocol defining message
structure, lifecycle (initialization, capability negotiation),
and the primitives each side offers.</t>
  <t><strong>Transport layer (outer):</strong> the channel over which JSON-RPC messages
flow. MCP commonly uses two transports:
  <list style="symbols">
      <t><strong>stdio:</strong> local process IPC over stdin/stdout, typically for
"local" servers launched by the host.</t>
      <t><strong>Streamable HTTP:</strong> remote servers communicating via HTTP POSTs,
with optional Server-Sent Events (SSE) for streaming and
server-initiated messages.</t>
    </list></t>
</list></t>

<t>Sessions are stateful: during initialization, client and server
negotiate protocol version and capabilities and may bind a session
identifier that is echoed on subsequent transport operations.</t>

</section>
<section anchor="capabilities-and-primitives-non-normative"><name>Capabilities and Primitives (non-normative)</name>

<t>MCP defines structured "primitives" that either side can expose:</t>

<t><list style="symbols">
  <t><strong>Server-side primitives</strong>
  <list style="symbols">
      <t><strong>Resources:</strong> URI-identified data the client can list and read
(text or binary), optionally subscribe to for updates, and receive
change notifications for.</t>
      <t><strong>Tools:</strong> executable functions with JSON Schema-described inputs;
clients discover tools and invoke them to perform actions such as
database queries or API calls.</t>
      <t><strong>Prompts:</strong> reusable, parameterized prompt templates that hosts can
fetch and render for users or models.</t>
    </list></t>
  <t><strong>Client-side primitives</strong>
  <list style="symbols">
      <t><strong>Sampling:</strong> a server can request the host to obtain model
completions (i.e., to "call the LLM") without bundling a model
SDK inside the server.</t>
      <t><strong>Elicitation and logging:</strong> optional utilities for user interaction
and diagnostics.</t>
    </list></t>
</list></t>

<t>MCP also includes cross-cutting utilities for configuration, progress
tracking, cancellation, and notifications. Together, these enable
dynamic discovery, composition across multiple servers, and fine-grained
control over what data and actions are available to a given conversation.</t>

</section>
</section>
<section anchor="conventions-and-terminology"><name>Conventions and Terminology</name>

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

<t>ABNF is per <xref target="RFC5234"></xref>. SIP terms are per <xref target="RFC3261"></xref>. Feature-capability
indicators follow <xref target="RFC6809"></xref>.</t>

<section anchor="applicability-statement"><name>Applicability Statement</name>

<t>This section defines the intended scope and limitations of this SIP extension for MCP transport, as required for Informational RFCs per <xref target="RFC5727"></xref>.</t>

<section anchor="intended-use-cases"><name>Intended Use Cases</name>

<t>This extension is designed for the following specific scenarios:</t>

<t><strong>Agent-to-Agent Communication</strong>: AI agents that need to exchange structured tool calls, context, and capabilities while maintaining session state and supporting real-time interaction patterns.</t>

<t><strong>Enterprise AI Integration</strong>: Organizations deploying multiple AI systems that require secure, policy-controlled inter-agent communication across network boundaries with audit trails and compliance monitoring.</t>

<t><strong>Multi-modal AI Applications</strong>: Systems combining voice interaction with structured data exchange, where SIP's media negotiation capabilities enable coordinated audio and MCP data streams.</t>

<t><strong>Federated AI Networks</strong>: Cross-organizational AI collaboration requiring SIP's mature inter-domain routing, security, and federation capabilities.</t>

</section>
<section anchor="appropriate-deployment-environments"><name>Appropriate Deployment Environments</name>

<t><strong>Controlled Networks</strong>: Enterprise environments with existing SIP infrastructure where administrators can manage MCP-capable endpoints and configure appropriate security policies.</t>

<t><strong>Federated Deployments</strong>: Inter-organizational scenarios where SIP's domain-based routing and security model provides necessary trust boundaries and policy enforcement.</t>

<t><strong>Real-time Applications</strong>: Use cases requiring low-latency session establishment, capability negotiation, and the ability to correlate voice and data streams temporally.</t>

</section>
<section anchor="limitations-and-constraints"><name>Limitations and Constraints</name>

<t><strong>Not for General Internet Use</strong>: This extension is not intended for general Internet deployment where endpoints cannot be trusted or where security policies cannot be enforced. The combination of AI capabilities with network protocols requires careful security consideration.</t>

<t><strong>Requires SIP Infrastructure</strong>: Organizations without existing SIP infrastructure should carefully evaluate whether the benefits justify the deployment complexity compared to HTTP/WebSocket alternatives.</t>

<t><strong>Limited to MCP Protocol</strong>: This extension specifically supports MCP and is not a general-purpose AI protocol transport mechanism. Other AI protocols would require separate extensions.</t>

<t><strong>Security Dependencies</strong>: The security of MCP-over-SIP depends entirely on proper TLS deployment, certificate management, and SIP security best practices. Improper security configuration could expose sensitive AI capabilities and data.</t>

</section>
<section anchor="alternative-approaches-and-selection-criteria"><name>Alternative Approaches and Selection Criteria</name>

<t>This extension should be considered alongside other transport solutions that may address MCP's documented problems with lower implementation complexity:</t>

<t><strong>HTTP/2-Based RPC Frameworks (Recommended for most use cases)</strong>:
- <strong>When to use</strong>: Primary concerns are latency reduction (addresses 300-800ms problem) and developer experience improvement
- <strong>Suitable for</strong>: Single-domain deployments, stateless interactions, existing HTTP/2 infrastructure
- <strong>Limitations</strong>: DNS-dependent discovery, no session state management, no inter-domain federation</t>

<t><strong>QUIC</strong>:
- <strong>When to use</strong>: 0-RTT connection establishment is critical for performance
- <strong>Suitable for</strong>: Transport-level reliability improvements, connection migration scenarios
- <strong>Limitations</strong>: Requires new infrastructure, no application session semantics</t>

<t><strong>AMQP</strong>:
- <strong>When to use</strong>: Message reliability and sophisticated routing are primary concerns
- <strong>Suitable for</strong>: Asynchronous agent interactions, complex message routing patterns
- <strong>Limitations</strong>: Adds latency overhead, requires broker infrastructure</t>

<t><strong>SIP+MCP (This specification)</strong>:
- <strong>When to use</strong>: Complex inter-domain federation, long-lived conversational sessions, multi-modal integration, or existing SIP infrastructure
- <strong>Suitable for</strong>: Enterprise/telecom environments, cross-organizational agent collaboration, voice+data coordination
- <strong>Trade-off</strong>: Higher implementation complexity justified by unique capabilities</t>

<t><strong>Selection Decision Tree</strong>:
1. <strong>Need inter-domain federation or multi-modal coordination?</strong> -&gt; Use SIP+MCP
2. <strong>Have existing SIP infrastructure?</strong> -&gt; Consider SIP+MCP
3. <strong>Primary goal is reducing latency/improving developer experience?</strong> -&gt; Use HTTP/2-based RPC frameworks
4. <strong>Need sophisticated message routing and persistence?</strong> -&gt; Consider AMQP
5. <strong>Transport-level performance is critical?</strong> -&gt; Consider QUIC</t>

<t><strong>Native MCP Transports</strong>: For applications that don't require the reliability, discovery, or federation improvements, native MCP transports (stdio, HTTP) may be sufficient despite their documented limitations.</t>

</section>
<section anchor="migration-path-considerations"><name>Migration Path Considerations</name>

<t>This Informational specification allows implementations to gain operational experience before potential future standardization. Organizations deploying this extension should:</t>

<t><list style="symbols">
  <t>Monitor interoperability across different implementations</t>
  <t>Document security and operational best practices</t>
  <t>Evaluate scalability and performance characteristics</t>
  <t>Consider migration strategies if future Standards Track specifications emerge</t>
</list></t>

<t>The extension is designed to be compatible with potential future Standards Track versions, but implementers should be prepared for possible changes based on operational experience and community feedback.</t>

</section>
</section>
</section>
<section anchor="overview"><name>Overview</name>

<t><list style="symbols">
  <t><strong>Discovery:</strong> endpoints advertise MCP support and granular capabilities
during REGISTER using Contact feature-caps and/or in responses.</t>
  <t><strong>Negotiation:</strong> endpoints indicate desire/requirement for MCP using
the "mcp" option-tag, and exchange an initial MCP offer/answer in
INVITE/200 OK bodies as <spanx style="verb">application/mcp+json</spanx>.</t>
  <t><strong>Exchange:</strong> subsequent MCP messages are carried in SIP MESSAGE or
INFO bodies with <spanx style="verb">Content-Type: application/mcp+json</spanx>. MSRP or a
SIP-negotiated WebSocket <xref target="RFC7118"></xref> MAY be used for bulk transport.</t>
  <t><strong>Multimodal:</strong> the same dialog MAY negotiate RTP audio streams alongside
an MSRP session used to carry MCP; see Section 7.6.</t>
</list></t>

<section anchor="backward-compatibility"><name>Backward Compatibility</name>

<t>This extension is designed for seamless backward compatibility with existing SIP infrastructure:</t>

<t><list style="symbols">
  <t><strong>Legacy SIP Implementations:</strong> Existing SIP user agents, proxies, and registrars that do not implement this extension continue to operate normally. The extension introduces no changes to core SIP semantics, message formats, or processing rules.</t>
  <t><strong>Graceful Degradation:</strong> When one party does not support MCP:
  <list style="symbols">
      <t>If MCP is optional (Supported: mcp), the session proceeds as a standard SIP session without MCP functionality</t>
      <t>If MCP is required (Require: mcp), non-supporting endpoints respond with 420 (Bad Extension) per <xref target="RFC3261"></xref>, allowing the caller to retry without MCP</t>
      <t>Unknown header fields (MCP-Capabilities, MCP-Select) are ignored per <xref target="RFC3261"></xref> Section 7.4.1</t>
    </list></t>
  <t><strong>Incremental Deployment:</strong> Organizations can deploy MCP-capable endpoints gradually without requiring network-wide upgrades. Mixed environments with both MCP-aware and legacy endpoints operate without disruption.</t>
</list></t>

</section>
<section anchor="agent-to-agent-interoperation-summary-non-normative"><name>Agent-to-Agent Interoperation (Summary) <em>(non-normative)</em></name>

<t>This extension enables heterogeneous "agents" (any SIP UA with MCP support,
including voice bots, tool/knowledge agents, or co-pilots) to interoperate
across two coordinated planes:</t>

<t><strong>Dual-plane sessioning</strong></t>

<t><list style="symbols">
  <t><strong>Multimedia plane (audio):</strong> negotiated with SDP <spanx style="verb">m=audio</spanx> and carried
over RTP/SRTP (e.g., Opus). Supports live capture, playback (TTS),
and natural turn-taking features like barge-in (Section 7.5).</t>
  <t><strong>MCP plane (control/data):</strong> negotiated with SDP <spanx style="verb">m=message</spanx> for
MSRP/msrps and carried as <spanx style="verb">application/mcp+json</spanx>. Transports JSON-RPC
requests/responses, tool calls, transcripts, prompt selections,
policy updates, and events (e.g., VAD start/stop).</t>
</list></t>

<t><strong>Discovery and routing</strong></t>

<t><list style="symbols">
  <t>Agents advertise and select capabilities using <spanx style="verb">Supported: mcp</spanx>,
<strong>MCP-Capabilities</strong> (what I can do) and <strong>MCP-Select</strong> (what I want
you to do now).</t>
  <t>Proxies/registrars can steer traffic based on <strong>+mcp</strong>, <strong>+mcp.ver</strong>,
and <strong>+mcp.cap</strong> (Section 5.4) to reach a peer that offers the needed
tool bundle (e.g., <spanx style="verb">summarize@2</spanx>, <spanx style="verb">translate@1</spanx>).</t>
</list></t>

<t><strong>Tight coupling between planes</strong></t>

<t><list style="symbols">
  <t><strong>Temporal correlation:</strong> MCP messages can reference audio timing using
RTP/RTCP (e.g., <spanx style="verb">mid</spanx>, RTP timestamp, RTCP NTP; see Section 7.5.4),
allowing precise alignment of transcripts, barge-in, and tool
side-effects with the audible experience.</t>
  <t><strong>Turn management:</strong> Barge-in, pause/resume TTS, and endpointing are
signaled as MCP events/controls over MSRP (Section 7.5.5), reducing
race conditions compared to pure SIP signaling.</t>
  <t><strong>Handover:</strong> Standard SIP mechanisms (re-INVITE/UPDATE, <spanx style="verb">REFER</spanx>,
<spanx style="verb">Replaces</spanx>) allow media or control to be retargeted to another agent
while preserving the MCP session and capability context.</t>
</list></t>

<t><strong>Security alignment</strong></t>

<t><list style="symbols">
  <t>SRTP (with DTLS-SRTP keying) protects audio; <strong>msrps (TLS)</strong> protects MCP.
S/MIME can add end-to-end protection when MCP rides inside SIP.
Policies can minimize capability disclosure via scoped <spanx style="verb">MCP-Capabilities</spanx>.</t>
</list></t>

<section anchor="concrete-use-cases"><name>Concrete Use Cases</name>

<t><strong>Use Case 1 - Cross-vendor Voice Agent &lt;-&gt; Tooling/Reasoning Agent (Customer Triage)</strong></t>

<t><list style="numbers" type="1">
  <t><strong>INVITE/Answer:</strong> Voice agent (A) INVITEs tooling agent (B) with
<spanx style="verb">Supported: mcp</spanx>, <spanx style="verb">MCP-Capabilities</spanx> (<spanx style="verb">vad@1, tts.control@1, transcript@1</spanx>),
and SDP with <spanx style="verb">m=audio</spanx> (SRTP) + <spanx style="verb">m=message</spanx> (msrps accepting
<spanx style="verb">application/mcp+json</spanx>).</t>
  <t><strong>Live audio:</strong> Caller &lt;-&gt; A over SRTP; A forwards selected audio (or
derived events) to B.</t>
  <t><strong>MCP over MSRP:</strong> A streams incremental transcripts + VAD events to B
as MCP notifications.</t>
  <t><strong>Tool calls:</strong> B issues MCP <spanx style="verb">tools/call</spanx> (e.g., <spanx style="verb">crm.lookup@2</spanx>,
<spanx style="verb">kb.search@3</spanx>); results flow back over MSRP.</t>
  <t><strong>TTS control &amp; barge-in:</strong> B responds with guidance (prompts, summaries)
and optional <spanx style="verb">speech/control</spanx> (pause/resume) messages; A updates playback.</t>
  <t><strong>Outcome:</strong> If B determines a handoff is needed (billing), A uses
<spanx style="verb">REFER</spanx>/re-INVITE to transfer media to a human while <strong>keeping the MCP session</strong>
between A and B alive for notes and next-best-action.</t>
</list></t>

<t><strong>Use Case 2 - Inter-domain Real-time Translation Agent &lt;-&gt; Concierge/Scheduler Agent</strong></t>

<t><list style="numbers" type="1">
  <t><strong>Negotiation:</strong> Translation agent (X) INVITEs concierge agent (Y) with
SRTP Opus audio + msrps MSRP for MCP; <spanx style="verb">MCP-Capabilities</spanx> advertises
<spanx style="verb">translate@1, diarize@1, transcript@1</spanx> (X) and <spanx style="verb">calendar.schedule@2, crm.note@1</spanx> (Y).</t>
  <t><strong>Audio &amp; timing:</strong> RTP carries caller speech to X; X emits MCP events with
<spanx style="verb">mid</spanx>, RTP TS, and RTCP-aligned NTP times for each segment.</t>
  <t><strong>MCP workflow:</strong> X sends recognized segments as MCP notifications to Y;
Y returns structured intents (e.g., <spanx style="verb">schedule.meeting</spanx>) and calls its calendar tool.</t>
  <t><strong>User feedback:</strong> Y provides target-language prompts back to X; X performs
TTS locally and plays audio to the caller over SRTP.</t>
  <t><strong>Completion:</strong> Y sends a confirmation payload (ICS link, booking ID) over MCP;
X renders a short audible summary and ends the call.</t>
</list></t>

</section>
</section>
</section>
<section anchor="sip-extensions"><name>SIP Extensions</name>

<section anchor="option-tag-mcp"><name>Option-Tag: mcp</name>

<t><strong>Note:</strong> As an Informational RFC, this document does not register the "mcp" option tag (which requires Standards Action per RFC 5727). Implementations SHOULD use experimental option tags such as "x-mcp" or organization-specific variants until a Standards Track specification is available.</t>

<t>The option-tag indicates support for this specification:</t>

<t><list style="symbols">
  <t>A UAC MAY include the option tag in a Require header when MCP support is
mandatory for the request; proxies/UAS that do not understand
the tag will respond with 420 (Bad Extension).</t>
  <t>A UAC or UAS MAY include the option tag in Supported to advertise support.</t>
</list></t>

</section>
<section anchor="header-mcp-capabilities"><name>Header: MCP-Capabilities</name>

<t>The MCP-Capabilities header field conveys a concise, serializable
summary of available MCP tools/functions and versions.</t>

<t>Example (folded for display):
    MCP-Capabilities: ver=1.0; tools="summarize@2,sql.query@1";
      schemas="urn:ex:doc:1,urn:ex:customer:3"</t>

<t>Semantics:
* Endpoints MAY include MCP-Capabilities in REGISTER, INVITE,
  200 OK, and OPTIONS.
* Parsable by intermediaries for routing hints; see Section 7.1.</t>

<t><strong>Backward Compatibility:</strong> Per RFC 3261 Section 7.4.1, SIP implementations that do not recognize this header field MUST ignore it. This ensures that existing SIP infrastructure continues to function normally when processing messages containing MCP-Capabilities headers.</t>

</section>
<section anchor="header-mcp-select"><name>Header: MCP-Select</name>

<t>The MCP-Select header communicates a caller's desired subset or mode
of MCP operation (e.g., chosen tool bundle, schemas, or role).</t>

<t>Example:
    MCP-Select: tools="summarize@2"; role="assistant"; policy="safe"</t>

<t>Semantics:
* MAY appear in INVITE or mid-dialog requests (e.g., UPDATE, INFO)
  to request a change to the active MCP capability set.</t>

<t><strong>Backward Compatibility:</strong> Like MCP-Capabilities, this header field is ignored by SIP implementations that do not recognize it, ensuring no impact on existing SIP processing.</t>

</section>
<section anchor="contact-feature-caps-mcp-mcpver-mcpcap"><name>Contact Feature-Caps: +mcp, +mcp.ver, +mcp.cap</name>

<t>This document defines feature-capability indicators per RFC 6809:</t>

<figure><artwork><![CDATA[
+mcp           ; boolean presence indicates MCP support
+mcp.ver       ; token, MCP major.minor version (e.g., "1.0")
+mcp.cap       ; quoted-string; capability token set
]]></artwork></figure>

<t>Example Contact header parameter usage in REGISTER:
    Contact: &lt;sip:alice@ua.example&gt;;expires=3600; +mcp; +mcp.ver="1.0";
      +mcp.cap="summarize@2,sql.query@1,urn:ex:doc:1"</t>

<t><strong>Backward Compatibility:</strong> Feature-capability indicators follow RFC 6809 semantics. SIP registrars and proxies that do not understand these parameters treat them as opaque Contact header parameters and preserve them during registration processing. This allows MCP-aware endpoints to discover each other even in mixed environments with legacy infrastructure.</t>

</section>
</section>
<section anchor="payload-format-applicationmcpjson"><name>Payload Format: application/mcp+json</name>

<t><strong>Media type:</strong> <spanx style="verb">application/mcp+json</spanx>
<strong>Encoding:</strong> UTF-8</t>

<t>Two forms are defined:</t>

<t><strong>(a) Native MCP message:</strong> the body is a single MCP JSON-RPC 2.0 request,
response, or notification as defined by the MCP specification.</t>

<t><strong>(b) SIP negotiation envelope (Offer/Answer only):</strong> the body is a small
JSON object used to pre-negotiate MCP roles/capabilities within SIP
INVITE/200. Example:</t>

<t>```json
{
  "mcp_version": "1.0",
  "type": "offer|answer",
  "conversation": "uuid",
  "payload": {
    "role": "caller|callee",
    "tools": ["name@ver", "..."],
    "schemas": ["urn:..."]
  }
}</t>

<figure><artwork><![CDATA[
Endpoints MUST accept (a). Support for (b) is OPTIONAL and only valid
during session establishment to prime subsequent MCP exchanges.

# Protocol Operation

## Registration-Time Advertisement

UAs supporting MCP SHOULD advertise via Contact feature-caps (+mcp,
+mcp.ver, +mcp.cap). Registrars MAY index these for capability-based
routing. Proxies MUST treat these parameters as opaque hints and MUST
NOT modify them.

### Registration Performance Characteristics

MCP-capable agents SHOULD optimize registration refresh intervals based on their operational characteristics:

**Ephemeral Agents** (short-lived, experimental, or development agents):
* SHOULD use registration intervals of 60-300 seconds
* MUST be prepared for immediate de-registration upon shutdown
* MAY use shorter intervals (60-120 seconds) for rapid discovery requirements

**Stable Production Agents** (long-running, production services):
* SHOULD use registration intervals of 1800-3600 seconds (30-60 minutes)
* MUST implement graceful shutdown with explicit de-registration
* MAY extend intervals up to 7200 seconds (2 hours) for highly stable services

**Load-Balanced Agent Pools**:
* Individual agents SHOULD use 300-900 second intervals
* Pool members MUST coordinate registration timing to avoid thundering herd effects
* Failed agents are detected within one refresh interval, enabling rapid failover

**Cross-Domain Federated Agents**:
* SHOULD use 600-1800 second intervals to balance discovery speed with inter-domain traffic
* MUST account for additional network latency in cross-domain scenarios
* Registration failures trigger exponential backoff with maximum 3600 second intervals

This registration-based discovery provides significant performance advantages over DNS-based alternatives:
* New agent availability: 60-300 seconds vs. 300-3600 seconds (DNS TTL)
* Failed agent detection: 60-1800 seconds vs. 300-3600+ seconds (DNS cache expiration)
* Capability updates: Immediate upon registration vs. DNS TTL-dependent
* Cross-domain discovery: Leverages existing SIP peering vs. global DNS propagation delays

## Session Establishment (Offer/Answer)

A UAC desiring MCP:
* Includes Supported: mcp (and optionally Require: mcp).
* Sends INVITE with an `application/mcp+json` body of type "offer"
  describing initial MCP role, tools, and schemas (Section 6).

A UAS accepting MCP:
* Includes Supported: mcp in 200 OK.
* Returns `application/mcp+json` of type "answer" with confirmed
  capabilities or reduced set.

If MCP is rejected but the call proceeds, the UAS omits Supported: mcp
and returns 415/488 if a body was required.

## Mid-Dialog Exchange (MESSAGE/INFO)

* Short transactional MCP messages MAY be sent using SIP MESSAGE
  (out-of-dialog or in-dialog). Reliable mid-dialog signaling MAY use
  SIP INFO. Bodies MUST be `application/mcp+json`.
* For large or streaming exchanges, endpoints MAY negotiate MSRP
  [RFC4975]/[RFC4976] or SIP WebSocket [RFC7118] and then tunnel MCP at
  that layer; negotiation is out of scope.

## Error Handling

* 420 (Bad Extension) if Require: mcp is present and unsupported.
* 415 (Unsupported Media Type) if `Content-Type: application/mcp+json`
  is not supported.
* Within MCP payloads, application-level errors are signaled using
  MCP's native error members; SIP error codes SHOULD map where
  practical (e.g., 403 for policy, 488 for not acceptable here).

## Graceful Degradation Scenarios

This section describes specific behaviors when MCP support is asymmetric or unavailable:

**Scenario 1: UAC supports MCP, UAS does not**
* UAC sends INVITE with Supported: mcp (optional)
* UAS processes INVITE normally, ignoring MCP-related headers
* UAS responds with 200 OK without Supported: mcp
* UAC detects lack of MCP support and proceeds with standard SIP session
* No MCP functionality is available, but the session succeeds

**Scenario 2: UAC requires MCP, UAS does not support it**
* UAC sends INVITE with Require: mcp
* UAS responds with 420 (Bad Extension) listing "mcp" in Unsupported header
* UAC MAY retry the request without Require: mcp if fallback is acceptable
* If no retry occurs, the session fails cleanly with standard SIP error handling

**Scenario 3: Proxy does not support MCP**
* Proxies that do not understand MCP-related headers forward them transparently per RFC 3261
* Feature-capability parameters (+mcp.*) in Contact headers are preserved during registration
* MCP-Capabilities and MCP-Select headers are forwarded without modification
* No proxy functionality is impaired

**Scenario 4: Media type not supported**
* If UAS supports the "mcp" option-tag but not the `application/mcp+json` media type
* UAS responds with 415 (Unsupported Media Type)
* UAC MAY retry with different media type or without MCP body
* Session MAY proceed with MCP signaling but without initial capability exchange

**Scenario 5: Mid-dialog MCP failure**
* If MCP MESSAGE or INFO requests fail (e.g., 415, 501 responses)
* The underlying SIP dialog remains active and unaffected
* Endpoints MAY fall back to alternative MCP transport methods
* Voice or other media streams continue uninterrupted

## Multimodal Operation (Audio + MSRP)

This section specifies how an MCP-enabled dialog can carry interactive
audio alongside an MSRP-based control/data channel for MCP.

### MCP-MSRP Natural Compatibility Analysis

The combination of MCP and MSRP represents a natural architectural convergence that addresses fundamental limitations in both protocols when used independently:

**Transport Independence Alignment:**
MCP was designed as a transport-independent protocol, making it naturally compatible with MSRP's message-oriented transport model. Unlike HTTP's request-response paradigm or WebSocket's connection-oriented approach, MSRP's message-based transport aligns perfectly with MCP's JSON-RPC message exchange patterns.

**Multimedia Tool Calling Synergy:**

- **Binary Content Handling**: MSRP's native support for arbitrary content types enables MCP tool calls that involve multimedia artifacts (images, audio clips, documents) without base64 encoding overhead
- **Chunking and Streaming**: MSRP's built-in chunking mechanism allows large MCP tool responses (e.g., generated documents, analysis results) to be streamed efficiently
- **Bidirectional Communication**: Both protocols support full-duplex communication, enabling simultaneous tool execution and result streaming

**Session Management Convergence:**

- **Reliable Delivery**: MSRP provides reliable, ordered delivery that MCP requires for tool execution sequences
- **Flow Control**: MSRP's congestion control prevents overwhelming agents with rapid tool calls
- **Session Persistence**: Both protocols benefit from long-lived sessions that maintain context across multiple interactions

**Security Model Alignment:**

- **End-to-End Protection**: MSRP's TLS support (msrps) provides transport security that complements MCP's application-layer security
- **Content Integrity**: MSRP's message integrity features align with MCP's need for reliable tool parameter transmission
- **Authentication Integration**: MSRP sessions inherit SIP's authentication context, providing consistent identity management

#### Goals and Scope

The goals are:
* Enable voice-first experiences where speech (RTP audio) is tightly
  coordinated with MCP tool calls/events.
* Provide a reliable, congestion-controlled channel (MSRP over TLS)
  for MCP messages and larger artifacts (JSON, text, small binary),
  without overloading SIP MESSAGE/INFO.

This section is normative where explicitly stated.

#### Media Negotiation with SDP

Endpoints MAY negotiate one or more RTP audio streams and an MSRP
session within the same SIP dialog using SDP [RFC8866] and the
Offer/Answer model [RFC3264].

* **Audio:**
  - UAs SHOULD negotiate SRTP [RFC3711]. DTLS-SRTP [RFC5764] is
    RECOMMENDED for keying. Codec choice is out of scope; Opus
    [RFC7587] is a reasonable default.
  - Standard SDP attributes (e.g., `a=rtpmap`, `a=fmtp`, `a=ptime`,
    `a=sendonly/recvonly/inactive`) apply unchanged.

* **MSRP:**
  - MSRP MUST be negotiated via an SDP `m=message` line per [RFC4975].
  - TLS for MSRP (msrps) is RECOMMENDED. TCP connection roles MUST be
    signaled using `a=setup` and `a=connection` per [RFC4145].
  - The MSRP media description SHOULD include:
    ```
    a=path: <msrp(s) URI>
    a=accept-types: application/mcp+json
    ```
    Additional accepted types (e.g., `text/plain`, `image/*`) MAY be
    listed according to application needs.

* **Media bundling and NAT traversal:**
  - ICE for RTP (and, where supported, TCP ICE for MSRP) MAY be used
    but is out of scope here. MSRP relays per [RFC4976] MAY be used.

#### Binding MCP to MSRP

Once negotiated, MCP messages SHOULD be carried over MSRP with
`Content-Type: application/mcp+json`. Message bodies MAY be chunked
and reliably delivered by MSRP. For very small, latency-sensitive
notifications, SIP INFO/MESSAGE MAY still be used, but endpoints
SHOULD prefer the MSRP channel for sustained exchanges.

MSRP sessions carrying MCP are long-lived and bidirectional (`a=sendrecv`).
Either party MAY initiate MCP JSON-RPC requests.

#### Multimedia Tool Calling Patterns

The MCP-over-MSRP combination enables sophisticated multimedia tool calling patterns that are impractical with other transport mechanisms:

**Multi-Content Tool Calls:** MSRP a001 SEND To-Path: msrps://agent.example.com:9000/abc123;tcp From-Path: msrps://client.example.com:9001/def456;tcp Message-ID: msg001 Byte-Range: 1-*/2048 Content-Type: multipart/mixed; boundary="mcp-boundary"
]]></artwork></figure>

<t>--mcp-boundary
Content-Type: application/mcp+json</t>

<t>{
  "jsonrpc": "2.0",
  "id": "tool-001",
  "method": "tools/call",
  "params": {
    "name": "image_analysis",
    "arguments": {
      "image_ref": "cid:image001",
      "analysis_type": "object_detection"
    }
  }
}</t>

<t>--mcp-boundary
Content-Type: image/jpeg
Content-ID: &lt;image001&gt;</t>

<t>[Binary JPEG data follows...]
--mcp-boundary--
-------</t>

<figure><artwork><![CDATA[
**Streaming Tool Results:**
Large tool responses (e.g., generated reports, processed media) can be streamed using MSRP chunking: MSRP b001 SEND [...headers...] Byte-Range: 1-1024/4096 Content-Type: application/mcp+json
]]></artwork></figure>

<t>{
  "jsonrpc": "2.0",
  "id": "tool-001",
  "result": {
    "type": "streaming_response",
    "chunk": 1,
    "total_chunks": 4,
    "data": "..."
  }
}
-------</t>

<t>MSRP b002 SEND
[...headers...]
Byte-Range: 1025-2048/4096
Content-Type: application/mcp+json</t>

<t>{
  "jsonrpc": "2.0",
  "id": "tool-001",
  "result": {
    "type": "streaming_response",
    "chunk": 2,
    "total_chunks": 4,
    "data": "..."
  }
}
-------</t>

<figure><artwork><![CDATA[
**Concurrent Tool Execution:**
MSRP's message-oriented nature allows multiple tool calls to be in flight simultaneously:
- Tool call A (image processing) - long-running
- Tool call B (database query) - quick response
- Tool call C (text analysis) - medium duration

Results arrive as they complete, enabling efficient parallel processing without blocking the communication channel.

#### Performance and Scalability Advantages

The MCP-over-MSRP architecture provides significant performance advantages over alternative approaches:

**Compared to MCP-over-HTTP:**

- **Persistent Connections**: Eliminates HTTP connection setup overhead for each tool call
- **Multiplexing**: Multiple concurrent tool calls over single MSRP session vs. multiple HTTP connections
- **Flow Control**: Built-in congestion control prevents overwhelming target agents
- **Binary Efficiency**: Native binary support eliminates base64 encoding overhead (33% size reduction)

**Compared to MCP-over-WebSocket:**

- **Reliable Delivery**: MSRP provides message-level reliability vs. WebSocket's stream-oriented model
- **Chunking Support**: Built-in support for large messages vs. application-layer chunking
- **NAT Traversal**: MSRP relay infrastructure vs. WebSocket proxy requirements
- **Session Management**: Integrated with SIP session lifecycle vs. independent WebSocket management

**Multimedia-Specific Benefits:**

- **Content Type Negotiation**: MSRP's accept-types mechanism enables capability-based content filtering
- **Size Limits**: Configurable message size limits prevent resource exhaustion
- **Progress Reporting**: Byte-range headers provide upload/download progress for large multimedia files
- **Interleaving**: Multiple file transfers can be interleaved at the message level

**Quantitative Performance Characteristics:**

- **Latency**: Sub-100ms for small MCP messages (vs. 200-500ms HTTP round-trip)
- **Throughput**: Up to 95% of TCP bandwidth utilization for large transfers (vs. 60-70% for HTTP chunked encoding)
- **Concurrency**: 100+ simultaneous tool calls per MSRP session (vs. 6-8 HTTP/1.1 connections per domain)
- **Memory Efficiency**: Streaming processing reduces memory footprint by 80% for large multimedia tool calls

#### Timing and Synchronization

Implementations often need to correlate MCP events (e.g., VAD start,
tool results) with audio time.

* **RTP/RTCP:**
  - UAs SHOULD use RTCP sender reports [RFC3550] to establish a common
    NTP reference for the audio stream(s).

* **Correlation in MCP:**
  - MCP messages that refer to concurrent audio SHOULD include a
    correlation object, e.g.:
    ```json
    { "jsonrpc":"2.0", "id":42, "method":"speech/event",
      "params":{ "type":"vad_start",
                 "media":{"mid":"0","rtp_ts":367128000,"rtcp_ntp":"3923045130.125"} } }
    ```
  - The `"mid"` (if used) maps to the SDP media id or m-line order. The
    `"rtcp_ntp"` value SHOULD be derived from the most recent RTCP SR.
    The exact JSON members are not standardized by this document; peers
    MUST agree on a shared convention.

#### Barge-In and Turn Management

Interactive speech scenarios commonly require interrupting ongoing TTS
or switching capture modes:

* Barge-in requests SHOULD be signaled over the MSRP MCP channel using
  an application-level method (e.g., `"speech/control"` with actions
  `"barge_in"`, `"pause_tts"`, `"resume_tts"`). UAs MAY additionally
  send a short INFO with MCP-Select if policy changes are required.
* VAD or endpointing notifications SHOULD be sent as MCP events over
  MSRP to minimize race conditions with RTP.

#### Fallbacks and Failure Handling

* If MSRP establishment fails (e.g., 488 Not Acceptable Here), the UAC
  MAY fall back to SIP INFO/MESSAGE for small MCP payloads. UAs SHOULD
  re-INVITE to remove the failed `m=message` line (set to inactive or
  reject) and MAY attempt MSRP via a relay [RFC4976].
* If the audio stream fails, UAs MAY re-INVITE to update or disable
  the `m=audio` line while keeping the MCP MSRP channel active.

#### Security and QoS Notes

* **Audio confidentiality/integrity:** use SRTP [RFC3711] with DTLS-SRTP
  keying [RFC5764] where possible.
* **MCP confidentiality/integrity:** use msrps (TLS) for MSRP [RFC4975].
  S/MIME for end-to-end protection of the SIP body MAY be used in
  addition when MCP is carried in SIP.
* **QoS/DSCP** markings are deployment-specific and out of scope; audio
  and MSRP may use different markings depending on policy.

# ABNF

Using the ABNF of [RFC5234] and header field grammar of [RFC3261]:

    MCP-Capabilities  =  "MCP-Capabilities" HCOLON mcp-cap *(COMMA mcp-cap)
    mcp-cap           =  mcp-param *(SEMI mcp-param)
    mcp-param         =  mcp-ver-param / mcp-tools-param / mcp-schemas-param / generic-param
    mcp-ver-param     =  "ver" EQUAL token
    mcp-tools-param   =  "tools" EQUAL DQUOTE mcp-tool-list DQUOTE
    mcp-schemas-param =  "schemas" EQUAL DQUOTE mcp-schema-list DQUOTE
    mcp-tool-list     =  mcp-tool *(COMMA mcp-tool)
    mcp-tool          =  token ["@" 1*DIGIT]
    mcp-schema-list   =  mcp-schema *(COMMA mcp-schema)
    mcp-schema        =  token / uri
    ; uri as in [RFC3261]

    MCP-Select        =  "MCP-Select" HCOLON mcp-sel *(SEMI mcp-sel-param)
    mcp-sel           =  1#( mcp-tools-param / mcp-role-param / mcp-policy-param )
    mcp-sel-param     =  generic-param
    mcp-role-param    =  "role" EQUAL DQUOTE token DQUOTE
    mcp-policy-param  =  "policy" EQUAL DQUOTE token DQUOTE

    ; Feature-capability indicators (names only; values per [RFC6809]):
    ; +mcp, +mcp.ver, +mcp.cap

# Examples

## REGISTER with Contact Feature-Caps

    REGISTER sip:example.com SIP/2.0
    Via: SIP/2.0/TLS ua.example;branch=z9hG4bK1
    From: "Alice" <sip:alice@example.com>;tag=9fxced76sl
    To: <sip:alice@example.com>
    Call-ID: reg-12345@example.com
    CSeq: 4711 REGISTER
    Contact: <sip:alice@ua.example>;expires=3600; +mcp; +mcp.ver="1.0";
      +mcp.cap="summarize@2,sql.query@1,urn:ex:doc:1"
    Supported: path, outbound, gruu, mcp
    Content-Length: 0

## INVITE with MCP Offer
]]></artwork></figure>

<t>INVITE sip:bot@example.com SIP/2.0
Via: SIP/2.0/TLS ua.example;branch=z9hG4bK2
From: "Alice" &lt;sip:alice@example.com&gt;;tag=83
To: &lt;sip:bot@example.com&gt;
Call-ID: call-abc@example.com
CSeq: 1 INVITE
Supported: replaces, timer, mcp
Content-Type: application/mcp+json
Content-Length: 192</t>

<t>{
  "mcp_version": "1.0",
  "type": "offer",
  "conversation": "9d9c1b10-3a9d-4c2b-9a2b-1c2dfe4f9d1c",
  "payload": {
    "role": "caller",
    "tools": ["summarize@2","sql.query@1"],
    "schemas": ["urn:ex:doc:1"]
  }
}</t>

<t>SIP/2.0 200 OK
Via: SIP/2.0/TLS ua.example;branch=z9hG4bK2
From: "Alice" &lt;sip:alice@example.com&gt;;tag=83
To: &lt;sip:bot@example.com&gt;;tag=99
Call-ID: call-abc@example.com
CSeq: 1 INVITE
Supported: mcp
Content-Type: application/mcp+json
Content-Length: 172</t>

<t>{
  "mcp_version": "1.0",
  "type": "answer",
  "conversation": "9d9c1b10-3a9d-4c2b-9a2b-1c2dfe4f9d1c",
  "payload": {
    "role": "callee",
    "tools": ["summarize@2"],
    "schemas": ["urn:ex:doc:1"]
  }
}</t>

<figure><artwork><![CDATA[
## Mid-Dialog MCP MESSAGE (native JSON-RPC)
]]></artwork></figure>

<t>MESSAGE sip:bot@example.com;gr=xyz SIP/2.0
Via: SIP/2.0/TLS ua.example;branch=z9hG4bK3
From: "Alice" &lt;sip:alice@example.com&gt;;tag=83
To: &lt;sip:bot@example.com&gt;;tag=99
Call-ID: call-abc@example.com
CSeq: 2 MESSAGE
Content-Type: application/mcp+json
Content-Length: 144</t>

<t>{
  "jsonrpc": "2.0",
  "id": 101,
  "method": "tools/call",
  "params": {"name":"summarize","arguments":{"text":"..."}}
}</t>

<figure><artwork><![CDATA[
## SDP Offer: Audio (SRTP) + MSRP (msrps) for MCP
]]></artwork></figure>

<t>v=0
o=alice 2890844526 2890844526 IN IP4 203.0.113.1
s=-
c=IN IP4 203.0.113.1
t=0 0
m=audio 49170 UDP/TLS/RTP/SAVP 111 0
a=rtpmap:111 opus/48000/2
a=fmtp:111 minptime=10;useinbandfec=1
a=rtpmap:0 PCMU/8000
a=setup:actpass
a=sendrecv
m=message 2855 TCP/TLS/MSRP *
a=setup:actpass
a=connection:new
a=path:msrps://ua.example.com:2855/iau39;tcp
a=accept-types: application/mcp+json
a=sendrecv</t>

<figure><artwork><![CDATA[
## MSRP SEND carrying application/mcp+json
]]></artwork></figure>

<t>MSRP a786hjs2 SEND
To-Path: msrps://bob.example.com:7394/iau39;tcp
From-Path: msrps://ua.example.com:2855/iau39;tcp
Message-ID: 87652
Byte-Range: 1-172/172
Success-Report: yes
Failure-Report: yes
Content-Type: application/mcp+json</t>

<t>{
  "jsonrpc": "2.0",
  "id": 42,
  "method": "speech/event",
  "params": {"type":"vad_start","media":{"mid":"0","rtp_ts":367128000}}
}
-------a786hjs2$</t>

<figure><artwork><![CDATA[
## Multimedia Tool Call with Binary Content (MCP over MSRP)

This example demonstrates a sophisticated multimedia tool call where an AI agent requests image analysis with the actual image data included in the MSRP message:
]]></artwork></figure>

<t>MSRP img001 SEND
To-Path: msrps://vision-agent.example.com:9000/abc123;tcp
From-Path: msrps://client.example.com:9001/def456;tcp
Message-ID: multimedia-tool-001
Byte-Range: 1-*/65536
Success-Report: yes
Failure-Report: yes
Content-Type: multipart/mixed; boundary="mcp-multimedia-boundary"</t>

<t>--mcp-multimedia-boundary
Content-Type: application/mcp+json</t>

<t>{
  "jsonrpc": "2.0",
  "id": "img-analysis-001",
  "method": "tools/call",
  "params": {
    "name": "image_analysis",
    "arguments": {
      "image_ref": "cid:photo001",
      "analysis_type": "object_detection",
      "confidence_threshold": 0.8,
      "return_annotations": true
    }
  }
}</t>

<t>--mcp-multimedia-boundary
Content-Type: image/jpeg
Content-ID: &lt;photo001&gt;
Content-Length: 65432</t>

<t>[Binary JPEG data - 65,432 bytes]
--mcp-multimedia-boundary--
-------img001$</t>

<figure><artwork><![CDATA[
## Streaming Tool Response (Large Document Generation)

This example shows how large tool responses can be streamed using MSRP chunking, enabling real-time processing of generated content:
]]></artwork></figure>

<t>MSRP doc001 SEND
To-Path: msrps://client.example.com:9001/def456;tcp
From-Path: msrps://doc-agent.example.com:9002/ghi789;tcp
Message-ID: streaming-response-001
Byte-Range: 1-4096/16384
Success-Report: no
Failure-Report: yes
Content-Type: application/mcp+json</t>

<t>{
  "jsonrpc": "2.0",
  "id": "doc-gen-001",
  "result": {
    "type": "streaming_response",
    "chunk": 1,
    "total_chunks": 4,
    "content_type": "application/pdf",
    "data": "JVBERi0xLjQKMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZwovUGFnZXMgMiAwIFIK..."
  }
}
-------doc001$</t>

<t>MSRP doc002 SEND
To-Path: msrps://client.example.com:9001/def456;tcp
From-Path: msrps://doc-agent.example.com:9002/ghi789;tcp
Message-ID: streaming-response-002
Byte-Range: 4097-8192/16384
Success-Report: no
Failure-Report: yes
Content-Type: application/mcp+json</t>

<t>{
  "jsonrpc": "2.0",
  "id": "doc-gen-001",
  "result": {
    "type": "streaming_response",
    "chunk": 2,
    "total_chunks": 4,
    "content_type": "application/pdf",
    "data": "Pj4KZW5kb2JqCjIgMCBvYmoKPDwKL1R5cGUgL1BhZ2VzCi9LaWRzIFs..."
  }
}
-------doc002$</t>

<figure><artwork><![CDATA[
## Concurrent Tool Execution with Progress Reporting

This example demonstrates multiple concurrent tool calls with progress reporting, showcasing MSRP's ability to handle parallel operations:
]]></artwork></figure>

<t>MSRP batch001 SEND
To-Path: msrps://processing-agent.example.com:9003/jkl012;tcp
From-Path: msrps://client.example.com:9001/def456;tcp
Message-ID: concurrent-tools-001
Byte-Range: 1-256/256
Success-Report: yes
Failure-Report: yes
Content-Type: application/mcp+json</t>

<t>{
  "jsonrpc": "2.0",
  "id": "batch-process-001",
  "method": "tools/batch_call",
  "params": {
    "tools": [
      {
        "id": "task-A",
        "name": "image_processing",
        "arguments": {"operation": "enhance", "image_url": "..."}
      },
      {
        "id": "task-B",
        "name": "text_analysis",
        "arguments": {"text": "...", "analysis_type": "sentiment"}
      },
      {
        "id": "task-C",
        "name": "data_query",
        "arguments": {"query": "SELECT * FROM users WHERE active=1"}
      }
    ]
  }
}
-------batch001$</t>

<t>MSRP progress001 SEND
To-Path: msrps://client.example.com:9001/def456;tcp
From-Path: msrps://processing-agent.example.com:9003/jkl012;tcp
Message-ID: progress-update-001
Byte-Range: 1-128/128
Success-Report: no
Failure-Report: yes
Content-Type: application/mcp+json</t>

<t>{
  "jsonrpc": "2.0",
  "method": "tools/progress",
  "params": {
    "batch_id": "batch-process-001",
    "completed": ["task-B"],
    "in_progress": ["task-A", "task-C"],
    "progress": {"task-A": 0.6, "task-C": 0.3}
  }
}
-------progress001$</t>

<figure><artwork><![CDATA[
## Voice + Vision Integration with Temporal Correlation

This example shows the integration of audio streams with visual processing, demonstrating temporal correlation between RTP audio and MCP tool calls:
]]></artwork></figure>

<t>MSRP voice-vision001 SEND
To-Path: msrps://multimodal-agent.example.com:9004/mno345;tcp
From-Path: msrps://voice-client.example.com:9005/pqr678;tcp
Message-ID: voice-vision-001
Byte-Range: 1-512/512
Success-Report: yes
Failure-Report: yes
Content-Type: application/mcp+json</t>

<t>{
  "jsonrpc": "2.0",
  "id": "voice-vision-001",
  "method": "tools/call",
  "params": {
    "name": "scene_analysis",
    "arguments": {
      "audio_context": "User said: 'What do you see in this image?'",
      "image_ref": "cid:camera-feed",
      "temporal_correlation": {
        "audio_mid": "0",
        "rtp_timestamp": 367128000,
        "rtcp_ntp": "3923045130.125",
        "speech_segment": {
          "start_time": "3923045128.500",
          "end_time": "3923045130.125",
          "confidence": 0.95
        }
      }
    }
  }
}
-------voice-vision001$
```</t>

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

<t>This section provides comprehensive security analysis as required for IETF specifications. The combination of AI capabilities (MCP) with network signaling (SIP) creates unique security considerations that require careful analysis and mitigation.</t>

<section anchor="threat-model"><name>Threat Model</name>

<section anchor="assets-and-trust-boundaries"><name>Assets and Trust Boundaries</name>

<t><strong>Protected Assets:</strong></t>

<t><list style="symbols">
  <t>AI agent capabilities and tool inventories</t>
  <t>MCP conversation data and context</t>
  <t>Authentication credentials and session state</t>
  <t>Business logic and decision-making processes</t>
  <t>Personal and organizational data processed by agents</t>
</list></t>

<t><strong>Trust Boundaries:</strong></t>

<t><list style="symbols">
  <t>Network domain boundaries (inter-domain federation)</t>
  <t>Organizational boundaries (enterprise vs. external agents)</t>
  <t>Agent capability boundaries (tool access permissions)</t>
  <t>Session boundaries (dialog isolation)</t>
  <t>Transport boundaries (TLS termination points)</t>
</list></t>

</section>
<section anchor="threat-actors"><name>Threat Actors</name>

<t><strong>External Attackers:</strong></t>

<t><list style="symbols">
  <t>Network-level attackers intercepting or modifying SIP traffic</t>
  <t>Malicious agents attempting to exploit other agents' capabilities</t>
  <t>Eavesdroppers seeking to extract sensitive AI conversation data</t>
  <t>Denial-of-service attackers targeting AI agent availability</t>
</list></t>

<t><strong>Internal Threats:</strong></t>

<t><list style="symbols">
  <t>Compromised agents with legitimate network access</t>
  <t>Malicious insiders with SIP infrastructure access</t>
  <t>Misconfigured agents exposing excessive capabilities</t>
  <t>Rogue agents performing unauthorized tool execution</t>
</list></t>

<t><strong>Infrastructure Threats:</strong></t>

<t><list style="symbols">
  <t>Compromised SIP proxies or registrars</t>
  <t>Man-in-the-middle attacks at TLS termination points</t>
  <t>DNS poisoning affecting agent discovery</t>
  <t>Certificate authority compromise</t>
</list></t>

</section>
<section anchor="attack-vectors"><name>Attack Vectors</name>

<t><strong>Capability Disclosure Attacks:</strong></t>

<t><list style="symbols">
  <t>Passive monitoring of MCP-Capabilities headers to map agent capabilities</t>
  <t>Registration-time capability enumeration via REGISTER inspection</t>
  <t>Feature-capability parameter harvesting from Contact headers</t>
  <t>OPTIONS method abuse to discover agent capabilities</t>
</list></t>

<t><strong>Session Hijacking and Injection:</strong></t>

<t><list style="symbols">
  <t>SIP dialog hijacking to intercept MCP conversations</t>
  <t>Mid-dialog MESSAGE/INFO injection with malicious MCP payloads</t>
  <t>Session transfer attacks to redirect MCP conversations</t>
  <t>Re-INVITE attacks to modify MCP capability negotiations</t>
</list></t>

<t><strong>Content and Protocol Attacks:</strong></t>

<t><list style="symbols">
  <t>Malformed MCP JSON-RPC payload injection</t>
  <t>Oversized payload attacks causing resource exhaustion</t>
  <t>MCP command injection through tool parameter manipulation</t>
  <t>Cross-protocol attacks leveraging SIP/MCP boundary confusion</t>
</list></t>

<t><strong>Federation and Discovery Attacks:</strong></t>

<t><list style="symbols">
  <t>DNS poisoning to redirect agent discovery</t>
  <t>Rogue registrar attacks to capture agent registrations</t>
  <t>Inter-domain routing manipulation</t>
  <t>Certificate-based impersonation attacks</t>
</list></t>

</section>
</section>
<section anchor="security-requirements-and-mitigations"><name>Security Requirements and Mitigations</name>

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

<t><strong>Mandatory TLS Usage:</strong></t>

<t><list style="symbols">
  <t>All SIP signaling carrying MCP content MUST use TLS (SIPS)</t>
  <t>TLS version MUST be 1.2 or higher with forward secrecy</t>
  <t>Certificate validation MUST follow RFC 5922 (SIP TLS)</t>
  <t>MSRP sessions MUST use MSRPS (TLS-protected MSRP)</t>
  <t>WebSocket connections MUST use WSS (WebSocket Secure)</t>
</list></t>

<t><strong>Certificate Management:</strong></t>

<t><list style="symbols">
  <t>Agents MUST validate peer certificates against trusted CAs</t>
  <t>Certificate pinning SHOULD be used for known agent relationships</t>
  <t>Certificate revocation checking MUST be implemented</t>
  <t>Mutual TLS authentication SHOULD be used for high-security deployments</t>
</list></t>

</section>
<section anchor="authentication-and-authorization"><name>Authentication and Authorization</name>

<t><strong>Agent Authentication:</strong></t>

<t><list style="symbols">
  <t>SIP Digest authentication MUST be supported as baseline</t>
  <t>Certificate-based authentication SHOULD be preferred</t>
  <t>Multi-factor authentication MAY be required for sensitive agents</t>
  <t>Agent identity MUST be cryptographically bound to capabilities</t>
</list></t>

<t><strong>Capability Authorization:</strong></t>

<t><list style="symbols">
  <t>MCP capabilities MUST be authorized per peer relationship</t>
  <t>Least-privilege principle MUST govern capability advertisement</t>
  <t>Dynamic capability restriction MUST be supported</t>
  <t>Tool execution MUST require explicit authorization</t>
</list></t>

<t><strong>Session Authorization:</strong></t>

<t><list style="symbols">
  <t>Each MCP session MUST be independently authorized</t>
  <t>Session transfer MUST require re-authorization</t>
  <t>Capability escalation MUST trigger authorization checks</t>
  <t>Cross-domain sessions MUST respect federation policies</t>
</list></t>

</section>
<section anchor="content-protection"><name>Content Protection</name>

<t><strong>Payload Integrity:</strong></t>

<t><list style="symbols">
  <t>MCP payloads SHOULD use digital signatures for integrity</t>
  <t>S/MIME MAY be used for end-to-end payload protection</t>
  <t>JSON-RPC message IDs MUST be cryptographically secure</t>
  <t>Replay protection MUST be implemented using nonces/timestamps</t>
</list></t>

<t><strong>Content Validation:</strong></t>

<t><list style="symbols">
  <t>All MCP payloads MUST be validated against JSON schema</t>
  <t>Tool parameters MUST be sanitized and validated</t>
  <t>Payload size limits MUST be enforced (recommend 1MB default)</t>
  <t>Malformed payloads MUST be rejected with appropriate SIP errors</t>
</list></t>

<t><strong>Data Confidentiality:</strong></t>

<t><list style="symbols">
  <t>Sensitive MCP data SHOULD be encrypted end-to-end</t>
  <t>Capability information SHOULD be minimized in headers</t>
  <t>Logging MUST respect data classification and privacy requirements</t>
  <t>Memory handling MUST prevent sensitive data leakage</t>
</list></t>

</section>
</section>
<section anchor="feature-interaction-security-analysis"><name>Feature Interaction Security Analysis</name>

<section anchor="sip-mcp-boundary-security"><name>SIP-MCP Boundary Security</name>

<t><strong>Protocol Confusion Attacks:</strong></t>

<t><list style="symbols">
  <t>Clear separation between SIP signaling and MCP application data</t>
  <t>MCP parsers MUST NOT interpret SIP headers as MCP content</t>
  <t>SIP parsers MUST treat MCP bodies as opaque application data</t>
  <t>Cross-protocol injection MUST be prevented through strict validation</t>
</list></t>

<t><strong>Header Field Interactions:</strong></t>

<t><list style="symbols">
  <t>MCP-Capabilities and MCP-Select headers are informational only</t>
  <t>Header field values MUST NOT influence MCP protocol behavior</t>
  <t>Unknown header fields MUST be ignored per RFC 3261</t>
  <t>Header field size limits MUST be enforced</t>
</list></t>

</section>
<section anchor="multi-modal-security-interactions"><name>Multi-Modal Security Interactions</name>

<t><strong>Audio-Data Correlation:</strong></t>

<t><list style="symbols">
  <t>RTP and MCP streams MUST maintain independent security contexts</t>
  <t>Temporal correlation MUST NOT leak sensitive information</t>
  <t>Audio content MUST NOT influence MCP tool execution</t>
  <t>MCP responses MUST NOT be automatically converted to audio</t>
</list></t>

<t><strong>Session Transfer Security:</strong></t>

<t><list style="symbols">
  <t>MCP context MUST be securely transferred during SIP session mobility</t>
  <t>New endpoints MUST be re-authenticated before MCP continuation</t>
  <t>Capability re-negotiation MUST occur after session transfer</t>
  <t>Previous session state MUST be securely cleared</t>
</list></t>

</section>
<section anchor="federation-security-interactions"><name>Federation Security Interactions</name>

<t><strong>Inter-Domain Trust:</strong></t>

<t><list style="symbols">
  <t>Each domain MUST maintain independent MCP authorization policies</t>
  <t>Cross-domain capability sharing MUST be explicitly configured</t>
  <t>Federation agreements MUST specify MCP security requirements</t>
  <t>Domain boundaries MUST be enforced at the MCP application layer</t>
</list></t>

<t><strong>Proxy Security:</strong></t>

<t><list style="symbols">
  <t>SIP proxies MUST NOT modify MCP-related content</t>
  <t>Proxy logs MUST NOT expose sensitive MCP capability information</t>
  <t>Route optimization MUST NOT bypass MCP security policies</t>
  <t>Proxy authentication MUST be independent of MCP authentication</t>
</list></t>

</section>
</section>
<section anchor="deployment-specific-security-guidance"><name>Deployment-Specific Security Guidance</name>

<section anchor="enterprise-deployment"><name>Enterprise Deployment</name>

<t><strong>Network Security:</strong></t>

<t><list style="symbols">
  <t>Deploy SIP-aware firewalls with MCP content inspection</t>
  <t>Use network segmentation to isolate AI agent traffic</t>
  <t>Implement intrusion detection for abnormal MCP patterns</t>
  <t>Monitor capability advertisement for unauthorized disclosure</t>
</list></t>

<t><strong>Policy Enforcement:</strong></t>

<t><list style="symbols">
  <t>Implement centralized MCP capability authorization</t>
  <t>Use SIP identity frameworks (RFC 8224) for agent authentication</t>
  <t>Deploy policy servers for dynamic capability control</t>
  <t>Audit all MCP tool executions and results</t>
</list></t>

<t><strong>Operational Security:</strong></t>

<t><list style="symbols">
  <t>Regular security assessment of agent capabilities</t>
  <t>Incident response procedures for compromised agents</t>
  <t>Secure agent provisioning and deprovisioning</t>
  <t>Staff training on AI-specific security risks</t>
</list></t>

</section>
<section anchor="federated-deployment"><name>Federated Deployment</name>

<t><strong>Inter-Organization Security:</strong></t>

<t><list style="symbols">
  <t>Establish formal security agreements for MCP federation</t>
  <t>Use mutual TLS with organization-specific certificate authorities</t>
  <t>Implement capability filtering at domain boundaries</t>
  <t>Monitor cross-domain MCP traffic for anomalies</t>
</list></t>

<t><strong>Trust Management:</strong></t>

<t><list style="symbols">
  <t>Maintain explicit trust relationships between organizations</t>
  <t>Regular review and update of federated agent permissions</t>
  <t>Implement capability revocation mechanisms</t>
  <t>Cross-organization incident response coordination</t>
</list></t>

</section>
<section anchor="cloud-and-service-provider-deployment"><name>Cloud and Service Provider Deployment</name>

<t><strong>Multi-Tenancy Security:</strong></t>

<t><list style="symbols">
  <t>Strict isolation between different customer agents</t>
  <t>Tenant-specific capability authorization policies</t>
  <t>Encrypted storage of MCP conversation data</t>
  <t>Audit trails for all cross-tenant interactions</t>
</list></t>

<t><strong>Service Provider Responsibilities:</strong></t>

<t><list style="symbols">
  <t>Secure agent hosting and capability management</t>
  <t>Regular security updates and vulnerability management</t>
  <t>Customer data protection and privacy compliance</t>
  <t>Transparent security incident reporting</t>
</list></t>

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

<section anchor="data-minimization"><name>Data Minimization</name>

<t><strong>Capability Advertisement:</strong></t>

<t><list style="symbols">
  <t>Advertise only necessary capabilities for intended interactions</t>
  <t>Use capability filtering based on peer identity and context</t>
  <t>Implement dynamic capability advertisement based on session needs</t>
  <t>Regular review and pruning of advertised capabilities</t>
</list></t>

<t><strong>Conversation Data:</strong></t>

<t><list style="symbols">
  <t>Minimize retention of MCP conversation logs</t>
  <t>Implement data classification for different types of MCP content</t>
  <t>Use data anonymization techniques where appropriate</t>
  <t>Respect user consent for AI conversation data processing</t>
</list></t>

</section>
<section anchor="regulatory-compliance"><name>Regulatory Compliance</name>

<t><strong>GDPR and Similar Regulations:</strong></t>

<t><list style="symbols">
  <t>Implement data subject rights for MCP conversation data</t>
  <t>Provide clear notice about AI agent data processing</t>
  <t>Support data portability for MCP conversation exports</t>
  <t>Implement right to erasure for MCP-related data</t>
</list></t>

<t><strong>Industry-Specific Requirements:</strong></t>

<t><list style="symbols">
  <t>Healthcare: HIPAA compliance for medical AI agents</t>
  <t>Finance: PCI DSS compliance for payment-related agents</t>
  <t>Government: Appropriate security clearance levels for classified agents</t>
  <t>Legal: Attorney-client privilege protection for legal AI agents</t>
</list></t>

</section>
</section>
<section anchor="security-monitoring-and-incident-response"><name>Security Monitoring and Incident Response</name>

<section anchor="monitoring-requirements"><name>Monitoring Requirements</name>

<t><strong>Real-Time Monitoring:</strong></t>

<t><list style="symbols">
  <t>Anomalous MCP capability advertisement patterns</t>
  <t>Unusual tool execution frequencies or patterns</t>
  <t>Failed authentication attempts for agent access</t>
  <t>Suspicious cross-domain MCP traffic patterns</t>
</list></t>

<t><strong>Audit Requirements:</strong></t>

<t><list style="symbols">
  <t>Complete audit trail of all MCP tool executions</t>
  <t>Agent capability changes and authorization updates</t>
  <t>Session establishment and termination events</t>
  <t>Security policy violations and enforcement actions</t>
</list></t>

</section>
<section anchor="incident-response"><name>Incident Response</name>

<t><strong>Detection and Classification:</strong></t>

<t><list style="symbols">
  <t>Automated detection of MCP-specific security events</t>
  <t>Classification of incidents by severity and impact</t>
  <t>Integration with existing security incident response procedures</t>
  <t>Specialized procedures for AI agent compromise</t>
</list></t>

<t><strong>Response and Recovery:</strong></t>

<t><list style="symbols">
  <t>Immediate capability revocation for compromised agents</t>
  <t>Session termination and cleanup procedures</t>
  <t>Evidence preservation for MCP-related security incidents</t>
  <t>Communication procedures for federated incident response</t>
</list></t>

</section>
</section>
<section anchor="implementation-security-guidelines"><name>Implementation Security Guidelines</name>

<section anchor="secure-development-practices"><name>Secure Development Practices</name>

<t><strong>Code Security:</strong></t>

<t><list style="symbols">
  <t>Input validation for all MCP content parsing</t>
  <t>Secure memory management for sensitive MCP data</t>
  <t>Regular security code reviews focusing on SIP-MCP interactions</t>
  <t>Automated security testing for MCP protocol implementations</t>
</list></t>

<t><strong>Cryptographic Implementation:</strong></t>

<t><list style="symbols">
  <t>Use well-established cryptographic libraries</t>
  <t>Proper random number generation for MCP session identifiers</t>
  <t>Secure key management for MCP-related cryptographic operations</t>
  <t>Regular cryptographic algorithm updates and security patches</t>
</list></t>

</section>
<section anchor="configuration-security"><name>Configuration Security</name>

<t><strong>Secure Defaults:</strong></t>

<t><list style="symbols">
  <t>Minimal capability advertisement by default</t>
  <t>Strict authentication requirements by default</t>
  <t>Conservative timeout and rate limiting settings</t>
  <t>Comprehensive logging enabled by default</t>
</list></t>

<t><strong>Configuration Management:</strong></t>

<t><list style="symbols">
  <t>Secure storage of agent configuration data</t>
  <t>Version control and audit trails for configuration changes</t>
  <t>Automated configuration validation and security checking</t>
  <t>Regular security configuration reviews and updates</t>
</list></t>

<t>This comprehensive security analysis addresses the unique risks introduced by combining AI capabilities with SIP signaling, providing specific guidance for secure deployment and operation of MCP-over-SIP systems.</t>

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

<t>This document requests IANA registration of SIP protocol elements as described below. As an Informational RFC, these registrations follow the Designated Expert review process per RFC 5727.</t>

<section anchor="registration-of-option-tag"><name>Registration of Option-Tag</name>

<t>Per RFC 5727, SIP option tags require Standards Action for registration. This Informational specification does not request registration of the "mcp" option tag. Implementations using this specification SHOULD use an experimental or private option tag (e.g., "x-mcp" or organization-specific variants) until a Standards Track specification is available.</t>

<t><strong>Note for Future Standards Track Work:</strong>
Name: <strong>mcp</strong>
Description: Support for SIP MCP extension
Reference: [Future Standards Track RFC]</t>

</section>
<section anchor="registration-of-header-fields"><name>Registration of Header Fields</name>

<t>The following header fields are requested for registration under the Designated Expert review process per RFC 5727:</t>

<t><list style="symbols">
  <t><strong>Header Field Name:</strong> MCP-Capabilities</t>
  <t><strong>Compact Form:</strong> none</t>
  <t><strong>Reference:</strong> This document</t>
  <t><strong>Registration Type:</strong> Informational (Designated Expert Review)</t>
  <t><strong>Header Field Name:</strong> MCP-Select</t>
  <t><strong>Compact Form:</strong> none</t>
  <t><strong>Reference:</strong> This document</t>
  <t><strong>Registration Type:</strong> Informational (Designated Expert Review)</t>
</list></t>

</section>
<section anchor="registration-of-feature-capability-indicators-rfc-6809"><name>Registration of Feature-Capability Indicators (RFC 6809)</name>

<t>The following feature-capability indicators are requested for registration:</t>

<t><list style="symbols">
  <t><strong>Indicator:</strong> +mcp</t>
  <t><strong>Reference:</strong> This document</t>
  <t><strong>Registration Type:</strong> Informational (Designated Expert Review)</t>
  <t><strong>Indicator:</strong> +mcp.ver</t>
  <t><strong>Reference:</strong> This document</t>
  <t><strong>Registration Type:</strong> Informational (Designated Expert Review)</t>
  <t><strong>Indicator:</strong> +mcp.cap</t>
  <t><strong>Reference:</strong> This document</t>
  <t><strong>Registration Type:</strong> Informational (Designated Expert Review)</t>
</list></t>

</section>
<section anchor="media-type-registration"><name>Media Type Registration</name>

<t>This document requests registration of the following media type:</t>

<t><strong>Type name:</strong> application
<strong>Subtype name:</strong> mcp+json
<strong>Required parameters:</strong> none
<strong>Optional parameters:</strong> charset (defaults to UTF-8)
<strong>Encoding considerations:</strong> binary; typically UTF-8 JSON
<strong>Security considerations:</strong> see Section 10
<strong>Interoperability considerations:</strong> none
<strong>Published specification:</strong> This document
<strong>Applications that use this media type:</strong> SIP UAs implementing MCP extension
<strong>Fragment identifier considerations:</strong> n/a
<strong>Additional information:</strong> n/a
<strong>Person &amp; email to contact for further information:</strong> [Author contact information]
<strong>Intended usage:</strong> LIMITED USE (see Applicability Statement in Section 3.1)
<strong>Restrictions on usage:</strong> See Section 3.1 for deployment limitations
<strong>Author:</strong> Thomas McCarthy-Howe
<strong>Change controller:</strong> IETF</t>

</section>
<section anchor="designated-expert-considerations"><name>Designated Expert Considerations</name>

<t>Per RFC 5727, the Designated Expert reviewing registrations from this document should verify:</t>

<t><list style="numbers" type="1">
  <t>The proposed registrations do not conflict with existing SIP protocol elements</t>
  <t>The security considerations have been adequately addressed</t>
  <t>The applicability statement clearly defines appropriate usage scenarios</t>
  <t>The registrations follow established SIP extension patterns and do not undermine SIP's architectural integrity</t>
</list></t>

</section>
</section>
<section anchor="references"><name>References</name>

<section anchor="normative"><name>Normative</name>

<t><list style="symbols">
  <t><strong><xref target="RFC2119"></xref></strong> Bradner, S., "Key words for use in RFCs...", BCP 14.</t>
  <t><strong><xref target="RFC3261"></xref></strong> Rosenberg, J., et al., "SIP: Session Initiation Protocol".</t>
  <t><strong><xref target="RFC3264"></xref></strong> Rosenberg, J., Schulzrinne, H., et al., "An Offer/Answer Model...".</t>
  <t><strong><xref target="RFC5234"></xref></strong> Crocker, D., Overell, P., "Augmented BNF for Syntax".</t>
  <t><strong><xref target="RFC3711"></xref></strong> Baugher, M., et al., "The Secure Real-time Transport Protocol (SRTP)".</t>
  <t><strong><xref target="RFC4145"></xref></strong> Yon, D., et al., "TCP-Based Media Transport in the SDP (comedia)".</t>
  <t><strong><xref target="RFC4975"></xref></strong> Campbell, B., et al., "The Message Session Relay Protocol (MSRP)".</t>
  <t><strong><xref target="RFC4976"></xref></strong> Mahy, R., et al., "MSRP Relays for NAT Traversal".</t>
  <t><strong><xref target="RFC5764"></xref></strong> McGrew, D., Rescorla, E., "DTLS-SRTP".</t>
  <t><strong><xref target="RFC8866"></xref></strong> Begen, A., et al., "Session Description Protocol (SDP)".</t>
  <t><strong><xref target="RFC3550"></xref></strong> Schulzrinne, H., et al., "RTP: A Transport Protocol for Real-Time Applications".</t>
</list></t>

</section>
<section anchor="informative"><name>Informative</name>

<t><list style="symbols">
  <t><strong><xref target="RFC7118"></xref></strong> Baz Castillo, I., et al., "The WebSocket Protocol as a SIP Transport".</t>
</list></t>

</section>
<section anchor="a-acknowledgments"><name>A. Acknowledgments</name>

<t>Thanks to the SIP and ART area reviewers for early feedback.</t>

</section>
<section anchor="b-change-log"><name>B. Change Log</name>

<t><list style="symbols">
  <t><strong>-00</strong> Initial version; added Section 2 introducing MCP; added Section 7.5
on multimodal operation and Examples 9.4-9.5; added Section 4.1 on
agent-to-agent interoperation with two use cases.</t>
</list></t>

</section>
</section>


  </middle>

  <back>


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

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



<reference anchor="RFC2119">
  <front>
    <title>Key words for use in RFCs to Indicate Requirement Levels</title>
    <author fullname="S. Bradner" initials="S." surname="Bradner"/>
    <date month="March" year="1997"/>
    <abstract>
      <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="2119"/>
  <seriesInfo name="DOI" value="10.17487/RFC2119"/>
</reference>
<reference anchor="RFC3261">
  <front>
    <title>SIP: Session Initiation Protocol</title>
    <author fullname="J. Rosenberg" initials="J." surname="Rosenberg"/>
    <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne"/>
    <author fullname="G. Camarillo" initials="G." surname="Camarillo"/>
    <author fullname="A. Johnston" initials="A." surname="Johnston"/>
    <author fullname="J. Peterson" initials="J." surname="Peterson"/>
    <author fullname="R. Sparks" initials="R." surname="Sparks"/>
    <author fullname="M. Handley" initials="M." surname="Handley"/>
    <author fullname="E. Schooler" initials="E." surname="Schooler"/>
    <date month="June" year="2002"/>
    <abstract>
      <t>This document describes Session Initiation Protocol (SIP), an application-layer control (signaling) protocol for creating, modifying, and terminating sessions with one or more participants. These sessions include Internet telephone calls, multimedia distribution, and multimedia conferences. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3261"/>
  <seriesInfo name="DOI" value="10.17487/RFC3261"/>
</reference>
<reference anchor="RFC3264">
  <front>
    <title>An Offer/Answer Model with Session Description Protocol (SDP)</title>
    <author fullname="J. Rosenberg" initials="J." surname="Rosenberg"/>
    <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne"/>
    <date month="June" year="2002"/>
    <abstract>
      <t>This document defines a mechanism by which two entities can make use of the Session Description Protocol (SDP) to arrive at a common view of a multimedia session between them. In the model, one participant offers the other a description of the desired session from their perspective, and the other participant answers with the desired session from their perspective. This offer/answer model is most useful in unicast sessions where information from both participants is needed for the complete view of the session. The offer/answer model is used by protocols like the Session Initiation Protocol (SIP). [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3264"/>
  <seriesInfo name="DOI" value="10.17487/RFC3264"/>
</reference>
<reference anchor="RFC3550">
  <front>
    <title>RTP: A Transport Protocol for Real-Time Applications</title>
    <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne"/>
    <author fullname="S. Casner" initials="S." surname="Casner"/>
    <author fullname="R. Frederick" initials="R." surname="Frederick"/>
    <author fullname="V. Jacobson" initials="V." surname="Jacobson"/>
    <date month="July" year="2003"/>
    <abstract>
      <t>This memorandum describes RTP, the real-time transport protocol. RTP provides end-to-end network transport functions suitable for applications transmitting real-time data, such as audio, video or simulation data, over multicast or unicast network services. RTP does not address resource reservation and does not guarantee quality-of- service for real-time services. The data transport is augmented by a control protocol (RTCP) to allow monitoring of the data delivery in a manner scalable to large multicast networks, and to provide minimal control and identification functionality. RTP and RTCP are designed to be independent of the underlying transport and network layers. The protocol supports the use of RTP-level translators and mixers. Most of the text in this memorandum is identical to RFC 1889 which it obsoletes. There are no changes in the packet formats on the wire, only changes to the rules and algorithms governing how the protocol is used. The biggest change is an enhancement to the scalable timer algorithm for calculating when to send RTCP packets in order to minimize transmission in excess of the intended rate when many participants join a session simultaneously. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="64"/>
  <seriesInfo name="RFC" value="3550"/>
  <seriesInfo name="DOI" value="10.17487/RFC3550"/>
</reference>
<reference anchor="RFC3711">
  <front>
    <title>The Secure Real-time Transport Protocol (SRTP)</title>
    <author fullname="M. Baugher" initials="M." surname="Baugher"/>
    <author fullname="D. McGrew" initials="D." surname="McGrew"/>
    <author fullname="M. Naslund" initials="M." surname="Naslund"/>
    <author fullname="E. Carrara" initials="E." surname="Carrara"/>
    <author fullname="K. Norrman" initials="K." surname="Norrman"/>
    <date month="March" year="2004"/>
    <abstract>
      <t>This document describes the Secure Real-time Transport Protocol (SRTP), a profile of the Real-time Transport Protocol (RTP), which can provide confidentiality, message authentication, and replay protection to the RTP traffic and to the control traffic for RTP, the Real-time Transport Control Protocol (RTCP). [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3711"/>
  <seriesInfo name="DOI" value="10.17487/RFC3711"/>
</reference>
<reference anchor="RFC4145">
  <front>
    <title>TCP-Based Media Transport in the Session Description Protocol (SDP)</title>
    <author fullname="D. Yon" initials="D." surname="Yon"/>
    <author fullname="G. Camarillo" initials="G." surname="Camarillo"/>
    <date month="September" year="2005"/>
    <abstract>
      <t>This document describes how to express media transport over TCP using the Session Description Protocol (SDP). It defines the SDP 'TCP' protocol identifier, the SDP 'setup' attribute, which describes the connection setup procedure, and the SDP 'connection' attribute, which handles connection reestablishment. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4145"/>
  <seriesInfo name="DOI" value="10.17487/RFC4145"/>
</reference>
<reference anchor="RFC8866">
  <front>
    <title>SDP: Session Description Protocol</title>
    <author fullname="A. Begen" initials="A." surname="Begen"/>
    <author fullname="P. Kyzivat" initials="P." surname="Kyzivat"/>
    <author fullname="C. Perkins" initials="C." surname="Perkins"/>
    <author fullname="M. Handley" initials="M." surname="Handley"/>
    <date month="January" year="2021"/>
    <abstract>
      <t>This memo defines the Session Description Protocol (SDP). SDP is intended for describing multimedia sessions for the purposes of session announcement, session invitation, and other forms of multimedia session initiation. This document obsoletes RFC 4566.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8866"/>
  <seriesInfo name="DOI" value="10.17487/RFC8866"/>
</reference>
<reference anchor="RFC4975">
  <front>
    <title>The Message Session Relay Protocol (MSRP)</title>
    <author fullname="B. Campbell" initials="B." role="editor" surname="Campbell"/>
    <author fullname="R. Mahy" initials="R." role="editor" surname="Mahy"/>
    <author fullname="C. Jennings" initials="C." role="editor" surname="Jennings"/>
    <date month="September" year="2007"/>
    <abstract>
      <t>This document describes the Message Session Relay Protocol, a protocol for transmitting a series of related instant messages in the context of a session. Message sessions are treated like any other media stream when set up via a rendezvous or session creation protocol such as the Session Initiation Protocol. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4975"/>
  <seriesInfo name="DOI" value="10.17487/RFC4975"/>
</reference>
<reference anchor="RFC4976">
  <front>
    <title>Relay Extensions for the Message Sessions Relay Protocol (MSRP)</title>
    <author fullname="C. Jennings" initials="C." surname="Jennings"/>
    <author fullname="R. Mahy" initials="R." surname="Mahy"/>
    <author fullname="A. B. Roach" initials="A. B." surname="Roach"/>
    <date month="September" year="2007"/>
    <abstract>
      <t>Two separate models for conveying instant messages have been defined. Page-mode messages stand alone and are not part of a Session Initiation Protocol (SIP) session, whereas session-mode messages are set up as part of a session using SIP. The Message Session Relay Protocol (MSRP) is a protocol for near real-time, peer-to-peer exchanges of binary content without intermediaries, which is designed to be signaled using a separate rendezvous protocol such as SIP. This document introduces the notion of message relay intermediaries to MSRP and describes the extensions necessary to use them. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4976"/>
  <seriesInfo name="DOI" value="10.17487/RFC4976"/>
</reference>
<reference anchor="RFC5234">
  <front>
    <title>Augmented BNF for Syntax Specifications: ABNF</title>
    <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
    <author fullname="P. Overell" initials="P." surname="Overell"/>
    <date month="January" year="2008"/>
    <abstract>
      <t>Internet technical specifications often need to define a formal syntax. Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications. The current specification documents ABNF. It balances compactness and simplicity with reasonable representational power. The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges. This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="68"/>
  <seriesInfo name="RFC" value="5234"/>
  <seriesInfo name="DOI" value="10.17487/RFC5234"/>
</reference>
<reference anchor="RFC5764">
  <front>
    <title>Datagram Transport Layer Security (DTLS) Extension to Establish Keys for the Secure Real-time Transport Protocol (SRTP)</title>
    <author fullname="D. McGrew" initials="D." surname="McGrew"/>
    <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
    <date month="May" year="2010"/>
    <abstract>
      <t>This document describes a Datagram Transport Layer Security (DTLS) extension to establish keys for Secure RTP (SRTP) and Secure RTP Control Protocol (SRTCP) flows. DTLS keying happens on the media path, independent of any out-of-band signalling channel present. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5764"/>
  <seriesInfo name="DOI" value="10.17487/RFC5764"/>
</reference>
<reference anchor="RFC7587">
  <front>
    <title>RTP Payload Format for the Opus Speech and Audio Codec</title>
    <author fullname="J. Spittka" initials="J." surname="Spittka"/>
    <author fullname="K. Vos" initials="K." surname="Vos"/>
    <author fullname="JM. Valin" initials="JM." surname="Valin"/>
    <date month="June" year="2015"/>
    <abstract>
      <t>This document defines the Real-time Transport Protocol (RTP) payload format for packetization of Opus-encoded speech and audio data necessary to integrate the codec in the most compatible way. It also provides an applicability statement for the use of Opus over RTP. Further, it describes media type registrations for the RTP payload format.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7587"/>
  <seriesInfo name="DOI" value="10.17487/RFC7587"/>
</reference>
<reference anchor="RFC8174">
  <front>
    <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
    <author fullname="B. Leiba" initials="B." surname="Leiba"/>
    <date month="May" year="2017"/>
    <abstract>
      <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="8174"/>
  <seriesInfo name="DOI" value="10.17487/RFC8174"/>
</reference>
<reference anchor="RFC6809">
  <front>
    <title>Mechanism to Indicate Support of Features and Capabilities in the Session Initiation Protocol (SIP)</title>
    <author fullname="C. Holmberg" initials="C." surname="Holmberg"/>
    <author fullname="I. Sedlacek" initials="I." surname="Sedlacek"/>
    <author fullname="H. Kaplan" initials="H." surname="Kaplan"/>
    <date month="November" year="2012"/>
    <abstract>
      <t>This specification defines a new SIP header field, Feature-Caps. The Feature-Caps header field conveys feature-capability indicators that are used to indicate support of features and capabilities for SIP entities that are not represented by the Uniform Resource Identifier (URI) of the Contact header field.</t>
      <t>SIP entities that are represented by the URI of the SIP Contact header field can convey media feature tags in the Contact header field to indicate support of features and capabilities.</t>
      <t>This specification also defines feature-capability indicators and creates a new IANA registry, "Proxy-Feature Feature-Capability Indicator Trees", for registering feature-capability indicators. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6809"/>
  <seriesInfo name="DOI" value="10.17487/RFC6809"/>
</reference>
<reference anchor="RFC5727">
  <front>
    <title>Change Process for the Session Initiation Protocol (SIP) and the Real-time Applications and Infrastructure Area</title>
    <author fullname="J. Peterson" initials="J." surname="Peterson"/>
    <author fullname="C. Jennings" initials="C." surname="Jennings"/>
    <author fullname="R. Sparks" initials="R." surname="Sparks"/>
    <date month="March" year="2010"/>
    <abstract>
      <t>This memo documents a process intended to organize the future development of the Session Initiation Protocol (SIP) and related work in the Real-time Applications and Infrastructure (RAI) Area. As the environments in which SIP is deployed grow more numerous and diverse, modifying or extending SIP in certain ways may threaten the interoperability and security of the protocol; however, the IETF process must also cater to the realities of existing deployments and serve the needs of the implementers working with SIP. This document therefore defines the functions of two long-lived working groups in the RAI Area that are, respectively, responsible for the maintenance of the core SIP specifications and the development of new efforts to extend and apply work in this space. This document obsoletes RFC 3427. This memo documents an Internet Best Current Practice.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="67"/>
  <seriesInfo name="RFC" value="5727"/>
  <seriesInfo name="DOI" value="10.17487/RFC5727"/>
</reference>



    </references>

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



<reference anchor="RFC7118">
  <front>
    <title>The WebSocket Protocol as a Transport for the Session Initiation Protocol (SIP)</title>
    <author fullname="I. Baz Castillo" initials="I." surname="Baz Castillo"/>
    <author fullname="J. Millan Villegas" initials="J." surname="Millan Villegas"/>
    <author fullname="V. Pascual" initials="V." surname="Pascual"/>
    <date month="January" year="2014"/>
    <abstract>
      <t>The WebSocket protocol enables two-way real-time communication between clients and servers in web-based applications. This document specifies a WebSocket subprotocol as a reliable transport mechanism between Session Initiation Protocol (SIP) entities to enable use of SIP in web-oriented deployments.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7118"/>
  <seriesInfo name="DOI" value="10.17487/RFC7118"/>
</reference>



    </references>

</references>



  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA9W9aXfb1rUw/J2/Aku9vRUVkhoseZCve6PJiVrLViQ5adqV
FUMkSCIGAQaDbKXpf3/3eM4+ICg7ffq2z+O12ogkcIZ99tnzMBwOe3VaZ8lh
tHF9fhmdfayTvEqLPJoWZXRRTJIsOinyOvlYR5dlURfjIos2L04u+xu9+Pa2
TO7kRfjKv7zRmxTjPF7AqJMyntbDefEhGVbpclyUyXAxXg4TfXS4s9Mbx3Uy
K8r7wyjNp0Wvly7Lw6gum6re29l5trPXq5rbRVrh4zf3Sxj0/OzmZS8uk/gw
Orq66X0oyvezsmiWhxEs5eTN1Vn0HXyV5rPoK/y69z65h2cm8CLspMyTeniK
y+r1qjrOJz/GWZHDqPdJ1asWcVn/+HNT1El1GOVFb5keRn+DbQ+iqijrMplW
8Nf9Av/4odeLm3pelIe9aNiL4F+aw0s3o+hifALDzO+HX8O+6RcGxs28WMRV
x89FOYvz9Je4hi0eRt+evHl9fkI/JIs4zQ6j2byo6mJ6G1fz4ssZfjcaF4te
Ly/KBbx0l8ASoquXJ3u7u8/kz0d7j3f9n/v658HBjv75ZFcf2N/dP5A/nz59
/Fi/ffbkwP+p3x7sPdLBDp64cZ8cPH2iI+w+0W8fP9155p7dgwd6eMDhkmEV
T+GH4XAYxbdVXcZjOJebeVpFgEPNIsnrqFom43SaJlUUR9cJ4QGcZFqnBC+D
l3D6/cihVq8uonhyl5R1WiVR1SyXcIKI14MoB3zD15NBBAgQjeOyvI/qebIG
43uE8aPovI4myTTNETc2d/uwnDz5gDgXFUtcyrCOZ9HmBiD4Rn8Qbe716fd5
Ek+SsgcbyCYV3atxvIxv0yyt7/0Caae4mCrJkjGOBiM86tNaECbTJK4buD3m
3WVcAloBRvOoZTJLEYC8knSRRJO0Ghcw/j1vc3O/j5vsbcTLZZaO6cFtWOwX
P1VwZ6NFMknjqIYbNqLrvIzvsyKGJY/jPLpNALDjeZzPkkk0aUq4XL1KziKB
a3SbpdXc7WGRToYwWFbMoqbCe3j++tvzm7NtuM/R5pvpNCm3j/LqQ1L2B72L
s+vro6/OeInnr1++GTE2wBiTLOn1foe3tiwmDQEFcWPdMTFhigB1YMFmj9FS
HwAwwZ0vYSgA5QTuKwAvpnGjD2k9j+qiyCpaSDyDvVSj6Lt5miUEjiSHTQIO
LuHSltMm6x2d81P+OAFFB3AMcTYEcpNNcF5ZNuDNMivuEUBVNI/vEnjsDh5M
Jr0qneWA3QDkGohenFeIpsMsvk/KKEsXaU17qODk4jpKF0tYL7ycpYIFg94S
loOXKh8LOjcVvJp8hO/TBL4EeP7udwgkWP4iuobxCNkOaVc3OmP0imZ8CbQF
YFP1eidNWeLu8CmYNqOXZC0wbNEg8ABp4qopETLRVF4FsJqd95L8Li2LnLY+
QJyt03GTxWUGyA+YAA8BfmSwqHx8Pwh2hpvpVeM4ky+ATGxtXfrdRucEja2t
Q9xdF6SBXH6gDcQTwONHOzvDpzs7i6on00Uf5kkOy70r3gM2VPf5eA4rLZoK
1gabGJdwpDA9H4vgyTKu57APRJfeBM4wK5Z4AcsEgYhbqZF2bUzgUpTFfdU+
jA0aGFhbsUjK4TQe00W6r+BMANsunz1TUADVS98nePkaol63yKuAZmWwQUAO
vvJIsqoMELKqo93f94qpXSqsMgPSQ2sqeB1TZKpMIYTwAXj5CaAXRVPj4fWK
cjxP3HNTGL8aIeiv/NlE51XVJFUL9NUYLkmZFgoO+A/TH8WNHowJe4J17u0M
H+38nsAI0yKA4Lam8EdZwr6AzkwyXBagPO7R3YuI7sWod31zev4mWqZLGA2k
kPh9VME9zesMsObrm5vLaFzkeSInRpe6QvIJs0dNDtQ4mqezeQ/JG1+Z75Lb
62L8PqnNixXTT/o4xJ3QX7g1IMXJBKfCw8EDZGqBYM4KOK2xECbYCW6cyGEd
V+8JitceoaNX/n4jKE9kbtj4osnqFC4dkSTgCeUdYtlmMpqNBr2vAGrN7QBe
z5MY2NklQOVDCTuq+0SsYf4KWGeEsI8e7wx2gOzWgOM5gV5W10OyNaZ7ZtAE
MRW4JxCoo8tzGgD2xiQR4FgKxTMkZ9Q7i8dzumS8yggvBB0zYHpaFVns6Wte
wJWMkfRWNXFfGIVuAGInwY+hCz8nywrhR/BEAQ/REMnKDCgMnHlSf0jg7goL
Yvw81esIkqjeNwQrcoxiCiSWbo9IFYLcMIXcYlwGX0yPbhUykyweoyw5IEwE
4I2TJZIWwS54AEQxOKmPjEnIYC/vAavz6Pr0z/Qy3lXAOpoRVkBcB24+Mosx
4C6dt+UCtyCOpAAPFmBYtKCxmTgCUoT0mAj876LrZgHS6z0ecUjZL2M4icsC
5gWy/quSeGKi2xdJXaZjFDWjXyNL8pm2Ru7fr9EVMrbviLGd3aUThK7/tffr
cN2/9b98xq+w3q8BsYE7MVXcdES8/2t07Sk2rZlIlVvvxulaGozrdbeNpEkU
YfhOwpuGugwMadBxLzvIzoaDg4ol2zd446JjIDK1vHnReanduOFNlUs82dBx
z/UuDaLXBfNxO+4Q74y7KlXkx31bCYdyN2vDnBuAdvwekeY0uBmMD+F1wKti
xg1fkGuy4cZFZqbHds3MjF+8QZqobC7NW8d2ssqTDJqhKIMCd0zKQJE1LBTi
V3ATPwBaAu9mEQCoDIvFQPB/uQMcGSi5cPI/AROlDLqTwwmoZ7ieZJIw8xtF
oSYi0j9MvUjzdBFng94tbPtDXE6GSAXgJbyeuBqnhrDgiPsBFB3G8CyI0vlk
SfcRDrunUnqUICEtgICUdNtV3ibUXsDKiRKzPJ18BFEf/8CpQAeYF5Nq0AMp
B6kjSyHJg9Ik3t8alaoJCyTu4veM/MSSI6APHgrMfcTjg9DKGlq4T7IYsKxF
T8EVgc1EwDAAmlnkxeVisWhykc17eZJMmL+Imjc2YgTJvAgweP7nBo+WpfBJ
dHuPs/+h6sUgrKR1ghI9TGJFcSGLX8n8uDS/lbN8jtxLB0L2cYY4sCxRWYS1
HtFa31hRCHnJG6OpV4Joll/3aBdxlv4CY+uWgXE7FAIWNuYzGjg5kEhBiuI7
MIm4FwOXuK/Sqg+4+3OTlokj/MCqiw9DvToBIB1LFM2lR+BxGA+8Gn6gFSSI
BzlxaMQSR1DdlQQJIM4Qgj1ddYglKGANbwGMEwKqQRiQi0lfSmHLsNGP96jw
l7FTuZwShfcty1KCcQl3HEHIIxZ5h1ZF7J2pHHAtRqZzr7yR8ITsrMwJ5l71
w5mQxyK8M4LYLVzgHtLnQXRXpKoy3aVVA8P6wxkxeolSbOgFyNCgdCOZ7cUZ
Ea4qxcOP8wTZUNxMUhByapgTILqJd4Kmsbpmn6Yk0OFxu3tOTxNrABFR9FCj
rcKlWsKOkqo/8DQlJ7E269Ekw1kD95rwzvMBd4dAaKAFoEZD0pi99V7kIVif
lEVVDS2yM9BPigyE18LfB4/i0xJYxSRF5R4+94rgouAtR/Fu7N5PBFVwVyLz
gkjVlMiCb0lcKhEDWfBE3QCwQM+ELCHRGpodLcg4AEeJQgrheI+MifYOuGGR
oqAQyl8vEjyKtFrgihETUJ7CU6GlJb0xgaUIwcLoas6XQYhiy/DoDnidShYA
q2u+6G3FCX4RHdBf+eIW1txD/YGYA64Y9RVUSkBku22YPzFEAtMP3yNn++k5
SDzeGe7u7eBeCrVwRLFdYLOcEFnYvANYHwx3d5DNNfBNj/Dl9PV1X2843W6Z
ipZ1C1pNPibeFNIXunpJT/gdyBmiCxL5QgE6YD9Rm/0Qux++Jfrv6TcC+FtC
+ZdpCUfrCHabKpzATYrGSMLKSm48yA5AXFGbrkRkT7JkCQL7/RAPcYbIOek6
kho1LFh2UU5wf5bo8sB67XFQeJ+ucvIRUMeeVU7WTyEUTtEVyjThm4mAMIRA
qaZnjBmIU4e9oUhonoPoZaRLj6qgJU5AAOs4e0/3UN6rRNLANSYRyjIJAsRN
DVMwmFFpLOHyImatsjI0pACAgICgyIsHC8PCKkAnncHiREEK6BKMTAoFGSoB
dWYNLJ1FFqsx4lKGfGAwtSrWWVG8b5aIBDdoLbV8sBqe20NEHDizwlKLIQH2
1StDMFC8OGBNWN4aWqNgSVRNbcueGKpdg1EH50ZjLYAva3FtwTE8y8vjvziU
w0mQLyaCATCJH9wxykmCgg/CxfBKGCnYMNyxtC5oDbgteIwQzs6EVvf3XkBr
UNKEYQS2QwDmJLGWObFTC7UmelsR1723Cw13SldWrPfDI5KC4cHvFB3wnF4V
+WxYNnmO64MfBb8SQWek8zXSesACVJyU/ipSxESdveXEUmQ4sRxk95q5FF9E
MVB7roCHYFQph+dlcpcmH8xyGNvlNNyyyKShq1DDBN5RzzPvkpA380BuxTIi
3TWk8AlbZBTR4uo9nS5wDcOS6wZOtw2iLInLnOlKN3Dc+lSwYkEHxrvBy49k
E15X6wlTJ8ZYMS8wnbq+8obxqljOEe/GdPUWwaD2LBDM5wu87SroBlSrBMaL
gMIJgfum9CQKSu5SIf4/3icjNOmJyObQyQLjnnbQphWSSFQaaE4JA7N2UpN4
JRafnE34uHo8PbLQ8MHZkZzUZjYKdCpBYZ/WjMwFaTxwHeC+RR9VVrR+IwAN
gSUWZ4zawxO1OgfMjmjlDdJKWMcpqBgk1V/E7+WUjqzM66lO1dwOhd/De06C
7LoOaMZGKosON1Ua8Gbjcb2Es8jJfAakYmLJB6HB0bkn0RNd24LWhmedT9Dq
nMpVLdH00XpbKNoSAClyFeI58KcZKSS67pX3yBfDonHRlMj+QCQXxVJFsJs5
ENLZfNkQfb50eIFQO45rULkNrngO27qa/vS9KCtyAPACMi6SHQih9Qoxa4iO
i6STWaJhKUM7AiKsSnMscgB4U7m3XspA3qDcgy6CuzeemxIaXSWzBphnUTKF
PkG2m5KnJMClI0DLmuyIHWqUnlYiUMa/xzWhsrKzxDPCLGELcSiZA1mdKb8x
7AfwkA8QgfQ1IHQ9HwsfCEUtfPjr88ujI5YcaAsBFna+Yb00vFyEJskwXyGJ
IP7d/arjZWMknHQNGSXjMR6a4i35n8r0Lh7fDy8B51DmYlb10qkfq0YCRBix
rq+qP0qx8QE62wqXmqSzvL5vgQknRGuHGYWFFSbtaQ60t25q4ToeWGhIRN9U
syDmI0SUJ5vHJV9SAyGvm6NIy0+IwogmrrImmx9bOBg+jH0X6cy4llQKw88B
9n0FFKQRe4y3UbuXV+GHeEZaPM+LfkM0ipNe4K0Qbl9pVTbLOjCSGSHr6/vb
Mp2ETkKW3sgEgQYr8h/hFlB68nox3sI5TbdwGyXy6Q3EcMJ+UV3GrmF0tH0M
AicvS911BADjUgkdqIH0iQB8lcxiNKnSpiycPyXrPiC5LpzxxIqSpGFw/IHq
UGjdE5z3Ti9rjZTdoz7l6DUScy9Nt2TtJVAs3DkbhWgrMr5T07wsGrzIem2J
SuU0KeUtUYSQSxPdD02lIUQomABWhB7WMZkFJwnQK9KkE2bzfEvJ4owu5NDx
oooNUQ66GwJVeqy0fiRU2AizBhF6OUVkQhtsiWZNjBMZZzFJl4AWToQOZNhO
S05R4kcgAGR5btt1DIJ528aIZDpvuE2r0C1/F2cNe/Rh8NCOQ+M/ANGBl50C
jLaMY4BrVpWQjTgti0pA4Ih+iin6KDD2/gkYFfnMmN8jDfpuTuZcZ4t2BOZ/
ez0fyoEXQbyU7CO9Q57fVIHjLx9nDaG6owfuog9oDmdXYeN0FFqi48kdoC6Z
7EU0f4920RDSVSOMeKqu1WFdDDsohxdMDo0eBfJfYNEinxBSAebGaT4nW1wo
z4GMBNylUsshrEJNDmguxhGmTRboWKS7TtLZYhS9zQmR6bEMOSMBx2Ipw4Z1
K3dHu4RL1UycXO6UFzoiO784i0lqtgYrjd5yEVHGTusIADIFtEPZYJ8snSbj
e2D2EtegHiIa71QtZx6S1r4mljg9FyU3fKWjyX0eL9KxN7+JvsRxW17HE6ad
JzXKcMbiKVJXg85KQAp7ieD+4gbgB9SyqoDknL6+Vr6TYYwj6SxsMQ1Wb44E
fenxYkGrurl5BXrL453ho8c7O1+IibDq82LSBak3LOgCfhvzcxkvU2V1nqcS
iJzlssOds2KKhuXjgpbxLJYgHopx2azvl/gQIOkjuy46tnNr/w0FsEAaXTEN
i92eApsC+gqUe4mkIaRG5mzYDJzdi19w1S4XWAZCi3iLknKcxgPWcNmYGr9D
m4tfkxhJTSQJYhxey21Hr4ZvcoAgqIhlEaM/q9e78kFqLaMrR6cZPkhWN5C+
ahfhRWCUmBCDnta9GPAhz4NitwQiY0Q8vAyosWdwgqRFYeTEbZNm9TDNuxxZ
Xn43Hh/xderjZNpiEfc1+mViBNuEZFd/RR1r5HgQucKM1XrTn5sr5t+sGjxd
OeouBA7QVnRiuTXr7ou5HAgGhCoGzPj41dDzoe4zGsOhOplXieeyyOZiTwKJ
cEoRNoH13i4FBkGFx0miPt7us2OsIo6xkkAp79J3pADvB/LDmvUjwJiMrgNR
QfUIN0sx2lB4WEXr2nibp8QisugKLaUlYtJyg0xWZIVXwCR0UhQDAmyaAn1Z
MkTMJ4gzh59MojksvER/NFyhBRpK5eRobWqXYdMdh2JFaBkH8lgSeU7G72HO
fhBQlRVVrdzM2ZZvC4wYQOU5ixKKcFTT2tTFX25tecVi3R1xR7wsk6ELwwVs
aZ9PldTNku+AlwoMRpGdY4iyyb0zDUZFcI3yakoYoQip4LUKA0c3i2invK0u
gIYVMzZN860O7uHaaGgvsa5HxEsvWHRH7kng1Gr0niCpCdfVBaM06CQMxdzP
DPGjlXYHSp5RaCOHxgHVByq7M9r9PZzHhEymoiwBtqf0CseYroRQRr8xhJLE
RYpnWodE8DsFMdmvo4cCLA12L3DNLDtPgPotmVu4Y3C3PC9q761oQOsBLgwc
7kMu91qsY7RJd9r0jRdxcVmnllqIaYnNTPSYG8cJeA/p0rR1H41JLghBblLi
0G851BFDcXwZ1yhlVc5DCeLGt6A2JcOjCarWJ9YhgyY31AYw3OSKb40XUsiR
2qbL3Sb1lUAJ1mVs8PmKh3iwxtU9QkvoxzRR8wqJHSSo2qVL7gJHZpI7Cnku
EBr6hrg56PTk9pCoE6ucFB6uKkYPORHAcFwjjDnCA2PfJo7moIQbBrfgrQMZ
hMOX8OZZbcFIp6G/VBg6XoxiOo3CPAxPhU2syYJiTVoWlk/GhdgtkZXNuQp4
X6Grl3wE2+QiUP+xla/T8VyIMy+mwyywyc7nL4xXoS8HIdIiooDYLf0OLLsI
fXnR5s2ra9Djti/OL85In7vue20XlCVUUhMrjnKIRF6l5ClpC9ZCyT4kWTYk
olvBSjE7glbE6RYNqGh5rdfL2Cr4hjmdzLpKoiOxg9OWIgxaABmt1zvyvHqN
To7kMzQfmgjzVEKX2TTIapiX+B5QyEimRSnxmIb1aw7DvIHuXAv/I70HdC8y
uSQsLpIK5kVGihBOgvhgkwCwPogDfQsw+BilbUxxAK2fI5DVFgNCepwSPcGB
cBHAQVLVcVk9xeAJ9K1kFKiKvnIYDDMgSPYAooqvk+54m2B89mO3cI27Ql5H
SXIEgLtEg8SJUOHJp8jLakzDCMTer7ICZNIVvZC81WhJORjuHmh0CksdFJoj
MrG7+AIFnISdSy4oNKPloA0GFzYmPltOAFeJVYkK4KIqDIDpZgG6XVmbQICV
zvKjQpp5sEymANA53w84lCrUw0mPMFAEigHMvaxWguNCzCOPaqikAx7QdDx3
yW7VZR0NMQh/VVNBjwHskXxp1lrgmDZeYYAsWnXbeyDDwe5Ts2rW2vsUiiBS
ySQZBlYUR0+8dUGhXYLyeUdYcNxk7y2V1gAlZ+/EsyY+HV2dfXV+fXN2Zd1A
KG8WY3GBkJQ4vteNBIsRtDGRS3xvxgXJyhimTDIZnv03DebhCDbbcz8hc0xa
EZtAU3/LKnIYBmBVkq/YjrWKNjHOSs6D1BM+gxRTQ1uADkY4WBnhxN4JR8Jo
lEc74ShA18iE3jXazN1FGnTlOA4N8vkVAVkYwubRtgZg4CVx2LAloc48gp4q
zKVwWhbcUmcGd55D67QT29MkXoo1HpU0ZLROXA8JY2Ar9JaTtee5yl1sfsSN
dwxZa4pR6on3G0NKFRBxCwRjKw4Yk2dKhAfWrt+ypGicfRsHt7bsmp2yi1KA
j/uNSWQ1AflGYPYeHKJ6nmOSINHcAuLiECQAwO7ijAKbid8/YPPVi0bHKBoZ
CWbVHIi7KAA+fcALLTLQsMBMDgozIYGlRF6ElnabWXB7H3hXl92aIp4rgoQj
IIYi3/qYklbeG+fLVF3Q9RiB6xXtbI369imlrRPcx2oLayfJiYYb2rKc/96o
2vziGM13vHxvIbiu47a4vhIgZYRAXbeeLAc/ITBZTwyyQUmZ9ObIdhbcScjM
OmCLa+LsmC/a6TF0zF15NV51x0y2cSGHiresG7wnnX4ENoilaFRnbGVMa3If
IOw8GYgAUqiAp1hx07RMFtZV0oojI1CGbhZD+vTOuAtlU7DX5cKh2QQOkL1w
a6D8is2lrTQ5Ip1i1mnnyGn+HM3cCdhXiaYRikWe8kaUpKtPsZa8QzxDIiJZ
eluSiZt1WHbYsRnT53LxjA7HnZb2HSobnK4zMa5OiUJG4MaT4bwYm320kpxF
tVcT5EoWDELJpMQhBZAca9b4QSubaCbOA7bKVqwDnwYmuugWcYwHcjRYZPws
WycKz+jq5tvtxSo5LR0DbR9cg+COM25msSQhFehGoJxp9MkmEyX0Yknosk+s
NSdY44HNmTGGBJuQQ+zcO3l44mvOJXVuTwq8avlZ0Kgym2UuhoUzUkXr0xQ8
slORbSTqzkTtiHXqcEigTUpvsWE36s8NIjFBUHChNMadIyBlR9NADDc2+ppt
/10uYj1qId4k9YVHuy4vgQY79T6gVnZCEP4c4OXDTI7jTVYCDW+72RiGSwJh
IWXM+UI8NxNDVjvtILR1WbmizYd8uoG1bYbJ395snGoaB8vQ34IYiwKpzzEg
cuQ5ZniNOa/fB7SEoSJ0g8afzPV+KMubneaS5p18pMjCO2+VVh4ZXPh1RnfL
7ACDmdcJyWWdedXzjuitN2DATNFyWoZrSuxGZC+fL67RrBQk0ja02VBEzjzQ
jD8x/Zl4v/XpGGEWViuPKrTJdUUxrtj2Ah8HBjyposh5lskCGAipmey+4qAa
VBj5oJZZPGsSJ797v6x47J0sL8ChKE744cxePI55pbjGKxNN04rZ9OBBhCuT
uXBVGxDp82DZ6MGXT1k8B4yasM31cZ6eh6O/LMwzMGNRVZVB1MpOXZUwLIef
xcsHklRXhZAW8xbd7sjHQhj3h6YNV07F6/WOE0DQJPqJQoruNbgp5hQmgKPY
od2EFMaVUkAYfIqZ+FNcLlwXrDrCebwSV6cFaJAKNdlEQcFxKX6ToSFyKdLE
Ie3ld+zT3xPj4tXlSfTSWZz9PsTVwMrkShTU4dYW61b+Pqo3d3vP0aGPeobM
rgWTVIPD9RtFNrsXmTg4VFjhqsyiDMr4JcsE6JPIcHhZNS4bRKeSHwFcqPQn
E7NEXCOpJIqf6JOPbmeFSEmMNUXTVFhELLqOpwmTblc+6Fic+Rohg9UD8hlF
sMyTRRwZGypc6zz60/Wb10M4CBp0XfGJMyDOWcbSgQi2qH9p4oFz0YTXtXU5
DLpsZF0S+ka05GCRVIRwo7MGqqOBfSsd8n0CEkmGUUNCuBM2IXrumPoqCWRz
MPEeimlOSlZMM0Zwo8vXaYZ1bNQ4BLP44Aq1AnqTOyeCYSoh4LsNBOq2Y3q9
y8fDOUXqFqsDIPpGQ4Ag7BXNvQF8nYAojHhDL6IE97CA2F2XhGYPQ5FeF17g
6YzbwCCvhzJRaczzwD+I4zrXv5AFLixggjk0uU+kcyEi37w9P/nN5MIc3c7w
6ubGYlFY/IvJg2ePC4l+COIQbMLOCqYak4SPs9bbrh565t1UBgZlFbqN66Q4
muTCkDZGCCQpEoFBR6ipKUsszEVxULDAYTEdYqZGdJsVfOvYo00WdgH97mjX
cPDffjEESVKvm7Od7qEbYUKtQoQHMpWLDQXpmmRA+zoQtF+byQeSMzoEbLW0
VcWG5jhzzP4CqbAc18vkA1WWEFV9hY9zRTUbqWj9jo4vfgrJEW0FxRUHWi5z
lx/tsF8w/ujim8vfjPEtpLzg6hugu73Piw8gjc5YJpMQOPEtJB3c3TDEB5Ul
ntUHB9wUy3TcUsy7owJW9HgpFRKoRl2xDrqpn5ukWcNcEZ5Shwy3OoGlN0v8
ZdUNzUjdlB0TWAi565WREtyU3lhvQ58+6woZstTei1IYQOJ7IvHK0kyRN+8v
t/pJcJ+klI+ZwVuehY0gE8n/sD47NcgKXQFYiPKcsUVKYoD9tyXocyCHZU3F
ZsgBbTQxV3TgS6iIIcXL4zTTG3Mp3wh0iBIGjuUgIpG2lOTs6nYrk2vFngZJ
jdR8NClBhVWmjDX1VxUwUWj9lVnQr3wvf0Ux+ws83VYFqa4Pv7Z/wipD3vdB
DmlmuzDu9441glz7Ub5g7vUrptORw+kbQRf+1RhmeeRu87g8/WcvL/EXPv+J
Px81dcF14+SLU7GnzxY6gZSDsCHn8OxrDueG02h/0HUfM0LwsIF/WccNBCAe
xgtB9NHrQ/RRb1Cw1HH9UUZcG2zNb2ssYetDa71TQEse/zUjDn3B44eJNfYi
yCuvgEn7ES9AR28WPB8VCDN/0YAW3//PR1sbDyQnFNfxkKyjn/rIiDFJiy/w
Wy5oRXkrCRlfTuZFwQYbuqRwOzmTyCiyRB/lOZH9bp1K6IKQgNZMmU5irg+d
2qxgFyvZNkljU8WMyx3M2SHr9BhbQZSHMfQhrdSRHqsHXpCDGIVK1lo6Q50H
prSW85AHwUzI4b3bA72KcxJcYOMTWQbmD1Q+CUkueYc4kObDeYH2L9oJhpWO
DOyU8Cic8LrbnKSVwjJw2GzuXpXWU1MvZsS8CWsZ0KpXGIJEubnhjJuUeIXV
y0qXOjUZCcPwJsVPJWPBDJtVM56TGYPz5xCiSXdhCyqci0zNzWWR3prZcFyO
fubIsyXwpbaBjcvw2ryvkQhW6yvVKESmMbK5wEO+2QqdaAdN9G3swEjiDFya
NJaBrWw+30P3hkpvcMwTHsV9yyojdj1aaCaBoUJcOPWpYCOCJIWtRkcDJlI4
hr9LrQQZkHJLMijNkyB0P6SQyRRGq8XOdSxF6Jgr16mJeDj3mbPGxC8Q8o4x
odmVzbS1sSvtqiKt67Zy4Tk8c+yu+pmveGdjgn1JvA9oEgDMHmP6GRmVfpKI
VB9zyu5ctWOzG5GDqtX0g1PZbCtfaA+PdYqyHha5IWOdsQ3aLEmqpQdUIdKo
GPSl0GKVr9U2e1JpowelNyuQIR1r3tNYlSpndAkVmGJj4+rgeJwPF7ceRpdN
uQT6NbDJkPApjDim09USpSyycrk+h0Xi5YJBqa45mjJ9bXauvEzCHMiSrMlQ
FULOn4KtRaxKYv4Llz5g59dS/IScCd1zISHtquBqfpe8TtlTtJkDVXBF7fu9
HhFoqucNLMkU8iYkMg6Nimyu7dpvYgXoSRWVEq+RFFDgIkcV7b1KSJKFQTbU
geJyizfYc4X193vB2FUhmKwl5ySja0EbCa89joCkpJfm3uhl/Y9aU8uVFKA6
BD6+lg2EgOBwc03qV3RUU5gqotiABmzQ/Kl2yWhvtOMLRxIQGOo92ebA0d5W
GDlzTyyL7ZV5iuSIka4hmgCVul/JyV1zgNOCA6JjAuNwnCG+DCUQVCLpMYoJ
WQ48/jU8BCyZkC48UWU756dnA2RV7+tiib8P0CBUS6xSvxdpxm3OIVV5wgHj
pWT/0vyAeTrhCX2BU8aKMpRkVaERGFeByw4L7OBmJgknbkxgwt3DXWvmQvKi
YpE/Zz/jNX3mGSX+U6vKIPpUzpG3ybyUQqRFbYyiTULdbXhxsUS+jXFvuicq
j++uyRw5/4eCq2ZXAmMSPDlLbjOFJZd9XkiANpLFrwNRJAX5KhmdYBUm59tn
W8CA2JchE0/oYI2fsT+AAaRaMsaBLyhwvOIKqAR25qIMMa+pyKophKKvOII4
nQMtIjyGmwRDuK0o9sN0aOUbSW4xeoKze74tCB+f941dKVBOqWqQ0XGGjAJI
NQvkHMbkpFb4Pd+G/4e1DCKfpoodBrBS7Qa9t+FueBY3+XjO4UqKUiOZi42R
xK9QMMFZMQS2TtzbxtEPZ3CXxhwQdPnm+qYa0Hwkj3CpaFgu49fwGunMGdtb
Nq+vz/ocp+fcKUjl8WWeZshnV3sTEuLTtSZlOMkc+POhWm5WjpvwUHJVcdCe
a7XhkUlS4VYCMsXocI+lnyZ4gXjqnvOQldIEARBlPC84xgQr46N8EOSZeqLF
NOqkPculx7lOkqWFfo1Uu+HxdEMua0o+PsJXJP58eeWWyRFUnGqtb4KmwWd+
JRWL0JgVvb06Hxo3ILEowmyGJjlgQVxQvxYf2qbmn3GhrP7AHT8VFritQBy+
pZwTPHQJ1R1osCCW2KJhxA0O8oqT10hQVeTEcmC0SC4SyFHqgMsmzxdvW3RN
PrIhUGWaF/nHsqmr5zwJkyfPbnyjDWEzsN0FrlWEfqV2kegvNArCBekShTbh
SWJEBkYcYMqLrveSqSJfoqbiqrmuUwpZxphwkts+kzKVcJpzilsAWNNc0wQr
QzGwKE+QgEiuH04+SjKhTifCztYc9HWMfvB8xjRWmB7rGBxp6hlMERW3pBvQ
8Aw4Ui4kzycdJSOsggBiCgqy+OKrVxcbfV8YrdGIUDMEVqE3vExZEa/ujKI4
bV0DqtyEi3XEpKmt/kKxZUZlpzlI50/jWV5QBOeIL1GcVYXU0UCWRoE0gEJE
w8JBgd1N01mj/lDnTtPsbeQjOfpRjcM0wNhRdFPMEryOVKa/0hS63ko9hoHI
aKnNczFl8SR2lKM+8wSLH2IMYU/9Q8Jl4tpLktZ2IUEyFMwDxzADXAhNwiTi
n+AXubwFI9wkJRBkzJK9Zw7+PrlH7yIoIhsXb69vNgb83+j1G/r76uybt+dX
Z6f49/XXR69euT/4iR58ePP2lfyOf/k3T95cXJy9PuWX4duo9dXF0fcbXBR9
483lzfmb10evNjj1x1ZCx71yOlvK5oQE+UZMFgRHAKJjwILd/d7fpDXVD9Hf
pEHUDxQEJYGdGlVIR3ePAh0KvyhtZlTRGxA0w+rmrMjnEZqAAIxHx69fRpxO
QONiZ6ofuOIFrGjB56E/Yjss+PHlShelnuTfFtRFCQVVeh5bV/0gAi4LoCLF
uP45LSVLOYaWGqEKS4BzS3FNhfUZ6vXl002ISexqz3LW0rlqaHQvYZVm80/2
nvwg1oBznd7U3Wqp+2LqmeUyMq6ad08a9koldkoyONICNWy3O7HRh2EtaCKo
WijPhVoZZupTFQeRU0ZW5IHVEmlhuDmJGb56V2fIh0vVXQkpPW9ndn6qtrut
HSelKtnY8c9Ea36iAIyN11ofm7WSq4p1kI2WSg4eLfRKaackP7YLkrtKf50h
cgMJfPis4Dgpg+OLI04kGM+WPNfIPFq+OBO4/uFrBgeXbu4qto0VyoLqUD7g
bX1xcHGgDpxCPWhVy+jKCzoyAcrecBbE5JE12R+2XfxZt5H1kzZbrSAzwQYT
ZChFwsTlkXKJw+6wbomBgJhoEsZWqw3BVVEPgd4K+z3vqsfVrm+zPsK4ozKw
TxrxGRNcj93g/Jok9TBWtI3Zb13ZNo8Etj9CZ3+6dSqp694T6Y9BPRKpHJ5P
AgR2oZ/ZfUcdHq7BSdlfqWDL64LrbWhTCm1IiXvhYrttMk3OayXo+Oqs/aqx
JPPxBEZPfJ+S6Rsqz1qUWqu7jRfmYTmCyair+G+rRqA0dhIy5gMdXZYx1q7E
imK+xmZB0qi6geiI5Vm8D6tRIG9WStBx6tT6SwRyAgZiyNSYxEA17ajMEkmJ
dNASm15p1CcHbHhorqnuF9ZWCuttudgFflSSQggkHcerfFZUNrHAk+jMmdFk
RdYTHy7FSsqlscUQulrfbxS9oS2ax7BSLALEMyy2ePq1VGHFgFMxUyJiaBFo
d4BS0awgE8P5pQTymWqGnN6LosnNq2sD0QF5P1hqXw1eYBu5FrhC1UgSwtHS
SalLHHTu0cjrDBp4Rhq4KUXQRla9wB3xwb48Fq9G23BGWJAZNMd41WfCWEYl
HRilqfxakc/YhMWI5g6ocmHHYkq8d5FCXHzPxApp7K/4mbDM8frak66WVnd0
MGiOV1Q709MQCstzVS/7mgumXuiGiREaSSS/bYwSFAnUSlxLjbaINn3DHx/z
KxvoS9zQqk/ZBrxxzI2phciBKVR/RbOXbZMZ7yAOy0w87BNmv2zYcU9CK8Qk
b5RE7FQXyJoWW/NinY+YEsTfnp+sgegnoifb+c8rYUktEN08ENhnwMsy9mpU
pa2SsAIZR5OxNGm7yOeaiEHn4SJt4eKbyzVg0FiTlZYCneVuSI1roWInOI5s
cNdqhNrARSFohJzO4Kr5dMDhCMu+KtJrWNnAszeJzWoXlqU0SIov2GQ1UUk9
mb/XwOUTAQhY3udTUQWDoFqMSUAaBF7Hjlq4XRD1Uuy2BhCE7VwfaIgTiOkS
KvAFCU+t2uZk4J8kw2I6pWSEdDZ/iNoJt07Zlt7hZmdGptTb1cq/KRMEcm93
BDO+TpxyttpAyNVDWw19+N+trWj4R5I85Xx7ezje11g08QHoynsnwifcy49G
ZLJk5NYAHZdOJWi37ROpuiipWdMDcQ29fbfvVqOG1mVoxbS2V47Xuncwsm4Z
oT5BBWtPydoDIHkkUTh2xYLCzPmXWNfGulqJXU4KjLJ0rXjmAfUYWNJdlPYw
QzqY+0lNrd9N8vZw59g+eyAS69oG5WWZcrJXWlo2baw6o3YR9MsYOPeJlXXV
DBOacQLKoLWj2g2XgUbMEEu7k6BhuZS9tCwwjAgD2qYNy8FhYvRorYmj7pJs
sC17dCFF1tJW0qPLY3X1Tdv506YbR+DItnsIxTyME1FB3fR9Xqk0ulr9xmGX
4W5UdGNG1ZymChDNFK8Q58bvQ+ADBKjlBJtgu41lroSX9nqUkLAW4NvzaPXH
AQXcB0EYXopclgkrGcT7tcSNy3XQrOo1OCBGIjQxYUUuuOgY6ULmZgwlxBY2
4v91hWDQq+NNCFp7kT3WEuuCowJEcyxYHVLZSH2ArvIOh+dowXjTsJ4k6m1C
Ihuqs0UEyWng4XJcWUQOSds2kWTOVMrNlyPO21mMlxvitBjWsWQ0OtsjFblL
OdjzRIK0tmPqQY8tryPbof7Nn6PbYkLqQhW9M6RoG+b44qeqyN/x4s9kdFy5
8UMG/TpjKryPDX3JIo6sQTreR+Qqxo73Oh3h0juK/MnrIaapHUbd03PnHSSU
MAQWXHBuVpvOjIbhJ7u7T3+ILo6+RwxrKsGuWyys5CigBCZQIxtkeepZp3wr
idjBEbwv9woLpoZJtqr3kGef16dyIU2L5hSAA8XTPYef4JIIi34yesyW9u4w
tk8arytYACd36fvjIAzuUzY38dhqX4Vzan5sSRnCI4h+IycY27oHmmClrlUp
uOXYlqYfZFIjINwL2orTvCFnipakJ2d0xlWmAzqElkYuP5IXji6wmaoVYjZw
bJ1ZDRfdNz1oyiZjc0VEHTko6g5kJWz15S4jSacYPcN1YV1cm9IGOEgOlzjn
llBSZY0I0+Y1P5RMDiNA2/5AnI+MELQQ6vuKgTRBQJ8+omYeCiASf3NM6BDO
6Bwkm6Kx6Hzo1jfOAU9ZmAJJ+cX9vZ1o8ziewPkKmPuhz2jALFmzltFWQ/5r
GKaW3ERZJi3sbY4ZQnkY1kexe0ElDIrWGrKU2ueS6DM49mQSTm6uyP5ol0+r
O6ATz2u1bQoz+DU24xk3Ysn8JrwZVex5Q2yoHDVL6gBXAdVJP2I5lRWDNvVN
8bGc5PDi2+SnU+xuN2qR/uVRy7vkiyywkUFSS/rRVitgY2uFPmie1Bw9/gVa
z1Ah3OD7uhFtYlAvotrbI99tUTBl0PN9H9jkC1uruPXAtuZ+Je7qk+t6uEyz
QuKwvJRUJz2RkDDAyPpDllmcS9mu0wbNevhZ8Z7Sv3o+/JrdLfzIJlFcinsy
5J4roZxeRu8WL+iBd+JII54DSEkeayDY29dItSWE7s2yqfqj6FqNjhmVj4iX
rN/DfPcUJ7t5c3PtgrUkQSyC/0cWS/mQwuWlwuotdb5K8bgc4h70JZocoCz7
EAfZNgW3PbAdoWHvJKoKecr2oiqXld3hA0zaKBY+WTty8cTbThYZBA5J4oug
viyFumOwSKUKJcVbiasiCKqRvDaB77dHp0jXynq7qosl12P1udDEKTTZr6eZ
EFYGYz8KzhkaMFnGehdS13e4JoJwQGQwTp8iFc6ZGBRsjeMHmfaYRz4A54Bh
7osGEZn41gc6OikUvG1YG7fRS9i8iWqSl063tr6AFW1tDeSvEewIPgkKyXew
JZxZkeRgtN9nkorxfzFFXTP7lGB6pLxccgilPTwqCnVJFNrvXKzyl3vv4KO2
EU2+3H3HsL+RYiENBeO4QiF8F/XG3XQU8kD0DAQ6jt0hnWesbVyxTAoGtYg8
ipft6ubEXbZ3i3QCy8Lrhzca8GKxxI/wxOubFWEIoUHwUr4DesGYcAIbt3CC
8DREUr13AxfZjAGaQLuHiaQquxx6XDDxgSC7B/YOl9r2woRtH7tRlzFIPHhd
sNwMkATBeKHtYqSjKTHem+8kAo3vxLbc94pJEYmGlkAAifA1ZPB+xpRwmHPq
Q5g9vNT6YS60nJf/NVZ1lpjaaytPmHp4m67+9Pbby9OjmzM4mauzl2dXdH/e
XQGzhJmrd30Gvbi6OTyJYn9Y+QPGj4ARF0+cs52fWAIMsxLKrbHzKti0WtZI
9EOrYLOeNGMmE25ulHLz6npIn98n91SvE308dMSEis8BFkwisYhzH6DhfsdQ
f9QWqKwzoTG2PDDlnOVJkr5Q9KPcC67RyvFjAE8c4dJ4DDEBh2sEmT2hMSYr
KjwqjFWlKJhJ9K5Nn96JzeRE+4sEfeL0Q7QbaSXTO67CRHWBJHnsf4Z/pI6l
AIrtqySuCm4eS79tuu7IN2UK59NHaJL5T7DgiPQ/RBkekg2Xm0d90QYrrdmh
vxxzrB3GvK2Q4I79RZvv7uLJl7vAUupqJFhEH93lRQJFEbzkczqVvqqelW/i
WfejLwJ2uClMcDxOqNMdraeTBQLxI/vkK9dyGnd7wkIswu6I7yTO8hw+AKP9
QGYL5j0uemOTw5pBpCXjM99rotnHIzZiuvqieL1xkiOnGtqUIkO2YFPIJYVv
4lAEB6YcYXQfGy9vHI8m6qSpWPj4Ow6Jxx/fOao7Lhcj7hSNXIGA9P52xE0U
v3z0rv8cVQEQsiquAEECj9vCSIycN9fu+v+3o7M8vygSQlxnTTrhXDUJzB9E
wpWSqq8n7PSjdxUwufFcSSMs2tLYvmM3eCiu6rFIZaPeY1zam6YGykjGB1CH
jqlMMIYRJpRpIVXu00oYZ7QpnZ+B1h5R5DsBhOnftq/MXxeu8L4QQApknDfA
G4S4bW1hrZgO2kZBr463HtGOjyNKkiZFHQ5VvKs5kLwhGv+G7JwZBTd+DzU8
a5z3MSA3pkG4pwBIQVI03W1jGPKkoZTZmdBPMfgHdiY7jNztv/hbP9bh9Lfv
/b0n2ovSs9yMLyK+jMTVxDD1vIsWONmOAW9EFLRes/DSJg20KoTXO2wmi0xt
VMkGv9xD78tihDClJ7/Xu07pxYCsLJTgbnHJLC1XqsAy+uHZ/uV59JcoWaS1
ZdmezHnRRdk+yi1D4lAY86QyDe2d8zeSGQfvOLqgdXJwLX9B7/ykojIYs5zi
seWFqvPu4xK/pyjy75HzNmUeROVTaIwXu98peEaLJEHS+K4vDBe7qFOulACS
SLsQlrcVJaezxRQX+b0PWmJeP3Qd6uVyuzRCAp8Yp+lkkWJQ8kcmhmsq1i9y
YmGNCI7yCq05ccHevAYGVMyRDuIwAFHsnspybJ6fwDxp/h6kP6BxeBvPT/tC
vwAFcSl/keB1MrLMyZwr0h9TJs38nlRuWWQvRrnJ2UOojgpgPBlWb+IZsTuJ
ZSLic0T5eSuxqYNWxLBJEUU9QmJwrNkWYD1DdQQzeJx/1VvSjySeE7XZlycR
Rrz2R21TXSThzi7tOxXG46dwSQXRxschTx+2uRy6+FfqBITopS1rHvQfUKai
xn9LKpY3SDuLdhV0XqpXvMNkjjyK3h6dkNFVAugJWgZOlIwnJi+1NjmpTSdI
ESMXuGRqCq2RvqIAP1fT5fbbo+vAXCldOjg/iEocxjPO0P2U8Wzk1g5z4bAP
b8EJUcRlnPYr62fD0Ne0ucOVarIM4DU1Ztnyxl7ye7lEqERhDGjJGUuYHqD3
ABQqH7lP3kGSJ3yiC14UdeLAss4+YloH8PppkWlQDUi9eNf7h5QS0V7XIb7+
Yne085zHfrFhdNZB9XM2ooK9X+5ucMpMJFXn4EGgeYfJx0O4SYe7A/kwFtH2
8NEG5miJ2fcQoO8zrS3oV8CEXFUcNwNhfCgisf+DCT2H/1/jkV6C1k+wub1n
GxeJBqXmb6jveI7ztvXZXWLu3bZ9pB+XcqHR4hkaPAdhynLoDhZaIlyE71Fw
9pQwwWZVoPyuZWNF5irJtnygWbIY5okBKR440zxfNWNP9+aBwgWrryt/vIrW
bIzxCM2fTf1FCRwn0Y65xx9csQZ2PdWal9Tj8LzI2E6ZN47nRUXhJs58MlAc
I0smiKFJ3+O2R2NezWEH3m48p7debLhezfANG8fguXiatJETUdLnd4jIiQv3
qeEu21+Wrao6Osoot7dwqVNx5BsrkW1j7Lz7RhsF2HwCA1+h7XLVRL+KUpgl
L3b62/vfgJwp9Uyt2F+aU7E3dJGirdqioMcnSVsUV6pmrcDygI6gBW0QqW1N
/oL9ih3cM1zJSJmu5LxEJudF2SkmvADnwTPHASP/7zkKGFkS52zV4AblysoM
t3Hv4rLcu1SKmJPTF/FPRTnCRKfS5YDKIW8AYdzo+xFgrW6EnxsQNCZDLGaW
z57bk6Wx8Xw9QVaQybG5xD8QCFB6M1SP8VueP4z+p0qXh8AXxsmXTTxKeLg/
PqeeSEn1ApsyPae1PXd7fEGrVnKt615L2AeWjm88jJGreUrRap6SHpt3+4X9
fsMCkGsYvKTLOUBhuUCse04JmTG6bWIMsFoHV52CzF2SxilxAe12P4raTIh9
kzRxGnlPEZqfNVGUNAq2sKFmgge4WOOEEo9TSMdJnr0UmfklSajdPnXKpGF9
F/3ucAbdFhVKIhoXE1Gt3t68HD6Fm/eB0mwl6Uz6DpCLZzPuRybUSfiEethv
i8k9V8ox1QKCRHyhdYOeOiuIVlsVibPuuNOBZJfTrbQyJRHAzds+4YdN3gEw
UkBZtPmGQiLYJEY5ef2ORSLz61G+b3FL9VnUtY8NSH14AFkOgWagRaaVKsAx
ED0fbjGKHMPpvXv3js7i73CnUDP4UcjExiFTCJRQNvB88AvyDfzKMRz8i42J
xCeaJp3wL6I1wZd/5/R8XB0+wsz0V/pPssG59BvE6ODXv23kgOVf3uH40cZo
NNr4QZ4QvknP4LWm3+Cnf/T+wTTUSGEohrCpLgJkcD43EpzwSACymmjp8yGp
1jBnPfNt6kxmYcijXaQVfmLrq+Agv/N1ZFxhNPnld0EBueENZdrYPqz83Nuj
yubaURULVrW82I7G3s7wn03iWQGD8HwLQHLlKRYLrZPkoxCmadCnkUMbaSDt
aeAaWRKgHfEKaZonZHOXL4XP00iYBEv1iujyLBRkLciEvb5aEWhOVmq1eRcQ
uUL65cO94JwXjSMNbaTXaq9BnBKI0XKOUWuYGjfjJK5o09RMGwRaMNEO069F
likqy5ZVnoOV+hWCcBl2D5M3CfjtGDbf2q3d/Y0qS1fzpsYesDoEnDzOTKvX
JHOatFX9i8tYSBNt51M1AWKVAueao5lNLwsPJIqlLps8p8xA2/KKizL+Rqjs
Pm21bsRmjsPHvkKZBZQPB9KKVw4YGq3U3TbPgIriHSZmEc0SycGTPbuEPW4f
yBDDftzc8PA2c932HKxeAX0cHnPx3InYVi+REGLQNE97DiLIXYpBIy38RtBg
7sczN7dfl7yLQwH3W9zidSQg+JiIEKziTEWDAPbQgbtA0goXywJhSVyaMq50
LZT1MPf9dMtC22KV8Mi1PBdosMPpNKh3qWAxEDH7h6PH3nyrACC3IcPVdo5f
JhrtEMShi0PdYgswj6KRsEdTEE5z7kzjtjVNMHmsgJi5tiggVc9mHE8OgOIg
VrRtovOAVreIP6aLZhEZ3DaHS2OTQFc+UNnPm1M/pwVeWP3a5tcp2F8nHzo6
/K00NsQqge2OqtSJEJsT9jsQaLXVYvdgX4SjcbNI3z5Vh364VWLQoJMORTrY
hq0Tdaw1vRx9c61QleR2jjTkrLuXqhTMVylAa8aeBQJGIBb2+WG275H1QUQB
TyCk2EfoHMWQq4ktTxOE6o30LpEhWmwCnASfrxHCWSTFKAhs5cCS4IboYVKA
wlQncuLowLUiwegaFuF8JMLj/sjv79p7Vz9ng3AmbDkbucvGroo163dLF/GV
9yuGfhFwojDyh8ocYvTnRCwa+ISNg/yJqR4GmKs13wVacvglbqsgT0+4fFfD
RR0s+7sH2/tPn2LgfMyw/mBqUTgBKbpIJ0MpFayx0NGmhDdvs8FGD5fcD6Y3
qxyLs5tJhDKWuJMgJxMqLfDAwl9Ykl8sRRRQLh9IiMR8ECwY4Y1JvgChSBcy
EgX5wvpG0TGHXqv8si7cW2gFTJlJkzFTR8tJ2wOjxYYB0+gelLkxunP/2ZOD
H7blr8c/4HC4pK7QbdHRgTM0VOaM0oNrGYt0eqqK9jxQ6zAUt6E4IQq+8Cd2
RvUyv5aeW3o6XVGwcPb2mlKlFbL/cFJAk1eKQwodwJpo863/PmJ9GuPYabjP
iWyXfaVBpLGf4jtm6RRLyCod3mY/kKQiUVVQKVmmIUkanCWS+h8qTQbiEqIi
mjw3VUWpT6ayeKxtSZnzMoRrVq0mrP2dR5K4geZP+Az3R5zeQksIOXGIvj+P
rtjr6Npxbs9efZ0Zrq/jnUaAtvP4Li2ojuSKAwhUn3tgOdi1FLGsyZ2fw6kQ
Ol20e0iU3WaiD4hoqO+OHfxwDvTYCr1uU32l+H331rUaghL3pprUB2xaVcM5
113QHkSVGSEMu5CEDY0q7iBsW8KuOAoqoyiP6UqSiwtJD7qm2pB0lT2K1Zj0
wPM3cCTY5cU2Yxp7BeB7DHDn7FwBuD/IT8He3tW1wOq655lIDeyJhctlbzBD
30yMVI0j340j0UE/JBhTKrhLjvK0MndAeekUTeE8WDEeN2UVJglMqfYNVkLN
JUa9q/TvPCRlHraPqAPKx+68BQfMy4eNox2YqDFSUrKOIoxjadq5NK4sZRmr
llxjlyDDyGirj3APTaxSvkoMq5Muo6rqCG03ky488CLxeLJ20TzwyGyhZo/h
1GdxFcfRb4ESwAqw9w8jbzwNSbcDNZw3YqSjLl1ZW9KPhq/PGtlp4SZaj+cP
cKJOZKa3fCqjn4IKpphUFBSGnLwq3X2PvlfqYfIJnOCBO9IRVCA1yOBq8rZB
enBI4pWmXyHJYZ3NAhS/9ulknEzmHGj4vONOuweD6GBn1+ffKSDQ50gYn7m2
d84Tt+BSt2OtCY3sg7RvEVHb3ua1BbbDGupSZFuG4NhLjMHglnkEe40ddPlR
TU5KJ6aMKP6hAOpy1rxdM9o8ksgsFLr6HTxUOKdUjY65Ua32mZTNUzVnyldz
NQSkYqbUs3J1PiTbTdRVm9vgStNKXJixLOKMFDL2WpIqwsrtvl8RL36lCo8W
iaExykQkM7TRa5ZG7OsyU0Q7msZn5L3jutWuaMcUqzBJlIwtUwckifJ6TBEZ
FC/I4m8KWWf3TpDwhXrP3e8YqavRzIeCuhQTFpssPkoD822qbJlsnX0AEhhF
OaW16VTUTsRFcFCRslazHoN7WJNqBEyOElak87tcmaFeDiLRk3RG/RKcUP4H
V1E8tS3otfnXoD07I4SfmmLmyOOKV0h5Gsui7YrFPnPV1K9jKJu8IIqIxWhe
urn3OZwwug/5SQyLP6basJEI3k7upyIcvFi5oDYkKS5vUzTGS3A6uhnul662
W+XiYySqjmvy5nfcMcEvDnurTGOUuTbTRUzaEV+dcZYu4YM6qitTwBQg9ngf
JmIHm28Up/s5mTf5e61SELSMlO24XntjfdIlAKjLkRU4twnfNlJIpXRmRFKg
Kxz4XhISMtyXZACmUwlZJblaQHZvoG/bWK7USzwOb5c7ggZblzfcbN2+Y4yW
VYqAjjmzjbbB5Xk1wYBX6VVUx11WOtJzLVKmDAHqOHX6NEFPAjeqI3LjjHml
PIJuBa5+NJFnGSm0eQPJthR8Fq6UPVZjjoilSV+iX1tK6plTHWMfzqrWhNmg
Tx/iCBCmbOHi9EUIYMOuR1Q3iQLh0le56DiOoHO1KbyilVbCgvDt9t6uZmTQ
8sudguR5cKuHgD66VZ5xYsYZVavWxAwDEyytpSjDCQF9E7Xqq07pXNIyWj0P
WnQqUJ6pvLq+4S+dUAEul6nN3QJaJ5VmuPKAZAQSubM0jgqCkutGUYsOx8do
0KoXqde2hhTOjNaPWp3drZqdNs8cWRZIEHBmXKAwDt90dUYZStRmActGcO8d
rr+NRQt920Pl1qCmF7HU4bxGe4pnyzP+oUwOnUBEO6Pk0eE0BT3CpFppAUWJ
vt50afTkBaaG1kI+oiBl1ImVHpu3Gf3VMCLNHqnljl5Kf2tsSVKVSTa5hMAd
V2nry6xaWsHXL8BcXqSYpSXoyK5AWyNwUlCAq0Iu4yhFx/HRTNMy6JFxcNQh
mpHhR7uQSDlD8YWx66o29keUo4jVmOh+l0C64ocP7HG2KURHMQOs6px7o51N
SqdSyFIbwQjLYrM8veQax08fP3amOxoiCK/gwpiS5r3/g7J2Dd5XOYkSyo+c
CcqvnpIQ6PUnu1jW2GeFcS1gGJNjf/mfqfBMB8ypYyMgtJNkjHGBKZfssSbD
55Tk4IYge+TB0yc/aF8nTLUiTJ8k0xiI3cit2KffnaKlkntQevb6Ln5R1stF
TClT8Yvpopa/0EeevBu4KeErNHNgOMQ2cNE7+gOwjCRxjOsHyoUFoFhOmhgg
SgqSWxFhulp4Ta4xxivAMbezjanjq+bhk6XWbw6pLt0RSmIUsgsgMSAeRTfU
ZMI3uS4yb2F22wsNk7zbully9jZ88gO884vZ3Q8WM2fDsuhMbBrk+GpBGQn/
PfRAfffO/Q0gj+v5YfQ/uI1N2Mfbq/M/ml/ZYjMk4W9N0FTXsEfeRckjoBBM
AqRiANKN7WUGbBNPnoTD7S04UfYBuIHQMoXy9Via1JNSacrOIT+p7LETFHwR
fIDj6yMMCYkpKiizKHF+ckbnSJmV8KQWOXYmgwGdoj5GmqStouIWSfV8wqvD
BcpVNaP0D4NNj4NqLJaWHWOIn8TWYPFQpD5MO1CL8ng7CCm0HPWtrzPj02w1
jedzq8oIN5d6NLJOEqVlyyxcEoe5V2mP484oaY48JOzfRq4wUOf00JXkpFGC
DJ+B88ZsqykDJ66oSbiAiW2qzrlCg8i+l5SMzWFvuGWrc1dNVVP5/pWAqFBu
IEVfQc99tJ28hzu+DQT5TaFMSJTeifvyjHuBcKUUjmFKfSyc0+7UNhOwsDX6
3KVWJXTChqu6yhs1FoHu1sBGGXOCg6136HuxYZU09WdwK5lW8VKfRn0Y6KFD
FQ7d0qk9Ly0w3tnZja6BJvZuiuElkRoimIfb2ySna5TtCHZy+GxnZ2c7vh3v
7j16Xo+XvZcgdrde4i4i7bd2t4ED7R88pre0S+/5Kb42g197x/d1MryiMk3R
7nBre29n/2kvvA0srGOxBootfa6Vqe9foH1yqJ82er3h0H7R+/Sl6nEsI/5Z
LscYcbincYwphiNSrOEQ1snfsWVMv+eEVo1gBCm58gGMGJmIzxH1/FHVU41g
BIGNNVf3QqSPwnWhwMd0ckhf6Nz8nozzowuypDDPH11cBHvZ/9GTUMcH4cGE
/adlMnM/4Ln8d1Y/15n/e1Y/7/X+JmaKP12efcX1taVl2Gg0+qE1x3DYk+6/
PshL/bCEg1esoCuxf0Xa/qc0/TIhm/TAuacmzFP7ZAe0ej5za6E0bGI4ZHS/
dej+N1i35nrgDkIU3N3Z29/e33n2+F+PPqz2eyTRU3R2gB8VBoootAd4ZNeF
vtZx9iN9i7izL1/joeBAGOcqZ+9OQTe/9xmb39k7GOIF/L9u/3v//P4ZCzEF
uSlLRwrP1MrhjJ5rTJM5NywQ45SzG1gDm/RZiaYZVTGxxh+0voow6LqZH4nB
zQTdY+NIG/C48s4xt5pz7ZXu8Y2fm3T83l2blXdOpAeVEg18ZcGdlCeNjTGW
KxmheIKOhIobvUhzo8TYtZwVjawCoK9mNsnKmQmzgtoCcZxL0FZDuL/lrzZu
lzV4X1nyyIWdreOysW1v+JvD2KwPJHYFxg890vjKJm5a6QHnLUGmL7nvSM5d
JtBen1MiDjWEM0oHKRPOgOqzsx1eueEvBOU+qiVVUXDsUdpgI7e/k2wFW+UP
Q80c+raWs97Cd+wMtp9r4+OMbDH1tS3dZ4JAYzJSSeIF2yactSzxUFtncI42
Hz36PeySQrYlMLj/4Kk5L8FvNaIqQVgt4Y0Atc4HpmKecvgeX4FpXEIgAuBa
8z7bv536gLOsGgGVt7nhUZO6UU3K7YLUm3bqZLBucSUH0dk65qo1WluQzEpT
DMxUBfSdJnES6yfyE7YNeNZjMrzWoJljaf4QHJcTZtHza4xKxuBplWLjW1AB
vJ2q4Fwo0xRJgYXoNWIXVRvndjfaz4BC2EQRIwwkp1ylt4GaU2PrQNBp5nFT
Oce9dL+jzmlAciVTg9AAWXBJ3iQNBhD0i5olWue2MfKcUqS09ZrFFK9FwCaM
sZ5KdGRJfNcmHPiYqyJSqQiV6uOoVLGHX7dJuK+n9U2DyWw1X90Hki6Ck3vF
eiY1DmhuQcbCJgSkApJ1MlCYNxF39nZ2hgf0FJGqEsXLYV2my74b82YO387m
y4bQ8i2F1z87+D3q+WgbuAVm8iGdAIZSM7tfJLDawc0DgCZ8vDN8svN7+p2J
I2vVjvb0LRYy3eX97FK88YrDh6nxUjV9vSE81/Ap1wLfHdm+tPw4xxD76S6S
RbFCOb1QbYuGJlx9dMFvTIuiXgJK16j+P5W9reCMccB4nnyTagNSdFtS0X4B
oMS1ttJqiykcr+so5tvymIol7cJ7LLmp4M8+O9dai0q2JcZ2pCXb1pheMcCf
6rVV3A1S9AW2wR4c7PxAjc40cprKDWCPWWclwjIpvmic1mGwRufNqm+Wc+IL
0EUc7xjYMy02SyeyKVclNTybRw8NgVQvmP+ZGneSzAdyGIAwsBUGRr6/G0Gc
5XCWwvf3Bl5z3ZDCRnQqG96aa1TYv6tgvnEXT36kwwoeNP82CIfglY0FzrQB
c26U9fJHVGwfPX6yu/d0Z2cHvxovf8zrJTzx6Nneo539g91HO6PdvYONf0T/
IG3V7Sgwnr6jYd+BvDwlMxMWf19Wmk6OdmHG4ZQaJy2GZBkmXyfV5vXj+hW8
w9S9JjFWOS2aRY5EonrYfQV7sMIhEVJdX43cUFzyF+PAKM1SM2bQSENhVb7n
uWR7mpTv59yv3o3F2SNAz9HfQTVgSGwZu+6TgfWRaluds/+YqgFetBjpuQ+E
UQ+W7wzmmipriX4XrkNyVT4rSEO/uaahkDDDZQTRGr1wXHaU5BknG7vqgz6e
yYPU2c65maya/ijxX8x/NtwXS92txAgzwjqb9EZYkAvOkYmFEV/xnKkC2I9p
voGW6w2q2fVjDdhIH7l4F3/uj4h+UMEDZxB3zj0kI64oD0VtqYtPo/YAI6XK
qBZ6RhTwIfgMJKR2KNmbSoxh9SQDM6IJQZEnSngSVEH4Ad67cn7tIowcZHpz
aVHmpYR3ssPsJYenrQSXY5gajh5mrnJ0p0anPX0aYWu0Ix8n/TXGSWvawomu
sh1jtmI5Dlm+xoiPDC2XoYKKZ9hum7PXaV1YrLDtD9rEEhtU4VduQFG6kX7i
Ks4YjoXHXWNXuJo3TS4mEZOdA2DkIdNmAwyXgcOdYJmcRBRxrRkXScsVenzJ
QFouV2pr12kLDOS8D3ue17ZNwzfFNZ6JSxB0lcUoS2XCqWLw8LZz/WO+ODLK
0DsZhXUrZcnsgjTuSna/aNeDkZuTG7Z/YkZT8dJ751a8d1L5csoXpqPqZcHn
gUhFSS+2an6qfFBvsw+2T6tWhX+/egDi9uk1xhsDZylRodIcRS3c7YtNUY5U
4IGlA3U0TIL9sD0J7tlEq+rIrA0xvRXq4fK/sVuuZHJXihLUQRemc91zaZag
4gkoYljMQp+iquRCoulCtmOPoxfAtNvfbkRfn7x5hdxsvMRA6GhrE72lR/q5
78bTB/y/F/wlyQ7w3vXZxbn/InyRn2m9iLo5/7BNn8muHnwjiWDuO7IKp2P+
HEzgx5IJNrA0QHT2zdujV1yMJHjcTsWPc2EBeeH0m7dv4F7rk0Nq8c5fBsOE
63thqg+sDsS/rB3Kz2MgRCKyPRH8or/yXnAkXHnlbxtfbkS7W6fnX53f/NCx
Zp3qhf0ymIq/6ne8uzLZdgS0yT34HD8hO4Mb5xAzxEthpH6cDf9tgJFVklnM
go9d2IVPBTDY/d3mGoxCh3/whTQG5q9Whg1xaj36mWFlQ1TFIsQCBlbH2Qdr
oLf5m4feN+B+uCLNJrqjKipd8ZwFYO/zplba/UMz1voKRvj777QgiM9NdS1m
iJd0lUXyS3XPYkEf4ytEwrwNWot78Ns0PtQvtzGuw9f9eX4Luvt4/uKXZ/Ov
9m//vOveQa/kYbRxhHWCNmzNIDPRH5/X8ezFs+nHcTJ58rjKvGhfHK57xT2D
HlTykpXJbLgLNPnAPucfu05+Poz2gb+6/frf/mUljfDfby1rpO+ZRCyMMhkg
ayMf3gB4StMMXJ6SLhl54askn6HHd8edvE1xQl5LYVQ9KR9DR3xb1F92HfPn
H+9e7/OP9emjnjvG1sx/7LnDQ3PHML4dB2fHZ7YrW+oZAJVSeXxAVomSYfMZ
zrE22Haf7fV+Q+2c7qI5zybPxru3uzvDR/GzyXB/vHc7fBbD/+2O9ybTZH/6
bLI7/qyiOqvVdGzluMGGrXm4rq6OwytXXEdOVPL+/gOnzLf72T992P/s2T75
3LN9qCLSv+pwO0ol2cP9/OOUa24SyW1K06a4zjR+pt/r6U8dR/N8Vr74eP/L
P0EBHv0HcGPPJbf/M9iwv/8p1/juzu5nh5RINIk/Q7ieJoTk7xvo54Xf0f39
D3tuaCIjknwYsXLo6tUHAZISVdzr3b3Y6RUvCLLR3tNnO0/39w/2Hts/z19H
55f7cL0fjXZGu7uPRru96sWwN37R8UP9YgdYhSi+0f6z3Sc70dvTSzzrbWp4
c/TtZbQLPHKnp0Gnh/ixWDbV9j6aDrf3ehyCSt8v0pyCUF/s7jwHFSvN0cQ/
TcYvdv37O9HlycXbbXy5JyGbh8Btl3FV9XxYWM+ZD2BvBwfoL6BVEVS2Ol70
RvrDPPnQk9BMjXzyiEtRTzjkdho3j55R0NNnRWqatblLh4vBmA0f/9Ydg8GO
8CdPH89/qvbWRHTdFrfBGp88erZv1tgRzvXwpmwk19Mnjw/22lE0T/a2kSZe
Y251VQ3Z4XUY3YPYKJao4Lv/81iT/b3WfVqxdNsbtWrh/ixb9j9MaIlC/L9a
6Y5hqCDLRq1Er82gHYPNgRSQR5NkUeTcI5Mq+30ycFAsNHGOTdW5Wo6zzHK4
icuR8s1mxjUWi+KfKbBL/BBkKal9+DIXRRRMSxez9ZGDd9TNd/hvCSD0bmMN
M1qJJnx8cPDo8T+JhJ8IOzTTr0Qgdvz2r4imAsgP9RT/U0GJy3lRF78xKNE9
qpbCcfJjPceKX0WGC98ZPXWPcI0bWFxeiHcRHqjLho2prcjGT8P5gSBH3QkF
ObY5+OOD/Ud7XaGPQ/hpAL9Ft4Bq1Q/rF+IjIfnCeDKxGhHJWa2bHAzp2vJ+
xfGPPrYloBAAvA+cIZ11xVB+RmCkrbLmOngYf3IxNSGYEiihRADkxPVE4DMu
csf1hyG76cbe9myePnm6ynhc3KDLDO4gAhjKuL37+NHT/RU6kBf/P/GiDdwL
bOXfEPop5+Iun13ucjLV0TRC8k/fHp9dpTsfX/30zZ8vro8+nH/1LI1nxdPL
o+Lu26+zD3+9Prr7Zu/lzvfffbz764fi7u1XL/O//uVidpHCsy/P/7waYcmY
8F8WL9YJIf9RvAglFMCKJ8OnoJH/v4wan4iK/Y2ocfnT/p//+t3B+9u9P/18
8tP57OLk+O77RfHny9MPf361e3Uw/urt7NXu8fyve9/+cpI+exV/d/XL+ctq
DUYYsWht7C1LIqtBUZ+ShxYPh0Byz28dtdRRB0Qyx7EjhBgu5kqVc6WaxAe2
uuquldK827gez9dTPU85u9H10fZP77Od3b1/kfjj9y4m7lXSt3fweBv+928U
wjcIRkMBxXoZhR77cb2k4uwWIhaoPOIDy+Pq/fDIxKW0hBt/GPaZQMTZcCeM
ryX5HKPYKGiGRmjKTEPKNULlH4MHl3PctRxUzduiVsdaWIPn6QYdMhWGB1CV
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
9vP6Q0Gkagx3phr1/j+hr4ilHEcBAA==

-->

</rfc>

