@agenticvault/openclaw 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.ja.md CHANGED
@@ -1,4 +1,4 @@
1
- <!-- Source: packages/openclaw-plugin/README.md | Commit: 9d69f83 | Last synced: 2026-02-17 -->
1
+ <!-- Source: packages/openclaw-plugin/README.md | Last synced: 2026-02-19 -->
2
2
 
3
3
  # @agenticvault/openclaw
4
4
 
@@ -8,24 +8,56 @@
8
8
 
9
9
  ## インストール
10
10
 
11
+ ### OpenClaw ホスト設定経由(推奨)
12
+
13
+ パッケージと peer dependency をインストールし、OpenClaw ホスト設定に登録します:
14
+
11
15
  ```bash
12
- npm install @agenticvault/openclaw @agenticvault/agentic-vault
16
+ npm install @agenticvault/openclaw openclaw
17
+ ```
18
+
19
+ ### `plugins.load.paths` 経由(手動)
20
+
21
+ プラグインの読み込みを明示的に制御したい場合は、ローカルディレクトリにインストールし、そのパスを OpenClaw に指定します:
22
+
23
+ ```bash
24
+ # ローカルディレクトリにインストール
25
+ mkdir -p ./openclaw-plugins
26
+ cd ./openclaw-plugins
27
+ npm install @agenticvault/openclaw
28
+ ```
29
+
30
+ 次に、OpenClaw ホスト設定にパスを追加します:
31
+
32
+ ```json
33
+ {
34
+ "plugins": {
35
+ "load": {
36
+ "paths": ["./openclaw-plugins/node_modules/@agenticvault/openclaw"]
37
+ }
38
+ }
39
+ }
13
40
  ```
14
41
 
42
+ > **ヒント**:本番環境では正確なバージョンを固定してください(`npm install @agenticvault/openclaw@0.1.1`)。予期しないアップグレードを防止します。
43
+
44
+ > **既知の制限事項**:`openclaw plugins install @agenticvault/openclaw` はインストーラーの ID 不一致が発生する場合があります。上流で修正されるまでは、上記の方法でインストールしてください。
45
+
15
46
  ## 設定
16
47
 
17
- OpenClaw エージェント設定にプラグインを登録します:
48
+ OpenClaw ホスト設定にプラグインを登録します。entries キーはマニフェストの `id`(`"agentic-vault"`)と一致する必要があります:
18
49
 
19
50
  ```json
20
51
  {
21
52
  "plugins": {
22
- "agentic-vault": {
23
- "package": "@agenticvault/openclaw",
24
- "config": {
25
- "keyId": "arn:aws:kms:us-east-1:123456789:key/your-key-id",
26
- "region": "us-east-1",
27
- "policyConfigPath": "./policy.json",
28
- "rpcUrl": "https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY"
53
+ "entries": {
54
+ "agentic-vault": {
55
+ "config": {
56
+ "keyId": "arn:aws:kms:us-east-1:123456789:key/your-key-id",
57
+ "region": "us-east-1",
58
+ "policyConfigPath": "./policy.json",
59
+ "rpcUrl": "https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY"
60
+ }
29
61
  }
30
62
  }
31
63
  }
@@ -62,6 +94,18 @@ OpenClaw エージェント設定にプラグインを登録します:
62
94
  | `vault_sign_transaction` | 生の EVM トランザクションに署名します(デコーダーパイプラインをバイパス) |
63
95
  | `vault_sign_typed_data` | 生の EIP-712 型付きデータに署名します(デコーダーパイプラインをバイパス) |
64
96
 
97
+ ## プレリリース API からの移行
98
+
99
+ プラグインのエントリーポイントがプレリリースの `register(api, config)` から公式 SDK コントラクト `export default function(api)` に変更されました:
100
+
101
+ | 変更前(プレリリース) | 変更後(現在) |
102
+ |------------------------|---------------|
103
+ | `import { register } from "@agenticvault/openclaw"` | `export default function(api)` |
104
+ | `register(api, config)` | 設定は `api.pluginConfig` から読み取り |
105
+ | `api.registerTool(name, config, handler)` | `api.registerTool({ name, description, parameters, label, execute })` |
106
+
107
+ プラグインは公式の `openclaw/plugin-sdk` 型を使用するようになり、`package.json` の `openclaw` フィールドを通じて OpenClaw ゲートウェイから検出可能です。
108
+
65
109
  ## セキュリティ
66
110
 
67
111
  - **デフォルト拒否** -- すべての署名操作に明示的なポリシー承認が必要です
package/README.ko.md CHANGED
@@ -1,4 +1,4 @@
1
- <!-- Source: packages/openclaw-plugin/README.md | Commit: 9d69f83 | Last synced: 2026-02-17 -->
1
+ <!-- Source: packages/openclaw-plugin/README.md | Last synced: 2026-02-19 -->
2
2
 
3
3
  # @agenticvault/openclaw
4
4
 
@@ -8,24 +8,56 @@
8
8
 
9
9
  ## 설치
10
10
 
11
+ ### OpenClaw 호스트 설정을 통한 설치 (권장)
12
+
13
+ 패키지와 peer dependency를 설치한 후 OpenClaw 호스트 설정에 등록합니다:
14
+
11
15
  ```bash
