solana-meme-kit 0.3.1 → 0.4.1

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.
@@ -1,12 +1,17 @@
1
- import { Connection, Keypair, PublicKey, TransactionInstruction, Transaction, } from "@solana/web3.js";
2
- import DLMM, { deriveLbPair, LBCLMM_PROGRAM_IDS } from "@meteora-ag/dlmm";
3
- import { BN } from "bn.js";
1
+ import { Connection, Keypair, PublicKey, TransactionInstruction, } from "@solana/web3.js";
2
+ import DLMM, { binIdToBinArrayIndex, createProgram, deriveCustomizablePermissionlessLbPair, deriveBinArray, deriveBinArrayBitmapExtension, deriveEventAuthority, deriveOracle, deriveReserve, MEMO_PROGRAM_ID, getBinArrayAccountMetasCoverage, getBinArrayIndexesCoverage, isOverflowDefaultBinArrayBitmap, LBCLMM_PROGRAM_IDS, StrategyType, toStrategyParameters, } from "@meteora-ag/dlmm";
3
+ import BN from "bn.js";
4
4
  import { Logger } from "../../core/utils";
5
+ import { LaunchStyles, MeteoraPresets } from "./presets";
6
+ import { createAssociatedTokenAccountIdempotentInstruction, createCloseAccountInstruction, createSyncNativeInstruction, getAssociatedTokenAddressSync, NATIVE_MINT, TOKEN_PROGRAM_ID, } from "@solana/spl-token";
7
+ import { SYSVAR_RENT_PUBKEY, SystemProgram } from "@solana/web3.js";
5
8
  export class DLMMManager {
6
9
  connection;
7
10
  wallet;
8
11
  cluster;
9
- static BIN_STEP = new BN(100); // Volatility setting for memecoins (100 is standard)
12
+ static DEFAULT_BASE_FACTOR = 10000;
13
+ static U16_MAX = 65535;
14
+ static MAX_LFG_BINS_SINGLE_TX = 26;
10
15
  programId;
11
16
  constructor(connection, wallet, cluster = "mainnet-beta") {
12
17
  this.connection = connection;
@@ -18,64 +23,356 @@ export class DLMMManager {
18
23
  * Calculate the starting Bin ID from a price.
19
24
  * Price = solAmount / tokenAmount (adjusted for decimals)
20
25
  */
21
- calculateActiveBinId(solAmount, tokenAmount, tokenDecimals = 6) {
26
+ calculateActiveBinId(solAmount, tokenAmount, tokenDecimals = 6, binStep, invert) {
22
27
  const solDecimals = 9;
23
28
  const adjustedPrice = (solAmount * Math.pow(10, tokenDecimals)) /
24
29
  (tokenAmount * Math.pow(10, solDecimals));
25
- const binStep = DLMMManager.BIN_STEP.toNumber();
26
- const base = 1 + binStep / 10000;
27
- const activeId = Math.round(Math.log(adjustedPrice) / Math.log(base));
30
+ const price = invert ? 1 / adjustedPrice : adjustedPrice;
31
+ const pricePerLamport = DLMM.getPricePerLamport(invert ? solDecimals : tokenDecimals, invert ? tokenDecimals : solDecimals, price);
32
+ const activeId = DLMM.getBinIdFromPrice(pricePerLamport, binStep, false);
28
33
  Logger.info(`Calculated Active Bin ID: ${activeId} for price ${adjustedPrice}`);
29
34
  return activeId;
30
35
  }
36
+ priceToBinId(price, tokenDecimals = 6, binStep, invert) {
37
+ const solDecimals = 9;
38
+ const p = invert ? 1 / price : price;
39
+ const pricePerLamport = DLMM.getPricePerLamport(invert ? solDecimals : tokenDecimals, invert ? tokenDecimals : solDecimals, p);
40
+ return DLMM.getBinIdFromPrice(pricePerLamport, binStep, false);
41
+ }
42
+ calculateLfgDistribution(params) {
43
+ const { activeBinId, lowerBinId, upperBinId, curvature } = params;
44
+ const safeCurvature = Math.max(0, Math.min(1, curvature));
45
+ const binCount = upperBinId - lowerBinId + 1;
46
+ if (binCount <= 0)
47
+ return [];
48
+ const center = Math.max(lowerBinId, Math.min(upperBinId, activeBinId));
49
+ const alpha = 1 + safeCurvature * 12;
50
+ const maxDist = Math.max(1, Math.max(center - lowerBinId, upperBinId - center));
51
+ const raw = [];
52
+ let total = 0;
53
+ for (let binId = lowerBinId; binId <= upperBinId; binId++) {
54
+ const dist = Math.abs(binId - center) / maxDist;
55
+ const w = Math.exp(-alpha * dist);
56
+ raw.push(w);
57
+ total += w;
58
+ }
59
+ const targetSum = 10000;
60
+ const weights = [];
61
+ let running = 0;
62
+ for (let i = 0; i < raw.length; i++) {
63
+ const w = Math.max(1, Math.floor((raw[i] / total) * targetSum));
64
+ weights.push(w);
65
+ running += w;
66
+ }
67
+ const diff = targetSum - running;
68
+ weights[weights.length - 1] = Math.max(1, weights[weights.length - 1] + diff);
69
+ return weights.map((weight, i) => ({
70
+ binId: lowerBinId + i,
71
+ weight,
72
+ }));
73
+ }
31
74
  async initialize(options, mint) {
32
75
  Logger.info("Initializing Meteora DLMM Strategy...");
33
- const NATIVE_MINT = new PublicKey("So11111111111111111111111111111111111111112"); // WSOL
76
+ const WSOL_MINT = NATIVE_MINT;
34
77
  // Token ordering
35
- const [tokenX, tokenY] = mint.toBuffer().compare(NATIVE_MINT.toBuffer()) < 0
36
- ? [mint, NATIVE_MINT]
37
- : [NATIVE_MINT, mint];
78
+ const [tokenX, tokenY] = mint.toBuffer().compare(WSOL_MINT.toBuffer()) < 0
79
+ ? [mint, WSOL_MINT]
80
+ : [WSOL_MINT, mint];
38
81
  Logger.info(`Token Order: X=${tokenX.toBase58().slice(0, 8)}..., Y=${tokenY
39
82
  .toBase58()
40
83
  .slice(0, 8)}...`);
84
+ const meteora = options.meteora ?? LaunchStyles.VIRAL;
85
+ const strategyTypeFromString = (s) => {
86
+ switch (s) {
87
+ case "Curve":
88
+ return StrategyType.Curve;
89
+ case "BidAsk":
90
+ return StrategyType.BidAsk;
91
+ case "Spot":
92
+ default:
93
+ return StrategyType.Spot;
94
+ }
95
+ };
96
+ const config = {
97
+ binStep: meteora.binStep ?? LaunchStyles.VIRAL.binStep,
98
+ width: meteora.width ?? LaunchStyles.VIRAL.width,
99
+ strategyType: meteora.strategyType ??
100
+ strategyTypeFromString(meteora.strategy ?? LaunchStyles.VIRAL.strategy),
101
+ includeAlphaVault: meteora.includeAlphaVault ?? false,
102
+ };
103
+ const baseFactor = meteora.baseFactor ?? DLMMManager.DEFAULT_BASE_FACTOR;
104
+ const feeBpsNumber = meteora.feeBps ?? Math.floor((baseFactor * config.binStep) / 10000);
105
+ const maxFeeBps = Math.floor((DLMMManager.U16_MAX * config.binStep) / 10000);
106
+ if (feeBpsNumber <= 0 || feeBpsNumber > maxFeeBps) {
107
+ throw new Error(`Invalid Meteora feeBps: ${feeBpsNumber}. Max for binStep=${config.binStep} is ${maxFeeBps}.`);
108
+ }
109
+ const feeBps = new BN(feeBpsNumber);
41
110
  const solLiquidityAmount = options.liquidity?.solAmount ?? options.solLiquidityAmount ?? 0;
42
111
  const tokenLiquidityAmount = options.liquidity?.tokenAmount ?? options.tokenLiquidityAmount ?? 0;
112
+ const buyAmountSol = options.liquidity?.buyAmountSol ?? 0;
113
+ if (solLiquidityAmount <= 0 || tokenLiquidityAmount <= 0) {
114
+ throw new Error("Meteora DLMM requires both solAmount and tokenAmount to seed initial liquidity");
115
+ }
43
116
  // Calculate Active Bin ID
44
- const activeId = this.calculateActiveBinId(solLiquidityAmount, tokenLiquidityAmount, options.decimals);
117
+ const invertPrice = tokenX.equals(WSOL_MINT);
118
+ const activeId = this.calculateActiveBinId(solLiquidityAmount, tokenLiquidityAmount, options.decimals ?? 6, config.binStep, invertPrice);
45
119
  // Derive Pool Address
46
- const [poolPubkey, _] = deriveLbPair(tokenX, tokenY, DLMMManager.BIN_STEP, this.programId);
120
+ const [poolPubkey] = deriveCustomizablePermissionlessLbPair(tokenX, tokenY, this.programId);
47
121
  Logger.info(`Derived Pool Address: ${poolPubkey.toBase58()}`);
48
- // Create Pool Transaction using SDK
49
- // We use createCustomizablePermissionlessLbPair for anti-sniper features (activationPoint)
50
- const createTx = await DLMM.createCustomizablePermissionlessLbPair(this.connection, new BN(DLMMManager.BIN_STEP), tokenX, tokenY, new BN(activeId), new BN(100), // 1% base fee
51
- options.meteoraOptions?.activationType === "slot" ? 1 : 0, // 0 for Timestamp, 1 for Slot
52
- false, // hasAlphaVault (deferred)
53
- this.wallet.publicKey, options.meteoraOptions?.activationPoint
54
- ? new BN(options.meteoraOptions.activationPoint)
55
- : undefined);
56
- // Extract instructions from Transaction
57
- let instructions = [];
58
- if (createTx instanceof Transaction) {
59
- instructions = createTx.instructions;
60
- }
61
- else if (createTx.message) {
62
- // Probably a VersionedTransaction
63
- Logger.info("Detected VersionedTransaction from Meteora SDK");
64
- // This is tricky because we can't easily extract "TransactionInstruction" objects from a compiled message
65
- // without the account keys buffer. However, for bundling, we might need the whole transaction
66
- // or we might need to use a different SDK method that returns instructions.
122
+ const program = createProgram(this.connection, { cluster: this.cluster });
123
+ let activationType = options.meteoraOptions?.activationType === "slot" ? 0 : 1;
124
+ let activationPoint;
125
+ const activationDate = meteora.activationDate ?? options.meteoraOptions?.activationDate;
126
+ if (activationDate) {
127
+ activationType = 1;
128
+ activationPoint = new BN(Math.floor(activationDate.getTime() / 1000));
129
+ if (activationDate.getTime() > Date.now()) {
130
+ Logger.info(`Pool created. Trading starts at ${activationDate.toISOString()}.`);
131
+ }
132
+ }
133
+ else if (options.meteoraOptions?.activationPoint !== undefined) {
134
+ activationPoint = new BN(options.meteoraOptions.activationPoint);
135
+ }
136
+ else {
137
+ activationType = 1;
138
+ activationPoint = new BN(Math.floor(Date.now() / 1000));
139
+ }
140
+ const createTx = await DLMM.createCustomizablePermissionlessLbPair(this.connection, new BN(config.binStep), tokenX, tokenY, new BN(activeId), feeBps, activationType, config.includeAlphaVault, this.wallet.publicKey, activationPoint, false, { cluster: this.cluster, skipSolWrappingOperation: true });
141
+ const lfg = meteora.lfg;
142
+ const hasLfg = lfg?.minPrice !== undefined &&
143
+ lfg?.maxPrice !== undefined &&
144
+ (lfg?.curvature !== undefined || lfg !== undefined);
145
+ let lowerBinId;
146
+ let upperBinId;
147
+ if (lfg) {
148
+ if (lfg.minPrice === undefined || lfg.maxPrice === undefined) {
149
+ throw new Error("meteora.lfg requires minPrice and maxPrice");
150
+ }
151
+ const curvature = lfg.curvature ?? 0.6;
152
+ if (lfg.minPrice <= 0 || lfg.maxPrice <= 0) {
153
+ throw new Error("meteora.lfg minPrice/maxPrice must be > 0");
154
+ }
155
+ const minPrice = Math.min(lfg.minPrice, lfg.maxPrice);
156
+ const maxPrice = Math.max(lfg.minPrice, lfg.maxPrice);
157
+ const minBinId = this.priceToBinId(minPrice, options.decimals ?? 6, config.binStep, invertPrice);
158
+ const maxBinId = this.priceToBinId(maxPrice, options.decimals ?? 6, config.binStep, invertPrice);
159
+ lowerBinId = Math.min(minBinId, maxBinId);
160
+ upperBinId = Math.max(minBinId, maxBinId);
161
+ }
162
+ else {
163
+ const width = config.width;
164
+ lowerBinId = activeId - Math.floor(width / 2);
165
+ upperBinId = lowerBinId + width - 1;
166
+ }
167
+ const binCount = upperBinId - lowerBinId + 1;
168
+ const shouldUseLfgWeights = hasLfg && binCount <= DLMMManager.MAX_LFG_BINS_SINGLE_TX;
169
+ const binArrayIndexes = getBinArrayIndexesCoverage(new BN(lowerBinId), new BN(upperBinId));
170
+ const instructionGroups = [];
171
+ const createGroup = [];
172
+ const liquidityGroup = [];
173
+ const swapGroup = [];
174
+ createGroup.push(...createTx.instructions);
175
+ // For a brand new pool, bin arrays won't exist yet. Build init instructions deterministically
176
+ // without relying on RPC state (important for atomic create+seed flows).
177
+ for (const idx of binArrayIndexes) {
178
+ const binArray = deriveBinArray(poolPubkey, idx, this.programId)[0];
179
+ const ix = await program.methods
180
+ .initializeBinArray(idx)
181
+ .accountsPartial({
182
+ binArray,
183
+ funder: this.wallet.publicKey,
184
+ lbPair: poolPubkey,
185
+ })
186
+ .instruction();
187
+ createGroup.push(ix);
188
+ }
189
+ const positionKeypair = Keypair.generate();
190
+ const initPositionIx = await program.methods
191
+ .initializePosition(lowerBinId, upperBinId - lowerBinId + 1)
192
+ .accountsPartial({
193
+ payer: this.wallet.publicKey,
194
+ position: positionKeypair.publicKey,
195
+ lbPair: poolPubkey,
196
+ owner: this.wallet.publicKey,
197
+ rent: SYSVAR_RENT_PUBKEY,
198
+ })
199
+ .instruction();
200
+ createGroup.push(initPositionIx);
201
+ const userTokenX = getAssociatedTokenAddressSync(tokenX, this.wallet.publicKey);
202
+ const userTokenY = getAssociatedTokenAddressSync(tokenY, this.wallet.publicKey);
203
+ createGroup.push(createAssociatedTokenAccountIdempotentInstruction(this.wallet.publicKey, userTokenX, this.wallet.publicKey, tokenX));
204
+ createGroup.push(createAssociatedTokenAccountIdempotentInstruction(this.wallet.publicKey, userTokenY, this.wallet.publicKey, tokenY));
205
+ const xDecimals = tokenX.equals(WSOL_MINT) ? 9 : options.decimals || 6;
206
+ const yDecimals = tokenY.equals(WSOL_MINT) ? 9 : options.decimals || 6;
207
+ const xAmountLamports = new BN(Math.floor((tokenX.equals(WSOL_MINT) ? solLiquidityAmount : tokenLiquidityAmount) *
208
+ Math.pow(10, xDecimals)));
209
+ const yAmountLamports = new BN(Math.floor((tokenY.equals(WSOL_MINT) ? solLiquidityAmount : tokenLiquidityAmount) *
210
+ Math.pow(10, yDecimals)));
211
+ const wsolCloseIxs = [];
212
+ if (tokenX.equals(WSOL_MINT) && xAmountLamports.gt(new BN(0))) {
213
+ liquidityGroup.push(SystemProgram.transfer({
214
+ fromPubkey: this.wallet.publicKey,
215
+ toPubkey: userTokenX,
216
+ lamports: Number(xAmountLamports.toString()),
217
+ }));
218
+ liquidityGroup.push(createSyncNativeInstruction(userTokenX));
219
+ wsolCloseIxs.push(createCloseAccountInstruction(userTokenX, this.wallet.publicKey, this.wallet.publicKey));
220
+ }
221
+ if (tokenY.equals(WSOL_MINT) && yAmountLamports.gt(new BN(0))) {
222
+ liquidityGroup.push(SystemProgram.transfer({
223
+ fromPubkey: this.wallet.publicKey,
224
+ toPubkey: userTokenY,
225
+ lamports: Number(yAmountLamports.toString()),
226
+ }));
227
+ liquidityGroup.push(createSyncNativeInstruction(userTokenY));
228
+ wsolCloseIxs.push(createCloseAccountInstruction(userTokenY, this.wallet.publicKey, this.wallet.publicKey));
229
+ }
230
+ const minBinArrayIndex = binIdToBinArrayIndex(new BN(lowerBinId));
231
+ const maxBinArrayIndex = binIdToBinArrayIndex(new BN(upperBinId));
232
+ const useExtension = isOverflowDefaultBinArrayBitmap(minBinArrayIndex) ||
233
+ isOverflowDefaultBinArrayBitmap(maxBinArrayIndex);
234
+ const binArrayBitmapExtension = useExtension
235
+ ? deriveBinArrayBitmapExtension(poolPubkey, this.programId)[0]
236
+ : null;
237
+ const [reserveX] = deriveReserve(tokenX, poolPubkey, this.programId);
238
+ const [reserveY] = deriveReserve(tokenY, poolPubkey, this.programId);
239
+ const binArrayAccountMetas = getBinArrayAccountMetasCoverage(new BN(lowerBinId), new BN(upperBinId), poolPubkey, this.programId);
240
+ if (shouldUseLfgWeights) {
241
+ const curvature = lfg.curvature ?? 0.6;
242
+ const dist = this.calculateLfgDistribution({
243
+ activeBinId: activeId,
244
+ lowerBinId,
245
+ upperBinId,
246
+ curvature,
247
+ });
248
+ if (dist.length === 0) {
249
+ throw new Error("Failed to compute LFG distribution");
250
+ }
251
+ const lowerBinArray = deriveBinArray(poolPubkey, minBinArrayIndex, this.programId)[0];
252
+ const upperBinArray = deriveBinArray(poolPubkey, maxBinArrayIndex, this.programId)[0];
253
+ const liquidityParamByWeight = {
254
+ amountX: xAmountLamports,
255
+ amountY: yAmountLamports,
256
+ activeId,
257
+ maxActiveBinSlippage: 1,
258
+ binLiquidityDist: dist,
259
+ };
260
+ const addLiquidityIx = await program.methods
261
+ .addLiquidityByWeight(liquidityParamByWeight)
262
+ .accounts({
263
+ position: positionKeypair.publicKey,
264
+ lbPair: poolPubkey,
265
+ binArrayBitmapExtension,
266
+ userTokenX,
267
+ userTokenY,
268
+ reserveX,
269
+ reserveY,
270
+ tokenXMint: tokenX,
271
+ tokenYMint: tokenY,
272
+ binArrayLower: lowerBinArray,
273
+ binArrayUpper: upperBinArray,
274
+ sender: this.wallet.publicKey,
275
+ tokenXProgram: TOKEN_PROGRAM_ID,
276
+ tokenYProgram: TOKEN_PROGRAM_ID,
277
+ eventAuthority: deriveEventAuthority(this.programId)[0],
278
+ program: this.programId,
279
+ })
280
+ .remainingAccounts(binArrayAccountMetas)
281
+ .instruction();
282
+ liquidityGroup.push(addLiquidityIx);
283
+ }
284
+ else {
285
+ const strategyParameters = toStrategyParameters({
286
+ minBinId: lowerBinId,
287
+ maxBinId: upperBinId,
288
+ strategyType: hasLfg ? StrategyType.Spot : config.strategyType,
289
+ });
290
+ const liquidityParam = {
291
+ amountX: xAmountLamports,
292
+ amountY: yAmountLamports,
293
+ activeId,
294
+ maxActiveBinSlippage: 1,
295
+ strategyParameters,
296
+ };
297
+ const addLiquidityIx = await program.methods
298
+ .addLiquidityByStrategy2(liquidityParam, { slices: [] })
299
+ .accounts({
300
+ position: positionKeypair.publicKey,
301
+ lbPair: poolPubkey,
302
+ binArrayBitmapExtension,
303
+ userTokenX,
304
+ userTokenY,
305
+ reserveX,
306
+ reserveY,
307
+ tokenXMint: tokenX,
308
+ tokenYMint: tokenY,
309
+ sender: this.wallet.publicKey,
310
+ tokenXProgram: TOKEN_PROGRAM_ID,
311
+ tokenYProgram: TOKEN_PROGRAM_ID,
312
+ eventAuthority: deriveEventAuthority(this.programId)[0],
313
+ program: this.programId,
314
+ })
315
+ .remainingAccounts(binArrayAccountMetas)
316
+ .instruction();
317
+ liquidityGroup.push(addLiquidityIx);
318
+ }
319
+ if (buyAmountSol > 0) {
320
+ if (!Number.isFinite(buyAmountSol) || buyAmountSol <= 0) {
321
+ throw new Error("liquidity.buyAmountSol must be a finite number > 0");
322
+ }
323
+ const buyLamports = Math.floor(buyAmountSol * 1e9);
324
+ const buyAmountLamports = new BN(buyLamports);
325
+ const inToken = WSOL_MINT;
326
+ const outToken = mint;
327
+ const userTokenIn = inToken.equals(tokenX) ? userTokenX : userTokenY;
328
+ const userTokenOut = outToken.equals(tokenX) ? userTokenX : userTokenY;
329
+ // Top-up WSOL for the buy (we already wrapped enough for initial liquidity)
330
+ swapGroup.push(SystemProgram.transfer({
331
+ fromPubkey: this.wallet.publicKey,
332
+ toPubkey: userTokenIn,
333
+ lamports: buyLamports,
334
+ }));
335
+ swapGroup.push(createSyncNativeInstruction(userTokenIn));
336
+ const swapIx = await program.methods
337
+ .swap2(buyAmountLamports, new BN(0), { slices: [] })
338
+ .accountsPartial({
339
+ lbPair: poolPubkey,
340
+ reserveX,
341
+ reserveY,
342
+ tokenXMint: tokenX,
343
+ tokenYMint: tokenY,
344
+ tokenXProgram: TOKEN_PROGRAM_ID,
345
+ tokenYProgram: TOKEN_PROGRAM_ID,
346
+ user: this.wallet.publicKey,
347
+ userTokenIn,
348
+ userTokenOut,
349
+ binArrayBitmapExtension,
350
+ oracle: deriveOracle(poolPubkey, this.programId)[0],
351
+ hostFeeIn: null,
352
+ memoProgram: MEMO_PROGRAM_ID,
353
+ })
354
+ .remainingAccounts(binArrayAccountMetas)
355
+ .instruction();
356
+ swapGroup.push(swapIx);
357
+ }
358
+ // Close WSOL at the end of the last group that needs it.
359
+ if (buyAmountSol > 0) {
360
+ swapGroup.push(...wsolCloseIxs);
67
361
  }
68
362
  else {
69
- Logger.warn("Unknown transaction type returned from Meteora SDK");
70
- console.log(createTx);
363
+ liquidityGroup.push(...wsolCloseIxs);
364
+ }
365
+ instructionGroups.push(createGroup);
366
+ instructionGroups.push(liquidityGroup);
367
+ if (swapGroup.length > 0) {
368
+ instructionGroups.push(swapGroup);
71
369
  }
72
- // Add Liquidity Instructions (Placeholder for now as SDK requires active DLMM instance)
73
- // In a real launch, we would use a Jito bundle to ensure Tx1 (Create) and Tx2 (Add Liquidity)
74
- // execute together. For this SDK, we provide the creation instructions.
75
- // Users can then use LiquidityManager or similar to add liquidity once pool exists.
370
+ const instructions = instructionGroups.flat();
76
371
  return {
77
372
  poolId: poolPubkey,
78
373
  instructions,
374
+ instructionGroups,
375
+ signers: [positionKeypair],
79
376
  };
80
377
  }
81
378
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DLMMManager.js","sourceRoot":"","sources":["../../../src/strategies/meteora/DLMMManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DLMMManager.js","sourceRoot":"","sources":["../../../src/strategies/meteora/DLMMManager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,OAAO,EACP,SAAS,EACT,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AAMzB,OAAO,IAAI,EAAE,EACX,oBAAoB,EACpB,aAAa,EACb,sCAAsC,EACtC,cAAc,EACd,6BAA6B,EAC7B,oBAAoB,EACpB,YAAY,EACZ,aAAa,EACb,eAAe,EACf,+BAA+B,EAC/B,0BAA0B,EAC1B,+BAA+B,EAC/B,kBAAkB,EAClB,YAAY,EACZ,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,MAAM,OAAO,CAAC;AACvB,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EACL,iDAAiD,EACjD,6BAA6B,EAC7B,2BAA2B,EAC3B,6BAA6B,EAC7B,WAAW,EACX,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEpE,MAAM,OAAO,WAAW;IAOZ;IACA;IACA;IARF,MAAM,CAAC,mBAAmB,GAAG,KAAK,CAAC;IACnC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,MAAM,CAAC,sBAAsB,GAAG,EAAE,CAAC;IACnC,SAAS,CAAY;IAE7B,YACU,UAAsB,EACtB,MAAe,EACf,UAAqC,cAAc;QAFnD,eAAU,GAAV,UAAU,CAAY;QACtB,WAAM,GAAN,MAAM,CAAS;QACf,YAAO,GAAP,OAAO,CAA4C;QAE3D,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACnE,CAAC;IAED;;;OAGG;IACK,oBAAoB,CAC1B,SAAiB,EACjB,WAAmB,EACnB,gBAAwB,CAAC,EACzB,OAAe,EACf,MAAe;QAEf,MAAM,WAAW,GAAG,CAAC,CAAC;QACtB,MAAM,aAAa,GACjB,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;YACzC,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC;QACzD,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAC7C,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,EACpC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,EACpC,KAAK,CACN,CAAC;QACF,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QACzE,MAAM,CAAC,IAAI,CACT,6BAA6B,QAAQ,cAAc,aAAa,EAAE,CACnE,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,YAAY,CAClB,KAAa,EACb,gBAAwB,CAAC,EACzB,OAAe,EACf,MAAe;QAEf,MAAM,WAAW,GAAG,CAAC,CAAC;QACtB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;QACrC,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAC7C,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,EACpC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,EACpC,CAAC,CACF,CAAC;QACF,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;IAEO,wBAAwB,CAAC,MAKhC;QACC,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;QAElE,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,CAAC,CAAC;QAC7C,IAAI,QAAQ,IAAI,CAAC;YAAE,OAAO,EAAE,CAAC;QAE7B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;QACvE,MAAM,KAAK,GAAG,CAAC,GAAG,aAAa,GAAG,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CACtB,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,UAAU,EAAE,UAAU,GAAG,MAAM,CAAC,CACnD,CAAC;QAEF,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,KAAK,GAAG,UAAU,EAAE,KAAK,IAAI,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC;YAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,OAAO,CAAC;YAChD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;YAClC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACZ,KAAK,IAAI,CAAC,CAAC;QACb,CAAC;QAED,MAAM,SAAS,GAAG,KAAK,CAAC;QACxB,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAE,GAAG,KAAK,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChB,OAAO,IAAI,CAAC,CAAC;QACf,CAAC;QACD,MAAM,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC;QACjC,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CACpC,CAAC,EACD,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAE,GAAG,IAAI,CACpC,CAAC;QAEF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACjC,KAAK,EAAE,UAAU,GAAG,CAAC;YACrB,MAAM;SACP,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,UAAU,CACd,OAAsB,EACtB,IAAe;QAOf,MAAM,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;QAErD,MAAM,SAAS,GAAG,WAAW,CAAC;QAE9B,iBAAiB;QACjB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACpB,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC;YAC/C,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC;YACnB,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAExB,MAAM,CAAC,IAAI,CACT,kBAAkB,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,UAAU,MAAM;aAC5D,QAAQ,EAAE;aACV,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CACpB,CAAC;QAEF,MAAM,OAAO,GAAmB,OAAO,CAAC,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC;QAEtE,MAAM,sBAAsB,GAAG,CAAC,CAAU,EAAE,EAAE;YAC5C,QAAQ,CAAC,EAAE,CAAC;gBACV,KAAK,OAAO;oBACV,OAAO,YAAY,CAAC,KAAK,CAAC;gBAC5B,KAAK,QAAQ;oBACX,OAAO,YAAY,CAAC,MAAM,CAAC;gBAC7B,KAAK,MAAM,CAAC;gBACZ;oBACE,OAAO,YAAY,CAAC,IAAI,CAAC;YAC7B,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG;YACb,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO;YACtD,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,YAAY,CAAC,KAAK,CAAC,KAAK;YAChD,YAAY,EACV,OAAO,CAAC,YAAY;gBACpB,sBAAsB,CAAC,OAAO,CAAC,QAAQ,IAAI,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC;YACzE,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,IAAI,KAAK;SACtD,CAAC;QAEF,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,WAAW,CAAC,mBAAmB,CAAC;QACzE,MAAM,YAAY,GAChB,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;QAEtE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAC1B,CAAC,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,KAAK,CAC/C,CAAC;QACF,IAAI,YAAY,IAAI,CAAC,IAAI,YAAY,GAAG,SAAS,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CACb,2BAA2B,YAAY,qBAAqB,MAAM,CAAC,OAAO,OAAO,SAAS,GAAG,CAC9F,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,EAAE,CAAC,YAAY,CAAC,CAAC;QAEpC,MAAM,kBAAkB,GACtB,OAAO,CAAC,SAAS,EAAE,SAAS,IAAI,OAAO,CAAC,kBAAkB,IAAI,CAAC,CAAC;QAClE,MAAM,oBAAoB,GACxB,OAAO,CAAC,SAAS,EAAE,WAAW,IAAI,OAAO,CAAC,oBAAoB,IAAI,CAAC,CAAC;QACtE,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,EAAE,YAAY,IAAI,CAAC,CAAC;QAE1D,IAAI,kBAAkB,IAAI,CAAC,IAAI,oBAAoB,IAAI,CAAC,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CACb,gFAAgF,CACjF,CAAC;QACJ,CAAC;QAED,0BAA0B;QAC1B,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CACxC,kBAAkB,EAClB,oBAAoB,EACpB,OAAO,CAAC,QAAQ,IAAI,CAAC,EACrB,MAAM,CAAC,OAAO,EACd,WAAW,CACZ,CAAC;QAEF,sBAAsB;QACtB,MAAM,CAAC,UAAU,CAAC,GAAG,sCAAsC,CACzD,MAAM,EACN,MAAM,EACN,IAAI,CAAC,SAAS,CACf,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,yBAAyB,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAE9D,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAE1E,IAAI,cAAc,GAChB,OAAO,CAAC,cAAc,EAAE,cAAc,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,IAAI,eAAmB,CAAC;QACxB,MAAM,cAAc,GAClB,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,cAAc,EAAE,cAAc,CAAC;QAEnE,IAAI,cAAc,EAAE,CAAC;YACnB,cAAc,GAAG,CAAC,CAAC;YACnB,eAAe,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;YAEtE,IAAI,cAAc,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;gBAC1C,MAAM,CAAC,IAAI,CACT,mCAAmC,cAAc,CAAC,WAAW,EAAE,GAAG,CACnE,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,CAAC,cAAc,EAAE,eAAe,KAAK,SAAS,EAAE,CAAC;YACjE,eAAe,GAAG,IAAI,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QACnE,CAAC;aAAM,CAAC;YACN,cAAc,GAAG,CAAC,CAAC;YACnB,eAAe,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,sCAAsC,CAChE,IAAI,CAAC,UAAU,EACf,IAAI,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EACtB,MAAM,EACN,MAAM,EACN,IAAI,EAAE,CAAC,QAAQ,CAAC,EAChB,MAAM,EACN,cAAc,EACd,MAAM,CAAC,iBAAiB,EACxB,IAAI,CAAC,MAAM,CAAC,SAAS,EACrB,eAAe,EACf,KAAK,EACL,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAC1D,CAAC;QAEF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACxB,MAAM,MAAM,GACV,GAAG,EAAE,QAAQ,KAAK,SAAS;YAC3B,GAAG,EAAE,QAAQ,KAAK,SAAS;YAC3B,CAAC,GAAG,EAAE,SAAS,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,CAAC,CAAC;QACtD,IAAI,UAAkB,CAAC;QACvB,IAAI,UAAkB,CAAC;QACvB,IAAI,GAAG,EAAE,CAAC;YACR,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC7D,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;YAChE,CAAC;YACD,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC;YACvC,IAAI,GAAG,CAAC,QAAQ,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,IAAI,CAAC,EAAE,CAAC;gBAC3C,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;YAC/D,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;YACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;YACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAChC,QAAQ,EACR,OAAO,CAAC,QAAQ,IAAI,CAAC,EACrB,MAAM,CAAC,OAAO,EACd,WAAW,CACZ,CAAC;YACF,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAChC,QAAQ,EACR,OAAO,CAAC,QAAQ,IAAI,CAAC,EACrB,MAAM,CAAC,OAAO,EACd,WAAW,CACZ,CAAC;YACF,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC1C,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YAC3B,UAAU,GAAG,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAC9C,UAAU,GAAG,UAAU,GAAG,KAAK,GAAG,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,CAAC,CAAC;QAC7C,MAAM,mBAAmB,GACvB,MAAM,IAAI,QAAQ,IAAI,WAAW,CAAC,sBAAsB,CAAC;QAE3D,MAAM,eAAe,GAAG,0BAA0B,CAChD,IAAI,EAAE,CAAC,UAAU,CAAC,EAClB,IAAI,EAAE,CAAC,UAAU,CAAC,CACnB,CAAC;QAEF,MAAM,iBAAiB,GAA+B,EAAE,CAAC;QACzD,MAAM,WAAW,GAA6B,EAAE,CAAC;QACjD,MAAM,cAAc,GAA6B,EAAE,CAAC;QACpD,MAAM,SAAS,GAA6B,EAAE,CAAC;QAE/C,WAAW,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;QAE3C,8FAA8F;QAC9F,yEAAyE;QACzE,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACpE,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC,OAAO;iBAC7B,kBAAkB,CAAC,GAAG,CAAC;iBACvB,eAAe,CAAC;gBACf,QAAQ;gBACR,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAC7B,MAAM,EAAE,UAAU;aACnB,CAAC;iBACD,WAAW,EAAE,CAAC;YACjB,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvB,CAAC;QAED,MAAM,eAAe,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QAC3C,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,OAAO;aACzC,kBAAkB,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU,GAAG,CAAC,CAAC;aAC3D,eAAe,CAAC;YACf,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAC5B,QAAQ,EAAE,eAAe,CAAC,SAAS;YACnC,MAAM,EAAE,UAAU;YAClB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAC5B,IAAI,EAAE,kBAAkB;SACzB,CAAC;aACD,WAAW,EAAE,CAAC;QACjB,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAEjC,MAAM,UAAU,GAAG,6BAA6B,CAC9C,MAAM,EACN,IAAI,CAAC,MAAM,CAAC,SAAS,CACtB,CAAC;QACF,MAAM,UAAU,GAAG,6BAA6B,CAC9C,MAAM,EACN,IAAI,CAAC,MAAM,CAAC,SAAS,CACtB,CAAC;QAEF,WAAW,CAAC,IAAI,CACd,iDAAiD,CAC/C,IAAI,CAAC,MAAM,CAAC,SAAS,EACrB,UAAU,EACV,IAAI,CAAC,MAAM,CAAC,SAAS,EACrB,MAAM,CACP,CACF,CAAC;QACF,WAAW,CAAC,IAAI,CACd,iDAAiD,CAC/C,IAAI,CAAC,MAAM,CAAC,SAAS,EACrB,UAAU,EACV,IAAI,CAAC,MAAM,CAAC,SAAS,EACrB,MAAM,CACP,CACF,CAAC;QAEF,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;QACvE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;QAEvE,MAAM,eAAe,GAAG,IAAI,EAAE,CAC5B,IAAI,CAAC,KAAK,CACR,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,oBAAoB,CAAC;YACpE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAC1B,CACF,CAAC;QACF,MAAM,eAAe,GAAG,IAAI,EAAE,CAC5B,IAAI,CAAC,KAAK,CACR,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,oBAAoB,CAAC;YACpE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAC1B,CACF,CAAC;QAEF,MAAM,YAAY,GAA6B,EAAE,CAAC;QAClD,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,cAAc,CAAC,IAAI,CACjB,aAAa,CAAC,QAAQ,CAAC;gBACrB,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBACjC,QAAQ,EAAE,UAAU;gBACpB,QAAQ,EAAE,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;aAC7C,CAAC,CACH,CAAC;YACF,cAAc,CAAC,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC,CAAC;YAC7D,YAAY,CAAC,IAAI,CACf,6BAA6B,CAC3B,UAAU,EACV,IAAI,CAAC,MAAM,CAAC,SAAS,EACrB,IAAI,CAAC,MAAM,CAAC,SAAS,CACtB,CACF,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,cAAc,CAAC,IAAI,CACjB,aAAa,CAAC,QAAQ,CAAC;gBACrB,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBACjC,QAAQ,EAAE,UAAU;gBACpB,QAAQ,EAAE,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;aAC7C,CAAC,CACH,CAAC;YACF,cAAc,CAAC,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC,CAAC;YAC7D,YAAY,CAAC,IAAI,CACf,6BAA6B,CAC3B,UAAU,EACV,IAAI,CAAC,MAAM,CAAC,SAAS,EACrB,IAAI,CAAC,MAAM,CAAC,SAAS,CACtB,CACF,CAAC;QACJ,CAAC;QAED,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;QAClE,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;QAClE,MAAM,YAAY,GAChB,+BAA+B,CAAC,gBAAgB,CAAC;YACjD,+BAA+B,CAAC,gBAAgB,CAAC,CAAC;QACpD,MAAM,uBAAuB,GAAG,YAAY;YAC1C,CAAC,CAAC,6BAA6B,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC9D,CAAC,CAAC,IAAI,CAAC;QAET,MAAM,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACrE,MAAM,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAErE,MAAM,oBAAoB,GAAG,+BAA+B,CAC1D,IAAI,EAAE,CAAC,UAAU,CAAC,EAClB,IAAI,EAAE,CAAC,UAAU,CAAC,EAClB,UAAU,EACV,IAAI,CAAC,SAAS,CACf,CAAC;QAEF,IAAI,mBAAmB,EAAE,CAAC;YACxB,MAAM,SAAS,GAAG,GAAI,CAAC,SAAS,IAAI,GAAG,CAAC;YACxC,MAAM,IAAI,GAAG,IAAI,CAAC,wBAAwB,CAAC;gBACzC,WAAW,EAAE,QAAQ;gBACrB,UAAU;gBACV,UAAU;gBACV,SAAS;aACV,CAAC,CAAC;YACH,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACxD,CAAC;YAED,MAAM,aAAa,GAAG,cAAc,CAClC,UAAU,EACV,gBAAgB,EAChB,IAAI,CAAC,SAAS,CACf,CAAC,CAAC,CAAC,CAAC;YACL,MAAM,aAAa,GAAG,cAAc,CAClC,UAAU,EACV,gBAAgB,EAChB,IAAI,CAAC,SAAS,CACf,CAAC,CAAC,CAAC,CAAC;YAEL,MAAM,sBAAsB,GAAG;gBAC7B,OAAO,EAAE,eAAe;gBACxB,OAAO,EAAE,eAAe;gBACxB,QAAQ;gBACR,oBAAoB,EAAE,CAAC;gBACvB,gBAAgB,EAAE,IAAI;aACvB,CAAC;YAEF,MAAM,cAAc,GAAG,MAAO,OAAO,CAAC,OAAe;iBAClD,oBAAoB,CAAC,sBAAsB,CAAC;iBAC5C,QAAQ,CAAC;gBACR,QAAQ,EAAE,eAAe,CAAC,SAAS;gBACnC,MAAM,EAAE,UAAU;gBAClB,uBAAuB;gBACvB,UAAU;gBACV,UAAU;gBACV,QAAQ;gBACR,QAAQ;gBACR,UAAU,EAAE,MAAM;gBAClB,UAAU,EAAE,MAAM;gBAClB,aAAa,EAAE,aAAa;gBAC5B,aAAa,EAAE,aAAa;gBAC5B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAC7B,aAAa,EAAE,gBAAgB;gBAC/B,aAAa,EAAE,gBAAgB;gBAC/B,cAAc,EAAE,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBACvD,OAAO,EAAE,IAAI,CAAC,SAAS;aACjB,CAAC;iBACR,iBAAiB,CAAC,oBAAoB,CAAC;iBACvC,WAAW,EAAE,CAAC;YACjB,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,MAAM,kBAAkB,GAAG,oBAAoB,CAAC;gBAC9C,QAAQ,EAAE,UAAU;gBACpB,QAAQ,EAAE,UAAU;gBACpB,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY;aAC/D,CAAC,CAAC;YAEH,MAAM,cAAc,GAAG;gBACrB,OAAO,EAAE,eAAe;gBACxB,OAAO,EAAE,eAAe;gBACxB,QAAQ;gBACR,oBAAoB,EAAE,CAAC;gBACvB,kBAAkB;aACnB,CAAC;YAEF,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,OAAO;iBACzC,uBAAuB,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;iBACvD,QAAQ,CAAC;gBACR,QAAQ,EAAE,eAAe,CAAC,SAAS;gBACnC,MAAM,EAAE,UAAU;gBAClB,uBAAuB;gBACvB,UAAU;gBACV,UAAU;gBACV,QAAQ;gBACR,QAAQ;gBACR,UAAU,EAAE,MAAM;gBAClB,UAAU,EAAE,MAAM;gBAClB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAC7B,aAAa,EAAE,gBAAgB;gBAC/B,aAAa,EAAE,gBAAgB;gBAC/B,cAAc,EAAE,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBACvD,OAAO,EAAE,IAAI,CAAC,SAAS;aACjB,CAAC;iBACR,iBAAiB,CAAC,oBAAoB,CAAC;iBACvC,WAAW,EAAE,CAAC;YACjB,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;gBACxD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;YACxE,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,GAAG,CAAC,CAAC;YACnD,MAAM,iBAAiB,GAAG,IAAI,EAAE,CAAC,WAAW,CAAC,CAAC;YAE9C,MAAM,OAAO,GAAG,SAAS,CAAC;YAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC;YAEtB,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;YACrE,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;YAEvE,4EAA4E;YAC5E,SAAS,CAAC,IAAI,CACZ,aAAa,CAAC,QAAQ,CAAC;gBACrB,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBACjC,QAAQ,EAAE,WAAW;gBACrB,QAAQ,EAAE,WAAW;aACtB,CAAC,CACH,CAAC;YACF,SAAS,CAAC,IAAI,CAAC,2BAA2B,CAAC,WAAW,CAAC,CAAC,CAAC;YAEzD,MAAM,MAAM,GAAG,MAAO,OAAO,CAAC,OAAe;iBAC1C,KAAK,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;iBACnD,eAAe,CAAC;gBACf,MAAM,EAAE,UAAU;gBAClB,QAAQ;gBACR,QAAQ;gBACR,UAAU,EAAE,MAAM;gBAClB,UAAU,EAAE,MAAM;gBAClB,aAAa,EAAE,gBAAgB;gBAC/B,aAAa,EAAE,gBAAgB;gBAC/B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAC3B,WAAW;gBACX,YAAY;gBACZ,uBAAuB;gBACvB,MAAM,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBACnD,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,eAAe;aAC7B,CAAC;iBACD,iBAAiB,CAAC,oBAAoB,CAAC;iBACvC,WAAW,EAAE,CAAC;YAEjB,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC;QAED,yDAAyD;QACzD,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,SAAS,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,cAAc,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;QACvC,CAAC;QAED,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpC,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACvC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,YAAY,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC;QAE9C,OAAO;YACL,MAAM,EAAE,UAAU;YAClB,YAAY;YACZ,iBAAiB;YACjB,OAAO,EAAE,CAAC,eAAe,CAAC;SAC3B,CAAC;IACJ,CAAC"}
@@ -1,2 +1,3 @@
1
- export * from './DLMMManager';
1
+ export * from "./DLMMManager";
2
+ export * from "./presets";
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/strategies/meteora/index.ts"],"names":[],"mappings":"AACA,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/strategies/meteora/index.ts"],"names":[],"mappings":"AACA,cAAc,eAAe,CAAC;AAE9B,cAAc,WAAW,CAAC"}
@@ -1,3 +1,4 @@
1
1
  // Meteora Protocol Strategies
2
- export * from './DLMMManager';
2
+ export * from "./DLMMManager";
3
+ export * from "./presets";
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/strategies/meteora/index.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/strategies/meteora/index.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,cAAc,eAAe,CAAC;AAE9B,cAAc,WAAW,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { StrategyType } from "@meteora-ag/dlmm";
2
+ export interface MeteoraConfig {
3
+ binStep: number;
4
+ width: number;
5
+ strategyType: StrategyType;
6
+ feeBps?: number;
7
+ }
8
+ export declare const MeteoraPresets: {
9
+ readonly MEMECOIN_VOLATILE: MeteoraConfig;
10
+ readonly ANTI_SNIPE_FEE: MeteoraConfig;
11
+ readonly COMMUNITY_TOKEN: MeteoraConfig;
12
+ readonly STABLE_PEGGED: MeteoraConfig;
13
+ };
14
+ export declare const LaunchStyles: {
15
+ readonly VIRAL: {
16
+ binStep: number;
17
+ width: number;
18
+ strategy: "Spot";
19
+ };
20
+ readonly FAIR_LAUNCH: (date: Date) => {
21
+ binStep: number;
22
+ width: number;
23
+ strategy: "Spot";
24
+ activationDate: Date;
25
+ };
26
+ readonly STABLE: {
27
+ binStep: number;
28
+ width: number;
29
+ strategy: "Spot";
30
+ };
31
+ };
32
+ //# sourceMappingURL=presets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../src/strategies/meteora/presets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,YAAY,CAAC;IAE3B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,cAAc;gCAKpB,aAAa;6BAOb,aAAa;8BAMb,aAAa;4BAMb,aAAa;CACV,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;iCAOH,IAAI;;;;;;;;;;;CAahB,CAAC"}
@@ -0,0 +1,43 @@
1
+ import { StrategyType } from "@meteora-ag/dlmm";
2
+ export const MeteoraPresets = {
3
+ MEMECOIN_VOLATILE: {
4
+ binStep: 100,
5
+ width: 80,
6
+ strategyType: StrategyType.Spot,
7
+ },
8
+ ANTI_SNIPE_FEE: {
9
+ binStep: 100,
10
+ width: 80,
11
+ strategyType: StrategyType.Spot,
12
+ feeBps: 500,
13
+ },
14
+ COMMUNITY_TOKEN: {
15
+ binStep: 25,
16
+ width: 60,
17
+ strategyType: StrategyType.Spot,
18
+ },
19
+ STABLE_PEGGED: {
20
+ binStep: 5,
21
+ width: 10,
22
+ strategyType: StrategyType.BidAsk,
23
+ },
24
+ };
25
+ export const LaunchStyles = {
26
+ VIRAL: {
27
+ binStep: 100,
28
+ width: 80,
29
+ strategy: "Spot",
30
+ },
31
+ FAIR_LAUNCH: (date) => ({
32
+ binStep: 100,
33
+ width: 80,
34
+ strategy: "Spot",
35
+ activationDate: date,
36
+ }),
37
+ STABLE: {
38
+ binStep: 25,
39
+ width: 40,
40
+ strategy: "Spot",
41
+ },
42
+ };
43
+ //# sourceMappingURL=presets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presets.js","sourceRoot":"","sources":["../../../src/strategies/meteora/presets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAWhD,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,iBAAiB,EAAE;QACjB,OAAO,EAAE,GAAG;QACZ,KAAK,EAAE,EAAE;QACT,YAAY,EAAE,YAAY,CAAC,IAAI;KACf;IAElB,cAAc,EAAE;QACd,OAAO,EAAE,GAAG;QACZ,KAAK,EAAE,EAAE;QACT,YAAY,EAAE,YAAY,CAAC,IAAI;QAC/B,MAAM,EAAE,GAAG;KACK;IAElB,eAAe,EAAE;QACf,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,EAAE;QACT,YAAY,EAAE,YAAY,CAAC,IAAI;KACf;IAElB,aAAa,EAAE;QACb,OAAO,EAAE,CAAC;QACV,KAAK,EAAE,EAAE;QACT,YAAY,EAAE,YAAY,CAAC,MAAM;KACjB;CACV,CAAC;AAEX,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,KAAK,EAAE;QACL,OAAO,EAAE,GAAG;QACZ,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,MAAM;KACQ;IAE1B,WAAW,EAAE,CAAC,IAAU,EAAE,EAAE,CAC1B,CAAC;QACC,OAAO,EAAE,GAAG;QACZ,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,MAAM;QAChB,cAAc,EAAE,IAAI;KACK,CAAA;IAE7B,MAAM,EAAE;QACN,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,MAAM;KACQ;CAClB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "solana-meme-kit",
3
- "version": "0.3.1",
3
+ "version": "0.4.1",
4
4
  "description": "The abstracted shovel for launching professional Solana tokens. Automated Low-Cost OpenBook Markets and Jito Bundles.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",