@oobe-protocol-labs/sap-mcp-server 0.9.2 → 0.9.4
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/CHANGELOG.md +44 -0
- package/README.md +2 -2
- package/USER_DOCS/00_START_HERE.md +1 -0
- package/USER_DOCS/03_PAYMENTS_X402_PAYSH.md +4 -3
- package/USER_DOCS/04_CLIENT_CONFIGS.md +9 -5
- package/USER_DOCS/05_SKILLS_AND_TOOLS.md +2 -0
- package/USER_DOCS/06_DESKTOP_GUI_WIZARD.md +6 -6
- package/USER_DOCS/07_SMITHERY_AND_MARKETPLACES.md +7 -0
- package/config.schema.json +2 -2
- package/dist/config/env.js +4 -4
- package/dist/config/env.js.map +1 -1
- package/dist/config/mcp-client-injection.d.ts.map +1 -1
- package/dist/config/mcp-client-injection.js +10 -4
- package/dist/config/mcp-client-injection.js.map +1 -1
- package/dist/config/wizard.js +3 -3
- package/dist/config/wizard.js.map +1 -1
- package/dist/core/constants.d.ts +1 -1
- package/dist/core/constants.d.ts.map +1 -1
- package/dist/core/constants.js +2 -1
- package/dist/core/constants.js.map +1 -1
- package/dist/payments/pricing.d.ts.map +1 -1
- package/dist/payments/pricing.js +57 -13
- package/dist/payments/pricing.js.map +1 -1
- package/dist/prompts/context/sap-agent-context.prompt.js +2 -0
- package/dist/prompts/context/sap-agent-context.prompt.js.map +1 -1
- package/dist/prompts/context/sap-agent-start.prompt.js +2 -0
- package/dist/prompts/context/sap-agent-start.prompt.js.map +1 -1
- package/dist/remote/public-home/sections.d.ts.map +1 -1
- package/dist/remote/public-home/sections.js +3 -2
- package/dist/remote/public-home/sections.js.map +1 -1
- package/dist/security/tool-permissions.d.ts.map +1 -1
- package/dist/security/tool-permissions.js +1 -0
- package/dist/security/tool-permissions.js.map +1 -1
- package/dist/tools/agent-start-tool.js +16 -0
- package/dist/tools/agent-start-tool.js.map +1 -1
- package/dist/tools/magicblock-tools.d.ts +6 -6
- package/dist/tools/magicblock-tools.js +26 -26
- package/dist/tools/magicblock-tools.js.map +1 -1
- package/dist/tools/transaction-tools.d.ts +78 -0
- package/dist/tools/transaction-tools.d.ts.map +1 -1
- package/dist/tools/transaction-tools.js +72 -9
- package/dist/tools/transaction-tools.js.map +1 -1
- package/dist/tools/x402-paid-call-tool.d.ts.map +1 -1
- package/dist/tools/x402-paid-call-tool.js +106 -0
- package/dist/tools/x402-paid-call-tool.js.map +1 -1
- package/docs/03_CONFIGURATION_AND_WIZARD.md +2 -3
- package/docs/06_PAYMENTS_X402_AND_PAYSH.md +1 -0
- package/docs/07_ENDPOINTS_AND_CLIENTS.md +1 -1
- package/docs/14_DESKTOP_WIZARD_RELEASE.md +2 -3
- package/docs/README.md +5 -2
- package/docs/magicblock-tools.md +44 -29
- package/package.json +1 -1
- package/server.json +3 -3
- package/skills/sap-mcp/SKILL.md +6 -0
- package/skills/sap-payments-x402/SKILL.md +7 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-permissions.js","sourceRoot":"","sources":["../../src/security/tool-permissions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tool-permissions.js","sourceRoot":"","sources":["../../src/security/tool-permissions.ts"],"names":[],"mappings":"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"}
|
|
@@ -116,6 +116,7 @@ function buildAgentStartPayload(context, goal) {
|
|
|
116
116
|
'For free reads, call hosted tools directly.',
|
|
117
117
|
'For paid/write calls, use sap_payments_call_paid_tool from the local sap_payments bridge when available.',
|
|
118
118
|
'If sap_payments is missing, ask the user to run the wizard repair flow and restart the agent runtime.',
|
|
119
|
+
'If a hosted tool returns transactionBase64, transaction, or an unsigned transaction object, use local sap_payments_finalize_transaction. Never call hosted sap_sign_transaction for user-owned signing, create local .js/.mjs signing scripts, or read keypair JSON.',
|
|
119
120
|
'Preview value-moving actions and ask for confirmation when policy requires it.',
|
|
120
121
|
],
|
|
121
122
|
paymentFlow: {
|
|
@@ -126,6 +127,21 @@ function buildAgentStartPayload(context, goal) {
|
|
|
126
127
|
retryPolicy: 'On BlockhashNotFound, transaction_simulation_failed, node-behind, or expired payment payload, create a fresh challenge and retry through sap_payments_call_paid_tool. Do not reuse an old signed payload.',
|
|
127
128
|
receiptRule: 'Capture PAYMENT-RESPONSE or X-PAYMENT-RESPONSE and bind it to the tool output/audit summary.',
|
|
128
129
|
},
|
|
130
|
+
transactionFlow: {
|
|
131
|
+
unsignedTransactionTools: [
|
|
132
|
+
'jupiter_swapInstructions',
|
|
133
|
+
'jupiter_getOrder',
|
|
134
|
+
'magicblock_swap',
|
|
135
|
+
'magicblock_deposit',
|
|
136
|
+
'magicblock_transfer',
|
|
137
|
+
'magicblock_withdraw',
|
|
138
|
+
'sap_sns_build_manage_record_transaction',
|
|
139
|
+
'sap_sns_build_set_primary_domain_transaction',
|
|
140
|
+
],
|
|
141
|
+
localBridgePath: ['sap_payments_finalize_transaction'],
|
|
142
|
+
localServerPath: ['sap_preview_transaction', 'sap_sign_transaction', 'sap_submit_signed_transaction'],
|
|
143
|
+
rule: 'For hosted builders, finalize with local sap_payments_finalize_transaction. For local SAP MCP stdio builders, use sap_preview_transaction -> sap_sign_transaction -> sap_submit_signed_transaction. Do not write temporary signing scripts, shell commands that read keypair files, or raw transaction signers.',
|
|
144
|
+
},
|
|
129
145
|
connectionCheck: {
|
|
130
146
|
intent: 'Use this when the user asks "are you connected?", "is SAP MCP connected?", "check SAP", or similar status-only questions.',
|
|
131
147
|
minimumChecks: ['sap_agent_start when available', 'sap_profile_current for hosted server state', 'sap_payments_readiness only when the user asks about paid/write readiness'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-start-tool.js","sourceRoot":"","sources":["../../src/tools/agent-start-tool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent-start-tool.js","sourceRoot":"","sources":["../../src/tools/agent-start-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,20 +7,20 @@
|
|
|
7
7
|
* - mb-vrf (2 Solana VRF tools — on-chain via @solana/web3.js)
|
|
8
8
|
*
|
|
9
9
|
* Pricing:
|
|
10
|
-
* READ =
|
|
11
|
-
*
|
|
10
|
+
* READ = hosted read-premium tier — lightweight discovery, quote, and state tools.
|
|
11
|
+
* BUILD = hosted builder/value-action tiers — transaction-building or value-moving tools.
|
|
12
12
|
*
|
|
13
13
|
* Write tools (deposit, transfer, withdraw, swap, initializeMint) return
|
|
14
|
-
* unsigned transactions.
|
|
15
|
-
* and
|
|
16
|
-
*
|
|
14
|
+
* unsigned transactions. Agents must use sap_preview_transaction,
|
|
15
|
+
* sap_sign_transaction, and sap_submit_signed_transaction. Do not create
|
|
16
|
+
* temporary signing scripts or read local keypair files.
|
|
17
17
|
*/
|
|
18
18
|
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
19
19
|
import type { SapMcpContext } from '../core/types.js';
|
|
20
20
|
/**
|
|
21
21
|
* @name registerMagicBlockTools
|
|
22
22
|
* @description Registers 20 MagicBlock tools (ER Router, Private Payments, VRF)
|
|
23
|
-
* with the MCP server.
|
|
23
|
+
* with the MCP server. Hosted pricing is resolved centrally by src/payments/pricing.ts.
|
|
24
24
|
* @param server - MCP server receiving tool definitions and handlers.
|
|
25
25
|
* @param context - Shared runtime context (VRF getRandomnessResult uses the Solana connection).
|
|
26
26
|
*/
|
|
@@ -7,13 +7,13 @@
|
|
|
7
7
|
* - mb-vrf (2 Solana VRF tools — on-chain via @solana/web3.js)
|
|
8
8
|
*
|
|
9
9
|
* Pricing:
|
|
10
|
-
* READ =
|
|
11
|
-
*
|
|
10
|
+
* READ = hosted read-premium tier — lightweight discovery, quote, and state tools.
|
|
11
|
+
* BUILD = hosted builder/value-action tiers — transaction-building or value-moving tools.
|
|
12
12
|
*
|
|
13
13
|
* Write tools (deposit, transfer, withdraw, swap, initializeMint) return
|
|
14
|
-
* unsigned transactions.
|
|
15
|
-
* and
|
|
16
|
-
*
|
|
14
|
+
* unsigned transactions. Agents must use sap_preview_transaction,
|
|
15
|
+
* sap_sign_transaction, and sap_submit_signed_transaction. Do not create
|
|
16
|
+
* temporary signing scripts or read local keypair files.
|
|
17
17
|
*/
|
|
18
18
|
import { PublicKey, TransactionInstruction, Transaction, SystemProgram } from '@solana/web3.js';
|
|
19
19
|
import { createTextResponse } from '../adapters/mcp/tool-response.js';
|
|
@@ -136,7 +136,7 @@ const validatorField = f.string('Optional ER validator pubkey. Defaults to the s
|
|
|
136
136
|
/**
|
|
137
137
|
* @name registerMagicBlockTools
|
|
138
138
|
* @description Registers 20 MagicBlock tools (ER Router, Private Payments, VRF)
|
|
139
|
-
* with the MCP server.
|
|
139
|
+
* with the MCP server. Hosted pricing is resolved centrally by src/payments/pricing.ts.
|
|
140
140
|
* @param server - MCP server receiving tool definitions and handlers.
|
|
141
141
|
* @param context - Shared runtime context (VRF getRandomnessResult uses the Solana connection).
|
|
142
142
|
*/
|
|
@@ -173,7 +173,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
173
173
|
// ═══════════════════════════════════════════════════════════════
|
|
174
174
|
// ER Router (6 read-only tools)
|
|
175
175
|
// ═══════════════════════════════════════════════════════════════
|
|
176
|
-
register('magicblock_getRoutes', 'List available Ephemeral Rollup nodes from the Magic Router (identity, FQDN, fee, block time, country)
|
|
176
|
+
register('magicblock_getRoutes', 'List available Ephemeral Rollup nodes from the Magic Router (identity, FQDN, fee, block time, country)..', schema({ endpoint: endpointField }), async (raw) => {
|
|
177
177
|
try {
|
|
178
178
|
const { endpoint = 'devnet' } = parseInput(raw);
|
|
179
179
|
const routes = await rpcCall(endpoint, 'getRoutes', []);
|
|
@@ -183,7 +183,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
183
183
|
return handleError('magicblock_getRoutes', e);
|
|
184
184
|
}
|
|
185
185
|
});
|
|
186
|
-
register('magicblock_getIdentity', 'Get the identity and FQDN of the current ER Validator node
|
|
186
|
+
register('magicblock_getIdentity', 'Get the identity and FQDN of the current ER Validator node..', schema({ endpoint: endpointField }), async (raw) => {
|
|
187
187
|
try {
|
|
188
188
|
const { endpoint = 'devnet' } = parseInput(raw);
|
|
189
189
|
const identity = await rpcCall(endpoint, 'getIdentity', []);
|
|
@@ -193,7 +193,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
193
193
|
return handleError('magicblock_getIdentity', e);
|
|
194
194
|
}
|
|
195
195
|
});
|
|
196
|
-
register('magicblock_getDelegationStatus', 'Check whether a Solana account is delegated to an Ephemeral Rollup. Returns authority, owner, delegation slot, and lamports
|
|
196
|
+
register('magicblock_getDelegationStatus', 'Check whether a Solana account is delegated to an Ephemeral Rollup. Returns authority, owner, delegation slot, and lamports..', schema({ account: f.pubkey('Account pubkey to check delegation status for'), endpoint: endpointField }, ['account']), async (raw) => {
|
|
197
197
|
try {
|
|
198
198
|
const { account, endpoint = 'devnet' } = parseInput(raw);
|
|
199
199
|
const status = await rpcCall(endpoint, 'getDelegationStatus', [account]);
|
|
@@ -203,7 +203,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
203
203
|
return handleError('magicblock_getDelegationStatus', e);
|
|
204
204
|
}
|
|
205
205
|
});
|
|
206
|
-
register('magicblock_getAccountInfo', 'Fetch account information (data, lamports, owner, executable, space) via the Magic Router
|
|
206
|
+
register('magicblock_getAccountInfo', 'Fetch account information (data, lamports, owner, executable, space) via the Magic Router..', schema({ account: f.pubkey('Account pubkey to fetch info for'), encoding: f.enum('Encoding for account data', ['base64', 'base64+zstd']), endpoint: endpointField }, ['account']), async (raw) => {
|
|
207
207
|
try {
|
|
208
208
|
const { account, encoding = 'base64', endpoint = 'devnet' } = parseInput(raw);
|
|
209
209
|
const info = await rpcCall(endpoint, 'getAccountInfo', [account, { encoding }]);
|
|
@@ -213,7 +213,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
213
213
|
return handleError('magicblock_getAccountInfo', e);
|
|
214
214
|
}
|
|
215
215
|
});
|
|
216
|
-
register('magicblock_getBlockhashForAccounts', 'Get a blockhash and last valid block height for a batch of account addresses (max 100)
|
|
216
|
+
register('magicblock_getBlockhashForAccounts', 'Get a blockhash and last valid block height for a batch of account addresses (max 100)..', schema({ accounts: f.array('Array of account addresses (max 100)', f.pubkey('Account pubkey')), endpoint: endpointField }, ['accounts']), async (raw) => {
|
|
217
217
|
try {
|
|
218
218
|
const { accounts, endpoint = 'devnet' } = parseInput(raw);
|
|
219
219
|
const blockhash = await rpcCall(endpoint, 'getBlockhashForAccounts', [accounts]);
|
|
@@ -223,7 +223,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
223
223
|
return handleError('magicblock_getBlockhashForAccounts', e);
|
|
224
224
|
}
|
|
225
225
|
});
|
|
226
|
-
register('magicblock_getSignatureStatuses', 'Check the confirmation status (processed/confirmed/finalized) of one or more transaction signatures
|
|
226
|
+
register('magicblock_getSignatureStatuses', 'Check the confirmation status (processed/confirmed/finalized) of one or more transaction signatures..', schema({ signatures: f.array('Array of transaction signatures', f.string('Transaction signature (base58)')), endpoint: endpointField }, ['signatures']), async (raw) => {
|
|
227
227
|
try {
|
|
228
228
|
const { signatures, endpoint = 'devnet' } = parseInput(raw);
|
|
229
229
|
const statuses = await rpcCall(endpoint, 'getSignatureStatuses', [signatures]);
|
|
@@ -236,7 +236,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
236
236
|
// ═══════════════════════════════════════════════════════════════
|
|
237
237
|
// Private Payment API — Meta & Auth (3 tools)
|
|
238
238
|
// ═══════════════════════════════════════════════════════════════
|
|
239
|
-
register('magicblock_health', 'Check the health status of the MagicBlock Private Payments API
|
|
239
|
+
register('magicblock_health', 'Check the health status of the MagicBlock Private Payments API..', schema({}), async () => {
|
|
240
240
|
try {
|
|
241
241
|
const health = await apiGet('/health');
|
|
242
242
|
return success(health, 'magicblock_health');
|
|
@@ -245,7 +245,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
245
245
|
return handleError('magicblock_health', e);
|
|
246
246
|
}
|
|
247
247
|
});
|
|
248
|
-
register('magicblock_challenge', 'Generate a challenge string for the wallet to sign (step 1 of the PER auth flow)
|
|
248
|
+
register('magicblock_challenge', 'Generate a challenge string for the wallet to sign (step 1 of the PER auth flow)..', schema({ pubkey: f.pubkey('Wallet pubkey that will sign the challenge'), cluster: clusterField }, ['pubkey']), async (raw) => {
|
|
249
249
|
try {
|
|
250
250
|
const { pubkey, cluster } = parseInput(raw);
|
|
251
251
|
const result = await apiGet('/v1/spl/challenge', {
|
|
@@ -257,7 +257,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
257
257
|
return handleError('magicblock_challenge', e);
|
|
258
258
|
}
|
|
259
259
|
});
|
|
260
|
-
register('magicblock_login', 'Exchange a signed challenge for a bearer token (step 2 of PER auth flow). The token is used for private-balance and private transfers
|
|
260
|
+
register('magicblock_login', 'Exchange a signed challenge for a bearer token (step 2 of PER auth flow). The token is used for private-balance and private transfers..', schema({ pubkey: f.pubkey('Wallet pubkey that signed the challenge'), challenge: f.string('Challenge string from magicblock_challenge'), signature: f.string('Wallet signature over the challenge string'), cluster: clusterField }, ['pubkey', 'challenge', 'signature']), async (raw) => {
|
|
261
261
|
try {
|
|
262
262
|
const { pubkey, challenge, signature, cluster } = parseInput(raw);
|
|
263
263
|
const result = await apiPost('/v1/spl/login', {
|
|
@@ -272,7 +272,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
272
272
|
// ═══════════════════════════════════════════════════════════════
|
|
273
273
|
// Private Payment API — Balance (2 tools)
|
|
274
274
|
// ═══════════════════════════════════════════════════════════════
|
|
275
|
-
register('magicblock_balance', 'Read the base-chain SPL token balance for an address (public, no auth required)
|
|
275
|
+
register('magicblock_balance', 'Read the base-chain SPL token balance for an address (public, no auth required)..', schema({ address: f.pubkey('Owner wallet pubkey'), mint: f.string('SPL mint pubkey'), cluster: clusterField }, ['address', 'mint']), async (raw) => {
|
|
276
276
|
try {
|
|
277
277
|
const { address, mint, cluster } = parseInput(raw);
|
|
278
278
|
const result = await apiGet('/v1/spl/balance', { address, mint, cluster: cluster ?? undefined });
|
|
@@ -282,7 +282,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
282
282
|
return handleError('magicblock_balance', e);
|
|
283
283
|
}
|
|
284
284
|
});
|
|
285
|
-
register('magicblock_privateBalance', 'Read the ephemeral-rollup SPL token balance for an address (requires bearer token from login)
|
|
285
|
+
register('magicblock_privateBalance', 'Read the ephemeral-rollup SPL token balance for an address (requires bearer token from login)..', schema({ address: f.pubkey('Owner wallet pubkey'), mint: f.string('SPL mint pubkey'), cluster: clusterField, authToken: f.string('Bearer token from magicblock_login (required for private reads)') }, ['address', 'mint', 'authToken']), async (raw) => {
|
|
286
286
|
try {
|
|
287
287
|
const { address, mint, cluster, authToken } = parseInput(raw);
|
|
288
288
|
const result = await apiGet('/v1/spl/private-balance', { address, mint, cluster: cluster ?? undefined }, authToken);
|
|
@@ -295,7 +295,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
295
295
|
// ═══════════════════════════════════════════════════════════════
|
|
296
296
|
// Private Payment API — SPL Token Flows (3 write tools)
|
|
297
297
|
// ═══════════════════════════════════════════════════════════════
|
|
298
|
-
register('magicblock_deposit', 'Build an unsigned transaction to deposit SPL tokens from Solana into an Ephemeral Rollup.
|
|
298
|
+
register('magicblock_deposit', 'Build an unsigned transaction to deposit SPL tokens from Solana into an Ephemeral Rollup. Then use sap_preview_transaction, sap_sign_transaction, and sap_submit_signed_transaction. Do not create local signing scripts. Builder fee applies.', schema({ owner: f.pubkey('Wallet pubkey that owns the tokens and will sign'), amount: f.number('Base-unit amount to deposit (integer, minimum 1)'), mint: f.string('SPL mint. Defaults to USDC (mainnet) or devnet USDC'), cluster: clusterField, validator: validatorField, initIfMissing: f.boolean('Initialize the transfer queue if missing (default true)'), initVaultIfMissing: f.boolean('Initialize the vault if missing (default true)'), initAtasIfMissing: f.boolean('Initialize associated token accounts if missing (default true)'), idempotent: f.boolean('Use idempotent variants for preparatory init instructions (default true)') }, ['owner', 'amount']), async (raw) => {
|
|
299
299
|
try {
|
|
300
300
|
const input = parseInput(raw);
|
|
301
301
|
const result = await apiPost('/v1/spl/deposit', {
|
|
@@ -311,7 +311,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
311
311
|
return handleError('magicblock_deposit', e);
|
|
312
312
|
}
|
|
313
313
|
});
|
|
314
|
-
register('magicblock_transfer', 'Build an unsigned SPL token transfer (public or private) through an Ephemeral Rollup. Supports base/ephemeral source and destination, delayed settlement, split transfers, and gasless mode.
|
|
314
|
+
register('magicblock_transfer', 'Build an unsigned SPL token transfer (public or private) through an Ephemeral Rollup. Supports base/ephemeral source and destination, delayed settlement, split transfers, and gasless mode. Then use sap_preview_transaction, sap_sign_transaction, and sap_submit_signed_transaction. Builder fee applies.', schema({
|
|
315
315
|
from: f.pubkey('Sender wallet pubkey'), to: f.pubkey('Recipient wallet pubkey'), mint: f.string('SPL mint pubkey'),
|
|
316
316
|
amount: f.number('Base-unit amount to transfer (integer, minimum 1)'),
|
|
317
317
|
visibility: f.enum("'public' = transparent SPL transfer, 'private' = routed through Private ER with delayed+split settlement", ['public', 'private']),
|
|
@@ -350,7 +350,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
350
350
|
return handleError('magicblock_transfer', e);
|
|
351
351
|
}
|
|
352
352
|
});
|
|
353
|
-
register('magicblock_withdraw', 'Build an unsigned transaction to withdraw SPL tokens from an Ephemeral Rollup back to Solana.
|
|
353
|
+
register('magicblock_withdraw', 'Build an unsigned transaction to withdraw SPL tokens from an Ephemeral Rollup back to Solana. Then use sap_preview_transaction, sap_sign_transaction, and sap_submit_signed_transaction. Builder fee applies.', schema({ owner: f.pubkey('Wallet pubkey that owns the tokens and will sign'), mint: f.string('SPL mint on Solana'), amount: f.number('Base-unit amount to withdraw (integer, minimum 1)'), cluster: clusterField, validator: f.string('Optional ER validator pubkey'), initIfMissing: f.boolean('Initialize transfer queue if missing (default true)'), initAtasIfMissing: f.boolean('Initialize ATAs if missing (default true)'), escrowIndex: f.number('Optional escrow index for the withdrawal'), idempotent: f.boolean('Use idempotent variants for preparatory init instructions (default true)') }, ['owner', 'mint', 'amount']), async (raw) => {
|
|
354
354
|
try {
|
|
355
355
|
const input = parseInput(raw);
|
|
356
356
|
const result = await apiPost('/v1/spl/withdraw', {
|
|
@@ -370,7 +370,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
370
370
|
// ═══════════════════════════════════════════════════════════════
|
|
371
371
|
// Private Payment API — Swap (2 tools)
|
|
372
372
|
// ═══════════════════════════════════════════════════════════════
|
|
373
|
-
register('magicblock_swapQuote', 'Get a swap quote between two SPL mints (proxies Triton Metis swap API). Pass the result into magicblock_swap.
|
|
373
|
+
register('magicblock_swapQuote', 'Get a swap quote between two SPL mints (proxies Triton Metis swap API). Pass the result into magicblock_swap. Lightweight read tier; use this before any value-moving swap.', schema({ inputMint: f.string('Input token mint address'), outputMint: f.string('Output token mint address'), amount: f.string("Raw amount to swap (unsigned integer string, e.g. '1000000')"), slippageBps: f.number('Slippage threshold in basis points (e.g. 50 = 0.5%)'), swapMode: f.enum('Swap mode: fixed input or fixed output amount', ['ExactIn', 'ExactOut']), onlyDirectRoutes: f.boolean('Limit routing to a single hop (default false)'), restrictIntermediateTokens: f.boolean('Restrict intermediate tokens to a more stable set (default false)'), platformFeeBps: f.number('Optional platform fee in basis points'), maxAccounts: f.number('Approximate maximum account budget for the route (default 64)') }, ['inputMint', 'outputMint', 'amount']), async (raw) => {
|
|
374
374
|
try {
|
|
375
375
|
const input = parseInput(raw);
|
|
376
376
|
const result = await apiGet('/v1/swap/quote', {
|
|
@@ -388,7 +388,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
388
388
|
return handleError('magicblock_swapQuote', e);
|
|
389
389
|
}
|
|
390
390
|
});
|
|
391
|
-
register('magicblock_swap', "Build an unsigned swap transaction from a quote. 'public' mode passes through Jupiter, 'private' mode routes output through a scheduled private transfer with delay and split.
|
|
391
|
+
register('magicblock_swap', "Build an unsigned swap transaction from a quote. 'public' mode passes through Jupiter, 'private' mode routes output through a scheduled private transfer with delay and split. Agents must continue with sap_preview_transaction, sap_sign_transaction, and sap_submit_signed_transaction; never write temporary signing scripts or read keypair JSON. Value-action fee applies.", schema({ userPublicKey: f.pubkey('Wallet that will sign the swap transaction'), quoteResponse: f.object('Quote response object from magicblock_swapQuote (pass as-is)', {}), visibility: f.enum("'public' = transparent Jupiter pass-through, 'private' = output routed through scheduled private transfer", ['public', 'private']), destination: f.pubkey("Final private-transfer recipient (required when visibility='private')"), minDelayMs: f.string("Private only. Earliest (ms) the queued transfer may settle"), maxDelayMs: f.string("Private only. Latest (ms) the queued transfer may settle (<= 600000)"), split: f.number('Private only. Number of queue entries to split across (1-14)'), clientRefId: f.string('Private only. Optional u64 client correlation ID'), validator: f.string('Optional validator pubkey for the transfer-queue PDA'), wrapAndUnwrapSol: f.boolean('Auto wrap/unwrap native SOL when needed (default true)'), asLegacyTransaction: f.boolean('Build a legacy transaction (not allowed when visibility=private, default false)') }, ['userPublicKey', 'quoteResponse']), async (raw) => {
|
|
392
392
|
try {
|
|
393
393
|
const input = parseInput(raw);
|
|
394
394
|
const result = await apiPost('/v1/swap/swap', {
|
|
@@ -410,7 +410,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
410
410
|
// ═══════════════════════════════════════════════════════════════
|
|
411
411
|
// Private Payment API — Mint Init (2 tools)
|
|
412
412
|
// ═══════════════════════════════════════════════════════════════
|
|
413
|
-
register('magicblock_initializeMint', 'Build an unsigned transaction that initializes a validator-scoped transfer queue for a mint.
|
|
413
|
+
register('magicblock_initializeMint', 'Build an unsigned transaction that initializes a validator-scoped transfer queue for a mint. Then use sap_preview_transaction, sap_sign_transaction, and sap_submit_signed_transaction. Builder fee applies.', schema({ owner: f.pubkey('Wallet pubkey that will sign the transaction'), mint: f.string('SPL mint to initialize a transfer queue for'), cluster: clusterField, validator: f.string('Optional ER validator pubkey') }, ['owner', 'mint']), async (raw) => {
|
|
414
414
|
try {
|
|
415
415
|
const input = parseInput(raw);
|
|
416
416
|
const result = await apiPost('/v1/spl/initialize-mint', {
|
|
@@ -422,7 +422,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
422
422
|
return handleError('magicblock_initializeMint', e);
|
|
423
423
|
}
|
|
424
424
|
});
|
|
425
|
-
register('magicblock_isMintInitialized', 'Check whether a mint has a validator-scoped transfer queue on the ephemeral RPC
|
|
425
|
+
register('magicblock_isMintInitialized', 'Check whether a mint has a validator-scoped transfer queue on the ephemeral RPC..', schema({ mint: f.string('SPL mint to check'), cluster: clusterField, validator: f.string('Optional ER validator pubkey') }, ['mint']), async (raw) => {
|
|
426
426
|
try {
|
|
427
427
|
const input = parseInput(raw);
|
|
428
428
|
const result = await apiGet('/v1/spl/is-mint-initialized', {
|
|
@@ -437,7 +437,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
437
437
|
// ═══════════════════════════════════════════════════════════════
|
|
438
438
|
// VRF (2 tools — on-chain via @solana/web3.js)
|
|
439
439
|
// ═══════════════════════════════════════════════════════════════
|
|
440
|
-
register('magicblock_requestRandomness', 'Request provably fair on-chain randomness from the MagicBlock VRF oracle (Vrf1RNUjXmQGjmQrQLvJHs9SNkvDJEsRVFPkfSQUwGz). Builds an unsigned transaction that invokes request_randomness on the VRF program.
|
|
440
|
+
register('magicblock_requestRandomness', 'Request provably fair on-chain randomness from the MagicBlock VRF oracle (Vrf1RNUjXmQGjmQrQLvJHs9SNkvDJEsRVFPkfSQUwGz). Builds an unsigned transaction that invokes request_randomness on the VRF program. Use sap_preview_transaction, sap_sign_transaction, and sap_submit_signed_transaction; do not create local signing scripts. The oracle queue defaults to the base-layer queue (Cuj97ggrhhidhbu39TijNVqE74xvKJ69gDervRUXAxGh); set ephemeral=true to use the ER queue for delegated programs. Builder fee applies.', schema({
|
|
441
441
|
payer: f.pubkey('Wallet pubkey that will pay for the request and sign the transaction'),
|
|
442
442
|
callbackProgramId: f.pubkey('Program ID of the callback program (the program that will consume the randomness)'),
|
|
443
443
|
callbackDiscriminator: f.string('Base58 or hex discriminator for the callback instruction in your program'),
|
|
@@ -525,7 +525,7 @@ export function registerMagicBlockTools(server, context) {
|
|
|
525
525
|
return handleError('magicblock_requestRandomness', e);
|
|
526
526
|
}
|
|
527
527
|
});
|
|
528
|
-
register('magicblock_getRandomnessResult', 'Check whether a VRF request has been fulfilled by reading the RandomnessRequest account on-chain. Returns fulfilled status, random bytes (if available), and the request metadata
|
|
528
|
+
register('magicblock_getRandomnessResult', 'Check whether a VRF request has been fulfilled by reading the RandomnessRequest account on-chain. Returns fulfilled status, random bytes (if available), and the request metadata..', schema({ requestKey: f.pubkey('VRF request PDA key from magicblock_requestRandomness'), endpoint: endpointField }, ['requestKey']), async (raw) => {
|
|
529
529
|
try {
|
|
530
530
|
const { requestKey: requestKeyStr } = parseInput(raw);
|
|
531
531
|
const requestKey = new PublicKey(requestKeyStr);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"magicblock-tools.js","sourceRoot":"","sources":["../../src/tools/magicblock-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"magicblock-tools.js","sourceRoot":"","sources":["../../src/tools/magicblock-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhG,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AA4T3C,sEAAsE;AACtE,aAAa;AACb,sEAAsE;AAEtE,MAAM,gBAAgB,GAA6C;IACjE,OAAO,EAAE,+BAA+B;IACxC,MAAM,EAAE,sCAAsC;CAC/C,CAAC;AAEF,MAAM,iBAAiB,GAAG,iCAAiC,CAAC;AAC5D,MAAM,eAAe,GAAG,KAAK,CAAC;AAE9B,qEAAqE;AAErE,MAAM,cAAc,GAAG,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;AACpF,MAAM,oBAAoB,GAAG,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAC;AAC3F,MAAM,aAAa,GAAG,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAC;AACpF,MAAM,uBAAuB,GAAG,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAC;AAE9F,qEAAqE;AAErE,MAAM,eAAe,GAAG,MAAO,CAAC;AAChC,MAAM,gBAAgB,GAAG,MAAO,CAAC;AAEjC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAS;IACjC,sBAAsB,EAAE,wBAAwB,EAAE,gCAAgC;IAClF,2BAA2B,EAAE,oCAAoC,EAAE,iCAAiC;IACpG,mBAAmB,EAAE,sBAAsB,EAAE,kBAAkB;IAC/D,oBAAoB,EAAE,2BAA2B,EAAE,sBAAsB;IACzE,8BAA8B,EAAE,gCAAgC;CACjE,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,IAAI,GAAG,CAAS;IAClC,oBAAoB,EAAE,qBAAqB,EAAE,qBAAqB;IAClE,iBAAiB,EAAE,2BAA2B,EAAE,8BAA8B;CAC/E,CAAC,CAAC;AAEH,SAAS,eAAe,CAAC,QAAgB;IACvC,IAAI,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,eAAe,CAAC;IACrD,IAAI,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,gBAAgB,CAAC;IACvD,MAAM,IAAI,KAAK,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAC;AAC9D,CAAC;AAWD,KAAK,UAAU,OAAO,CACpB,QAAwB,EACxB,MAAc,EACd,MAA0B;IAE1B,MAAM,GAAG,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAC3B,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;KAC1E,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAC9B,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IACvF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAuB,CAAC;IACpD,IAAI,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5F,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,MAAM,EAAE,CAAC,CAAC;IACpF,OAAO,IAAI,CAAC,MAAM,CAAC;AACrB,CAAC;AAID,KAAK,UAAU,MAAM,CAAI,IAAY,EAAE,KAAmB,EAAE,SAAkB;IAC5E,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IAC9C,IAAI,KAAK,EAAE,CAAC;QACV,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACjD,IAAI,KAAK,IAAI,IAAI;gBAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IACD,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,IAAI,SAAS;QAAE,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,SAAS,EAAE,CAAC;IAChE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAC9B,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IACpF,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAM,CAAC;AAC/B,CAAC;AAED,KAAK,UAAU,OAAO,CAAI,IAAY,EAAE,IAAY,EAAE,SAAkB;IACtE,MAAM,GAAG,GAAG,iBAAiB,GAAG,IAAI,CAAC;IACrC,MAAM,OAAO,GAA2B,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;IAC/E,IAAI,SAAS;QAAE,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,SAAS,EAAE,CAAC;IAChE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtF,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAC9B,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IACpF,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAM,CAAC;AAC/B,CAAC;AAED,2FAA2F;AAC3F,SAAS,YAAY,CAAmB,GAAM;IAC5C,MAAM,MAAM,GAAe,EAAE,CAAC;IAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAA4B,EAAE,CAAC;QAC1E,IAAI,KAAK,IAAI,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACzC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,sEAAsE;AACtE,uBAAuB;AACvB,sEAAsE;AAEtE,SAAS,MAAM,CAAC,UAA8C,EAAE,QAA4B;IAC1F,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,UAAU;QACV,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,GAAG;IACR,MAAM,EAAE,CAAC,CAAS,EAAsB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;IAC/E,MAAM,EAAE,CAAC,CAAS,EAAsB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;IAC/E,MAAM,EAAE,CAAC,CAAS,EAAsB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;IAC/E,OAAO,EAAE,CAAC,CAAS,EAAsB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;IACjF,IAAI,EAAE,CAAC,CAAS,EAAE,MAAyB,EAAsB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;IACtH,KAAK,EAAE,CAAC,CAAS,EAAE,KAAyB,EAAsB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;IAC/G,MAAM,EAAE,CAAC,CAAS,EAAE,KAAyC,EAAsB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;CAC9I,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,mDAAmD,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;AACzG,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,iDAAiD,CAAC,CAAC;AACjF,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,gFAAgF,CAAC,CAAC;AAElH,sEAAsE;AACtE,gBAAgB;AAChB,sEAAsE;AAEtE;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAc,EAAE,OAAsB;IAC5E,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAC7C,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,SAAS,QAAQ,CACf,IAAY,EACZ,WAAmB,EACnB,WAAuB,EACvB,OAA4C;QAE5C,YAAY,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,CAAC;QAClG,UAAU,EAAE,CAAC;IACf,CAAC;IAED,SAAS,WAAW,CAAC,QAAgB,EAAE,KAAc;QACnD,MAAM,CAAC,KAAK,CAAC,2BAA2B,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/D,MAAM,aAAa,GAAsB;YACvC,KAAK,EAAE,mBAAmB,QAAQ,SAAS;YAC3C,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAClE,CAAC;QACF,OAAO,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,SAAS,OAAO,CAAI,IAAO,EAAE,QAAgB;QAC3C,MAAM,KAAK,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC;QACrC,MAAM,QAAQ,GAA2B;YACvC,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACnC,cAAc,EAAE,KAAK,CAAC,QAAQ,EAAE;YAChC,IAAI;SACL,CAAC;QACF,OAAO,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,SAAS,UAAU,CAAmB,GAAY;QAChD,OAAO,GAAQ,CAAC;IAClB,CAAC;IAED,kEAAkE;IAClE,iCAAiC;IACjC,kEAAkE;IAElE,QAAQ,CAAgB,sBAAsB,EAC5C,0GAA0G,EAC1G,MAAM,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,EACnC,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,QAAQ,GAAG,QAAQ,EAAE,GAAG,UAAU,CAAgB,GAAG,CAAC,CAAC;YAC/D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAqB,QAAQ,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;YAC5E,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAChE,CAAC,CACF,CAAC;IAEF,QAAQ,CAAgB,wBAAwB,EAC9C,8DAA8D,EAC9D,MAAM,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,EACnC,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,QAAQ,GAAG,QAAQ,EAAE,GAAG,UAAU,CAAgB,GAAG,CAAC,CAAC;YAC/D,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAa,QAAQ,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;YACxE,OAAO,OAAO,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAClE,CAAC,CACF,CAAC;IAEF,QAAQ,CAAe,gCAAgC,EACrD,+HAA+H,EAC/H,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,+CAA+C,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EACpH,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,QAAQ,EAAE,GAAG,UAAU,CAAe,GAAG,CAAC,CAAC;YACvE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAmB,QAAQ,EAAE,qBAAqB,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3F,OAAO,OAAO,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,gCAAgC,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAC1E,CAAC,CACF,CAAC;IAEF,QAAQ,CAAmB,2BAA2B,EACpD,6FAA6F,EAC7F,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,kCAAkC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EACjL,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,QAAQ,EAAE,QAAQ,GAAG,QAAQ,EAAE,GAAG,UAAU,CAAmB,GAAG,CAAC,CAAC;YAChG,MAAM,IAAI,GAAG,MAAM,OAAO,CAAsB,QAAQ,EAAE,gBAAgB,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;YACrG,OAAO,OAAO,CAAC,IAAI,EAAE,2BAA2B,CAAC,CAAC;QACpD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IACrE,CAAC,CACF,CAAC;IAEF,QAAQ,CAAgB,oCAAoC,EAC1D,0FAA0F,EAC1F,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,sCAAsC,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EACxI,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,QAAQ,EAAE,GAAG,UAAU,CAAgB,GAAG,CAAC,CAAC;YACzE,MAAM,SAAS,GAAG,MAAM,OAAO,CAAoB,QAAQ,EAAE,yBAAyB,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YACpG,OAAO,OAAO,CAAC,SAAS,EAAE,oCAAoC,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAC9E,CAAC,CACF,CAAC;IAEF,QAAQ,CAAkB,iCAAiC,EACzD,uGAAuG,EACvG,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,iCAAiC,EAAE,CAAC,CAAC,MAAM,CAAC,gCAAgC,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,EACvJ,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAG,QAAQ,EAAE,GAAG,UAAU,CAAkB,GAAG,CAAC,CAAC;YAC7E,MAAM,QAAQ,GAAG,MAAM,OAAO,CAA4B,QAAQ,EAAE,sBAAsB,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;YAC1G,OAAO,OAAO,CAAC,QAAQ,EAAE,iCAAiC,CAAC,CAAC;QAC9D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,iCAAiC,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAC3E,CAAC,CACF,CAAC;IAEF,kEAAkE;IAClE,+CAA+C;IAC/C,kEAAkE;IAElE,QAAQ,CAAwB,mBAAmB,EACjD,kEAAkE,EAClE,MAAM,CAAC,EAAE,CAAC,EACV,KAAK,IAAI,EAAE;QACT,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAiB,SAAS,CAAC,CAAC;YACvD,OAAO,OAAO,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAC7D,CAAC,CACF,CAAC;IAEF,QAAQ,CAAiB,sBAAsB,EAC7C,oFAAoF,EACpF,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,4CAA4C,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAC7G,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAiB,GAAG,CAAC,CAAC;YAC5D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAoB,mBAAmB,EAAE;gBAClE,MAAM,EAAE,OAAO,EAAE,OAAO,IAAI,SAAS;aACtC,CAAC,CAAC;YACH,OAAO,OAAO,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAChE,CAAC,CACF,CAAC;IAEF,QAAQ,CAAa,kBAAkB,EACrC,yIAAyI,EACzI,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,yCAAyC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,4CAA4C,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,4CAA4C,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,EAC1Q,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,UAAU,CAAa,GAAG,CAAC,CAAC;YAC9E,MAAM,MAAM,GAAG,MAAM,OAAO,CAAgB,eAAe,EAAE;gBAC3D,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,IAAI,SAAS;aAC5D,CAAC,CAAC;YACH,OAAO,OAAO,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAC5D,CAAC,CACF,CAAC;IAEF,kEAAkE;IAClE,2CAA2C;IAC3C,kEAAkE;IAElE,QAAQ,CAAe,oBAAoB,EACzC,mFAAmF,EACnF,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,EACnI,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,UAAU,CAAe,GAAG,CAAC,CAAC;YACjE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAkB,iBAAiB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,CAAC,CAAC;YAClH,OAAO,OAAO,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAC9D,CAAC,CACF,CAAC;IAEF,QAAQ,CAAsB,2BAA2B,EACvD,iGAAiG,EACjG,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,iEAAiE,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,EACxO,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,UAAU,CAAsB,GAAG,CAAC,CAAC;YACnF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAkB,yBAAyB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,EAAE,SAAS,CAAC,CAAC;YACrI,OAAO,OAAO,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;QACtD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IACrE,CAAC,CACF,CAAC;IAEF,kEAAkE;IAClE,yDAAyD;IACzD,kEAAkE;IAElE,QAAQ,CAAe,oBAAoB,EACzC,gPAAgP,EAChP,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,kDAAkD,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,kDAAkD,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,qDAAqD,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,yDAAyD,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,OAAO,CAAC,gDAAgD,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,OAAO,CAAC,gEAAgE,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,0EAA0E,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,EAC5oB,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,UAAU,CAAe,GAAG,CAAC,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,OAAO,CAA8B,iBAAiB,EAAE;gBAC3E,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG,YAAY,CAAC;oBACxD,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS;oBACpE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;oBAChF,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU;iBACzE,CAAC;aACH,CAAC,CAAC;YACH,OAAO,OAAO,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAC9D,CAAC,CACF,CAAC;IAEF,QAAQ,CAAgB,qBAAqB,EAC3C,8SAA8S,EAC9S,MAAM,CAAC;QACL,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,sBAAsB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAClH,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,mDAAmD,CAAC;QACrE,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,0GAA0G,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACrJ,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,oCAAoC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAChF,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,0CAA0C,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACpF,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,8BAA8B,CAAC;QAC1E,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,0DAA0D,CAAC;QAC/E,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,qDAAqD,CAAC;QAC/E,iBAAiB,EAAE,CAAC,CAAC,OAAO,CAAC,oDAAoD,CAAC;QAClF,kBAAkB,EAAE,CAAC,CAAC,OAAO,CAAC,6CAA6C,CAAC;QAC5E,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,2CAA2C,CAAC;QAC3D,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,yEAAyE,CAAC;QAC/F,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,sEAAsE,CAAC;QAC5F,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,sEAAsE,CAAC;QAC7F,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yEAAyE,CAAC;QAC1F,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,iEAAiE,CAAC;QACrF,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,4EAA4E,CAAC;KAChG,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,EAC9E,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,UAAU,CAAgB,GAAG,CAAC,CAAC;YAC7C,MAAM,MAAM,GAAG,MAAM,OAAO,CAA8B,kBAAkB,EAAE;gBAC5E,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM;gBACtE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS;gBACxF,GAAG,YAAY,CAAC;oBACd,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS;oBAClD,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;oBAC9E,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI;oBAC9D,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC1D,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClD,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM;iBAC7C,CAAC;aACH,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;YACpB,OAAO,OAAO,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;QAChD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAC/D,CAAC,CACF,CAAC;IAEF,QAAQ,CAAgB,qBAAqB,EAC3C,+MAA+M,EAC/M,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,kDAAkD,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,mDAAmD,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,8BAA8B,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,qDAAqD,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,OAAO,CAAC,2CAA2C,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,0CAA0C,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,0EAA0E,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,EACvmB,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,UAAU,CAAgB,GAAG,CAAC,CAAC;YAC7C,MAAM,MAAM,GAAG,MAAM,OAAO,CAA8B,kBAAkB,EAAE;gBAC5E,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM;gBAC1D,GAAG,YAAY,CAAC;oBACd,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS;oBAClD,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;oBAC9E,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU;iBAC7D,CAAC;aACH,CAAC,CAAC;YACH,OAAO,OAAO,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;QAChD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAC/D,CAAC,CACF,CAAC;IAEF,kEAAkE;IAClE,wCAAwC;IACxC,kEAAkE;IAElE,QAAQ,CAAiB,sBAAsB,EAC7C,6KAA6K,EAC7K,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,0BAA0B,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,2BAA2B,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,8DAA8D,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,qDAAqD,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,+CAA+C,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,+CAA+C,CAAC,EAAE,0BAA0B,EAAE,CAAC,CAAC,OAAO,CAAC,mEAAmE,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,uCAAuC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,+DAA+D,CAAC,EAAE,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC,EACtuB,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,UAAU,CAAiB,GAAG,CAAC,CAAC;YAC9C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAoB,gBAAgB,EAAE;gBAC/D,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM;gBAC9E,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC9E,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gBAC7D,0BAA0B,EAAE,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gBACjF,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;gBACvF,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;aAC/E,CAAC,CAAC;YACH,OAAO,OAAO,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAChE,CAAC,CACF,CAAC;IAEF,QAAQ,CAAY,iBAAiB,EACnC,kXAAkX,EAClX,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,4CAA4C,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,8DAA8D,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,2GAA2G,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,uEAAuE,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,4DAA4D,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,sEAAsE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,8DAA8D,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,kDAAkD,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,sDAAsD,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,wDAAwD,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,iFAAiF,CAAC,EAAE,EAAE,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC,EAC/iC,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,UAAU,CAAY,GAAG,CAAC,CAAC;YACzC,MAAM,MAAM,GAAG,MAAM,OAAO,CAA0B,eAAe,EAAE;gBACrE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa;gBACtE,GAAG,YAAY,CAAC;oBACd,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC5D,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC1D,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW;oBAClD,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;oBACpE,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;iBAC/C,CAAC;aACH,CAAC,CAAC;YACH,OAAO,OAAO,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAC3D,CAAC,CACF,CAAC;IAEF,kEAAkE;IAClE,6CAA6C;IAC7C,kEAAkE;IAElE,QAAQ,CAAsB,2BAA2B,EACvD,8MAA8M,EAC9M,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,8CAA8C,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,6CAA6C,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,8BAA8B,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EACzO,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,UAAU,CAAsB,GAAG,CAAC,CAAC;YACnD,MAAM,MAAM,GAAG,MAAM,OAAO,CAA8B,yBAAyB,EAAE;gBACnF,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;aAC9G,CAAC,CAAC;YACH,OAAO,OAAO,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;QACtD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IACrE,CAAC,CACF,CAAC;IAEF,QAAQ,CAAyB,8BAA8B,EAC7D,mFAAmF,EACnF,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,8BAA8B,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EACrI,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,UAAU,CAAyB,GAAG,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAyB,6BAA6B,EAAE;gBACjF,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,SAAS;aAC/F,CAAC,CAAC;YACH,OAAO,OAAO,CAAC,MAAM,EAAE,8BAA8B,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,8BAA8B,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IACxE,CAAC,CACF,CAAC;IAEF,kEAAkE;IAClE,gDAAgD;IAChD,kEAAkE;IAElE,QAAQ,CAAkB,8BAA8B,EACtD,6fAA6f,EAC7f,MAAM,CAAC;QACL,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,sEAAsE,CAAC;QACvF,iBAAiB,EAAE,CAAC,CAAC,MAAM,CAAC,mFAAmF,CAAC;QAChH,qBAAqB,EAAE,CAAC,CAAC,MAAM,CAAC,0EAA0E,CAAC;QAC3G,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,4GAA4G,CAAC;QAClI,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,8CAA8C,EAAE,CAAC,CAAC,MAAM,CAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,iCAAiC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,iCAAiC,CAAC,EAAE,CAAC,CAAC;QAC1Q,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,uFAAuF,CAAC;QAC7G,QAAQ,EAAE,aAAa;KACxB,EAAE,CAAC,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,YAAY,EAAE,kBAAkB,CAAC,CAAC,EAC7F,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,UAAU,CAAkB,GAAG,CAAC,CAAC;YAC/C,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACzC,MAAM,iBAAiB,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACjE,MAAM,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,aAAa,CAAC;YAE9E,MAAM,UAAU,GAAG,IAAI,UAAU,CAC/B,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAClF,CAAC;YAEF,oEAAoE;YACpE,IAAI,qBAA+B,CAAC;YACpC,IAAI,KAAK,CAAC,qBAAqB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjD,qBAAqB,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;YAC/F,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;gBAClC,qBAAqB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;YACvF,CAAC;YAED,+BAA+B;YAC/B,MAAM,YAAY,GAAG,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACxD,MAAM,EAAE,IAAI,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC;gBACjC,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,KAAK;gBAC/B,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,KAAK;aACpC,CAAC,CAAC,CAAC;YAEJ,yBAAyB;YACzB,MAAM,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,sBAAsB,CACnD,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,EAClF,cAAc,CACf,CAAC;YAEF,gDAAgD;YAChD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,MAAM,GAAG,CAAC,CAAC;YAEf,0FAA0F;YAC1F,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC,CAAC;YAC9G,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBAAE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YACpE,WAAW,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAAC,MAAM,IAAI,EAAE,CAAC;YACxD,iBAAiB,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAAC,MAAM,IAAI,EAAE,CAAC;YAC9D,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAAC,MAAM,IAAI,CAAC,CAAC;YACtE,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAAC,MAAM,IAAI,qBAAqB,CAAC,MAAM,CAAC;YAC9F,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAAC,MAAM,IAAI,EAAE,CAAC;YACzD,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAAC,MAAM,IAAI,CAAC,CAAC;YAC7D,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;gBAChC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAAC,MAAM,IAAI,EAAE,CAAC;gBACxD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;gBACjD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YACrD,CAAC;YAED,MAAM,EAAE,GAAG,IAAI,sBAAsB,CAAC;gBACpC,SAAS,EAAE,cAAc;gBACzB,IAAI,EAAE;oBACJ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;oBACnD,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;oBAC1D,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;oBACzD,EAAE,MAAM,EAAE,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;oBACvE,EAAE,MAAM,EAAE,oBAAoB,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;iBACrE;gBACD,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;aAC/B,CAAC,CAAC;YAEH,MAAM,EAAE,GAAG,IAAI,WAAW,EAAE,CAAC;YAC7B,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACX,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAEnG,MAAM,MAAM,GAAqB;gBAC/B,UAAU,EAAE,UAAU,CAAC,QAAQ,EAAE;gBACjC,YAAY,EAAE,cAAc,CAAC,QAAQ,EAAE;gBACvC,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;gBACnC,iBAAiB,EAAE,YAAY;gBAC/B,MAAM,EAAE,MAAM;gBACd,iBAAiB,EAAE,iBAAiB,CAAC,QAAQ,EAAE;gBAC/C,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACvD,IAAI,EAAE,iLAAiL;aACxL,CAAC;YACF,OAAO,OAAO,CAAC,MAAM,EAAE,8BAA8B,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,8BAA8B,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IACxE,CAAC,CACF,CAAC;IAEF,QAAQ,CAAiB,gCAAgC,EACvD,qLAAqL,EACrL,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,uDAAuD,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,EAClI,KAAK,EAAE,GAAG,EAAE,EAAE;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,UAAU,CAAiB,GAAG,CAAC,CAAC;YACtE,MAAM,UAAU,GAAG,IAAI,SAAS,CAAC,aAAa,CAAC,CAAC;YAEhD,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YAErF,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,MAAM,GAAwB;oBAClC,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,CAAC,QAAQ,EAAE;oBACnD,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE;oBACrD,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC;oBACtE,OAAO,EAAE,oHAAoH;iBAC9H,CAAC;gBACF,OAAO,OAAO,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC;YAC3D,CAAC;YAED,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;YAC9B,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;gBACrB,MAAM,MAAM,GAAwB;oBAClC,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,CAAC,QAAQ,EAAE;oBACnD,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE;oBACrD,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC,QAAQ;oBACnE,UAAU,EAAE,WAAW,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM;oBAC7F,OAAO,EAAE,iEAAiE;iBAC3E,CAAC;gBACF,OAAO,OAAO,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC;YAC3D,CAAC;YAED,0EAA0E;YAC1E,MAAM,gBAAgB,GAAG,CAAC,CAAC;YAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,EAAE,CAAC,CAAC;YAC1E,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,GAAG,EAAE,EAAE,gBAAgB,GAAG,EAAE,CAAC,CAAC;YAC/E,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YACtD,MAAM,SAAS,GAAG,CAAC,MAAM,CAAC;YAE1B,MAAM,MAAM,GAAwB;gBAClC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,QAAQ,EAAE;gBAC5C,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI;gBACrD,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;gBACzE,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACnD,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC,QAAQ;gBACnE,UAAU,EAAE,WAAW,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM;gBAC7F,OAAO,EAAE,SAAS;oBAChB,CAAC,CAAC,yFAAyF;oBAC3F,CAAC,CAAC,uEAAuE;aAC5E,CAAC;YACF,OAAO,OAAO,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,WAAW,CAAC,gCAAgC,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;IAC1E,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;AACrE,CAAC"}
|
|
@@ -2,8 +2,85 @@
|
|
|
2
2
|
* @module transaction-tools
|
|
3
3
|
* @description MCP tools for decoding, previewing, signing, and submitting Solana transactions.
|
|
4
4
|
*/
|
|
5
|
+
import { PublicKey, Transaction, VersionedTransaction } from '@solana/web3.js';
|
|
5
6
|
import type { SapMcpContext } from '../core/types.js';
|
|
6
7
|
import type { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
8
|
+
export type TransactionEncoding = 'base64' | 'base58';
|
|
9
|
+
type SolanaTransaction = Transaction | VersionedTransaction;
|
|
10
|
+
interface DecodedTransaction {
|
|
11
|
+
kind: 'legacy' | 'versioned';
|
|
12
|
+
signatureCount: number;
|
|
13
|
+
readonlySignedAccounts: number;
|
|
14
|
+
readonlyUnsignedAccounts: number;
|
|
15
|
+
requiredSignatures: number;
|
|
16
|
+
instructionCount: number;
|
|
17
|
+
accountKeys: string[];
|
|
18
|
+
recentBlockhash: string;
|
|
19
|
+
feePayer?: string;
|
|
20
|
+
nativeTransferSol: number;
|
|
21
|
+
policyAllowed?: boolean;
|
|
22
|
+
policyReason?: string;
|
|
23
|
+
}
|
|
24
|
+
interface NativeTransferEstimate {
|
|
25
|
+
lamports: bigint;
|
|
26
|
+
sol: number;
|
|
27
|
+
}
|
|
28
|
+
export interface FinalizeTransactionInput {
|
|
29
|
+
transaction?: string;
|
|
30
|
+
transactionBase64?: string;
|
|
31
|
+
encoding?: TransactionEncoding;
|
|
32
|
+
submit?: boolean;
|
|
33
|
+
skipPreflight?: boolean;
|
|
34
|
+
maxRetries?: number;
|
|
35
|
+
confirm?: boolean;
|
|
36
|
+
intentId?: string;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* @name decodeInputBytes
|
|
40
|
+
* @description Decodes base64/base58 transaction text into raw bytes.
|
|
41
|
+
* @param value - Encoded transaction string.
|
|
42
|
+
* @param encoding - Encoding used by the incoming transaction.
|
|
43
|
+
* @returns Raw serialized transaction bytes.
|
|
44
|
+
*/
|
|
45
|
+
export declare function decodeInputBytes(value: string, encoding?: TransactionEncoding): Buffer;
|
|
46
|
+
/**
|
|
47
|
+
* @name deserializeTransaction
|
|
48
|
+
* @description Deserializes a Solana transaction, preferring v0/versioned format before legacy fallback.
|
|
49
|
+
* @param value - Encoded transaction string.
|
|
50
|
+
* @param encoding - Encoding used by the incoming transaction.
|
|
51
|
+
* @returns Deserialized Solana transaction.
|
|
52
|
+
*/
|
|
53
|
+
export declare function deserializeTransaction(value: string, encoding?: TransactionEncoding): SolanaTransaction;
|
|
54
|
+
/**
|
|
55
|
+
* @name assertTransactionPolicy
|
|
56
|
+
* @description Enforces configured transaction value policy before signing or submitting a transaction.
|
|
57
|
+
* @param context - Shared MCP runtime context.
|
|
58
|
+
* @param transaction - Deserialized transaction to check.
|
|
59
|
+
* @param signer - Optional signer filter for signing checks.
|
|
60
|
+
*/
|
|
61
|
+
export declare function assertTransactionPolicy(context: SapMcpContext, transaction: SolanaTransaction, signer?: PublicKey): Promise<NativeTransferEstimate>;
|
|
62
|
+
/**
|
|
63
|
+
* @name serializeTransaction
|
|
64
|
+
* @description Serializes a legacy or versioned transaction as base64.
|
|
65
|
+
* @param transaction - Transaction to serialize.
|
|
66
|
+
* @returns Base64 encoded transaction bytes.
|
|
67
|
+
*/
|
|
68
|
+
export declare function serializeTransaction(transaction: SolanaTransaction): string;
|
|
69
|
+
/**
|
|
70
|
+
* @name describeTransaction
|
|
71
|
+
* @description Builds a stable JSON preview from a Solana transaction.
|
|
72
|
+
* @param transaction - Deserialized transaction.
|
|
73
|
+
* @returns Transaction metadata safe to expose to MCP clients.
|
|
74
|
+
*/
|
|
75
|
+
export declare function describeTransaction(transaction: SolanaTransaction, context?: SapMcpContext): DecodedTransaction;
|
|
76
|
+
/**
|
|
77
|
+
* @name finalizeTransactionWithLocalSigner
|
|
78
|
+
* @description Preview, sign, and optionally submit a transaction with the local SAP MCP signer.
|
|
79
|
+
* @param context - Shared MCP runtime context containing signer, policy, and RPC connection.
|
|
80
|
+
* @param input - Transaction finalization request.
|
|
81
|
+
* @returns Agent-readable finalization result without secret material.
|
|
82
|
+
*/
|
|
83
|
+
export declare function finalizeTransactionWithLocalSigner(context: SapMcpContext, input: FinalizeTransactionInput): Promise<Record<string, unknown>>;
|
|
7
84
|
/**
|
|
8
85
|
* @name registerTransactionTools
|
|
9
86
|
* @description Registers real transaction decode, preview, signing, and submission tools.
|
|
@@ -11,4 +88,5 @@ import type { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
|
11
88
|
* @param context - Runtime context containing Solana connection and optional signer.
|
|
12
89
|
*/
|
|
13
90
|
export declare function registerTransactionTools(server: Server, context: SapMcpContext): void;
|
|
91
|
+
export {};
|
|
14
92
|
//# sourceMappingURL=transaction-tools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction-tools.d.ts","sourceRoot":"","sources":["../../src/tools/transaction-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"transaction-tools.d.ts","sourceRoot":"","sources":["../../src/tools/transaction-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAoB,SAAS,EAAiB,WAAW,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAIhH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAExE,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,QAAQ,CAAC;AACtD,KAAK,iBAAiB,GAAG,WAAW,GAAG,oBAAoB,CAAC;AAU5D,UAAU,kBAAkB;IAC1B,IAAI,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC7B,cAAc,EAAE,MAAM,CAAC;IACvB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,wBAAwB,EAAE,MAAM,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,sBAAsB;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,wBAAwB;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAKD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,mBAA8B,GAAG,MAAM,CAUhG;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,CAQvG;AAsED;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,aAAa,EACtB,WAAW,EAAE,iBAAiB,EAC9B,MAAM,CAAC,EAAE,SAAS,GACjB,OAAO,CAAC,sBAAsB,CAAC,CAgBjC;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,iBAAiB,GAAG,MAAM,CAS3E;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,kBAAkB,CA8C/G;AAED;;;;;;GAMG;AACH,wBAAsB,kCAAkC,CACtD,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,wBAAwB,GAC9B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAiElC;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAiIrF"}
|