12
- npm install @agenticvault/openclaw @agenticvault/agentic-vault
16
+ npm install @agenticvault/openclaw openclaw
17
+ ```
18
+
19
+ ### `plugins.load.paths`를 통한 설치 (수동)
20
+
21
+ 플러그인 로딩을 명시적으로 제어하려면 로컬 디렉토리에 패키지를 설치하고 OpenClaw에 경로를 지정합니다:
22
+
23
+ ```bash
24
+ # 로컬 디렉토리에 설치
25
+ mkdir -p ./openclaw-plugins
26
+ cd ./openclaw-plugins
27
+ npm install @agenticvault/openclaw
28
+ ```
29
+
30
+ 그런 다음 OpenClaw 호스트 설정에 경로를 추가합니다:
31
+
32
+ ```json
33
+ {
34
+ "plugins": {
35
+ "load": {
36
+ "paths": ["./openclaw-plugins/node_modules/@agenticvault/openclaw"]
37
+ }
38
+ }
39
+ }
13
40
  ```
14
41
 
42
+ > **팁**: 프로덕션 환경에서는 정확한 버전을 고정하세요 (`npm install @agenticvault/openclaw@0.1.1`). 예기치 않은 업그레이드를 방지합니다.
43
+
44
+ > **알려진 제한**: `openclaw plugins install @agenticvault/openclaw`은 설치 프로그램 ID 불일치가 발생할 수 있습니다. 업스트림에서 수정될 때까지 위의 방법을 사용하여 설치하세요.
45
+
15
46
  ## 설정
16
47
 
17
- OpenClaw 에이전트 설정에서 플러그인을 등록합니다:
48
+ OpenClaw 호스트 설정에서 플러그인을 등록합니다. entries 키는 매니페스트 `id`(`"agentic-vault"`)와 일치해야 합니다:
18
49
 
19
50
  ```json
