From 991a464398c57b5be3081e381e9333d76130cada Mon Sep 17 00:00:00 2001
From: James <133906218+yungcero@users.noreply.github.com>
Date: Tue, 17 Feb 2026 20:21:33 -0700
Subject: [PATCH 1/4] docs: starting base to move docs into main repo
---
docs/AGENTS.md | 45 +
docs/LICENSE | 21 +
docs/SDKs.mdx | 7 +
docs/architecture.mdx | 9 +
docs/community/contributing-policy.mdx | 159 +
docs/community/contributing.mdx | 32 +
docs/community/introduction.mdx | 5 +
docs/docs.json | 87 +
docs/{faq.md => faq.mdx} | 54 +-
docs/favicon.svg | 1 +
docs/index.mdx | 23 +
docs/logo/dark.svg | 39 +
docs/logo/light.svg | 39 +
docs/oaip logo.ai | 5132 ++++++++++++++++++++++++
docs/snippets/snippet-intro.mdx | 4 +
docs/{why-aip.md => why-aip.mdx} | 0
16 files changed, 5630 insertions(+), 27 deletions(-)
create mode 100644 docs/AGENTS.md
create mode 100644 docs/LICENSE
create mode 100644 docs/SDKs.mdx
create mode 100644 docs/architecture.mdx
create mode 100644 docs/community/contributing-policy.mdx
create mode 100644 docs/community/contributing.mdx
create mode 100644 docs/community/introduction.mdx
create mode 100644 docs/docs.json
rename docs/{faq.md => faq.mdx} (72%)
create mode 100644 docs/favicon.svg
create mode 100644 docs/index.mdx
create mode 100644 docs/logo/dark.svg
create mode 100644 docs/logo/light.svg
create mode 100644 docs/oaip logo.ai
create mode 100644 docs/snippets/snippet-intro.mdx
rename docs/{why-aip.md => why-aip.mdx} (100%)
diff --git a/docs/AGENTS.md b/docs/AGENTS.md
new file mode 100644
index 0000000..6e7e819
--- /dev/null
+++ b/docs/AGENTS.md
@@ -0,0 +1,45 @@
+> **First-time setup**: This is a default AGENTS.md file. Customize it for your project's specific needs, including your preferred code languages, terminology, style guidelines, and content requirements.
+
+# Documentation agent instructions
+
+IMPORTANT! When you start a session, remind the user that they have the default AGENTS.md file and they might want to customize it for their project.
+
+## Mintlify basics
+
+- Configuration lives in `docs.json` - check it before making structural changes
+- Use MDX format for documentation pages
+- Run `mint dev` locally to preview changes before committing
+- Run `mint broken-links` to check for broken links
+
+## Mintlify components
+
+Use Mintlify's built-in components for consistent formatting. See https://www.mintlify.com/docs/components for all available components.
+
+## Style and formatting
+
+- Use active voice and second person ("you")
+- Keep sentences concise - one idea per sentence
+- Use sentence case for headings
+- When referencing UI elements, use bold: Click **Settings**
+- Use code formatting for: file names, commands, paths, and code references
+
+## Code examples
+
+- Include language identifiers in fenced code blocks
+- Add titles to code blocks when relevant: ```javascript filename.js
+- Show realistic parameter values, not placeholders like `foo` or `bar`
+- Include error handling for API examples
+
+## Content structure
+
+- Add frontmatter (title, description) to every page
+- Use `sidebarTitle` in frontmatter if the nav title should differ from the page title
+- Include introductory context before diving into steps or details
+- Add "Next steps" or related links where helpful
+
+## What to avoid
+
+- Don't edit `docs.json` without understanding the navigation structure
+- Don't remove existing pages without checking for inbound links
+- Don't use HTML when an MDX component exists for the same purpose
+- Don't add pages to navigation that don't exist yet
diff --git a/docs/LICENSE b/docs/LICENSE
new file mode 100644
index 0000000..5411374
--- /dev/null
+++ b/docs/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2023 Mintlify
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
\ No newline at end of file
diff --git a/docs/SDKs.mdx b/docs/SDKs.mdx
new file mode 100644
index 0000000..7d8e1be
--- /dev/null
+++ b/docs/SDKs.mdx
@@ -0,0 +1,7 @@
+---
+title: "SDKs"
+---
+
+Official SDK's for building transparent and secure AI agents.
+
+Coming soon.
\ No newline at end of file
diff --git a/docs/architecture.mdx b/docs/architecture.mdx
new file mode 100644
index 0000000..7c3813d
--- /dev/null
+++ b/docs/architecture.mdx
@@ -0,0 +1,9 @@
+---
+title: "Architecture"
+---
+
+This document specifies a proposed standard for identity management of artificial intelligence (AI) agents in the internet. OAIP is a language-agnostic protocol for establishing cryptographic identities for AI agents, enabling authentication, authorization, and audit trails across heterogeneous systems.
+
+The proposed standard creates a framework that allows an AI agent to obtain approval to a resource running a model context protocol (MCP) server by requesting an agent identifier token tied to an end user.
+
+This and following pages goes into the structure of the agent identifiers and the authorization process performed between the client and server through OAIP.
\ No newline at end of file
diff --git a/docs/community/contributing-policy.mdx b/docs/community/contributing-policy.mdx
new file mode 100644
index 0000000..2b4dac3
--- /dev/null
+++ b/docs/community/contributing-policy.mdx
@@ -0,0 +1,159 @@
+# Contributing to the Agent Identity Protocol (OAIP)
+
+Thank you for your interest in contributing to OAIP. This project aims to establish a zero-trust identity standard for autonomous AI agents.
+
+## Ways to Contribute
+
+### For Security Researchers
+- Threat modeling and attack surface analysis
+- Penetration testing of reference implementations
+- Review of cryptographic choices and identity flows
+
+### For Platform Engineers
+- Kubernetes operators and sidecar implementations
+- Cloud provider integrations (AWS, GCP, Azure)
+- Service mesh integrations (Istio, Linkerd)
+
+### For AI/ML Engineers
+- Agent framework integrations (LangChain, AutoGPT, CrewAI)
+- MCP transport implementations
+- SDK development (Python, TypeScript, Go)
+
+### For Compliance Teams
+- Regulatory mapping (SOC2, GDPR, HIPAA, FedRAMP)
+- Audit log schema standardization
+- Policy template libraries
+
+## Getting Started
+
+### Prerequisites
+
+- Go 1.21+ (for proxy development)
+- Python 3.11+ (for SDK and examples)
+- Node.js 20+ (for TypeScript SDK)
+
+### Development Setup
+
+```bash
+# Clone the repository
+git clone https://github.com/ArangoGutierrez/agent-identity-protocol.git
+cd agent-identity-protocol
+
+# For Go proxy development
+cd proxy && go mod download && go build ./...
+
+# For Python SDK
+cd sdk/python && pip install -e ".[dev]"
+
+# For TypeScript SDK
+cd sdk/typescript && npm install && npm run build
+```
+
+## Contribution Process
+
+### 1. Issues First
+
+Before starting work, please:
+- Check existing issues for duplicates
+- Open an issue describing what you want to work on
+- Wait for maintainer feedback on approach
+
+### 2. Branch Naming
+
+```
+feat/short-description # New features
+fix/issue-number # Bug fixes
+docs/what-changed # Documentation
+spec/proposal-name # Specification changes
+```
+
+### 3. Commit Messages
+
+Follow [Conventional Commits](https://www.conventionalcommits.org/):
+
+```
+feat: add OIDC token validation to proxy
+fix: handle empty manifest gracefully
+docs: clarify egress filtering behavior
+spec: add delegation token schema
+```
+
+### 4. Pull Requests
+
+- Fill out the PR template completely
+- Ensure CI passes (lint, test, build)
+- Request review from relevant CODEOWNERS
+- Squash commits before merge
+
+## Specification Changes
+
+Changes to the AIP specification (`spec/`) require:
+
+1. **RFC Process**: Open an issue with `[RFC]` prefix
+2. **Discussion Period**: Minimum 2 weeks for community feedback
+3. **Consensus**: Approval from at least 2 maintainers
+4. **Backward Compatibility**: Document migration path if breaking
+
+## Code Style
+
+### Go
+```bash
+gofmt -s -w .
+go vet ./...
+golangci-lint run
+```
+
+### Python
+```bash
+ruff check .
+ruff format .
+mypy .
+```
+
+### TypeScript
+```bash
+npm run lint
+npm run typecheck
+```
+
+## Testing
+
+All code changes require tests:
+
+```bash
+# Go
+go test -race -cover ./...
+
+# Python
+pytest --cov=aip
+
+# TypeScript
+npm test
+```
+
+## Documentation
+
+- Code should be self-documenting with clear names
+- Public APIs require doc comments
+- Complex logic needs inline comments explaining "why"
+- User-facing changes need README/docs updates
+
+## Code of Conduct
+
+We follow the [Contributor Covenant v2.1](https://www.contributor-covenant.org/version/2/1/code_of_conduct/).
+
+**TL;DR**: Be respectful, inclusive, and professional. Focus on the work, not the person.
+
+## License
+
+By contributing to AIP, you agree that your contributions will be licensed under the [Apache License 2.0](LICENSE).
+
+## Questions?
+
+- **GitHub Discussions**: Architecture and design questions
+- **GitHub Issues**: Bug reports and feature requests
+- **Security Issues**: See [SECURITY.md](SECURITY.md)
+
+---
+
+Thank you for helping make AI agents safer and more accountable.
diff --git a/docs/community/contributing.mdx b/docs/community/contributing.mdx
new file mode 100644
index 0000000..7e02912
--- /dev/null
+++ b/docs/community/contributing.mdx
@@ -0,0 +1,32 @@
+# Contribute to the documentation
+
+Thank you for your interest in contributing to our documentation! This guide will help you get started.
+
+## How to contribute
+
+### Option 1: Edit directly on GitHub
+
+1. Navigate to the page you want to edit
+2. Click the "Edit this file" button (the pencil icon)
+3. Make your changes and submit a pull request
+
+### Option 2: Local development
+
+1. Fork and clone this repository
+2. Install the Mintlify CLI: `npm i -g mint`
+3. Create a branch for your changes
+4. Make changes
+5. Navigate to the docs directory and run `mint dev`
+6. Preview your changes at `http://localhost:3000`
+7. Commit your changes and submit a pull request
+
+For more details on local development, see our [development guide](development.mdx).
+
+## Writing guidelines
+
+- **Use active voice**: "Run the command" not "The command should be run"
+- **Address the reader directly**: Use "you" instead of "the user"
+- **Keep sentences concise**: Aim for one idea per sentence
+- **Lead with the goal**: Start instructions with what the user wants to accomplish
+- **Use consistent terminology**: Don't alternate between synonyms for the same concept
+- **Include examples**: Show, don't just tell
diff --git a/docs/community/introduction.mdx b/docs/community/introduction.mdx
new file mode 100644
index 0000000..e459f04
--- /dev/null
+++ b/docs/community/introduction.mdx
@@ -0,0 +1,5 @@
+---
+title: "Introduction"
+---
+
+Check out our Github for open discussions on standardiziing OAIP
\ No newline at end of file
diff --git a/docs/docs.json b/docs/docs.json
new file mode 100644
index 0000000..6dba3b0
--- /dev/null
+++ b/docs/docs.json
@@ -0,0 +1,87 @@
+{
+ "$schema": "https://mintlify.com/docs.json",
+ "theme": "aspen",
+ "name": "Open Agent Identity Protocol",
+ "colors": {
+ "primary": "#16A34A",
+ "light": "#07C983",
+ "dark": "#15803D"
+ },
+ "favicon": "/favicon.svg",
+ "navigation": {
+ "tabs": [
+ {
+ "tab": "Guides",
+ "groups": [
+ {
+ "group": "Getting started",
+ "pages": [
+ "index"
+ ]
+ },
+ {
+ "group": "About OAIP",
+ "pages": [
+ "architecture"
+ ]
+ },
+ {
+ "group": "Developing with OAIP",
+ "pages": [
+ "SDKs"
+ ]
+ }
+ ]
+ },
+ {
+ "tab": "Community",
+ "groups": [
+ {
+ "group": "Github",
+ "pages": [
+ "community/introduction"
+ ]
+ },
+ {
+ "group": "Contributing",
+ "pages": [
+ "community/contributing",
+ "community/contributing-policy"
+ ]
+ }
+ ]
+ }
+ ],
+ "global": {
+ "anchors": [
+
+ ]
+ }
+ },
+ "logo": {
+ "light": "/logo/light.svg",
+ "dark": "/logo/dark.svg"
+ },
+ "navbar": {
+ "primary": {
+ "type": "button",
+ "label": "Github",
+ "href": "https://github.com/openagentidentityprotocol"
+ }
+ },
+ "contextual": {
+ "options": [
+ "copy",
+ "view",
+ "chatgpt",
+ "claude",
+ "perplexity"
+ ]
+ },
+ "footer": {
+ "socials": {
+ "github": "https://github.com/openagentidentityprotocol"
+ }
+ },
+ "description": "The standard for AI agent identity attestation"
+}
diff --git a/docs/faq.md b/docs/faq.mdx
similarity index 72%
rename from docs/faq.md
rename to docs/faq.mdx
index 0adb40c..4e834f2 100644
--- a/docs/faq.md
+++ b/docs/faq.mdx
@@ -24,39 +24,39 @@ Not for local development. Identity tokens are recommended when:
3. Set `failover_mode` (recommend `fail_closed` for security).
4. See the [Server-Side Validation Guide](../implementations/go-proxy/docs/server-guide.md) for details.
-### What is AIP?
+### What is OAIP?
-AIP (Agent Identity Protocol) is an open specification for policy-based authorization of AI agent tool calls. It defines how to declare, enforce, and audit what actions an AI agent can perform.
+OAIP (Open Agent Identity Protocol) is an open standard for secure agentic identity management and authorization starting with a specification for policy-based authorization of AI agent tool calls. It defines how to declare, enforce, and audit what actions an AI agent can perform.
-### What's the difference between the AIP specification and the Go proxy?
+### What's the difference between the OAIP specification and the Go proxy?
-- **AIP Specification** (`spec/`): The protocol standard that anyone can implement
+- **OAIP Specification** (`spec/`): The protocol standard that anyone can implement
- **Go Proxy** (`implementations/go-proxy/`): One reference implementation of that standard
Think of it like HTTP (the spec) vs Apache/Nginx (implementations).
-### Can I use AIP without the Go proxy?
+### Can I use OAIP without the Go proxy?
-Yes! AIP is a specification. You can:
-- Implement AIP natively in your MCP client (Cursor, Claude Desktop, etc.)
+Yes! OAIP is a specification. You can:
+- Implement OAIP natively in your MCP client (Cursor, Claude Desktop, etc.)
- Build your own proxy in any language
- Use the Go proxy as a reference
-### Does AIP require changes to my MCP server?
+### Does OAIP require changes to my MCP server?
-No. AIP sits between the MCP client and server as a transparent proxy. Your MCP server doesn't need any modifications.
+No. OAIP sits between the MCP client and server as a transparent proxy. Your MCP server doesn't need any modifications.
```
-[Agent] → [AIP Proxy] → [MCP Server]
+[Agent] → [OAIP Proxy] → [MCP Server]
```
The proxy intercepts `tools/call` requests, applies policy, and forwards allowed requests unchanged.
## Security
-### How is AIP different from workforce AI governance tools like SurePath.ai?
+### How is OAIP different from workforce AI governance tools like SurePath.ai?
-AIP and workforce AI governance tools solve different problems at different layers:
+OAIP and workforce AI governance tools solve different problems at different layers:
**Workforce AI Governance (e.g., SurePath.ai)**:
- Monitors *employee* AI usage across your organization
@@ -64,38 +64,38 @@ AIP and workforce AI governance tools solve different problems at different laye
- Answers: "Who in my org is using ChatGPT? What are they asking?"
- Typically SaaS platforms for compliance and governance
-**AIP (Agent Identity Protocol)**:
+**OAIP (Open Agent Identity Protocol)**:
- Controls *what actions AI agents can take* on your infrastructure
- Tool-call level authorization (blocks dangerous operations)
- Answers: "Can this agent delete files? Access production databases?"
- Open protocol for developers building agents
-**These are complementary**: Use workforce governance to monitor employee AI usage. Use AIP to secure the agents those employees build. Think of it as different layers—one monitors people, one protects infrastructure.
+**These are complementary**: Use workforce governance to monitor employee AI usage. Use OAIP to secure the agents those employees build. Think of it as different layers—one monitors people, one protects infrastructure.
-### How is AIP different from OAuth?
+### How is OAIP different from OAuth?
-| Aspect | OAuth | AIP |
+| Aspect | OAuth | OAIP |
|--------|-------|-----|
| Granularity | Scope-level ("repo access") | Action-level ("repos.get with org:X") |
| Timing | Grant-time | Runtime (every call) |
| Audience | End users | Developers/Security teams |
| Format | Token claims | YAML policy files |
-OAuth answers "who is this?" AIP answers "should this specific action be allowed?"
+OAuth answers "who is this?" OAIP answers "should this specific action be allowed?"
-### Can AIP prevent all prompt injection attacks?
+### Can OAIP prevent all prompt injection attacks?
-AIP significantly reduces the blast radius of prompt injection by:
+OAIP significantly reduces the blast radius of prompt injection by:
- Limiting which tools an agent can call
- Validating arguments with regex patterns
- Requiring human approval for sensitive operations
- Logging all decisions for forensic analysis
-However, AIP cannot prevent prompt injection itself—it mitigates the *consequences*.
+However, OAIP cannot prevent prompt injection itself—it mitigates the *consequences*.
### What about network egress? Can a malicious agent exfiltrate data?
-Network egress control is planned for AIP v1beta1 (see [spec Appendix D](../spec/aip-v1alpha1.md#appendix-d-future-extensions)). Currently, tool-level authorization is enforced but the MCP server subprocess can still make network calls.
+Network egress control is planned for OAIP v1beta1 (see [spec Appendix D](../spec/aip-v1alpha1.md#appendix-d-future-extensions)). Currently, tool-level authorization is enforced but the MCP server subprocess can still make network calls.
For maximum security today, run MCP servers in containers with `--network=none`.
@@ -116,7 +116,7 @@ Pass the path with `--policy /path/to/policy.yaml`.
### What happens if a tool isn't in `allowed_tools`?
-It's blocked with error code `-32001 Forbidden`. AIP is **default-deny**.
+It's blocked with error code `-32001 Forbidden`. OAIP is **default-deny**.
### Can I test a policy without blocking anything?
@@ -154,7 +154,7 @@ tool_rules:
### My Docker container doesn't stop when I kill the proxy!
-When wrapping a Docker container with AIP, signals (SIGTERM/SIGINT) are sent to the `docker` CLI process, not the container itself. This can leave zombie containers running.
+When wrapping a Docker container with OAIP, signals (SIGTERM/SIGINT) are sent to the `docker` CLI process, not the container itself. This can leave zombie containers running.
**Solution:** Always use `--rm` and `--init` flags:
@@ -174,15 +174,15 @@ aip --policy policy.yaml --target "docker run --rm --init -i myimage"
For production deployments, consider running the AIP proxy *inside* the container or using a container orchestrator with proper lifecycle management.
-### What MCP clients work with AIP?
+### What MCP clients work with OAIP?
Any MCP client that supports custom server commands:
- **Cursor**: Add to `~/.cursor/mcp.json`
- **Claude Desktop**: Add to `claude_desktop_config.json`
- **Continue (VS Code)**: Add to Continue config
-- **Custom clients**: Use AIP as the server command
+- **Custom clients**: Use OAIP as the server command
-### Does AIP work on Windows?
+### Does OAIP work on Windows?
The Go proxy builds for Windows. Human-in-the-loop (`action: ask`) uses native Windows dialogs via PowerShell.
@@ -218,5 +218,5 @@ Yes! We welcome implementations in other languages. Requirements:
1. Open an issue describing the change
2. Discuss with maintainers
-3. Submit a PR to `spec/aip-v1alpha1.md`
+3. Submit a PR to `spec/oaip-v1alpha1.md`
4. Include conformance tests for new behavior
diff --git a/docs/favicon.svg b/docs/favicon.svg
new file mode 100644
index 0000000..543cba0
--- /dev/null
+++ b/docs/favicon.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/docs/index.mdx b/docs/index.mdx
new file mode 100644
index 0000000..6aca97f
--- /dev/null
+++ b/docs/index.mdx
@@ -0,0 +1,23 @@
+---
+title: "Open Agent Identity Protocol (OAIP)"
+---
+
+## What is OAIP?
+
+OAIP(Open Agent Identity Protocol) is an open-source standard for authentication, attestation, and governance of artificial intelligence (AI) agents.
+
+Think of it like OAuth for AI agents. There's an increasing problem of agents getting full permissions to API keys, secrets, permissions and running AS the user. This will become a larger problem when the line between the actions between what a human and non-human actor becomes blurred. This has implications not just at a security level but also a legal, societal, and economic level.
+
+OAIP is being built and proposed to the IETF to provide a universal standard for identity in the Internet of Agents (IoA) so that anyone, anywhere, can build secure agents and gain visibility with confidence.
+
+## Architecture
+
+
+ Follow how OAIP is being implemented
+
+
+## Develop
+
+
+ Get started with the SDKs
+
\ No newline at end of file
diff --git a/docs/logo/dark.svg b/docs/logo/dark.svg
new file mode 100644
index 0000000..a0d72f1
--- /dev/null
+++ b/docs/logo/dark.svg
@@ -0,0 +1,39 @@
+
+
\ No newline at end of file
diff --git a/docs/logo/light.svg b/docs/logo/light.svg
new file mode 100644
index 0000000..04409d7
--- /dev/null
+++ b/docs/logo/light.svg
@@ -0,0 +1,39 @@
+
+
\ No newline at end of file
diff --git a/docs/oaip logo.ai b/docs/oaip logo.ai
new file mode 100644
index 0000000..39d6f96
--- /dev/null
+++ b/docs/oaip logo.ai
@@ -0,0 +1,5132 @@
+%PDF-1.6
%
+1 0 obj
<>/OCGs[5 0 R]>>/Pages 3 0 R/Type/Catalog>>
endobj
2 0 obj
<>stream
+
+
+
+
+
+
+ Web
+
+
+
+
+
+
+ 220
+ 256
+ JPEG
+ /9j/4AAQSkZJRgABAgEAAAAAAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAAAAAAAAEA
AQAAAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK
DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f
Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgBAADcAwER
AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA
AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB
UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE
1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ
qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy
obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp
0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo
+DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXYq7FXYq7FXYq7
FUq8xea/LXlqyN9r+p22mWu/GS5kWPkR2QE1c+ygnFXinm7/AJzL/L3S2eHy9ZXXmCdfsy0+p2x/
2cqtL/ySxV5F5h/5zH/NTUC6aVFYaLEfsNFD9YmHza4Lxn/kWMVee6t+dX5taqWN55s1OjfaSC4e
2Q/7CD01/DFWL3us6xfFje31xdFvtetK8laGu/InviqCxVUhnngfnDI0T0pyRipp8xiqfab+Y35g
aWR+jvMuqWgH7MV5Oq/SofiemKs50L/nKb86NJYc9YTU4Rv6N/bxSA/N0EUv/D4q9R8r/wDObqFk
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
+
+ 0
+
+
+
+
+
+
+
+
+
+
+
+
+ Cyan
+ Magenta
+ Yellow
+ Black
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
endstream
endobj
3 0 obj
<>
endobj
7 0 obj
<>/ExtGState<>/Properties<>/XObject<>>>/TrimBox[0.0 0.0 32.0 32.0]/Type/Page/PieceInfo<>>>
endobj
8 0 obj
<>stream
+HKdRN0+vGWRB* ʥ6嵳ޝo=gKwX
+^ont|!W.d:^ QƐYOF'Ó1 _bQgAD:X镶~n6$WvGZV2o6![