@paylobster/mcp-server 1.3.1 → 1.5.0
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/BUILD_SUMMARY.md +294 -0
- package/CHANGELOG.md +77 -0
- package/COMPLETION_REPORT.md +284 -0
- package/INTEGRATION.md +286 -0
- package/QUICKSTART.md +226 -0
- package/README.md +232 -127
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -3
- package/dist/index.js.map +1 -1
- package/dist/lib/config.d.ts +7 -0
- package/dist/lib/config.d.ts.map +1 -0
- package/dist/lib/config.js +16 -0
- package/dist/lib/config.js.map +1 -0
- package/dist/lib/contracts.d.ts +15 -0
- package/dist/lib/contracts.d.ts.map +1 -0
- package/dist/lib/contracts.js +148 -0
- package/dist/lib/contracts.js.map +1 -0
- package/dist/lib/types.d.ts +39 -0
- package/dist/lib/types.d.ts.map +1 -0
- package/dist/{types/index.js → lib/types.js} +1 -1
- package/dist/lib/types.js.map +1 -0
- package/dist/resources/agent.d.ts +3 -0
- package/dist/resources/agent.d.ts.map +1 -0
- package/dist/resources/agent.js +36 -0
- package/dist/resources/agent.js.map +1 -0
- package/dist/resources/escrow.d.ts +3 -0
- package/dist/resources/escrow.d.ts.map +1 -0
- package/dist/resources/escrow.js +33 -0
- package/dist/resources/escrow.js.map +1 -0
- package/dist/resources/services.d.ts +2 -0
- package/dist/resources/services.d.ts.map +1 -0
- package/dist/resources/services.js +55 -0
- package/dist/resources/services.js.map +1 -0
- package/dist/server.d.ts +6 -3
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +114 -941
- package/dist/server.js.map +1 -1
- package/dist/tools/agent.d.ts +17 -0
- package/dist/tools/agent.d.ts.map +1 -0
- package/dist/tools/agent.js +51 -0
- package/dist/tools/agent.js.map +1 -0
- package/dist/tools/balance.d.ts +16 -5
- package/dist/tools/balance.d.ts.map +1 -1
- package/dist/tools/balance.js +44 -26
- package/dist/tools/balance.js.map +1 -1
- package/dist/tools/escrow.d.ts +31 -90
- package/dist/tools/escrow.d.ts.map +1 -1
- package/dist/tools/escrow.js +98 -215
- package/dist/tools/escrow.js.map +1 -1
- package/dist/tools/reputation.d.ts +15 -49
- package/dist/tools/reputation.d.ts.map +1 -1
- package/dist/tools/reputation.js +45 -107
- package/dist/tools/reputation.js.map +1 -1
- package/dist/tools/search.d.ts +30 -54
- package/dist/tools/search.d.ts.map +1 -1
- package/dist/tools/search.js +122 -85
- package/dist/tools/search.js.map +1 -1
- package/examples/test-server.ts +36 -0
- package/examples/test-tools.ts +64 -0
- package/package.json +20 -11
- package/src/__tests__/server.test.ts +24 -0
- package/src/index.ts +24 -0
- package/src/lib/config.ts +22 -0
- package/src/lib/contracts.ts +164 -0
- package/src/lib/types.ts +44 -0
- package/src/resources/agent.ts +40 -0
- package/src/resources/escrow.ts +35 -0
- package/src/resources/services.ts +53 -0
- package/src/server.ts +190 -0
- package/src/tools/agent.ts +56 -0
- package/src/tools/balance.ts +61 -0
- package/src/tools/escrow.ts +142 -0
- package/src/tools/reputation.ts +69 -0
- package/src/tools/search.ts +148 -0
- package/tsconfig.json +20 -0
- package/dist/cli.d.ts +0 -3
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js +0 -86
- package/dist/cli.js.map +0 -1
- package/dist/resources/index.d.ts +0 -9
- package/dist/resources/index.d.ts.map +0 -1
- package/dist/resources/index.js +0 -159
- package/dist/resources/index.js.map +0 -1
- package/dist/tools/bridge.d.ts +0 -142
- package/dist/tools/bridge.d.ts.map +0 -1
- package/dist/tools/bridge.js +0 -121
- package/dist/tools/bridge.js.map +0 -1
- package/dist/tools/cascade.d.ts +0 -59
- package/dist/tools/cascade.d.ts.map +0 -1
- package/dist/tools/cascade.js +0 -119
- package/dist/tools/cascade.js.map +0 -1
- package/dist/tools/compliance.d.ts +0 -36
- package/dist/tools/compliance.d.ts.map +0 -1
- package/dist/tools/compliance.js +0 -57
- package/dist/tools/compliance.js.map +0 -1
- package/dist/tools/credit.d.ts +0 -46
- package/dist/tools/credit.d.ts.map +0 -1
- package/dist/tools/credit.js +0 -102
- package/dist/tools/credit.js.map +0 -1
- package/dist/tools/disputes.d.ts +0 -71
- package/dist/tools/disputes.d.ts.map +0 -1
- package/dist/tools/disputes.js +0 -121
- package/dist/tools/disputes.js.map +0 -1
- package/dist/tools/intent.d.ts +0 -78
- package/dist/tools/intent.d.ts.map +0 -1
- package/dist/tools/intent.js +0 -192
- package/dist/tools/intent.js.map +0 -1
- package/dist/tools/portfolio.d.ts +0 -44
- package/dist/tools/portfolio.d.ts.map +0 -1
- package/dist/tools/portfolio.js +0 -166
- package/dist/tools/portfolio.js.map +0 -1
- package/dist/tools/revenue.d.ts +0 -42
- package/dist/tools/revenue.d.ts.map +0 -1
- package/dist/tools/revenue.js +0 -67
- package/dist/tools/revenue.js.map +0 -1
- package/dist/tools/streaming.d.ts +0 -60
- package/dist/tools/streaming.d.ts.map +0 -1
- package/dist/tools/streaming.js +0 -163
- package/dist/tools/streaming.js.map +0 -1
- package/dist/tools/swap.d.ts +0 -93
- package/dist/tools/swap.d.ts.map +0 -1
- package/dist/tools/swap.js +0 -150
- package/dist/tools/swap.js.map +0 -1
- package/dist/tools/treasury.d.ts +0 -267
- package/dist/tools/treasury.d.ts.map +0 -1
- package/dist/tools/treasury.js +0 -722
- package/dist/tools/treasury.js.map +0 -1
- package/dist/types/index.d.ts +0 -83
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js.map +0 -1
- package/dist/utils/contracts.d.ts +0 -552
- package/dist/utils/contracts.d.ts.map +0 -1
- package/dist/utils/contracts.js +0 -401
- package/dist/utils/contracts.js.map +0 -1
package/dist/tools/portfolio.js
DELETED
|
@@ -1,166 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getTokenPriceSchema = exports.getPortfolioSchema = void 0;
|
|
4
|
-
exports.getPortfolio = getPortfolio;
|
|
5
|
-
exports.getTokenPrice = getTokenPrice;
|
|
6
|
-
const zod_1 = require("zod");
|
|
7
|
-
// Schema for get_portfolio
|
|
8
|
-
exports.getPortfolioSchema = zod_1.z.object({
|
|
9
|
-
address: zod_1.z.string().describe('Ethereum address to get portfolio for'),
|
|
10
|
-
});
|
|
11
|
-
// Schema for get_token_price
|
|
12
|
-
exports.getTokenPriceSchema = zod_1.z.object({
|
|
13
|
-
tokenAddress: zod_1.z.string().describe('Token contract address on Base'),
|
|
14
|
-
});
|
|
15
|
-
// Base chain native token (ETH) and common tokens
|
|
16
|
-
const BASE_TOKENS = {
|
|
17
|
-
'0x0000000000000000000000000000000000000000': { symbol: 'ETH', decimals: 18, address: '0x0000000000000000000000000000000000000000' },
|
|
18
|
-
'0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913': { symbol: 'USDC', decimals: 6, address: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913' },
|
|
19
|
-
};
|
|
20
|
-
async function getPortfolio(params, client) {
|
|
21
|
-
const publicClient = client.getPublicClient();
|
|
22
|
-
const address = params.address;
|
|
23
|
-
try {
|
|
24
|
-
const tokens = [];
|
|
25
|
-
let totalValueUSD = 0;
|
|
26
|
-
// ERC20 ABI for balance and metadata
|
|
27
|
-
const ERC20_ABI = [
|
|
28
|
-
{
|
|
29
|
-
inputs: [{ name: 'account', type: 'address' }],
|
|
30
|
-
name: 'balanceOf',
|
|
31
|
-
outputs: [{ name: '', type: 'uint256' }],
|
|
32
|
-
stateMutability: 'view',
|
|
33
|
-
type: 'function',
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
inputs: [],
|
|
37
|
-
name: 'symbol',
|
|
38
|
-
outputs: [{ name: '', type: 'string' }],
|
|
39
|
-
stateMutability: 'view',
|
|
40
|
-
type: 'function',
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
inputs: [],
|
|
44
|
-
name: 'name',
|
|
45
|
-
outputs: [{ name: '', type: 'string' }],
|
|
46
|
-
stateMutability: 'view',
|
|
47
|
-
type: 'function',
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
inputs: [],
|
|
51
|
-
name: 'decimals',
|
|
52
|
-
outputs: [{ name: '', type: 'uint8' }],
|
|
53
|
-
stateMutability: 'view',
|
|
54
|
-
type: 'function',
|
|
55
|
-
},
|
|
56
|
-
];
|
|
57
|
-
// Get native ETH balance
|
|
58
|
-
const ethBalance = await publicClient.getBalance({ address });
|
|
59
|
-
const ethFormatted = (Number(ethBalance) / 1e18).toFixed(6);
|
|
60
|
-
tokens.push({
|
|
61
|
-
token: '0x0000000000000000000000000000000000000000',
|
|
62
|
-
symbol: 'ETH',
|
|
63
|
-
name: 'Ethereum',
|
|
64
|
-
decimals: 18,
|
|
65
|
-
balance: ethFormatted,
|
|
66
|
-
balanceRaw: ethBalance.toString(),
|
|
67
|
-
});
|
|
68
|
-
// Get common token balances
|
|
69
|
-
for (const [tokenAddress, tokenInfo] of Object.entries(BASE_TOKENS)) {
|
|
70
|
-
if (tokenAddress === '0x0000000000000000000000000000000000000000')
|
|
71
|
-
continue;
|
|
72
|
-
try {
|
|
73
|
-
const balance = await publicClient.readContract({
|
|
74
|
-
address: tokenAddress,
|
|
75
|
-
abi: ERC20_ABI,
|
|
76
|
-
functionName: 'balanceOf',
|
|
77
|
-
args: [address],
|
|
78
|
-
});
|
|
79
|
-
if (balance > 0n) {
|
|
80
|
-
const balanceFormatted = (Number(balance) / Math.pow(10, tokenInfo.decimals)).toFixed(tokenInfo.decimals);
|
|
81
|
-
tokens.push({
|
|
82
|
-
token: tokenAddress,
|
|
83
|
-
symbol: tokenInfo.symbol,
|
|
84
|
-
name: tokenInfo.symbol,
|
|
85
|
-
decimals: tokenInfo.decimals,
|
|
86
|
-
balance: balanceFormatted,
|
|
87
|
-
balanceRaw: balance.toString(),
|
|
88
|
-
});
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
catch (err) {
|
|
92
|
-
// Skip tokens that fail to load
|
|
93
|
-
console.error(`Failed to load balance for ${tokenInfo.symbol}:`, err);
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
return {
|
|
97
|
-
address: params.address,
|
|
98
|
-
chainId: 8453, // Base
|
|
99
|
-
totalValueUSD: totalValueUSD.toFixed(2),
|
|
100
|
-
tokens,
|
|
101
|
-
lastUpdated: Date.now(),
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
|
-
catch (error) {
|
|
105
|
-
throw new Error(`Failed to fetch portfolio: ${error.message}`);
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
async function getTokenPrice(params, client) {
|
|
109
|
-
const apiKey = process.env.ZEROX_API_KEY;
|
|
110
|
-
if (!apiKey) {
|
|
111
|
-
throw new Error('0x API key not configured (ZEROX_API_KEY)');
|
|
112
|
-
}
|
|
113
|
-
try {
|
|
114
|
-
// Get price via 0x API by quoting 1 token -> USDC
|
|
115
|
-
const queryParams = new URLSearchParams({
|
|
116
|
-
chainId: '8453',
|
|
117
|
-
sellToken: params.tokenAddress,
|
|
118
|
-
buyToken: 'USDC',
|
|
119
|
-
sellAmount: '1000000000000000000', // 1 token (18 decimals)
|
|
120
|
-
});
|
|
121
|
-
const response = await fetch(`https://api.0x.org/swap/permit2/price?${queryParams}`, {
|
|
122
|
-
headers: {
|
|
123
|
-
'0x-api-key': apiKey,
|
|
124
|
-
'0x-version': 'v2',
|
|
125
|
-
},
|
|
126
|
-
});
|
|
127
|
-
if (!response.ok) {
|
|
128
|
-
const errorText = await response.text();
|
|
129
|
-
throw new Error(`0x API error: ${response.status} - ${errorText}`);
|
|
130
|
-
}
|
|
131
|
-
const data = await response.json();
|
|
132
|
-
// Get token symbol
|
|
133
|
-
let symbol = 'UNKNOWN';
|
|
134
|
-
try {
|
|
135
|
-
const publicClient = client.getPublicClient();
|
|
136
|
-
const tokenSymbol = await publicClient.readContract({
|
|
137
|
-
address: params.tokenAddress,
|
|
138
|
-
abi: [
|
|
139
|
-
{
|
|
140
|
-
inputs: [],
|
|
141
|
-
name: 'symbol',
|
|
142
|
-
outputs: [{ name: '', type: 'string' }],
|
|
143
|
-
stateMutability: 'view',
|
|
144
|
-
type: 'function',
|
|
145
|
-
},
|
|
146
|
-
],
|
|
147
|
-
functionName: 'symbol',
|
|
148
|
-
});
|
|
149
|
-
symbol = tokenSymbol;
|
|
150
|
-
}
|
|
151
|
-
catch {
|
|
152
|
-
// Fallback to address if symbol read fails
|
|
153
|
-
}
|
|
154
|
-
return {
|
|
155
|
-
tokenAddress: params.tokenAddress,
|
|
156
|
-
symbol,
|
|
157
|
-
priceUSD: data.price || data.buyAmount,
|
|
158
|
-
source: '0x',
|
|
159
|
-
lastUpdated: Date.now(),
|
|
160
|
-
};
|
|
161
|
-
}
|
|
162
|
-
catch (error) {
|
|
163
|
-
throw new Error(`Failed to get token price: ${error.message}`);
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
//# sourceMappingURL=portfolio.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"portfolio.js","sourceRoot":"","sources":["../../src/tools/portfolio.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/revenue.d.ts
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { Address } from 'viem';
|
|
3
|
-
import { ContractClient } from '../utils/contracts';
|
|
4
|
-
export declare const createRevenueShareSchema: z.ZodObject<{
|
|
5
|
-
participants: z.ZodArray<z.ZodObject<{
|
|
6
|
-
address: z.ZodString;
|
|
7
|
-
share: z.ZodNumber;
|
|
8
|
-
}, "strip", z.ZodTypeAny, {
|
|
9
|
-
address: string;
|
|
10
|
-
share: number;
|
|
11
|
-
}, {
|
|
12
|
-
address: string;
|
|
13
|
-
share: number;
|
|
14
|
-
}>, "many">;
|
|
15
|
-
sourceEscrow: z.ZodOptional<z.ZodString>;
|
|
16
|
-
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
17
|
-
}, "strip", z.ZodTypeAny, {
|
|
18
|
-
participants: {
|
|
19
|
-
address: string;
|
|
20
|
-
share: number;
|
|
21
|
-
}[];
|
|
22
|
-
metadata?: Record<string, any> | undefined;
|
|
23
|
-
sourceEscrow?: string | undefined;
|
|
24
|
-
}, {
|
|
25
|
-
participants: {
|
|
26
|
-
address: string;
|
|
27
|
-
share: number;
|
|
28
|
-
}[];
|
|
29
|
-
metadata?: Record<string, any> | undefined;
|
|
30
|
-
sourceEscrow?: string | undefined;
|
|
31
|
-
}>;
|
|
32
|
-
export declare function createRevenueShare(params: z.infer<typeof createRevenueShareSchema>, client: ContractClient): Promise<{
|
|
33
|
-
agreementId: string;
|
|
34
|
-
transactionHash: string;
|
|
35
|
-
participants: Array<{
|
|
36
|
-
address: Address;
|
|
37
|
-
share: number;
|
|
38
|
-
}>;
|
|
39
|
-
totalShares: number;
|
|
40
|
-
status: string;
|
|
41
|
-
}>;
|
|
42
|
-
//# sourceMappingURL=revenue.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"revenue.d.ts","sourceRoot":"","sources":["../../src/tools/revenue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAyB,MAAM,oBAAoB,CAAC;AAE3E,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOnC,CAAC;AAEH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,EAChD,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC;IACT,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,KAAK,CAAC;QAClB,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC,CAAC;IACH,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC,CA4DD"}
|
package/dist/tools/revenue.js
DELETED
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createRevenueShareSchema = void 0;
|
|
4
|
-
exports.createRevenueShare = createRevenueShare;
|
|
5
|
-
const zod_1 = require("zod");
|
|
6
|
-
const contracts_1 = require("../utils/contracts");
|
|
7
|
-
exports.createRevenueShareSchema = zod_1.z.object({
|
|
8
|
-
participants: zod_1.z.array(zod_1.z.object({
|
|
9
|
-
address: zod_1.z.string().describe('Participant address'),
|
|
10
|
-
share: zod_1.z.number().describe('Share percentage (0-100)'),
|
|
11
|
-
})).describe('Revenue share participants'),
|
|
12
|
-
sourceEscrow: zod_1.z.string().optional().describe('Link to source escrow'),
|
|
13
|
-
metadata: zod_1.z.record(zod_1.z.any()).optional(),
|
|
14
|
-
});
|
|
15
|
-
async function createRevenueShare(params, client) {
|
|
16
|
-
const account = client.getAccount();
|
|
17
|
-
const walletClient = client.getWalletClient();
|
|
18
|
-
const publicClient = client.getPublicClient();
|
|
19
|
-
const contracts = client.getContracts();
|
|
20
|
-
try {
|
|
21
|
-
// Validate shares sum to 100
|
|
22
|
-
const totalShares = params.participants.reduce((sum, p) => sum + p.share, 0);
|
|
23
|
-
if (Math.abs(totalShares - 100) > 0.01) {
|
|
24
|
-
throw new Error(`Share percentages must sum to 100, got ${totalShares}`);
|
|
25
|
-
}
|
|
26
|
-
// Parse participants
|
|
27
|
-
const addresses = [];
|
|
28
|
-
const shares = [];
|
|
29
|
-
for (const participant of params.participants) {
|
|
30
|
-
addresses.push(participant.address);
|
|
31
|
-
// Convert percentage to basis points (0.01%)
|
|
32
|
-
shares.push(BigInt(Math.round(participant.share * 100)));
|
|
33
|
-
}
|
|
34
|
-
const metadata = JSON.stringify(params.metadata || {});
|
|
35
|
-
const sourceEscrowId = params.sourceEscrow ? BigInt(params.sourceEscrow) : BigInt(0);
|
|
36
|
-
const hash = await walletClient.writeContract({
|
|
37
|
-
address: contracts.revenue,
|
|
38
|
-
abi: contracts_1.REVENUE_ABI,
|
|
39
|
-
functionName: 'createRevenueShare',
|
|
40
|
-
args: [addresses, shares, contracts.usdc, sourceEscrowId, metadata],
|
|
41
|
-
account,
|
|
42
|
-
});
|
|
43
|
-
const receipt = await publicClient.waitForTransactionReceipt({ hash });
|
|
44
|
-
// Parse agreement ID from event logs
|
|
45
|
-
let agreementId = '0';
|
|
46
|
-
if (receipt.logs && receipt.logs.length > 0) {
|
|
47
|
-
const agreementCreatedLog = receipt.logs.find((log) => log.topics && log.topics.length > 1);
|
|
48
|
-
if (agreementCreatedLog && agreementCreatedLog.topics) {
|
|
49
|
-
agreementId = BigInt(agreementCreatedLog.topics[1]).toString();
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
return {
|
|
53
|
-
agreementId,
|
|
54
|
-
transactionHash: hash,
|
|
55
|
-
participants: params.participants.map(p => ({
|
|
56
|
-
address: p.address,
|
|
57
|
-
share: p.share,
|
|
58
|
-
})),
|
|
59
|
-
totalShares: 100,
|
|
60
|
-
status: 'active',
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
catch (error) {
|
|
64
|
-
throw new Error(`Failed to create revenue share: ${error.message}`);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
//# sourceMappingURL=revenue.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"revenue.js","sourceRoot":"","sources":["../../src/tools/revenue.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { Address } from 'viem';
|
|
3
|
-
import { ContractClient } from '../utils/contracts';
|
|
4
|
-
export declare const createStreamingPaymentSchema: z.ZodObject<{
|
|
5
|
-
to: z.ZodString;
|
|
6
|
-
amountPerSecond: z.ZodString;
|
|
7
|
-
duration: z.ZodString;
|
|
8
|
-
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
9
|
-
}, "strip", z.ZodTypeAny, {
|
|
10
|
-
to: string;
|
|
11
|
-
amountPerSecond: string;
|
|
12
|
-
duration: string;
|
|
13
|
-
metadata?: Record<string, any> | undefined;
|
|
14
|
-
}, {
|
|
15
|
-
to: string;
|
|
16
|
-
amountPerSecond: string;
|
|
17
|
-
duration: string;
|
|
18
|
-
metadata?: Record<string, any> | undefined;
|
|
19
|
-
}>;
|
|
20
|
-
export declare const cancelStreamSchema: z.ZodObject<{
|
|
21
|
-
streamId: z.ZodString;
|
|
22
|
-
}, "strip", z.ZodTypeAny, {
|
|
23
|
-
streamId: string;
|
|
24
|
-
}, {
|
|
25
|
-
streamId: string;
|
|
26
|
-
}>;
|
|
27
|
-
export declare const getStreamSchema: z.ZodObject<{
|
|
28
|
-
streamId: z.ZodString;
|
|
29
|
-
}, "strip", z.ZodTypeAny, {
|
|
30
|
-
streamId: string;
|
|
31
|
-
}, {
|
|
32
|
-
streamId: string;
|
|
33
|
-
}>;
|
|
34
|
-
export declare function createStreamingPayment(params: z.infer<typeof createStreamingPaymentSchema>, client: ContractClient): Promise<{
|
|
35
|
-
streamId: string;
|
|
36
|
-
transactionHash: string;
|
|
37
|
-
recipient: string;
|
|
38
|
-
amountPerSecond: string;
|
|
39
|
-
totalAmount: string;
|
|
40
|
-
startTime: number;
|
|
41
|
-
endTime: number;
|
|
42
|
-
}>;
|
|
43
|
-
export declare function cancelStream(params: z.infer<typeof cancelStreamSchema>, client: ContractClient): Promise<{
|
|
44
|
-
transactionHash: string;
|
|
45
|
-
streamId: string;
|
|
46
|
-
amountStreamed: string;
|
|
47
|
-
amountReturned: string;
|
|
48
|
-
}>;
|
|
49
|
-
export declare function getStream(params: z.infer<typeof getStreamSchema>, client: ContractClient): Promise<{
|
|
50
|
-
streamId: string;
|
|
51
|
-
sender: Address;
|
|
52
|
-
recipient: Address;
|
|
53
|
-
amountPerSecond: string;
|
|
54
|
-
startTime: number;
|
|
55
|
-
endTime: number;
|
|
56
|
-
claimed: string;
|
|
57
|
-
active: boolean;
|
|
58
|
-
available: string;
|
|
59
|
-
}>;
|
|
60
|
-
//# sourceMappingURL=streaming.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"streaming.d.ts","sourceRoot":"","sources":["../../src/tools/streaming.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,cAAc,EAA2B,MAAM,oBAAoB,CAAC;AAE7E,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;EAKvC,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;EAE7B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;EAE1B,CAAC;AAEH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,EACpD,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC;IACT,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC,CA+DD;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,EAC1C,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC;IACT,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC,CAiDD;AAED,wBAAsB,SAAS,CAC7B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,EACvC,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC;IACT,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC,CAkCD"}
|
package/dist/tools/streaming.js
DELETED
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getStreamSchema = exports.cancelStreamSchema = exports.createStreamingPaymentSchema = void 0;
|
|
4
|
-
exports.createStreamingPayment = createStreamingPayment;
|
|
5
|
-
exports.cancelStream = cancelStream;
|
|
6
|
-
exports.getStream = getStream;
|
|
7
|
-
const zod_1 = require("zod");
|
|
8
|
-
const contracts_1 = require("../utils/contracts");
|
|
9
|
-
exports.createStreamingPaymentSchema = zod_1.z.object({
|
|
10
|
-
to: zod_1.z.string().describe('Recipient address'),
|
|
11
|
-
amountPerSecond: zod_1.z.string().describe('Amount per second in USDC'),
|
|
12
|
-
duration: zod_1.z.string().describe('ISO 8601 duration (e.g., P1D for 1 day)'),
|
|
13
|
-
metadata: zod_1.z.record(zod_1.z.any()).optional(),
|
|
14
|
-
});
|
|
15
|
-
exports.cancelStreamSchema = zod_1.z.object({
|
|
16
|
-
streamId: zod_1.z.string().describe('Stream ID'),
|
|
17
|
-
});
|
|
18
|
-
exports.getStreamSchema = zod_1.z.object({
|
|
19
|
-
streamId: zod_1.z.string().describe('Stream ID'),
|
|
20
|
-
});
|
|
21
|
-
async function createStreamingPayment(params, client) {
|
|
22
|
-
const account = client.getAccount();
|
|
23
|
-
const walletClient = client.getWalletClient();
|
|
24
|
-
const publicClient = client.getPublicClient();
|
|
25
|
-
const contracts = client.getContracts();
|
|
26
|
-
// Parse amount per second
|
|
27
|
-
const amountPerSecondBigInt = client.parseUSDC(params.amountPerSecond);
|
|
28
|
-
// Parse duration
|
|
29
|
-
const durationMs = parseDuration(params.duration);
|
|
30
|
-
const durationSeconds = Math.floor(durationMs / 1000);
|
|
31
|
-
const totalAmount = amountPerSecondBigInt * BigInt(durationSeconds);
|
|
32
|
-
try {
|
|
33
|
-
// Step 1: Approve USDC spending
|
|
34
|
-
const approveHash = await walletClient.writeContract({
|
|
35
|
-
address: contracts.usdc,
|
|
36
|
-
abi: contracts_1.USDC_ABI,
|
|
37
|
-
functionName: 'approve',
|
|
38
|
-
args: [contracts.streaming, totalAmount],
|
|
39
|
-
account,
|
|
40
|
-
});
|
|
41
|
-
await publicClient.waitForTransactionReceipt({ hash: approveHash });
|
|
42
|
-
// Step 2: Create stream
|
|
43
|
-
const hash = await walletClient.writeContract({
|
|
44
|
-
address: contracts.streaming,
|
|
45
|
-
abi: contracts_1.STREAMING_ABI,
|
|
46
|
-
functionName: 'createStream',
|
|
47
|
-
args: [params.to, amountPerSecondBigInt, BigInt(durationSeconds), contracts.usdc],
|
|
48
|
-
account,
|
|
49
|
-
});
|
|
50
|
-
const receipt = await publicClient.waitForTransactionReceipt({ hash });
|
|
51
|
-
// Parse stream ID from event logs
|
|
52
|
-
let streamId = '0';
|
|
53
|
-
if (receipt.logs && receipt.logs.length > 0) {
|
|
54
|
-
const streamCreatedLog = receipt.logs.find((log) => log.topics && log.topics.length > 1);
|
|
55
|
-
if (streamCreatedLog && streamCreatedLog.topics) {
|
|
56
|
-
streamId = BigInt(streamCreatedLog.topics[1]).toString();
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
const startTime = Date.now();
|
|
60
|
-
const endTime = startTime + durationMs;
|
|
61
|
-
return {
|
|
62
|
-
streamId,
|
|
63
|
-
transactionHash: hash,
|
|
64
|
-
recipient: params.to,
|
|
65
|
-
amountPerSecond: params.amountPerSecond,
|
|
66
|
-
totalAmount: client.formatUSDC(totalAmount),
|
|
67
|
-
startTime,
|
|
68
|
-
endTime,
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
catch (error) {
|
|
72
|
-
throw new Error(`Failed to create streaming payment: ${error.message}`);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
async function cancelStream(params, client) {
|
|
76
|
-
const account = client.getAccount();
|
|
77
|
-
const walletClient = client.getWalletClient();
|
|
78
|
-
const publicClient = client.getPublicClient();
|
|
79
|
-
const contracts = client.getContracts();
|
|
80
|
-
try {
|
|
81
|
-
const streamId = BigInt(params.streamId);
|
|
82
|
-
// Get stream details before canceling
|
|
83
|
-
const [sender, recipient, amountPerSecond, startTime, endTime, claimed, active] = await publicClient.readContract({
|
|
84
|
-
address: contracts.streaming,
|
|
85
|
-
abi: contracts_1.STREAMING_ABI,
|
|
86
|
-
functionName: 'getStream',
|
|
87
|
-
args: [streamId],
|
|
88
|
-
});
|
|
89
|
-
if (!active) {
|
|
90
|
-
throw new Error(`Stream ${params.streamId} is not active`);
|
|
91
|
-
}
|
|
92
|
-
// Cancel stream
|
|
93
|
-
const hash = await walletClient.writeContract({
|
|
94
|
-
address: contracts.streaming,
|
|
95
|
-
abi: contracts_1.STREAMING_ABI,
|
|
96
|
-
functionName: 'cancelStream',
|
|
97
|
-
args: [streamId],
|
|
98
|
-
account,
|
|
99
|
-
});
|
|
100
|
-
await publicClient.waitForTransactionReceipt({ hash });
|
|
101
|
-
// Calculate amounts
|
|
102
|
-
const now = Math.floor(Date.now() / 1000);
|
|
103
|
-
const elapsed = BigInt(now) - startTime;
|
|
104
|
-
const streamed = amountPerSecond * elapsed;
|
|
105
|
-
const totalAmount = amountPerSecond * (endTime - startTime);
|
|
106
|
-
const returned = totalAmount - streamed;
|
|
107
|
-
return {
|
|
108
|
-
transactionHash: hash,
|
|
109
|
-
streamId: params.streamId,
|
|
110
|
-
amountStreamed: client.formatUSDC(streamed),
|
|
111
|
-
amountReturned: client.formatUSDC(returned),
|
|
112
|
-
};
|
|
113
|
-
}
|
|
114
|
-
catch (error) {
|
|
115
|
-
throw new Error(`Failed to cancel stream: ${error.message}`);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
async function getStream(params, client) {
|
|
119
|
-
const publicClient = client.getPublicClient();
|
|
120
|
-
const contracts = client.getContracts();
|
|
121
|
-
try {
|
|
122
|
-
const streamId = BigInt(params.streamId);
|
|
123
|
-
const [sender, recipient, amountPerSecond, startTime, endTime, claimed, active] = await publicClient.readContract({
|
|
124
|
-
address: contracts.streaming,
|
|
125
|
-
abi: contracts_1.STREAMING_ABI,
|
|
126
|
-
functionName: 'getStream',
|
|
127
|
-
args: [streamId],
|
|
128
|
-
});
|
|
129
|
-
// Calculate available amount
|
|
130
|
-
const now = Math.floor(Date.now() / 1000);
|
|
131
|
-
const elapsed = BigInt(now) - startTime;
|
|
132
|
-
const totalStreamed = amountPerSecond * elapsed;
|
|
133
|
-
const available = totalStreamed - claimed;
|
|
134
|
-
return {
|
|
135
|
-
streamId: params.streamId,
|
|
136
|
-
sender: sender,
|
|
137
|
-
recipient: recipient,
|
|
138
|
-
amountPerSecond: client.formatUSDC(amountPerSecond),
|
|
139
|
-
startTime: Number(startTime) * 1000,
|
|
140
|
-
endTime: Number(endTime) * 1000,
|
|
141
|
-
claimed: client.formatUSDC(claimed),
|
|
142
|
-
active: active,
|
|
143
|
-
available: client.formatUSDC(available),
|
|
144
|
-
};
|
|
145
|
-
}
|
|
146
|
-
catch (error) {
|
|
147
|
-
throw new Error(`Failed to fetch stream: ${error.message}`);
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
function parseDuration(duration) {
|
|
151
|
-
const days = duration.match(/P(\d+)D/);
|
|
152
|
-
const hours = duration.match(/PT?(\d+)H/);
|
|
153
|
-
const minutes = duration.match(/PT?(\d+)M/);
|
|
154
|
-
let ms = 0;
|
|
155
|
-
if (days)
|
|
156
|
-
ms += parseInt(days[1]) * 24 * 60 * 60 * 1000;
|
|
157
|
-
if (hours)
|
|
158
|
-
ms += parseInt(hours[1]) * 60 * 60 * 1000;
|
|
159
|
-
if (minutes)
|
|
160
|
-
ms += parseInt(minutes[1]) * 60 * 1000;
|
|
161
|
-
return ms || 24 * 60 * 60 * 1000; // Default 1 day
|
|
162
|
-
}
|
|
163
|
-
//# sourceMappingURL=streaming.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"streaming.js","sourceRoot":"","sources":["../../src/tools/streaming.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/swap.d.ts
DELETED
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { ContractClient } from '../utils/contracts';
|
|
3
|
-
export declare const swapQuoteSchema: z.ZodObject<{
|
|
4
|
-
sellToken: z.ZodString;
|
|
5
|
-
buyToken: z.ZodString;
|
|
6
|
-
sellAmount: z.ZodOptional<z.ZodString>;
|
|
7
|
-
buyAmount: z.ZodOptional<z.ZodString>;
|
|
8
|
-
slippagePercentage: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
9
|
-
takerAddress: z.ZodOptional<z.ZodString>;
|
|
10
|
-
}, "strip", z.ZodTypeAny, {
|
|
11
|
-
sellToken: string;
|
|
12
|
-
buyToken: string;
|
|
13
|
-
slippagePercentage: number;
|
|
14
|
-
sellAmount?: string | undefined;
|
|
15
|
-
buyAmount?: string | undefined;
|
|
16
|
-
takerAddress?: string | undefined;
|
|
17
|
-
}, {
|
|
18
|
-
sellToken: string;
|
|
19
|
-
buyToken: string;
|
|
20
|
-
sellAmount?: string | undefined;
|
|
21
|
-
buyAmount?: string | undefined;
|
|
22
|
-
slippagePercentage?: number | undefined;
|
|
23
|
-
takerAddress?: string | undefined;
|
|
24
|
-
}>;
|
|
25
|
-
export declare const swapExecuteSchema: z.ZodObject<{
|
|
26
|
-
sellToken: z.ZodString;
|
|
27
|
-
buyToken: z.ZodString;
|
|
28
|
-
sellAmount: z.ZodOptional<z.ZodString>;
|
|
29
|
-
buyAmount: z.ZodOptional<z.ZodString>;
|
|
30
|
-
slippagePercentage: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
31
|
-
}, "strip", z.ZodTypeAny, {
|
|
32
|
-
sellToken: string;
|
|
33
|
-
buyToken: string;
|
|
34
|
-
slippagePercentage: number;
|
|
35
|
-
sellAmount?: string | undefined;
|
|
36
|
-
buyAmount?: string | undefined;
|
|
37
|
-
}, {
|
|
38
|
-
sellToken: string;
|
|
39
|
-
buyToken: string;
|
|
40
|
-
sellAmount?: string | undefined;
|
|
41
|
-
buyAmount?: string | undefined;
|
|
42
|
-
slippagePercentage?: number | undefined;
|
|
43
|
-
}>;
|
|
44
|
-
export declare const swapTokensSchema: z.ZodObject<{
|
|
45
|
-
query: z.ZodOptional<z.ZodString>;
|
|
46
|
-
}, "strip", z.ZodTypeAny, {
|
|
47
|
-
query?: string | undefined;
|
|
48
|
-
}, {
|
|
49
|
-
query?: string | undefined;
|
|
50
|
-
}>;
|
|
51
|
-
export declare const swapPriceSchema: z.ZodObject<{
|
|
52
|
-
token: z.ZodString;
|
|
53
|
-
}, "strip", z.ZodTypeAny, {
|
|
54
|
-
token: string;
|
|
55
|
-
}, {
|
|
56
|
-
token: string;
|
|
57
|
-
}>;
|
|
58
|
-
interface SwapQuoteResponse {
|
|
59
|
-
chainId: number;
|
|
60
|
-
price: string;
|
|
61
|
-
estimatedPriceImpact: string;
|
|
62
|
-
sellTokenAddress: string;
|
|
63
|
-
buyTokenAddress: string;
|
|
64
|
-
sellAmount: string;
|
|
65
|
-
buyAmount: string;
|
|
66
|
-
allowanceTarget: string;
|
|
67
|
-
to: string;
|
|
68
|
-
data: string;
|
|
69
|
-
value: string;
|
|
70
|
-
gas: string;
|
|
71
|
-
gasPrice: string;
|
|
72
|
-
}
|
|
73
|
-
interface TokenInfo {
|
|
74
|
-
address: string;
|
|
75
|
-
symbol: string;
|
|
76
|
-
name: string;
|
|
77
|
-
decimals: number;
|
|
78
|
-
}
|
|
79
|
-
export declare function swapQuote(params: z.infer<typeof swapQuoteSchema>, client: ContractClient): Promise<SwapQuoteResponse>;
|
|
80
|
-
export declare function swapExecute(params: z.infer<typeof swapExecuteSchema>, client: ContractClient): Promise<{
|
|
81
|
-
transaction: any;
|
|
82
|
-
quote: SwapQuoteResponse;
|
|
83
|
-
}>;
|
|
84
|
-
export declare function swapTokens(params: z.infer<typeof swapTokensSchema>, client: ContractClient): Promise<{
|
|
85
|
-
tokens: TokenInfo[];
|
|
86
|
-
}>;
|
|
87
|
-
export declare function swapPrice(params: z.infer<typeof swapPriceSchema>, client: ContractClient): Promise<{
|
|
88
|
-
token: string;
|
|
89
|
-
priceInUSDC: string;
|
|
90
|
-
source: string;
|
|
91
|
-
}>;
|
|
92
|
-
export {};
|
|
93
|
-
//# sourceMappingURL=swap.d.ts.map
|
package/dist/tools/swap.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"swap.d.ts","sourceRoot":"","sources":["../../src/tools/swap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGpD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;EAO1B,CAAC;AAGH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;EAM5B,CAAC;AAGH,eAAO,MAAM,gBAAgB;;;;;;EAE3B,CAAC;AAGH,eAAO,MAAM,eAAe;;;;;;EAE1B,CAAC;AAEH,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB,EAAE,MAAM,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,SAAS;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,SAAS,CAC7B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,EACvC,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,iBAAiB,CAAC,CAuC5B;AAED,wBAAsB,WAAW,CAC/B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,EACzC,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC;IAAE,WAAW,EAAE,GAAG,CAAC;IAAC,KAAK,EAAE,iBAAiB,CAAA;CAAE,CAAC,CAsBzD;AAED,wBAAsB,UAAU,CAC9B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,EACxC,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC;IAAE,MAAM,EAAE,SAAS,EAAE,CAAA;CAAE,CAAC,CAuClC;AAED,wBAAsB,SAAS,CAC7B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,EACvC,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAwCjE"}
|