20
51
  {
21
52
  "plugins": {
22
- "agentic-vault": {
23
- "package": "@agenticvault/openclaw",
24
- "config": {
25
- "keyId": "arn:aws:kms:us-east-1:123456789:key/your-key-id",
26
- "region": "us-east-1",
27
- "policyConfigPath": "./policy.json",
28
- "rpcUrl": "https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY"
53
+ "entries": {
54
+ "agentic-vault": {
55
+ "config": {
56
+ "keyId": "arn:aws:kms:us-east-1:123456789:key/your-key-id",
57
+ "region": "us-east-1",
58
+ "policyConfigPath": "./policy.json",
59
+ "rpcUrl": "https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY"
60
+ }
29
61
  }
30
62
  }
31
63
  }
@@ -62,6 +94,18 @@ OpenClaw 에이전트 설정에서 플러그인을 등록합니다:
62
94
  | `vault_sign_transaction` | 원시 EVM 트랜잭션에 서명합니다 (디코더 파이프라인 우회) |
63
95
  | `vault_sign_typed_data` | 원시 EIP-712 타입 데이터에 서명합니다 (디코더 파이프라인 우회) |
64
96
 
97
+ ## 프리릴리스 API에서 마이그레이션
98
+
99
+ 플러그인 진입점이 프리릴리스 `register(api, config)`에서 공식 SDK 계약 `export default function(api)`로 변경되었습니다:
100
+
101
+ | 변경 전 (프리릴리스) | 변경 후 (현재) |
102
+ |---------------------|---------------|
103
+ | `import { register } from "@agenticvault/openclaw"` | `export default function(api)` |
104
+ | `register(api, config)` | 설정은 `api.pluginConfig`에서 읽음 |
105
+ | `api.registerTool(name, config, handler)` | `api.registerTool({ name, description, parameters, label, execute })` |
106
+
107
+ 플러그인은 이제 공식 `openclaw/plugin-sdk` 타입을 사용하며, `package.json`의 `openclaw` 필드를 통해 OpenClaw 게이트웨이에서 검색됩니다.
108
+
65
109
  ## 보안
66
110
 
67
111
  - **기본 거부** -- 모든 서명 작업에 명시적인 정책 승인이 필요합니다
package/README.md CHANGED
@@ -6,24 +6,56 @@ OpenClaw plugin for [Agentic Vault](https://github.com/agenticvault/agentic-vaul
6
6
 
7
7
  ## Installation
8
8
 
9
+ ### Via OpenClaw Host Config (Recommended)
10
+
11
+ Install the package and its peer dependency, then register it in your OpenClaw host config:
12
+
9
13
  ```bash
10
- npm install @agenticvault/openclaw @agenticvault/agentic-vault
14
+ npm install @agenticvault/openclaw openclaw
15
+ ```
16
+
17
+ ### Via `plugins.load.paths` (Manual)
18
+
19
+ If you prefer explicit control over plugin loading, install the package to a local directory and point OpenClaw to it:
20
+
21
+ ```bash
22
+ # Install to a local directory
23
+ mkdir -p ./openclaw-plugins
24
+ cd ./openclaw-plugins
25
+ npm install @agenticvault/openclaw
26
+ ```
27
+
28
+ Then add the path to your OpenClaw host config:
29
+
30
+ ```json
31
+ {
32
+ "plugins": {
33
+ "load": {
34
+ "paths": ["./openclaw-plugins/node_modules/@agenticvault/openclaw"]
35
+ }
36
+ }
37
+ }
11
38
  ```
12
39
 
40
+ > **Tip**: Pin the exact version in production (`npm install @agenticvault/openclaw@0.1.1`) to avoid unexpected upgrades.
41
+
42
+ > **Known limitation**: `openclaw plugins install @agenticvault/openclaw` may encounter an installer ID mismatch. Use one of the methods above until this is resolved upstream.
43
+
13
44
  ## Configuration
14
45
 
15
- Register the plugin in your OpenClaw agent configuration:
46
+ Register the plugin in your OpenClaw host configuration. The entries key must match the manifest `id` (`"agentic-vault"`):
16
47
 
17
48
  ```json
18
49
  {
19
50
  "plugins": {
20
- "agentic-vault": {
21
- "package": "@agenticvault/openclaw",
22
- "config": {
23
- "keyId": "arn:aws:kms:us-east-1:123456789:key/your-key-id",
24
- "region": "us-east-1",
25
- "policyConfigPath": "./policy.json",
26
- "rpcUrl": "https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY"
51
+ "entries": {
52
+ "agentic-vault": {
53
+ "config": {
54
+ "keyId": "arn:aws:kms:us-east-1:123456789:key/your-key-id",
55
+ "region": "us-east-1",
56
+ "policyConfigPath": "./policy.json",
57
+ "rpcUrl": "https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY"
58
+ }
27
59
  }
28
60
  }
29
61
  }
@@ -60,6 +92,18 @@ Register the plugin in your OpenClaw agent configuration:
60
92
  | `vault_sign_transaction` | Sign a raw EVM transaction (bypasses decoder pipeline) |
61
93
  | `vault_sign_typed_data` | Sign raw EIP-712 typed data (bypasses decoder pipeline) |
62
94
 
95
+ ## Migration from Pre-Release API
96
+
97
+ The plugin entry point changed from the pre-release `register(api, config)` to the official SDK contract `export default function(api)`:
98
+
99
+ | Before (pre-release) | After (current) |
100
+ |----------------------|-----------------|
101
+ | `import { register } from "@agenticvault/openclaw"` | `export default function(api)` |
102
+ | `register(api, config)` | Config read from `api.pluginConfig` |
103
+ | `api.registerTool(name, config, handler)` | `api.registerTool({ name, description, parameters, label, execute })` |
104
+
105
+ The plugin now uses the official `openclaw/plugin-sdk` types and can be discovered by the OpenClaw gateway via the `openclaw` field in `package.json`.
106
+
63
107
  ## Security
64
108
 
65
109
  - **Deny by default** -- all signing operations require explicit policy approval
package/README.zh-CN.md CHANGED
@@ -1,4 +1,4 @@
1
- <!-- Source: packages/openclaw-plugin/README.md | Commit: 9d69f83 | Last synced: 2026-02-17 -->
1
+ <!-- Source: packages/openclaw-plugin/README.md | Last synced: 2026-02-19 -->
2
2
 
3
3
  # @agenticvault/openclaw
4
4
 
@@ -8,24 +8,56 @@
8
8
 
9
9
  ## 安装
10
10
 
11
+ ### 通过 OpenClaw 主机配置(推荐)
12
+
13
+ 安装包及其 peer dependency,然后在 OpenClaw 主机配置中注册:
14
+
11
15
  ```bash
12
- npm install @agenticvault/openclaw @agenticvault/agentic-vault
16
+ npm install @agenticvault/openclaw openclaw
17
+ ```
18
+
19
+ ### 通过 `plugins.load.paths`(手动)
20
+
21
+ 如果偏好显式控制插件加载,可将包安装到本地目录,再将路径指定给 OpenClaw:
22
+
23
+ ```bash
24
+ # 安装到本地目录
25
+ mkdir -p ./openclaw-plugins
26
+ cd ./openclaw-plugins
27
+ npm install @agenticvault/openclaw
28
+ ```
29
+
30
+ 然后在 OpenClaw 主机配置中添加路径:
31
+
32
+ ```json
33
+ {
34
+ "plugins": {
35
+ "load": {
36
+ "paths": ["./openclaw-plugins/node_modules/@agenticvault/openclaw"]
37
+ }
38
+ }
39
+ }
13
40
  ```
14
41
 
42
+ > **建议**:生产环境请固定版本(`npm install @agenticvault/openclaw@0.1.1`),避免意外升级。
43
+
44
+ > **已知限制**:`openclaw plugins install @agenticvault/openclaw` 可能遇到 installer ID 不匹配的问题。在上游修复前,请使用上述方式安装。
45
+
15
46
  ## 配置
16
47
 
17
- 在 OpenClaw 代理配置中注册插件:
48
+ 在 OpenClaw 主机配置中注册插件。entries key 必须与 manifest `id`(`"agentic-vault"`)一致:
18
49
 
19
50
  ```json
20
51
  {
21
52
  "plugins": {
22
- "agentic-vault": {
23
- "package": "@agenticvault/openclaw",
24
- "config": {
25
- "keyId": "arn:aws:kms:us-east-1:123456789:key/your-key-id",
26
- "region": "us-east-1",
27
- "policyConfigPath": "./policy.json",
28
- "rpcUrl": "https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY"
53
+ "entries": {
54
+ "agentic-vault": {
55
+ "config": {
56
+ "keyId": "arn:aws:kms:us-east-1:123456789:key/your-key-id",
57
+ "region": "us-east-1",
58
+ "policyConfigPath": "./policy.json",
59
+ "rpcUrl": "https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY"
60
+ }
29
61
  }
30
62
  }
31
63
  }
@@ -62,6 +94,18 @@ npm install @agenticvault/openclaw @agenticvault/agentic-vault
62
94
  | `vault_sign_transaction` | 签署原始 EVM 交易(绕过解码管线) |
63
95
  | `vault_sign_typed_data` | 签署原始 EIP-712 类型化数据(绕过解码管线) |
64
96
 
97
+ ## 从预发布 API 迁移
98
+
99
+ 插件入口点从预发布的 `register(api, config)` 变更为官方 SDK 合约 `export default function(api)`:
100
+
101
+ | 之前(预发布) | 之后(当前) |
102
+ |----------------|-------------|
103
+ | `import { register } from "@agenticvault/openclaw"` | `export default function(api)` |
104
+ | `register(api, config)` | 配置从 `api.pluginConfig` 读取 |
105
+ | `api.registerTool(name, config, handler)` | `api.registerTool({ name, description, parameters, label, execute })` |
106
+
107
+ 插件现在使用官方 `openclaw/plugin-sdk` 类型,并可通过 `package.json` 中的 `openclaw` 字段被 OpenClaw 网关发现。
108
+
65
109
  ## 安全性
66
110
 
67
111
  - **默认拒绝** -- 所有签名操作皆需明确的策略批准
package/README.zh-TW.md CHANGED
@@ -1,4 +1,4 @@
1
- <!-- Source: packages/openclaw-plugin/README.md | Commit: 9d69f83 | Last synced: 2026-02-17 -->
1
+ <!-- Source: packages/openclaw-plugin/README.md | Last synced: 2026-02-19 -->
2
2
 
3
3
  # @agenticvault/openclaw
4
4
 
@@ -8,24 +8,56 @@
8
8
 
9
9
  ## 安裝
10
10
 
11
+ ### 透過 OpenClaw 主機設定(推薦)
12
+
13
+ 安裝套件及其 peer dependency,然後在 OpenClaw 主機設定中註冊:
14
+
11
15
  ```bash
12
- npm install @agenticvault/openclaw @agenticvault/agentic-vault
16
+ npm install @agenticvault/openclaw openclaw
17
+ ```
18
+
19
+ ### 透過 `plugins.load.paths`(手動)
20
+
21
+ 若偏好明確控制插件載入,可將套件安裝至本地目錄,再將路徑指定給 OpenClaw:
22
+
23
+ ```bash
24
+ # 安裝至本地目錄
25
+ mkdir -p ./openclaw-plugins
26
+ cd ./openclaw-plugins
27
+ npm install @agenticvault/openclaw
28
+ ```
29
+
30
+ 然後在 OpenClaw 主機設定中新增路徑:
31
+
32
+ ```json
33
+ {
34
+ "plugins": {
35
+ "load": {
36
+ "paths": ["./openclaw-plugins/node_modules/@agenticvault/openclaw"]
37
+ }
38
+ }
39
+ }
13
40
  ```
14
41
 
42
+ > **建議**:正式環境請固定版本(`npm install @agenticvault/openclaw@0.1.1`),避免意外升級。
43
+
44
+ > **已知限制**:`openclaw plugins install @agenticvault/openclaw` 可能遇到 installer ID 不符的問題。在上游修復前,請使用上述方式安裝。
45
+
15
46
  ## 設定
16
47
 
17
- 在 OpenClaw 代理設定中註冊插件:
48
+ 在 OpenClaw 主機設定中註冊插件。entries key 必須與 manifest `id`(`"agentic-vault"`)一致:
18
49
 
19
50
  ```json
20
51
  {
21
52
  "plugins": {
22
- "agentic-vault": {
23
- "package": "@agenticvault/openclaw",
24
- "config": {
25
- "keyId": "arn:aws:kms:us-east-1:123456789:key/your-key-id",
26
- "region": "us-east-1",
27
- "policyConfigPath": "./policy.json",
28
- "rpcUrl": "https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY"
53
+ "entries": {
54
+ "agentic-vault": {
55
+ "config": {
56
+ "keyId": "arn:aws:kms:us-east-1:123456789:key/your-key-id",
57
+ "region": "us-east-1",
58
+ "policyConfigPath": "./policy.json",
59
+ "rpcUrl": "https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY"
60
+ }
29
61
  }
30
62
  }
31
63
  }
@@ -62,6 +94,18 @@ npm install @agenticvault/openclaw @agenticvault/agentic-vault
62
94
  | `vault_sign_transaction` | 簽署原始 EVM 交易(繞過解碼管線) |
63
95
  | `vault_sign_typed_data` | 簽署原始 EIP-712 型別化資料(繞過解碼管線) |
64
96
 
97
+ ## 從預發布 API 遷移
98
+
99
+ 插件進入點從預發布的 `register(api, config)` 變更為官方 SDK 合約 `export default function(api)`:
100
+
101
+ | 之前(預發布) | 之後(目前) |
102
+ |----------------|-------------|
103
+ | `import { register } from "@agenticvault/openclaw"` | `export default function(api)` |
104
+ | `register(api, config)` | 設定從 `api.pluginConfig` 讀取 |
105
+ | `api.registerTool(name, config, handler)` | `api.registerTool({ name, description, parameters, label, execute })` |
106
+
107
+ 插件現在使用官方 `openclaw/plugin-sdk` 型別,並可透過 `package.json` 中的 `openclaw` 欄位被 OpenClaw 閘道發現。
108
+
65
109
  ## 安全性
66
110
 
67
111
  - **預設拒絕** -- 所有簽署操作皆需明確的策略核准
package/dist/index.d.ts CHANGED
@@ -1,9 +1,9 @@
1
- export { type OpenClawPluginApi, type OpenClawToolConfig, type OpenClawParameter, type OpenClawToolHandler, type OpenClawToolResult, type OpenClawPluginConfig, } from './types.js';
2
- export { buildContext } from './context.js';
3
- export { registerTools } from './tools.js';
4
- import { type OpenClawPluginApi, type OpenClawPluginConfig } from './types.js';
1
+ import { type OpenClawPluginApi } from './types.js';
5
2
  /**
6
3
  * OpenClaw plugin entry point.
7
4
  * Called by the OpenClaw host to register vault signing tools.
8
5
  */
9
- export declare function register(api: OpenClawPluginApi, config: OpenClawPluginConfig): void;
6
+ export default function (api: OpenClawPluginApi): void;
7
+ export { type OpenClawPluginConfig } from './types.js';
8
+ export { buildContext } from './context.js';
9
+ export { registerTools } from './tools.js';
package/dist/index.js CHANGED
@@ -1,13 +1,14 @@
1
- export { buildContext } from './context.js';
2
- export { registerTools } from './tools.js';
3
1
  import { buildContext } from './context.js';
4
2
  import { registerTools } from './tools.js';
5
3
  /**
6
4
  * OpenClaw plugin entry point.
7
5
  * Called by the OpenClaw host to register vault signing tools.
8
6
  */
9
- export function register(api, config) {
7
+ export default function (api) {
8
+ const config = (api.pluginConfig ?? {});
10
9
  const ctx = buildContext(config);
11
10
  registerTools(api, ctx, config);
12
11
  }
12
+ export { buildContext } from './context.js';
13
+ export { registerTools } from './tools.js';
13
14
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAG3C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C;;;GAGG;AACH,MAAM,UAAU,QAAQ,CACtB,GAAsB,EACtB,MAA4B;IAE5B,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACjC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C;;;GAGG;AACH,MAAM,CAAC,OAAO,WAAW,GAAsB;IAC7C,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAoC,CAAC;IAC3E,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACjC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;AAClC,CAAC;AAGD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}