@pbpcanada/projectdam-sdk 1.0.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/README.md +304 -0
- package/dist/accounts.d.ts +71 -0
- package/dist/accounts.d.ts.map +1 -0
- package/dist/accounts.js +286 -0
- package/dist/accounts.js.map +1 -0
- package/dist/constants.d.ts +35 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +35 -0
- package/dist/constants.js.map +1 -0
- package/dist/idl.d.ts +587 -0
- package/dist/idl.d.ts.map +1 -0
- package/dist/idl.js +922 -0
- package/dist/idl.js.map +1 -0
- package/dist/index.d.ts +75 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +164 -0
- package/dist/index.js.map +1 -0
- package/dist/instructions.d.ts +35 -0
- package/dist/instructions.d.ts.map +1 -0
- package/dist/instructions.js +299 -0
- package/dist/instructions.js.map +1 -0
- package/dist/pda.d.ts +81 -0
- package/dist/pda.d.ts.map +1 -0
- package/dist/pda.js +119 -0
- package/dist/pda.js.map +1 -0
- package/dist/types.d.ts +152 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +22 -0
- package/dist/types.js.map +1 -0
- package/package.json +49 -0
package/dist/idl.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"idl.js","sourceRoot":"","sources":["../src/idl.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @pbpcanada/projectdam-sdk
|
|
3
|
+
*
|
|
4
|
+
* TypeScript SDK for ProjectDAM - Agent-operated NFT AMM on Solana
|
|
5
|
+
*
|
|
6
|
+
* This SDK provides comprehensive TypeScript interfaces and utilities
|
|
7
|
+
* for interacting with the ProjectDAM protocol on Solana.
|
|
8
|
+
*
|
|
9
|
+
* Features:
|
|
10
|
+
* - Account decoders for all ProjectDAM account types
|
|
11
|
+
* - PDA (Program Derived Address) helpers
|
|
12
|
+
* - Instruction builders for all core operations
|
|
13
|
+
* - TypeScript interfaces for type safety
|
|
14
|
+
* - Full IDL export for advanced usage
|
|
15
|
+
*
|
|
16
|
+
* @version 1.0.0
|
|
17
|
+
* @author PBP Canada
|
|
18
|
+
* @license MIT
|
|
19
|
+
*/
|
|
20
|
+
export * from './types.js';
|
|
21
|
+
export * from './constants.js';
|
|
22
|
+
export * from './pda.js';
|
|
23
|
+
export * from './accounts.js';
|
|
24
|
+
export * from './instructions.js';
|
|
25
|
+
export { DAM_PROTOCOL_IDL } from './idl.js';
|
|
26
|
+
export type { PublicKey, Connection, Transaction, TransactionInstruction, Keypair, Commitment, AccountInfo } from '@solana/web3.js';
|
|
27
|
+
import type { PublicKey, Connection } from '@solana/web3.js';
|
|
28
|
+
import type { Config, Pool, PoolNft } from './types.js';
|
|
29
|
+
export declare const VERSION = "1.0.0";
|
|
30
|
+
/**
|
|
31
|
+
* Utility class for common ProjectDAM operations
|
|
32
|
+
*/
|
|
33
|
+
export declare class ProjectDAMClient {
|
|
34
|
+
readonly connection: Connection;
|
|
35
|
+
readonly programId: PublicKey;
|
|
36
|
+
constructor(connection: Connection, programId?: PublicKey);
|
|
37
|
+
/**
|
|
38
|
+
* Fetch and decode a Config account
|
|
39
|
+
*/
|
|
40
|
+
getConfig(): Promise<Config | null>;
|
|
41
|
+
/**
|
|
42
|
+
* Fetch and decode a Pool account
|
|
43
|
+
*/
|
|
44
|
+
getPool(poolAddress: PublicKey): Promise<Pool | null>;
|
|
45
|
+
/**
|
|
46
|
+
* Fetch and decode a PoolNft account
|
|
47
|
+
*/
|
|
48
|
+
getPoolNft(poolNftAddress: PublicKey): Promise<PoolNft | null>;
|
|
49
|
+
/**
|
|
50
|
+
* Get all pools owned by a specific address
|
|
51
|
+
*/
|
|
52
|
+
getPoolsByOwner(owner: PublicKey): Promise<Array<{
|
|
53
|
+
pubkey: PublicKey;
|
|
54
|
+
account: Pool;
|
|
55
|
+
}>>;
|
|
56
|
+
/**
|
|
57
|
+
* Get all pools for a specific collection
|
|
58
|
+
*/
|
|
59
|
+
getPoolsByCollection(collection: PublicKey): Promise<Array<{
|
|
60
|
+
pubkey: PublicKey;
|
|
61
|
+
account: Pool;
|
|
62
|
+
}>>;
|
|
63
|
+
/**
|
|
64
|
+
* Get all PoolNft accounts for a specific pool
|
|
65
|
+
*/
|
|
66
|
+
getPoolNfts(pool: PublicKey): Promise<Array<{
|
|
67
|
+
pubkey: PublicKey;
|
|
68
|
+
account: PoolNft;
|
|
69
|
+
}>>;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Default export for convenience
|
|
73
|
+
*/
|
|
74
|
+
export default ProjectDAMClient;
|
|
75
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,cAAc,YAAY,CAAC;AAG3B,cAAc,gBAAgB,CAAC;AAG/B,cAAc,UAAU,CAAC;AAGzB,cAAc,eAAe,CAAC;AAG9B,cAAc,mBAAmB,CAAC;AAGlC,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAG5C,YAAY,EACV,SAAS,EACT,UAAU,EACV,WAAW,EACX,sBAAsB,EACtB,OAAO,EACP,UAAU,EACV,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI7D,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAGxD,eAAO,MAAM,OAAO,UAAU,CAAC;AAE/B;;GAEG;AACH,qBAAa,gBAAgB;aAET,UAAU,EAAE,UAAU;aACtB,SAAS,EAAE,SAAS;gBADpB,UAAU,EAAE,UAAU,EACtB,SAAS,GAAE,SAAsB;IAGnD;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAWzC;;OAEG;IACG,OAAO,CAAC,WAAW,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAU3D;;OAEG;IACG,UAAU,CAAC,cAAc,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAUpE;;OAEG;IACG,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,OAAO,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC;IA0B7F;;OAEG;IACG,oBAAoB,CAAC,UAAU,EAAE,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,OAAO,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC;IA0BvG;;OAEG;IACG,WAAW,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CAyB5F;AAED;;GAEG;AACH,eAAe,gBAAgB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @pbpcanada/projectdam-sdk
|
|
3
|
+
*
|
|
4
|
+
* TypeScript SDK for ProjectDAM - Agent-operated NFT AMM on Solana
|
|
5
|
+
*
|
|
6
|
+
* This SDK provides comprehensive TypeScript interfaces and utilities
|
|
7
|
+
* for interacting with the ProjectDAM protocol on Solana.
|
|
8
|
+
*
|
|
9
|
+
* Features:
|
|
10
|
+
* - Account decoders for all ProjectDAM account types
|
|
11
|
+
* - PDA (Program Derived Address) helpers
|
|
12
|
+
* - Instruction builders for all core operations
|
|
13
|
+
* - TypeScript interfaces for type safety
|
|
14
|
+
* - Full IDL export for advanced usage
|
|
15
|
+
*
|
|
16
|
+
* @version 1.0.0
|
|
17
|
+
* @author PBP Canada
|
|
18
|
+
* @license MIT
|
|
19
|
+
*/
|
|
20
|
+
// Export all types
|
|
21
|
+
export * from './types.js';
|
|
22
|
+
// Export constants
|
|
23
|
+
export * from './constants.js';
|
|
24
|
+
// Export PDA helpers
|
|
25
|
+
export * from './pda.js';
|
|
26
|
+
// Export account decoders
|
|
27
|
+
export * from './accounts.js';
|
|
28
|
+
// Export instruction builders
|
|
29
|
+
export * from './instructions.js';
|
|
30
|
+
// Export IDL
|
|
31
|
+
export { DAM_PROTOCOL_IDL } from './idl.js';
|
|
32
|
+
import { PROGRAM_ID } from './constants.js';
|
|
33
|
+
import { findConfigPDA } from './pda.js';
|
|
34
|
+
import { decodeConfig, decodePool, decodePoolNft } from './accounts.js';
|
|
35
|
+
// Version information
|
|
36
|
+
export const VERSION = '1.0.0';
|
|
37
|
+
/**
|
|
38
|
+
* Utility class for common ProjectDAM operations
|
|
39
|
+
*/
|
|
40
|
+
export class ProjectDAMClient {
|
|
41
|
+
connection;
|
|
42
|
+
programId;
|
|
43
|
+
constructor(connection, programId = PROGRAM_ID) {
|
|
44
|
+
this.connection = connection;
|
|
45
|
+
this.programId = programId;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Fetch and decode a Config account
|
|
49
|
+
*/
|
|
50
|
+
async getConfig() {
|
|
51
|
+
const [configPDA] = findConfigPDA(this.programId);
|
|
52
|
+
const accountInfo = await this.connection.getAccountInfo(configPDA);
|
|
53
|
+
if (!accountInfo) {
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
return decodeConfig(accountInfo.data);
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Fetch and decode a Pool account
|
|
60
|
+
*/
|
|
61
|
+
async getPool(poolAddress) {
|
|
62
|
+
const accountInfo = await this.connection.getAccountInfo(poolAddress);
|
|
63
|
+
if (!accountInfo) {
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
return decodePool(accountInfo.data);
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Fetch and decode a PoolNft account
|
|
70
|
+
*/
|
|
71
|
+
async getPoolNft(poolNftAddress) {
|
|
72
|
+
const accountInfo = await this.connection.getAccountInfo(poolNftAddress);
|
|
73
|
+
if (!accountInfo) {
|
|
74
|
+
return null;
|
|
75
|
+
}
|
|
76
|
+
return decodePoolNft(accountInfo.data);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Get all pools owned by a specific address
|
|
80
|
+
*/
|
|
81
|
+
async getPoolsByOwner(owner) {
|
|
82
|
+
const accounts = await this.connection.getProgramAccounts(this.programId, {
|
|
83
|
+
filters: [
|
|
84
|
+
{
|
|
85
|
+
// Pool discriminator
|
|
86
|
+
memcmp: {
|
|
87
|
+
offset: 0,
|
|
88
|
+
bytes: Buffer.from([241, 154, 109, 4, 17, 177, 109, 188]).toString('base64'),
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
// Owner filter (after discriminator + bump)
|
|
93
|
+
memcmp: {
|
|
94
|
+
offset: 9,
|
|
95
|
+
bytes: owner.toBase58(),
|
|
96
|
+
},
|
|
97
|
+
},
|
|
98
|
+
],
|
|
99
|
+
});
|
|
100
|
+
return accounts.map(({ pubkey, account }) => ({
|
|
101
|
+
pubkey,
|
|
102
|
+
account: decodePool(account.data),
|
|
103
|
+
}));
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Get all pools for a specific collection
|
|
107
|
+
*/
|
|
108
|
+
async getPoolsByCollection(collection) {
|
|
109
|
+
const accounts = await this.connection.getProgramAccounts(this.programId, {
|
|
110
|
+
filters: [
|
|
111
|
+
{
|
|
112
|
+
// Pool discriminator
|
|
113
|
+
memcmp: {
|
|
114
|
+
offset: 0,
|
|
115
|
+
bytes: Buffer.from([241, 154, 109, 4, 17, 177, 109, 188]).toString('base64'),
|
|
116
|
+
},
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
// Collection filter (after discriminator + bump + owner + uuid)
|
|
120
|
+
memcmp: {
|
|
121
|
+
offset: 47,
|
|
122
|
+
bytes: collection.toBase58(),
|
|
123
|
+
},
|
|
124
|
+
},
|
|
125
|
+
],
|
|
126
|
+
});
|
|
127
|
+
return accounts.map(({ pubkey, account }) => ({
|
|
128
|
+
pubkey,
|
|
129
|
+
account: decodePool(account.data),
|
|
130
|
+
}));
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Get all PoolNft accounts for a specific pool
|
|
134
|
+
*/
|
|
135
|
+
async getPoolNfts(pool) {
|
|
136
|
+
const accounts = await this.connection.getProgramAccounts(this.programId, {
|
|
137
|
+
filters: [
|
|
138
|
+
{
|
|
139
|
+
// PoolNft discriminator
|
|
140
|
+
memcmp: {
|
|
141
|
+
offset: 0,
|
|
142
|
+
bytes: Buffer.from([45, 198, 65, 11, 29, 13, 209, 1]).toString('base64'),
|
|
143
|
+
},
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
// Pool filter (after discriminator + bump)
|
|
147
|
+
memcmp: {
|
|
148
|
+
offset: 9,
|
|
149
|
+
bytes: pool.toBase58(),
|
|
150
|
+
},
|
|
151
|
+
},
|
|
152
|
+
],
|
|
153
|
+
});
|
|
154
|
+
return accounts.map(({ pubkey, account }) => ({
|
|
155
|
+
pubkey,
|
|
156
|
+
account: decodePoolNft(account.data),
|
|
157
|
+
}));
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Default export for convenience
|
|
162
|
+
*/
|
|
163
|
+
export default ProjectDAMClient;
|
|
164
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { PublicKey, TransactionInstruction } from '@solana/web3.js';
|
|
2
|
+
import type { CreatePoolOptions, BuyOptions, SellOptions } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Create a pool creation instruction
|
|
5
|
+
*/
|
|
6
|
+
export declare function createPoolInstruction(options: CreatePoolOptions, owner: PublicKey, collectionMint: PublicKey, programId?: PublicKey): TransactionInstruction;
|
|
7
|
+
/**
|
|
8
|
+
* Create a buy NFT instruction
|
|
9
|
+
*/
|
|
10
|
+
export declare function buyInstruction(pool: PublicKey, nftMint: PublicKey, buyer: PublicKey, poolOwner: PublicKey, feeBuffer: PublicKey, creatorWallet: PublicKey, options: BuyOptions, programId?: PublicKey): TransactionInstruction;
|
|
11
|
+
/**
|
|
12
|
+
* Create a sell NFT instruction
|
|
13
|
+
*/
|
|
14
|
+
export declare function sellInstruction(pool: PublicKey, nftMint: PublicKey, seller: PublicKey, feeBuffer: PublicKey, creatorWallet: PublicKey, options: SellOptions, programId?: PublicKey): TransactionInstruction;
|
|
15
|
+
/**
|
|
16
|
+
* Create a deposit NFT instruction
|
|
17
|
+
*/
|
|
18
|
+
export declare function depositNftInstruction(pool: PublicKey, nftMint: PublicKey, owner: PublicKey, programId?: PublicKey): TransactionInstruction;
|
|
19
|
+
/**
|
|
20
|
+
* Create a deposit SOL instruction
|
|
21
|
+
*/
|
|
22
|
+
export declare function depositSolInstruction(pool: PublicKey, owner: PublicKey, amount: bigint, programId?: PublicKey): TransactionInstruction;
|
|
23
|
+
/**
|
|
24
|
+
* Create a withdraw NFT instruction (delist)
|
|
25
|
+
*/
|
|
26
|
+
export declare function withdrawNftInstruction(pool: PublicKey, nftMint: PublicKey, owner: PublicKey, programId?: PublicKey): TransactionInstruction;
|
|
27
|
+
/**
|
|
28
|
+
* Create a withdraw SOL instruction (using update_pool with amount extraction logic)
|
|
29
|
+
*/
|
|
30
|
+
export declare function withdrawSolInstruction(pool: PublicKey, owner: PublicKey, amount: bigint, programId?: PublicKey): TransactionInstruction;
|
|
31
|
+
/**
|
|
32
|
+
* Create a start season instruction
|
|
33
|
+
*/
|
|
34
|
+
export declare function startSeasonInstruction(month: number, year: number, authority: PublicKey, programId?: PublicKey): TransactionInstruction;
|
|
35
|
+
//# sourceMappingURL=instructions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,sBAAsB,EAEvB,MAAM,iBAAiB,CAAC;AAczB,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,WAAW,EAAe,MAAM,YAAY,CAAC;AA0E1F;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,SAAS,EACzB,SAAS,GAAE,SAAsB,GAChC,sBAAsB,CA8CxB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,SAAS,EACxB,OAAO,EAAE,UAAU,EACnB,SAAS,GAAE,SAAsB,GAChC,sBAAsB,CAuCxB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,SAAS,EAClB,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,SAAS,EACxB,OAAO,EAAE,WAAW,EACpB,SAAS,GAAE,SAAsB,GAChC,sBAAsB,CAsCxB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,SAAS,EAChB,SAAS,GAAE,SAAsB,GAChC,sBAAsB,CAqBxB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,SAAsB,GAChC,sBAAsB,CAuBxB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,SAAS,EAChB,SAAS,GAAE,SAAsB,GAChC,sBAAsB,CAqBxB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,SAAsB,GAChC,sBAAsB,CAwBxB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,SAAS,EACpB,SAAS,GAAE,SAAsB,GAChC,sBAAsB,CAuBxB"}
|
|
@@ -0,0 +1,299 @@
|
|
|
1
|
+
import { PublicKey, TransactionInstruction, SystemProgram } from '@solana/web3.js';
|
|
2
|
+
import { TOKEN_PROGRAM_ID, ASSOCIATED_TOKEN_PROGRAM_ID, PROGRAM_ID } from './constants.js';
|
|
3
|
+
import { findConfigPDA, findPoolPDA, findSolVaultPDA, findPoolNftPDA, findMetadataPDA } from './pda.js';
|
|
4
|
+
import { CurveType } from './types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Create instruction discriminators (SHA256 hash of "global:instruction_name")
|
|
7
|
+
*/
|
|
8
|
+
function createInstructionDiscriminator(instructionName) {
|
|
9
|
+
const crypto = globalThis.crypto;
|
|
10
|
+
if (!crypto || !crypto.subtle) {
|
|
11
|
+
throw new Error('crypto.subtle not available. This SDK requires a modern environment with Web Crypto API.');
|
|
12
|
+
}
|
|
13
|
+
// For Node.js environments, we'll use a simpler approach
|
|
14
|
+
// In a real implementation, you'd want to use a proper SHA256 implementation
|
|
15
|
+
const bytes = new TextEncoder().encode(`global:${instructionName}`);
|
|
16
|
+
// For the SDK, we'll use the known discriminators from the IDL
|
|
17
|
+
const discriminators = {
|
|
18
|
+
'initialize_config': [208, 127, 21, 1, 194, 190, 196, 70],
|
|
19
|
+
'create_pool': [233, 146, 209, 142, 207, 104, 64, 188],
|
|
20
|
+
'buy': [102, 6, 61, 18, 1, 218, 235, 234],
|
|
21
|
+
'sell': [51, 230, 133, 164, 1, 127, 131, 173],
|
|
22
|
+
'deposit_nft': [93, 226, 132, 166, 141, 9, 48, 101],
|
|
23
|
+
'deposit_sol': [108, 81, 78, 117, 237, 119, 0, 35],
|
|
24
|
+
'withdraw_nft': [81, 166, 166, 57, 172, 97, 41, 88], // delist
|
|
25
|
+
'withdraw_sol': [239, 77, 186, 213, 72, 168, 141, 90], // update_pool (we'll use for withdraw)
|
|
26
|
+
'start_season': [0, 0, 0, 0, 0, 0, 0, 0], // placeholder
|
|
27
|
+
};
|
|
28
|
+
const disc = discriminators[instructionName];
|
|
29
|
+
if (!disc) {
|
|
30
|
+
throw new Error(`Unknown instruction: ${instructionName}`);
|
|
31
|
+
}
|
|
32
|
+
return Buffer.from(disc);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Serialize curve type for instruction data
|
|
36
|
+
*/
|
|
37
|
+
function serializeCurveType(curve) {
|
|
38
|
+
const buffer = Buffer.alloc(16); // Max size needed
|
|
39
|
+
let offset = 0;
|
|
40
|
+
// Write variant
|
|
41
|
+
buffer.writeUInt8(curve.type, offset);
|
|
42
|
+
offset += 1;
|
|
43
|
+
// Write variant-specific data
|
|
44
|
+
switch (curve.type) {
|
|
45
|
+
case CurveType.Fixed:
|
|
46
|
+
// No additional data
|
|
47
|
+
break;
|
|
48
|
+
case CurveType.Linear:
|
|
49
|
+
if (curve.delta === undefined) {
|
|
50
|
+
throw new Error('Linear curve requires delta parameter');
|
|
51
|
+
}
|
|
52
|
+
buffer.writeBigUInt64LE(BigInt(curve.delta), offset);
|
|
53
|
+
offset += 8;
|
|
54
|
+
break;
|
|
55
|
+
case CurveType.Exponential:
|
|
56
|
+
if (curve.delta === undefined) {
|
|
57
|
+
throw new Error('Exponential curve requires delta parameter');
|
|
58
|
+
}
|
|
59
|
+
buffer.writeUInt16LE(Number(curve.delta), offset);
|
|
60
|
+
offset += 2;
|
|
61
|
+
break;
|
|
62
|
+
default:
|
|
63
|
+
throw new Error(`Unknown curve type: ${curve.type}`);
|
|
64
|
+
}
|
|
65
|
+
return buffer.subarray(0, offset);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Create a pool creation instruction
|
|
69
|
+
*/
|
|
70
|
+
export function createPoolInstruction(options, owner, collectionMint, programId = PROGRAM_ID) {
|
|
71
|
+
const [config] = findConfigPDA(programId);
|
|
72
|
+
const [pool] = findPoolPDA(owner, options.uuid, programId);
|
|
73
|
+
// Serialize instruction data
|
|
74
|
+
const discriminator = createInstructionDiscriminator('create_pool');
|
|
75
|
+
const curveData = serializeCurveType(options.curveType);
|
|
76
|
+
const data = Buffer.alloc(8 + 6 + curveData.length + 8 + 2 + 1);
|
|
77
|
+
let offset = 0;
|
|
78
|
+
// Discriminator
|
|
79
|
+
discriminator.copy(data, offset);
|
|
80
|
+
offset += 8;
|
|
81
|
+
// UUID
|
|
82
|
+
options.uuid.copy(data, offset);
|
|
83
|
+
offset += 6;
|
|
84
|
+
// Curve type
|
|
85
|
+
curveData.copy(data, offset);
|
|
86
|
+
offset += curveData.length;
|
|
87
|
+
// Spot price
|
|
88
|
+
data.writeBigUInt64LE(options.spotPrice, offset);
|
|
89
|
+
offset += 8;
|
|
90
|
+
// Spread BPS
|
|
91
|
+
data.writeUInt16LE(options.spreadBps, offset);
|
|
92
|
+
offset += 2;
|
|
93
|
+
// Pool type
|
|
94
|
+
data.writeUInt8(options.poolType, offset);
|
|
95
|
+
offset += 1;
|
|
96
|
+
return new TransactionInstruction({
|
|
97
|
+
keys: [
|
|
98
|
+
{ pubkey: pool, isSigner: false, isWritable: true },
|
|
99
|
+
{ pubkey: config, isSigner: false, isWritable: true },
|
|
100
|
+
{ pubkey: collectionMint, isSigner: false, isWritable: false },
|
|
101
|
+
{ pubkey: owner, isSigner: true, isWritable: true },
|
|
102
|
+
{ pubkey: SystemProgram.programId, isSigner: false, isWritable: false },
|
|
103
|
+
],
|
|
104
|
+
programId,
|
|
105
|
+
data: data.subarray(0, offset),
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Create a buy NFT instruction
|
|
110
|
+
*/
|
|
111
|
+
export function buyInstruction(pool, nftMint, buyer, poolOwner, feeBuffer, creatorWallet, options, programId = PROGRAM_ID) {
|
|
112
|
+
const [config] = findConfigPDA(programId);
|
|
113
|
+
const [poolNft] = findPoolNftPDA(pool, nftMint, programId);
|
|
114
|
+
const [nftMetadata] = findMetadataPDA(nftMint);
|
|
115
|
+
// Serialize instruction data
|
|
116
|
+
const discriminator = createInstructionDiscriminator('buy');
|
|
117
|
+
const data = Buffer.alloc(8 + 8 + 2);
|
|
118
|
+
let offset = 0;
|
|
119
|
+
discriminator.copy(data, offset);
|
|
120
|
+
offset += 8;
|
|
121
|
+
data.writeBigUInt64LE(options.maxPrice, offset);
|
|
122
|
+
offset += 8;
|
|
123
|
+
data.writeUInt16LE(options.royaltyBps || 0, offset);
|
|
124
|
+
offset += 2;
|
|
125
|
+
return new TransactionInstruction({
|
|
126
|
+
keys: [
|
|
127
|
+
{ pubkey: pool, isSigner: false, isWritable: true },
|
|
128
|
+
{ pubkey: config, isSigner: false, isWritable: false },
|
|
129
|
+
{ pubkey: poolNft, isSigner: false, isWritable: true },
|
|
130
|
+
{ pubkey: nftMetadata, isSigner: false, isWritable: false },
|
|
131
|
+
{ pubkey: nftMint, isSigner: false, isWritable: false },
|
|
132
|
+
{ pubkey: new PublicKey('11111111111111111111111111111111'), isSigner: false, isWritable: true }, // poolNftAccount - placeholder
|
|
133
|
+
{ pubkey: new PublicKey('11111111111111111111111111111111'), isSigner: false, isWritable: true }, // buyerNftAccount - placeholder
|
|
134
|
+
{ pubkey: poolOwner, isSigner: false, isWritable: true },
|
|
135
|
+
{ pubkey: feeBuffer, isSigner: false, isWritable: true },
|
|
136
|
+
{ pubkey: creatorWallet, isSigner: false, isWritable: true },
|
|
137
|
+
{ pubkey: buyer, isSigner: true, isWritable: true },
|
|
138
|
+
{ pubkey: TOKEN_PROGRAM_ID, isSigner: false, isWritable: false },
|
|
139
|
+
{ pubkey: ASSOCIATED_TOKEN_PROGRAM_ID, isSigner: false, isWritable: false },
|
|
140
|
+
{ pubkey: SystemProgram.programId, isSigner: false, isWritable: false },
|
|
141
|
+
],
|
|
142
|
+
programId,
|
|
143
|
+
data,
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Create a sell NFT instruction
|
|
148
|
+
*/
|
|
149
|
+
export function sellInstruction(pool, nftMint, seller, feeBuffer, creatorWallet, options, programId = PROGRAM_ID) {
|
|
150
|
+
const [config] = findConfigPDA(programId);
|
|
151
|
+
const [solVault] = findSolVaultPDA(pool, programId);
|
|
152
|
+
const [nftMetadata] = findMetadataPDA(nftMint);
|
|
153
|
+
// Serialize instruction data
|
|
154
|
+
const discriminator = createInstructionDiscriminator('sell');
|
|
155
|
+
const data = Buffer.alloc(8 + 8 + 2);
|
|
156
|
+
let offset = 0;
|
|
157
|
+
discriminator.copy(data, offset);
|
|
158
|
+
offset += 8;
|
|
159
|
+
data.writeBigUInt64LE(options.minPrice, offset);
|
|
160
|
+
offset += 8;
|
|
161
|
+
data.writeUInt16LE(options.royaltyBps || 0, offset);
|
|
162
|
+
offset += 2;
|
|
163
|
+
return new TransactionInstruction({
|
|
164
|
+
keys: [
|
|
165
|
+
{ pubkey: pool, isSigner: false, isWritable: true },
|
|
166
|
+
{ pubkey: config, isSigner: false, isWritable: false },
|
|
167
|
+
{ pubkey: nftMetadata, isSigner: false, isWritable: false },
|
|
168
|
+
{ pubkey: nftMint, isSigner: false, isWritable: false },
|
|
169
|
+
{ pubkey: new PublicKey('11111111111111111111111111111111'), isSigner: false, isWritable: true }, // sellerNftAccount - placeholder
|
|
170
|
+
{ pubkey: new PublicKey('11111111111111111111111111111111'), isSigner: false, isWritable: true }, // poolNftAccount - placeholder
|
|
171
|
+
{ pubkey: solVault, isSigner: false, isWritable: true },
|
|
172
|
+
{ pubkey: feeBuffer, isSigner: false, isWritable: true },
|
|
173
|
+
{ pubkey: creatorWallet, isSigner: false, isWritable: true },
|
|
174
|
+
{ pubkey: seller, isSigner: true, isWritable: true },
|
|
175
|
+
{ pubkey: TOKEN_PROGRAM_ID, isSigner: false, isWritable: false },
|
|
176
|
+
{ pubkey: ASSOCIATED_TOKEN_PROGRAM_ID, isSigner: false, isWritable: false },
|
|
177
|
+
{ pubkey: SystemProgram.programId, isSigner: false, isWritable: false },
|
|
178
|
+
],
|
|
179
|
+
programId,
|
|
180
|
+
data,
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Create a deposit NFT instruction
|
|
185
|
+
*/
|
|
186
|
+
export function depositNftInstruction(pool, nftMint, owner, programId = PROGRAM_ID) {
|
|
187
|
+
const [poolNft] = findPoolNftPDA(pool, nftMint, programId);
|
|
188
|
+
// Serialize instruction data
|
|
189
|
+
const discriminator = createInstructionDiscriminator('deposit_nft');
|
|
190
|
+
return new TransactionInstruction({
|
|
191
|
+
keys: [
|
|
192
|
+
{ pubkey: pool, isSigner: false, isWritable: true },
|
|
193
|
+
{ pubkey: poolNft, isSigner: false, isWritable: true },
|
|
194
|
+
{ pubkey: nftMint, isSigner: false, isWritable: false },
|
|
195
|
+
{ pubkey: new PublicKey('11111111111111111111111111111111'), isSigner: false, isWritable: true }, // ownerNftAccount - placeholder
|
|
196
|
+
{ pubkey: new PublicKey('11111111111111111111111111111111'), isSigner: false, isWritable: true }, // poolNftAccount - placeholder
|
|
197
|
+
{ pubkey: owner, isSigner: true, isWritable: true },
|
|
198
|
+
{ pubkey: TOKEN_PROGRAM_ID, isSigner: false, isWritable: false },
|
|
199
|
+
{ pubkey: ASSOCIATED_TOKEN_PROGRAM_ID, isSigner: false, isWritable: false },
|
|
200
|
+
{ pubkey: SystemProgram.programId, isSigner: false, isWritable: false },
|
|
201
|
+
],
|
|
202
|
+
programId,
|
|
203
|
+
data: discriminator,
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Create a deposit SOL instruction
|
|
208
|
+
*/
|
|
209
|
+
export function depositSolInstruction(pool, owner, amount, programId = PROGRAM_ID) {
|
|
210
|
+
const [solVault] = findSolVaultPDA(pool, programId);
|
|
211
|
+
// Serialize instruction data
|
|
212
|
+
const discriminator = createInstructionDiscriminator('deposit_sol');
|
|
213
|
+
const data = Buffer.alloc(8 + 8);
|
|
214
|
+
let offset = 0;
|
|
215
|
+
discriminator.copy(data, offset);
|
|
216
|
+
offset += 8;
|
|
217
|
+
data.writeBigUInt64LE(amount, offset);
|
|
218
|
+
return new TransactionInstruction({
|
|
219
|
+
keys: [
|
|
220
|
+
{ pubkey: pool, isSigner: false, isWritable: true },
|
|
221
|
+
{ pubkey: solVault, isSigner: false, isWritable: true },
|
|
222
|
+
{ pubkey: owner, isSigner: true, isWritable: true },
|
|
223
|
+
{ pubkey: SystemProgram.programId, isSigner: false, isWritable: false },
|
|
224
|
+
],
|
|
225
|
+
programId,
|
|
226
|
+
data,
|
|
227
|
+
});
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Create a withdraw NFT instruction (delist)
|
|
231
|
+
*/
|
|
232
|
+
export function withdrawNftInstruction(pool, nftMint, owner, programId = PROGRAM_ID) {
|
|
233
|
+
const [poolNft] = findPoolNftPDA(pool, nftMint, programId);
|
|
234
|
+
// Serialize instruction data (delist takes no arguments)
|
|
235
|
+
const discriminator = createInstructionDiscriminator('withdraw_nft');
|
|
236
|
+
return new TransactionInstruction({
|
|
237
|
+
keys: [
|
|
238
|
+
{ pubkey: pool, isSigner: false, isWritable: true },
|
|
239
|
+
{ pubkey: poolNft, isSigner: false, isWritable: true },
|
|
240
|
+
{ pubkey: nftMint, isSigner: false, isWritable: false },
|
|
241
|
+
{ pubkey: new PublicKey('11111111111111111111111111111111'), isSigner: false, isWritable: true }, // poolNftAccount - placeholder
|
|
242
|
+
{ pubkey: new PublicKey('11111111111111111111111111111111'), isSigner: false, isWritable: true }, // ownerNftAccount - placeholder
|
|
243
|
+
{ pubkey: owner, isSigner: true, isWritable: true },
|
|
244
|
+
{ pubkey: TOKEN_PROGRAM_ID, isSigner: false, isWritable: false },
|
|
245
|
+
{ pubkey: ASSOCIATED_TOKEN_PROGRAM_ID, isSigner: false, isWritable: false },
|
|
246
|
+
{ pubkey: SystemProgram.programId, isSigner: false, isWritable: false },
|
|
247
|
+
],
|
|
248
|
+
programId,
|
|
249
|
+
data: discriminator,
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Create a withdraw SOL instruction (using update_pool with amount extraction logic)
|
|
254
|
+
*/
|
|
255
|
+
export function withdrawSolInstruction(pool, owner, amount, programId = PROGRAM_ID) {
|
|
256
|
+
const [solVault] = findSolVaultPDA(pool, programId);
|
|
257
|
+
// For withdrawal, we can use a custom implementation or the update pool instruction
|
|
258
|
+
// This is a simplified version - in practice you'd need proper withdrawal logic
|
|
259
|
+
const discriminator = createInstructionDiscriminator('withdraw_sol');
|
|
260
|
+
const data = Buffer.alloc(8 + 8);
|
|
261
|
+
let offset = 0;
|
|
262
|
+
discriminator.copy(data, offset);
|
|
263
|
+
offset += 8;
|
|
264
|
+
data.writeBigUInt64LE(amount, offset);
|
|
265
|
+
return new TransactionInstruction({
|
|
266
|
+
keys: [
|
|
267
|
+
{ pubkey: pool, isSigner: false, isWritable: true },
|
|
268
|
+
{ pubkey: solVault, isSigner: false, isWritable: true },
|
|
269
|
+
{ pubkey: owner, isSigner: true, isWritable: true },
|
|
270
|
+
{ pubkey: SystemProgram.programId, isSigner: false, isWritable: false },
|
|
271
|
+
],
|
|
272
|
+
programId,
|
|
273
|
+
data,
|
|
274
|
+
});
|
|
275
|
+
}
|
|
276
|
+
/**
|
|
277
|
+
* Create a start season instruction
|
|
278
|
+
*/
|
|
279
|
+
export function startSeasonInstruction(month, year, authority, programId = PROGRAM_ID) {
|
|
280
|
+
// This would need proper implementation based on the actual program
|
|
281
|
+
// For now, returning a placeholder
|
|
282
|
+
const discriminator = createInstructionDiscriminator('start_season');
|
|
283
|
+
const data = Buffer.alloc(8 + 1 + 2);
|
|
284
|
+
let offset = 0;
|
|
285
|
+
discriminator.copy(data, offset);
|
|
286
|
+
offset += 8;
|
|
287
|
+
data.writeUInt8(month, offset);
|
|
288
|
+
offset += 1;
|
|
289
|
+
data.writeUInt16LE(year, offset);
|
|
290
|
+
return new TransactionInstruction({
|
|
291
|
+
keys: [
|
|
292
|
+
{ pubkey: authority, isSigner: true, isWritable: true },
|
|
293
|
+
{ pubkey: SystemProgram.programId, isSigner: false, isWritable: false },
|
|
294
|
+
],
|
|
295
|
+
programId,
|
|
296
|
+
data,
|
|
297
|
+
});
|
|
298
|
+
}
|
|
299
|
+
//# sourceMappingURL=instructions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,sBAAsB,EACtB,aAAa,EACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,gBAAgB,EAChB,2BAA2B,EAC3B,UAAU,EAEX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,aAAa,EACb,WAAW,EACX,eAAe,EACf,cAAc,EACd,eAAe,EAChB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC;;GAEG;AACH,SAAS,8BAA8B,CAAC,eAAuB;IAC7D,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IACjC,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,0FAA0F,CAAC,CAAC;IAC9G,CAAC;IAED,yDAAyD;IACzD,6EAA6E;IAC7E,MAAM,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,UAAU,eAAe,EAAE,CAAC,CAAC;IAEpE,+DAA+D;IAC/D,MAAM,cAAc,GAA6B;QAC/C,mBAAmB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;QACzD,aAAa,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;QACtD,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QACzC,MAAM,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;QAC7C,aAAa,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC;QACnD,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAClD,cAAc,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,SAAS;QAC9D,cAAc,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,uCAAuC;QAC9F,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,cAAc;KACzD,CAAC;IAEF,MAAM,IAAI,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;IAC7C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,wBAAwB,eAAe,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,KAAkB;IAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB;IACnD,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,gBAAgB;IAChB,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtC,MAAM,IAAI,CAAC,CAAC;IAEZ,8BAA8B;IAC9B,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,SAAS,CAAC,KAAK;YAClB,qBAAqB;YACrB,MAAM;QACR,KAAK,SAAS,CAAC,MAAM;YACnB,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAC3D,CAAC;YACD,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;YACrD,MAAM,IAAI,CAAC,CAAC;YACZ,MAAM;QACR,KAAK,SAAS,CAAC,WAAW;YACxB,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;YAChE,CAAC;YACD,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;YAClD,MAAM,IAAI,CAAC,CAAC;YACZ,MAAM;QACR;YACE,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAA0B,EAC1B,KAAgB,EAChB,cAAyB,EACzB,YAAuB,UAAU;IAEjC,MAAM,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IAC1C,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAE3D,6BAA6B;IAC7B,MAAM,aAAa,GAAG,8BAA8B,CAAC,aAAa,CAAC,CAAC;IACpE,MAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAExD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,gBAAgB;IAChB,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,IAAI,CAAC,CAAC;IAEZ,OAAO;IACP,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,IAAI,CAAC,CAAC;IAEZ,aAAa;IACb,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC7B,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC;IAE3B,aAAa;IACb,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACjD,MAAM,IAAI,CAAC,CAAC;IAEZ,aAAa;IACb,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC9C,MAAM,IAAI,CAAC,CAAC;IAEZ,YAAY;IACZ,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC1C,MAAM,IAAI,CAAC,CAAC;IAEZ,OAAO,IAAI,sBAAsB,CAAC;QAChC,IAAI,EAAE;YACJ,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACrD,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YAC9D,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,EAAE,MAAM,EAAE,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;SACxE;QACD,SAAS;QACT,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;KAC/B,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,IAAe,EACf,OAAkB,EAClB,KAAgB,EAChB,SAAoB,EACpB,SAAoB,EACpB,aAAwB,EACxB,OAAmB,EACnB,YAAuB,UAAU;IAEjC,MAAM,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IAC1C,MAAM,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAC3D,MAAM,CAAC,WAAW,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAE/C,6BAA6B;IAC7B,MAAM,aAAa,GAAG,8BAA8B,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,IAAI,CAAC,CAAC;IAEZ,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAChD,MAAM,IAAI,CAAC,CAAC;IAEZ,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IACpD,MAAM,IAAI,CAAC,CAAC;IAEZ,OAAO,IAAI,sBAAsB,CAAC;QAChC,IAAI,EAAE;YACJ,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YACtD,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACtD,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YAC3D,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YACvD,EAAE,MAAM,EAAE,IAAI,SAAS,CAAC,kCAAkC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,+BAA+B;YACjI,EAAE,MAAM,EAAE,IAAI,SAAS,CAAC,kCAAkC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,gCAAgC;YAClI,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACxD,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACxD,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5D,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,EAAE,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YAChE,EAAE,MAAM,EAAE,2BAA2B,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YAC3E,EAAE,MAAM,EAAE,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;SACxE;QACD,SAAS;QACT,IAAI;KACL,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAC7B,IAAe,EACf,OAAkB,EAClB,MAAiB,EACjB,SAAoB,EACpB,aAAwB,EACxB,OAAoB,EACpB,YAAuB,UAAU;IAEjC,MAAM,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IAC1C,MAAM,CAAC,QAAQ,CAAC,GAAG,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACpD,MAAM,CAAC,WAAW,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAE/C,6BAA6B;IAC7B,MAAM,aAAa,GAAG,8BAA8B,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,IAAI,CAAC,CAAC;IAEZ,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAChD,MAAM,IAAI,CAAC,CAAC;IAEZ,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IACpD,MAAM,IAAI,CAAC,CAAC;IAEZ,OAAO,IAAI,sBAAsB,CAAC;QAChC,IAAI,EAAE;YACJ,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YACtD,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YAC3D,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YACvD,EAAE,MAAM,EAAE,IAAI,SAAS,CAAC,kCAAkC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,iCAAiC;YACnI,EAAE,MAAM,EAAE,IAAI,SAAS,CAAC,kCAAkC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,+BAA+B;YACjI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACvD,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACxD,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5D,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YACpD,EAAE,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YAChE,EAAE,MAAM,EAAE,2BAA2B,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YAC3E,EAAE,MAAM,EAAE,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;SACxE;QACD,SAAS;QACT,IAAI;KACL,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAe,EACf,OAAkB,EAClB,KAAgB,EAChB,YAAuB,UAAU;IAEjC,MAAM,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAE3D,6BAA6B;IAC7B,MAAM,aAAa,GAAG,8BAA8B,CAAC,aAAa,CAAC,CAAC;IAEpE,OAAO,IAAI,sBAAsB,CAAC;QAChC,IAAI,EAAE;YACJ,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACtD,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YACvD,EAAE,MAAM,EAAE,IAAI,SAAS,CAAC,kCAAkC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,gCAAgC;YAClI,EAAE,MAAM,EAAE,IAAI,SAAS,CAAC,kCAAkC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,+BAA+B;YACjI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,EAAE,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YAChE,EAAE,MAAM,EAAE,2BAA2B,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YAC3E,EAAE,MAAM,EAAE,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;SACxE;QACD,SAAS;QACT,IAAI,EAAE,aAAa;KACpB,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAe,EACf,KAAgB,EAChB,MAAc,EACd,YAAuB,UAAU;IAEjC,MAAM,CAAC,QAAQ,CAAC,GAAG,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAEpD,6BAA6B;IAC7B,MAAM,aAAa,GAAG,8BAA8B,CAAC,aAAa,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,IAAI,CAAC,CAAC;IAEZ,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEtC,OAAO,IAAI,sBAAsB,CAAC;QAChC,IAAI,EAAE;YACJ,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACvD,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,EAAE,MAAM,EAAE,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;SACxE;QACD,SAAS;QACT,IAAI;KACL,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CACpC,IAAe,EACf,OAAkB,EAClB,KAAgB,EAChB,YAAuB,UAAU;IAEjC,MAAM,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAE3D,yDAAyD;IACzD,MAAM,aAAa,GAAG,8BAA8B,CAAC,cAAc,CAAC,CAAC;IAErE,OAAO,IAAI,sBAAsB,CAAC;QAChC,IAAI,EAAE;YACJ,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACtD,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YACvD,EAAE,MAAM,EAAE,IAAI,SAAS,CAAC,kCAAkC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,+BAA+B;YACjI,EAAE,MAAM,EAAE,IAAI,SAAS,CAAC,kCAAkC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,gCAAgC;YAClI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,EAAE,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YAChE,EAAE,MAAM,EAAE,2BAA2B,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YAC3E,EAAE,MAAM,EAAE,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;SACxE;QACD,SAAS;QACT,IAAI,EAAE,aAAa;KACpB,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CACpC,IAAe,EACf,KAAgB,EAChB,MAAc,EACd,YAAuB,UAAU;IAEjC,MAAM,CAAC,QAAQ,CAAC,GAAG,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAEpD,oFAAoF;IACpF,gFAAgF;IAChF,MAAM,aAAa,GAAG,8BAA8B,CAAC,cAAc,CAAC,CAAC;IACrE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,IAAI,CAAC,CAAC;IAEZ,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEtC,OAAO,IAAI,sBAAsB,CAAC;QAChC,IAAI,EAAE;YACJ,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACvD,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,EAAE,MAAM,EAAE,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;SACxE;QACD,SAAS;QACT,IAAI;KACL,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAAa,EACb,IAAY,EACZ,SAAoB,EACpB,YAAuB,UAAU;IAEjC,oEAAoE;IACpE,mCAAmC;IACnC,MAAM,aAAa,GAAG,8BAA8B,CAAC,cAAc,CAAC,CAAC;IACrE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,IAAI,CAAC,CAAC;IAEZ,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC/B,MAAM,IAAI,CAAC,CAAC;IAEZ,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAEjC,OAAO,IAAI,sBAAsB,CAAC;QAChC,IAAI,EAAE;YACJ,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YACvD,EAAE,MAAM,EAAE,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;SACxE;QACD,SAAS;QACT,IAAI;KACL,CAAC,CAAC;AACL,CAAC"}
|