@metadaoproject/futarchy 0.5.0-alpha.2 → 0.5.0-alpha.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/dist/v0.3/utils/index.d.ts +1 -0
- package/dist/v0.4/ConditionalVaultClient.d.ts +1 -0
- package/dist/v0.4/utils/index.d.ts +1 -0
- package/dist/v0.5/AutocratClient.d.ts +71 -16
- package/dist/v0.5/AutocratClient.js +131 -188
- package/dist/v0.5/AutocratClient.js.map +1 -1
- package/dist/v0.5/ConditionalVaultClient.d.ts +1 -0
- package/dist/v0.5/LaunchpadClient.d.ts +57 -34
- package/dist/v0.5/LaunchpadClient.js +51 -26
- package/dist/v0.5/LaunchpadClient.js.map +1 -1
- package/dist/v0.5/SharedLiquidityManagerClient.d.ts +0 -1045
- package/dist/v0.5/SharedLiquidityManagerClient.js +1 -309
- package/dist/v0.5/SharedLiquidityManagerClient.js.map +1 -1
- package/dist/v0.5/constants.d.ts +5 -1
- package/dist/v0.5/constants.js +10 -1
- package/dist/v0.5/constants.js.map +1 -1
- package/dist/v0.5/types/autocrat.d.ts +106 -111
- package/dist/v0.5/types/autocrat.js +106 -111
- package/dist/v0.5/types/autocrat.js.map +1 -1
- package/dist/v0.5/types/index.d.ts +0 -3
- package/dist/v0.5/types/launchpad.d.ts +102 -40
- package/dist/v0.5/types/launchpad.js +102 -40
- package/dist/v0.5/types/launchpad.js.map +1 -1
- package/dist/v0.5/types/shared_liquidity_manager.d.ts +1 -1677
- package/dist/v0.5/types/shared_liquidity_manager.js +1 -1677
- package/dist/v0.5/types/shared_liquidity_manager.js.map +1 -1
- package/dist/v0.5/utils/index.d.ts +1 -0
- package/dist/v0.5/utils/pda.d.ts +6 -2
- package/dist/v0.5/utils/pda.js +10 -10
- package/dist/v0.5/utils/pda.js.map +1 -1
- package/package.json +3 -2
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { AnchorProvider, Program } from "@coral-xyz/anchor";
|
|
3
3
|
import { PublicKey, AccountInfo } from "@solana/web3.js";
|
|
4
4
|
import { Launchpad } from "./types/launchpad.js";
|
|
5
|
-
import
|
|
5
|
+
import BN from "bn.js";
|
|
6
6
|
import { FundingRecord, Launch } from "./types/index.js";
|
|
7
7
|
import { AutocratClient } from "./AutocratClient.js";
|
|
8
8
|
export type CreateLaunchpadClientParams = {
|
|
@@ -25,7 +25,7 @@ export declare class LaunchpadClient {
|
|
|
25
25
|
getFundingRecord(fundingRecord: PublicKey): Promise<FundingRecord>;
|
|
26
26
|
fetchFundingRecord(fundingRecord: PublicKey): Promise<FundingRecord | null>;
|
|
27
27
|
deserializeFundingRecord(accountInfo: AccountInfo<Buffer>): Promise<FundingRecord>;
|
|
28
|
-
initializeLaunchIx(tokenName: string, tokenSymbol: string, tokenUri: string, minimumRaiseAmount: BN, secondsForLaunch: number, baseMint: PublicKey, quoteMint: PublicKey, launchAuthority?: PublicKey, isDevnet?: boolean, payer?: PublicKey): import("@coral-xyz/anchor/dist/cjs/program/namespace/methods.js").MethodsBuilder<Launchpad, {
|
|
28
|
+
initializeLaunchIx(tokenName: string, tokenSymbol: string, tokenUri: string, minimumRaiseAmount: BN, secondsForLaunch: number, baseMint: PublicKey, quoteMint: PublicKey, monthlySpendingLimitAmount: BN, monthlySpendingLimitMembers: PublicKey[], launchAuthority?: PublicKey, isDevnet?: boolean, payer?: PublicKey): import("@coral-xyz/anchor/dist/cjs/program/namespace/methods.js").MethodsBuilder<Launchpad, {
|
|
29
29
|
name: "initializeLaunch";
|
|
30
30
|
accounts: [{
|
|
31
31
|
name: "launch";
|
|
@@ -196,10 +196,6 @@ export declare class LaunchpadClient {
|
|
|
196
196
|
name: "launchSigner";
|
|
197
197
|
isMut: true;
|
|
198
198
|
isSigner: false;
|
|
199
|
-
}, {
|
|
200
|
-
name: "authority";
|
|
201
|
-
isMut: false;
|
|
202
|
-
isSigner: false;
|
|
203
199
|
}, {
|
|
204
200
|
name: "launchQuoteVault";
|
|
205
201
|
isMut: true;
|
|
@@ -216,11 +212,6 @@ export declare class LaunchpadClient {
|
|
|
216
212
|
name: "treasuryLpAccount";
|
|
217
213
|
isMut: true;
|
|
218
214
|
isSigner: false;
|
|
219
|
-
}, {
|
|
220
|
-
name: "ammConfig";
|
|
221
|
-
isMut: true;
|
|
222
|
-
isSigner: false;
|
|
223
|
-
docs: ["Use the lowest fee pool, can see fees at https://api-v3.raydium.io/main/cpmm-config"];
|
|
224
215
|
}, {
|
|
225
216
|
name: "poolState";
|
|
226
217
|
isMut: true;
|
|
@@ -249,11 +240,6 @@ export declare class LaunchpadClient {
|
|
|
249
240
|
name: "poolUsdcVault";
|
|
250
241
|
isMut: true;
|
|
251
242
|
isSigner: false;
|
|
252
|
-
}, {
|
|
253
|
-
name: "createPoolFee";
|
|
254
|
-
isMut: true;
|
|
255
|
-
isSigner: false;
|
|
256
|
-
docs: ["create pool fee account"];
|
|
257
243
|
}, {
|
|
258
244
|
name: "observationState";
|
|
259
245
|
isMut: true;
|
|
@@ -263,41 +249,78 @@ export declare class LaunchpadClient {
|
|
|
263
249
|
isMut: true;
|
|
264
250
|
isSigner: false;
|
|
265
251
|
}, {
|
|
266
|
-
name: "
|
|
267
|
-
isMut:
|
|
252
|
+
name: "squadsMultisig";
|
|
253
|
+
isMut: true;
|
|
268
254
|
isSigner: false;
|
|
269
255
|
}, {
|
|
270
|
-
name: "
|
|
256
|
+
name: "squadsMultisigVault";
|
|
271
257
|
isMut: false;
|
|
272
258
|
isSigner: false;
|
|
273
259
|
}, {
|
|
274
|
-
name: "
|
|
275
|
-
isMut:
|
|
276
|
-
isSigner: false;
|
|
277
|
-
}, {
|
|
278
|
-
name: "tokenProgram";
|
|
279
|
-
isMut: false;
|
|
260
|
+
name: "spendingLimit";
|
|
261
|
+
isMut: true;
|
|
280
262
|
isSigner: false;
|
|
281
263
|
}, {
|
|
282
264
|
name: "systemProgram";
|
|
283
265
|
isMut: false;
|
|
284
266
|
isSigner: false;
|
|
285
267
|
}, {
|
|
286
|
-
name: "
|
|
287
|
-
isMut: false;
|
|
288
|
-
isSigner: false;
|
|
289
|
-
}, {
|
|
290
|
-
name: "tokenMetadataProgram";
|
|
268
|
+
name: "tokenProgram";
|
|
291
269
|
isMut: false;
|
|
292
270
|
isSigner: false;
|
|
293
271
|
}, {
|
|
294
|
-
name: "
|
|
272
|
+
name: "associatedTokenProgram";
|
|
295
273
|
isMut: false;
|
|
296
274
|
isSigner: false;
|
|
297
275
|
}, {
|
|
298
|
-
name: "
|
|
299
|
-
|
|
300
|
-
|
|
276
|
+
name: "staticAccounts";
|
|
277
|
+
accounts: [{
|
|
278
|
+
name: "authority";
|
|
279
|
+
isMut: false;
|
|
280
|
+
isSigner: false;
|
|
281
|
+
}, {
|
|
282
|
+
name: "ammConfig";
|
|
283
|
+
isMut: true;
|
|
284
|
+
isSigner: false;
|
|
285
|
+
docs: ["Use the lowest fee pool, can see fees at https://api-v3.raydium.io/main/cpmm-config"];
|
|
286
|
+
}, {
|
|
287
|
+
name: "createPoolFee";
|
|
288
|
+
isMut: true;
|
|
289
|
+
isSigner: false;
|
|
290
|
+
docs: ["create pool fee account"];
|
|
291
|
+
}, {
|
|
292
|
+
name: "cpSwapProgram";
|
|
293
|
+
isMut: false;
|
|
294
|
+
isSigner: false;
|
|
295
|
+
}, {
|
|
296
|
+
name: "autocratProgram";
|
|
297
|
+
isMut: false;
|
|
298
|
+
isSigner: false;
|
|
299
|
+
}, {
|
|
300
|
+
name: "tokenMetadataProgram";
|
|
301
|
+
isMut: false;
|
|
302
|
+
isSigner: false;
|
|
303
|
+
}, {
|
|
304
|
+
name: "autocratEventAuthority";
|
|
305
|
+
isMut: false;
|
|
306
|
+
isSigner: false;
|
|
307
|
+
}, {
|
|
308
|
+
name: "rent";
|
|
309
|
+
isMut: false;
|
|
310
|
+
isSigner: false;
|
|
311
|
+
}, {
|
|
312
|
+
name: "squadsProgram";
|
|
313
|
+
isMut: false;
|
|
314
|
+
isSigner: false;
|
|
315
|
+
}, {
|
|
316
|
+
name: "squadsProgramConfig";
|
|
317
|
+
isMut: false;
|
|
318
|
+
isSigner: false;
|
|
319
|
+
}, {
|
|
320
|
+
name: "squadsProgramConfigTreasury";
|
|
321
|
+
isMut: true;
|
|
322
|
+
isSigner: false;
|
|
323
|
+
}];
|
|
301
324
|
}, {
|
|
302
325
|
name: "eventAuthority";
|
|
303
326
|
isMut: false;
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { Program } from "@coral-xyz/anchor";
|
|
2
2
|
import { PublicKey, } from "@solana/web3.js";
|
|
3
3
|
import { IDL as LaunchpadIDL } from "./types/launchpad.js";
|
|
4
|
-
import { LAUNCHPAD_PROGRAM_ID, RAYDIUM_AUTHORITY, LOW_FEE_RAYDIUM_CONFIG, RAYDIUM_CP_SWAP_PROGRAM_ID, RAYDIUM_CREATE_POOL_FEE_RECEIVE, DEVNET_RAYDIUM_CP_SWAP_PROGRAM_ID, DEVNET_RAYDIUM_AUTHORITY, DEVNET_LOW_FEE_RAYDIUM_CONFIG, DEVNET_RAYDIUM_CREATE_POOL_FEE_RECEIVE, MPL_TOKEN_METADATA_PROGRAM_ID, MAINNET_USDC, DEVNET_USDC, } from "./constants.js";
|
|
4
|
+
import { LAUNCHPAD_PROGRAM_ID, RAYDIUM_AUTHORITY, LOW_FEE_RAYDIUM_CONFIG, RAYDIUM_CP_SWAP_PROGRAM_ID, RAYDIUM_CREATE_POOL_FEE_RECEIVE, DEVNET_RAYDIUM_CP_SWAP_PROGRAM_ID, DEVNET_RAYDIUM_AUTHORITY, DEVNET_LOW_FEE_RAYDIUM_CONFIG, DEVNET_RAYDIUM_CREATE_POOL_FEE_RECEIVE, MPL_TOKEN_METADATA_PROGRAM_ID, MAINNET_USDC, DEVNET_USDC, SQUADS_PROGRAM_ID, SQUADS_PROGRAM_CONFIG, SQUADS_PROGRAM_CONFIG_TREASURY, } from "./constants.js";
|
|
5
5
|
import { createAssociatedTokenAccountIdempotentInstruction, getAssociatedTokenAddressSync, } from "@solana/spl-token";
|
|
6
|
-
import
|
|
6
|
+
import BN from "bn.js";
|
|
7
|
+
import { getDaoAddr, getEventAuthorityAddr, getFundingRecordAddr, getLaunchAddr, getLaunchSignerAddr, getLiquidityPoolAddr, getMetadataAddr, getRaydiumCpmmLpMintAddr, } from "./utils/pda.js";
|
|
7
8
|
import { AutocratClient } from "./AutocratClient.js";
|
|
8
9
|
import * as anchor from "@coral-xyz/anchor";
|
|
10
|
+
import * as multisig from "@sqds/multisig";
|
|
9
11
|
export class LaunchpadClient {
|
|
10
12
|
launchpad;
|
|
11
13
|
provider;
|
|
@@ -44,7 +46,7 @@ export class LaunchpadClient {
|
|
|
44
46
|
async deserializeFundingRecord(accountInfo) {
|
|
45
47
|
return this.launchpad.coder.accounts.decode("fundingRecord", accountInfo.data);
|
|
46
48
|
}
|
|
47
|
-
initializeLaunchIx(tokenName, tokenSymbol, tokenUri, minimumRaiseAmount, secondsForLaunch, baseMint, quoteMint, launchAuthority = this.provider.publicKey, isDevnet = false, payer = this.provider.publicKey) {
|
|
49
|
+
initializeLaunchIx(tokenName, tokenSymbol, tokenUri, minimumRaiseAmount, secondsForLaunch, baseMint, quoteMint, monthlySpendingLimitAmount, monthlySpendingLimitMembers, launchAuthority = this.provider.publicKey, isDevnet = false, payer = this.provider.publicKey) {
|
|
48
50
|
const [launch] = getLaunchAddr(this.launchpad.programId, baseMint);
|
|
49
51
|
const [launchSigner] = getLaunchSignerAddr(this.launchpad.programId, launch);
|
|
50
52
|
const quoteVault = getAssociatedTokenAddressSync(quoteMint, launchSigner, true);
|
|
@@ -57,6 +59,8 @@ export class LaunchpadClient {
|
|
|
57
59
|
tokenName,
|
|
58
60
|
tokenSymbol,
|
|
59
61
|
tokenUri,
|
|
62
|
+
monthlySpendingLimitAmount,
|
|
63
|
+
monthlySpendingLimitMembers,
|
|
60
64
|
})
|
|
61
65
|
.accounts({
|
|
62
66
|
launch,
|
|
@@ -102,9 +106,10 @@ export class LaunchpadClient {
|
|
|
102
106
|
const launchQuoteVault = getAssociatedTokenAddressSync(quoteMint, launchSigner, true);
|
|
103
107
|
const launchBaseVault = getAssociatedTokenAddressSync(baseMint, launchSigner, true);
|
|
104
108
|
// const daoKp = Keypair.generate();
|
|
105
|
-
const [dao] =
|
|
106
|
-
|
|
107
|
-
|
|
109
|
+
const [dao] = getDaoAddr({
|
|
110
|
+
nonce: new BN(0),
|
|
111
|
+
daoCreator: launchSigner,
|
|
112
|
+
});
|
|
108
113
|
const [poolState] = getLiquidityPoolAddr(this.launchpad.programId, dao);
|
|
109
114
|
const cpSwapProgramId = isDevnet
|
|
110
115
|
? DEVNET_RAYDIUM_CP_SWAP_PROGRAM_ID
|
|
@@ -124,17 +129,24 @@ export class LaunchpadClient {
|
|
|
124
129
|
const [observationState] = PublicKey.findProgramAddressSync([anchor.utils.bytes.utf8.encode("observation"), poolState.toBuffer()], cpSwapProgramId);
|
|
125
130
|
const [autocratEventAuthority] = getEventAuthorityAddr(this.autocratClient.getProgramId());
|
|
126
131
|
const [tokenMetadata] = getMetadataAddr(baseMint);
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
132
|
+
const [multisigPda] = multisig.getMultisigPda({ createKey: dao });
|
|
133
|
+
const [multisigVault] = multisig.getVaultPda({
|
|
134
|
+
multisigPda,
|
|
135
|
+
index: 0,
|
|
136
|
+
});
|
|
137
|
+
const [spendingLimit] = multisig.getSpendingLimitPda({
|
|
138
|
+
multisigPda,
|
|
139
|
+
createKey: dao,
|
|
140
|
+
});
|
|
141
|
+
const treasuryQuoteAccount = getAssociatedTokenAddressSync(quoteMint, multisigVault, true);
|
|
142
|
+
return this.launchpad.methods.completeLaunch().accounts({
|
|
130
143
|
launch,
|
|
131
144
|
launchSigner,
|
|
132
145
|
launchQuoteVault,
|
|
133
146
|
launchBaseVault,
|
|
134
147
|
dao,
|
|
135
|
-
daoTreasury,
|
|
136
148
|
treasuryQuoteAccount,
|
|
137
|
-
treasuryLpAccount: getAssociatedTokenAddressSync(lpMint,
|
|
149
|
+
treasuryLpAccount: getAssociatedTokenAddressSync(lpMint, multisigVault, true),
|
|
138
150
|
quoteMint,
|
|
139
151
|
baseMint,
|
|
140
152
|
tokenMetadata,
|
|
@@ -144,21 +156,34 @@ export class LaunchpadClient {
|
|
|
144
156
|
poolUsdcVault,
|
|
145
157
|
poolState,
|
|
146
158
|
observationState,
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
159
|
+
staticAccounts: {
|
|
160
|
+
cpSwapProgram: cpSwapProgramId,
|
|
161
|
+
authority: isDevnet ? DEVNET_RAYDIUM_AUTHORITY : RAYDIUM_AUTHORITY,
|
|
162
|
+
ammConfig: isDevnet
|
|
163
|
+
? DEVNET_LOW_FEE_RAYDIUM_CONFIG
|
|
164
|
+
: LOW_FEE_RAYDIUM_CONFIG,
|
|
165
|
+
createPoolFee: isDevnet
|
|
166
|
+
? DEVNET_RAYDIUM_CREATE_POOL_FEE_RECEIVE
|
|
167
|
+
: RAYDIUM_CREATE_POOL_FEE_RECEIVE,
|
|
168
|
+
autocratProgram: this.autocratClient.getProgramId(),
|
|
169
|
+
tokenMetadataProgram: MPL_TOKEN_METADATA_PROGRAM_ID,
|
|
170
|
+
autocratEventAuthority,
|
|
171
|
+
squadsProgram: SQUADS_PROGRAM_ID,
|
|
172
|
+
squadsProgramConfig: SQUADS_PROGRAM_CONFIG,
|
|
173
|
+
squadsProgramConfigTreasury: SQUADS_PROGRAM_CONFIG_TREASURY,
|
|
174
|
+
},
|
|
175
|
+
squadsMultisig: multisigPda,
|
|
176
|
+
squadsMultisigVault: multisigVault,
|
|
177
|
+
spendingLimit,
|
|
178
|
+
});
|
|
179
|
+
// .preInstructions([
|
|
180
|
+
// createAssociatedTokenAccountIdempotentInstruction(
|
|
181
|
+
// this.provider.publicKey,
|
|
182
|
+
// treasuryQuoteAccount,
|
|
183
|
+
// daoTreasury,
|
|
184
|
+
// USDC
|
|
185
|
+
// ),
|
|
186
|
+
// ]);
|
|
162
187
|
}
|
|
163
188
|
refundIx(launch, funder = this.provider.publicKey, quoteMint, isDevnet = false) {
|
|
164
189
|
const [launchSigner] = getLaunchSignerAddr(this.launchpad.programId, launch);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LaunchpadClient.js","sourceRoot":"","sources":["../../src/v0.5/LaunchpadClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EACL,SAAS,GAIV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAa,GAAG,IAAI,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,sBAAsB,EACtB,0BAA0B,EAC1B,+BAA+B,EAC/B,iCAAiC,EACjC,wBAAwB,EACxB,6BAA6B,EAC7B,sCAAsC,EACtC,6BAA6B,EAC7B,YAAY,EACZ,WAAW,
|
|
1
|
+
{"version":3,"file":"LaunchpadClient.js","sourceRoot":"","sources":["../../src/v0.5/LaunchpadClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EACL,SAAS,GAIV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAa,GAAG,IAAI,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,sBAAsB,EACtB,0BAA0B,EAC1B,+BAA+B,EAC/B,iCAAiC,EACjC,wBAAwB,EACxB,6BAA6B,EAC7B,sCAAsC,EACtC,6BAA6B,EAC7B,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,qBAAqB,EACrB,8BAA8B,GAC/B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,iDAAiD,EACjD,6BAA6B,GAC9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,OAAO,CAAC;AAEvB,OAAO,EACL,UAAU,EAEV,qBAAqB,EACrB,oBAAoB,EACpB,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAU3C,MAAM,OAAO,eAAe;IACnB,SAAS,CAAqB;IAC9B,QAAQ,CAAiB;IACzB,cAAc,CAAiB;IAEtC,YAAoB,MAAmC;QACrD,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,IAAI,OAAO,CAC1B,YAAY,EACZ,MAAM,CAAC,kBAAkB,IAAI,oBAAoB,EACjD,IAAI,CAAC,QAAQ,CACd,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC,YAAY,CAAC;YAChD,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;YAC3C,yBAAyB,EAAE,MAAM,CAAC,yBAAyB;YAC3D,YAAY,EAAE,MAAM,CAAC,YAAY;SAClC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,MAAmC;QACrD,OAAO,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAiB;QAC/B,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAAiB;QACjC,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,WAAgC;QACtD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,aAAwB;QAC7C,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,aAAwB;QAExB,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,CAC7D,aAAa,CACd,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,WAAgC;QAEhC,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CACzC,eAAe,EACf,WAAW,CAAC,IAAI,CACjB,CAAC;IACJ,CAAC;IAED,kBAAkB,CAChB,SAAiB,EACjB,WAAmB,EACnB,QAAgB,EAChB,kBAAsB,EACtB,gBAAwB,EACxB,QAAmB,EACnB,SAAoB,EACpB,0BAA8B,EAC9B,2BAAwC,EACxC,kBAA6B,IAAI,CAAC,QAAQ,CAAC,SAAS,EACpD,WAAoB,KAAK,EACzB,QAAmB,IAAI,CAAC,QAAQ,CAAC,SAAS;QAE1C,MAAM,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACnE,MAAM,CAAC,YAAY,CAAC,GAAG,mBAAmB,CACxC,IAAI,CAAC,SAAS,CAAC,SAAS,EACxB,MAAM,CACP,CAAC;QACF,MAAM,UAAU,GAAG,6BAA6B,CAC9C,SAAS,EACT,YAAY,EACZ,IAAI,CACL,CAAC;QAEF,MAAM,SAAS,GAAG,6BAA6B,CAC7C,QAAQ,EACR,YAAY,EACZ,IAAI,CACL,CAAC;QACF,MAAM,CAAC,aAAa,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QAElD,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO;aAC1B,gBAAgB,CAAC;YAChB,kBAAkB;YAClB,gBAAgB;YAChB,SAAS;YACT,WAAW;YACX,QAAQ;YACR,0BAA0B;YAC1B,2BAA2B;SAC5B,CAAC;aACD,QAAQ,CAAC;YACR,MAAM;YACN,YAAY;YACZ,UAAU;YACV,SAAS;YACT,eAAe;YACf,SAAS;YACT,QAAQ;YACR,aAAa;YACb,oBAAoB,EAAE,6BAA6B;YACnD,KAAK;SACN,CAAC;aACD,eAAe,CAAC;YACf,iDAAiD,CAC/C,KAAK,EACL,6BAA6B,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC,EAC5D,YAAY,EACZ,SAAS,CACV;SACF,CAAC,CAAC;QACL,2BAA2B;IAC7B,CAAC;IAED,aAAa,CACX,MAAiB,EACjB,kBAA6B,IAAI,CAAC,QAAQ,CAAC,SAAS;QAEpD,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC;YACnD,MAAM;YACN,eAAe;SAChB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CACJ,MAAiB,EACjB,MAAU,EACV,SAAoB,IAAI,CAAC,QAAQ,CAAC,SAAS,EAC3C,SAAoB,EACpB,WAAoB,KAAK;QAEzB,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC;QAEnD,MAAM,CAAC,YAAY,CAAC,GAAG,mBAAmB,CACxC,IAAI,CAAC,SAAS,CAAC,SAAS,EACxB,MAAM,CACP,CAAC;QACF,MAAM,gBAAgB,GAAG,6BAA6B,CACpD,SAAS,EACT,YAAY,EACZ,IAAI,CACL,CAAC;QACF,MAAM,kBAAkB,GAAG,6BAA6B,CACtD,SAAS,EACT,MAAM,EACN,IAAI,CACL,CAAC;QACF,MAAM,CAAC,aAAa,CAAC,GAAG,oBAAoB,CAC1C,IAAI,CAAC,SAAS,CAAC,SAAS,EACxB,MAAM,EACN,MAAM,CACP,CAAC;QAEF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;YAClD,MAAM;YACN,gBAAgB;YAChB,aAAa;YACb,MAAM;YACN,kBAAkB;YAClB,YAAY;SACb,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB,CACd,MAAiB,EACjB,SAAoB,EACpB,QAAmB,EACnB,WAAoB,KAAK;QAEzB,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC;QAEnD,MAAM,CAAC,YAAY,CAAC,GAAG,mBAAmB,CACxC,IAAI,CAAC,SAAS,CAAC,SAAS,EACxB,MAAM,CACP,CAAC;QACF,MAAM,gBAAgB,GAAG,6BAA6B,CACpD,SAAS,EACT,YAAY,EACZ,IAAI,CACL,CAAC;QACF,MAAM,eAAe,GAAG,6BAA6B,CACnD,QAAQ,EACR,YAAY,EACZ,IAAI,CACL,CAAC;QAEF,oCAAoC;QACpC,MAAM,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC;YACvB,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAChB,UAAU,EAAE,YAAY;SACzB,CAAC,CAAC;QAEH,MAAM,CAAC,SAAS,CAAC,GAAG,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAExE,MAAM,eAAe,GAAG,QAAQ;YAC9B,CAAC,CAAC,iCAAiC;YACnC,CAAC,CAAC,0BAA0B,CAAC;QAE/B,MAAM,CAAC,MAAM,CAAC,GAAG,wBAAwB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAE/D,MAAM,OAAO,GAAG,6BAA6B,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;QAE1E,MAAM,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC,sBAAsB,CACvD;YACE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;YAC5C,SAAS,CAAC,QAAQ,EAAE;YACpB,QAAQ,CAAC,QAAQ,EAAE;SACpB,EACD,eAAe,CAChB,CAAC;QAEF,MAAM,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC,sBAAsB,CACtD;YACE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;YAC5C,SAAS,CAAC,QAAQ,EAAE;YACpB,IAAI,CAAC,QAAQ,EAAE;SAChB,EACD,eAAe,CAChB,CAAC;QAEF,MAAM,CAAC,gBAAgB,CAAC,GAAG,SAAS,CAAC,sBAAsB,CACzD,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,EACrE,eAAe,CAChB,CAAC;QAEF,MAAM,CAAC,sBAAsB,CAAC,GAAG,qBAAqB,CACpD,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CACnC,CAAC;QAEF,MAAM,CAAC,aAAa,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QAElD,MAAM,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QAClE,MAAM,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC;YAC3C,WAAW;YACX,KAAK,EAAE,CAAC;SACT,CAAC,CAAC;QAEH,MAAM,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,mBAAmB,CAAC;YACnD,WAAW;YACX,SAAS,EAAE,GAAG;SACf,CAAC,CAAC;QAEH,MAAM,oBAAoB,GAAG,6BAA6B,CACxD,SAAS,EACT,aAAa,EACb,IAAI,CACL,CAAC;QAEF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC;YACtD,MAAM;YACN,YAAY;YACZ,gBAAgB;YAChB,eAAe;YACf,GAAG;YACH,oBAAoB;YACpB,iBAAiB,EAAE,6BAA6B,CAC9C,MAAM,EACN,aAAa,EACb,IAAI,CACL;YACD,SAAS;YACT,QAAQ;YACR,aAAa;YACb,MAAM;YACN,OAAO;YACP,cAAc;YACd,aAAa;YACb,SAAS;YACT,gBAAgB;YAChB,cAAc,EAAE;gBACd,aAAa,EAAE,eAAe;gBAC9B,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,iBAAiB;gBAClE,SAAS,EAAE,QAAQ;oBACjB,CAAC,CAAC,6BAA6B;oBAC/B,CAAC,CAAC,sBAAsB;gBAC1B,aAAa,EAAE,QAAQ;oBACrB,CAAC,CAAC,sCAAsC;oBACxC,CAAC,CAAC,+BAA+B;gBACnC,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE;gBACnD,oBAAoB,EAAE,6BAA6B;gBACnD,sBAAsB;gBACtB,aAAa,EAAE,iBAAiB;gBAChC,mBAAmB,EAAE,qBAAqB;gBAC1C,2BAA2B,EAAE,8BAA8B;aAC5D;YACD,cAAc,EAAE,WAAW;YAC3B,mBAAmB,EAAE,aAAa;YAClC,aAAa;SACd,CAAC,CAAC;QACH,qBAAqB;QACrB,uDAAuD;QACvD,+BAA+B;QAC/B,4BAA4B;QAC5B,mBAAmB;QACnB,WAAW;QACX,OAAO;QACP,MAAM;IACR,CAAC;IAED,QAAQ,CACN,MAAiB,EACjB,SAAoB,IAAI,CAAC,QAAQ,CAAC,SAAS,EAC3C,SAAoB,EACpB,WAAoB,KAAK;QAEzB,MAAM,CAAC,YAAY,CAAC,GAAG,mBAAmB,CACxC,IAAI,CAAC,SAAS,CAAC,SAAS,EACxB,MAAM,CACP,CAAC;QAEF,MAAM,CAAC,aAAa,CAAC,GAAG,oBAAoB,CAC1C,IAAI,CAAC,SAAS,CAAC,SAAS,EACxB,MAAM,EACN,MAAM,CACP,CAAC;QAEF,MAAM,gBAAgB,GAAG,6BAA6B,CACpD,SAAS,EACT,YAAY,EACZ,IAAI,CACL,CAAC;QACF,MAAM,kBAAkB,GAAG,6BAA6B,CACtD,SAAS,EACT,MAAM,EACN,IAAI,CACL,CAAC;QAEF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC;YAC9C,MAAM;YACN,YAAY;YACZ,gBAAgB;YAChB,MAAM;YACN,kBAAkB;YAClB,aAAa;SACd,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CACL,MAAiB,EACjB,QAAmB,EACnB,SAAoB,IAAI,CAAC,QAAQ,CAAC,SAAS;QAE3C,MAAM,CAAC,YAAY,CAAC,GAAG,mBAAmB,CACxC,IAAI,CAAC,SAAS,CAAC,SAAS,EACxB,MAAM,CACP,CAAC;QACF,MAAM,CAAC,aAAa,CAAC,GAAG,oBAAoB,CAC1C,IAAI,CAAC,SAAS,CAAC,SAAS,EACxB,MAAM,EACN,MAAM,CACP,CAAC;QAEF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO;aAC1B,KAAK,EAAE;aACP,QAAQ,CAAC;YACR,MAAM;YACN,aAAa;YACb,YAAY;YACZ,MAAM;YACN,kBAAkB,EAAE,6BAA6B,CAC/C,QAAQ,EACR,MAAM,EACN,IAAI,CACL;YACD,QAAQ;YACR,eAAe,EAAE,6BAA6B,CAC5C,QAAQ,EACR,YAAY,EACZ,IAAI,CACL;SACF,CAAC;aACD,eAAe,CAAC;YACf,iDAAiD,CAC/C,IAAI,CAAC,QAAQ,CAAC,SAAS,EACvB,6BAA6B,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EACrD,MAAM,EACN,QAAQ,CACT;SACF,CAAC,CAAC;IACP,CAAC;CACF"}
|