outsmart 2.0.0-alpha.13 → 2.0.0-alpha.14
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/dex/percolator/grpc-keeper.d.ts +1 -0
- package/dist/dex/percolator/grpc-keeper.d.ts.map +1 -1
- package/dist/dex/percolator/grpc-keeper.js +52 -20
- package/dist/dex/percolator/grpc-keeper.js.map +1 -1
- package/dist/dex/percolator/ws-keeper.d.ts +6 -0
- package/dist/dex/percolator/ws-keeper.d.ts.map +1 -1
- package/dist/dex/percolator/ws-keeper.js +74 -87
- package/dist/dex/percolator/ws-keeper.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grpc-keeper.d.ts","sourceRoot":"","sources":["../../../src/dex/percolator/grpc-keeper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AASH,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EAChB,eAAe,EAChB,MAAM,aAAa,CAAC;AAGrB,YAAY,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAC1C,MAAM,MAAM,iBAAiB,GAAG,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"grpc-keeper.d.ts","sourceRoot":"","sources":["../../../src/dex/percolator/grpc-keeper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AASH,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EAChB,eAAe,EAChB,MAAM,aAAa,CAAC;AAGrB,YAAY,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAC1C,MAAM,MAAM,iBAAiB,GAAG,eAAe,CAAC;AAiOhD,qBAAa,UAAU;IACrB,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,IAAI,CAA8B;IAC1C,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,gBAAgB,CAAsF;IAC9G,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,YAAY,CAA+C;IACnE,OAAO,CAAC,YAAY,CAAS;gBAEjB,KAAK,EAAE,gBAAgB,EAAE,EAAE,IAAI,GAAE,iBAAsB;IAc7D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAc3B,QAAQ;;;;;;;YAcM,WAAW;IAiGzB,OAAO,CAAC,iBAAiB;YA4BX,cAAc;YAkDd,WAAW;IA0FzB,OAAO,CAAC,oBAAoB;YAUd,mBAAmB;YAwCnB,iBAAiB;YAUjB,YAAY;IAiB1B,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,qBAAqB;YAQf,WAAW;YASX,YAAY;YAYZ,cAAc;IA8B5B,OAAO,CAAC,GAAG;CAKZ"}
|
|
@@ -98,6 +98,7 @@ const VAULT_BASED_DEXES = [
|
|
|
98
98
|
"raydium-cpmm",
|
|
99
99
|
"raydium-amm-v4",
|
|
100
100
|
"pumpswap",
|
|
101
|
+
"meteora-damm-v2",
|
|
101
102
|
];
|
|
102
103
|
// ---------------------------------------------------------------------------
|
|
103
104
|
// SPL Token balance parser
|
|
@@ -197,11 +198,16 @@ function launchLabPriceFromData(data, decA, decB) {
|
|
|
197
198
|
return 0;
|
|
198
199
|
return (Number(virtualB) / Number(virtualA)) * 10 ** (decA - decB);
|
|
199
200
|
}
|
|
200
|
-
function
|
|
201
|
-
return
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
201
|
+
function decodeDammV2PoolInfo(data) {
|
|
202
|
+
return {
|
|
203
|
+
kind: "vault",
|
|
204
|
+
mint0: new web3_js_1.PublicKey(data.slice(168, 200)),
|
|
205
|
+
mint1: new web3_js_1.PublicKey(data.slice(200, 232)),
|
|
206
|
+
vault0: new web3_js_1.PublicKey(data.slice(232, 264)),
|
|
207
|
+
vault1: new web3_js_1.PublicKey(data.slice(264, 296)),
|
|
208
|
+
decimals0: 0, // fetched from mint accounts at init
|
|
209
|
+
decimals1: 0,
|
|
210
|
+
};
|
|
205
211
|
}
|
|
206
212
|
// ---------------------------------------------------------------------------
|
|
207
213
|
// GrpcKeeper — the main keeper class
|
|
@@ -426,7 +432,16 @@ class GrpcKeeper {
|
|
|
426
432
|
}
|
|
427
433
|
else if (mapping.role === "pool") {
|
|
428
434
|
// Pool state update
|
|
429
|
-
|
|
435
|
+
let price;
|
|
436
|
+
if (watcher.config.dex === "meteora-dlmm") {
|
|
437
|
+
price = await this.getDlmmPrice(watcher);
|
|
438
|
+
}
|
|
439
|
+
else if (watcher.config.dex === "meteora-dbc") {
|
|
440
|
+
price = await this.getDbcPrice(watcher.config.pool);
|
|
441
|
+
}
|
|
442
|
+
else {
|
|
443
|
+
price = this.extractPoolStatePrice(watcher.config.dex, accountData, watcher.poolInfo);
|
|
444
|
+
}
|
|
430
445
|
await this.maybePushPrice(watcher, price);
|
|
431
446
|
}
|
|
432
447
|
}
|
|
@@ -450,6 +465,12 @@ class GrpcKeeper {
|
|
|
450
465
|
if (VAULT_BASED_DEXES.includes(dex)) {
|
|
451
466
|
poolInfo = this.decodeVaultBasedPool(dex, poolData);
|
|
452
467
|
const vaultInfo = poolInfo;
|
|
468
|
+
// For DAMM v2, decimals need to be fetched from mint accounts
|
|
469
|
+
if (vaultInfo.decimals0 === 0 && vaultInfo.decimals1 === 0) {
|
|
470
|
+
const [d0, d1] = await this.fetchMintDecimals(connection, vaultInfo.mint0, vaultInfo.mint1);
|
|
471
|
+
vaultInfo.decimals0 = d0;
|
|
472
|
+
vaultInfo.decimals1 = d1;
|
|
473
|
+
}
|
|
453
474
|
// Determine base/quote orientation
|
|
454
475
|
if (vaultInfo.mint0.toBase58() === WSOL_MINT)
|
|
455
476
|
baseIdx = 1;
|
|
@@ -500,6 +521,10 @@ class GrpcKeeper {
|
|
|
500
521
|
const price = await this.getDlmmPrice(watcher);
|
|
501
522
|
await this.maybePushPrice(watcher, price);
|
|
502
523
|
}
|
|
524
|
+
else if (dex === "meteora-dbc") {
|
|
525
|
+
const price = await this.getDbcPrice(poolCfg.pool);
|
|
526
|
+
await this.maybePushPrice(watcher, price);
|
|
527
|
+
}
|
|
503
528
|
else {
|
|
504
529
|
const price = this.extractPoolStatePrice(dex, poolData, poolInfo);
|
|
505
530
|
await this.maybePushPrice(watcher, price);
|
|
@@ -511,6 +536,7 @@ class GrpcKeeper {
|
|
|
511
536
|
case "raydium-cpmm": return decodeCpmmPoolInfo(data);
|
|
512
537
|
case "raydium-amm-v4": return decodeAmmV4PoolInfo(data);
|
|
513
538
|
case "pumpswap": return decodePumpSwapPoolInfo(data);
|
|
539
|
+
case "meteora-damm-v2": return decodeDammV2PoolInfo(data);
|
|
514
540
|
default: throw new Error(`Not a vault-based DEX: ${dex}`);
|
|
515
541
|
}
|
|
516
542
|
}
|
|
@@ -520,19 +546,18 @@ class GrpcKeeper {
|
|
|
520
546
|
return decodeClmmPoolInfo(data);
|
|
521
547
|
case "raydium-launchlab":
|
|
522
548
|
return decodeLaunchLabPoolInfo(data);
|
|
523
|
-
case "meteora-damm-v2": {
|
|
524
|
-
const mint0 = new web3_js_1.PublicKey(data.slice(56, 88));
|
|
525
|
-
const mint1 = new web3_js_1.PublicKey(data.slice(88, 120));
|
|
526
|
-
const [dec0, dec1] = await this.fetchMintDecimals(connection, mint0, mint1);
|
|
527
|
-
return { kind: "pool-state", mint0, mint1, decimals0: dec0, decimals1: dec1 };
|
|
528
|
-
}
|
|
529
549
|
case "meteora-dbc": {
|
|
530
|
-
|
|
531
|
-
const
|
|
532
|
-
const
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
550
|
+
// Resolve mints from vault token accounts (offsets 168, 200)
|
|
551
|
+
const baseVault = new web3_js_1.PublicKey(data.slice(168, 200));
|
|
552
|
+
const quoteVault = new web3_js_1.PublicKey(data.slice(200, 232));
|
|
553
|
+
const [bvAcct, qvAcct] = await Promise.all([
|
|
554
|
+
connection.getAccountInfo(baseVault),
|
|
555
|
+
connection.getAccountInfo(quoteVault),
|
|
556
|
+
]);
|
|
557
|
+
if (!bvAcct || !qvAcct)
|
|
558
|
+
throw new Error("DBC vault account(s) not found");
|
|
559
|
+
const baseMint = new web3_js_1.PublicKey(bvAcct.data.slice(0, 32));
|
|
560
|
+
const quoteMint = new web3_js_1.PublicKey(qvAcct.data.slice(0, 32));
|
|
536
561
|
const [dec0, dec1] = await this.fetchMintDecimals(connection, baseMint, quoteMint);
|
|
537
562
|
return { kind: "pool-state", mint0: baseMint, mint1: quoteMint, decimals0: dec0, decimals1: dec1 };
|
|
538
563
|
}
|
|
@@ -587,11 +612,18 @@ class GrpcKeeper {
|
|
|
587
612
|
switch (dex) {
|
|
588
613
|
case "raydium-clmm": return clmmPriceFromData(data, info.decimals0, info.decimals1);
|
|
589
614
|
case "raydium-launchlab": return launchLabPriceFromData(data, info.decimals0, info.decimals1);
|
|
590
|
-
case "meteora-damm-v2": return dammV2PriceFromData(data, info.decimals0, info.decimals1);
|
|
591
|
-
case "meteora-dbc": return dbcPriceFromData(data, info.decimals0, info.decimals1);
|
|
592
615
|
default: throw new Error(`No pool-state price extractor for: ${dex}`);
|
|
593
616
|
}
|
|
594
617
|
}
|
|
618
|
+
async getDbcPrice(poolAddress) {
|
|
619
|
+
const { getDexAdapter } = await Promise.resolve().then(() => __importStar(require("../../dex")));
|
|
620
|
+
await Promise.resolve().then(() => __importStar(require("../../dex/meteora-dbc")));
|
|
621
|
+
const adapter = getDexAdapter("meteora-dbc");
|
|
622
|
+
if (!adapter.getPrice)
|
|
623
|
+
throw new Error("meteora-dbc adapter missing getPrice()");
|
|
624
|
+
const priceInfo = await adapter.getPrice(poolAddress);
|
|
625
|
+
return priceInfo.price;
|
|
626
|
+
}
|
|
595
627
|
async getDlmmPrice(watcher) {
|
|
596
628
|
if (!watcher.dlmmPool)
|
|
597
629
|
throw new Error("DLMM pool not initialized");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grpc-keeper.js","sourceRoot":"","sources":["../../../src/dex/percolator/grpc-keeper.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"grpc-keeper.js","sourceRoot":"","sources":["../../../src/dex/percolator/grpc-keeper.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAGyB;AACzB,iDAAgF;AAChF,uCAA8C;AAY9C,wDAAwD;AACxD,kFAAkF;AAClF,6EAA6E;AAE7E,8EAA8E;AAC9E,0BAA0B;AAC1B,8EAA8E;AAE9E,SAAS,kBAAkB;IACzB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IACjC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;IAC7C,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,uFAAuF,CACxF,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;AACzB,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAgB;IAC5C,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,uBAAc,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,CAAC;QACD,OAAO,uBAAc,CAAC;IACxB,CAAC;IACD,OAAO,IAAA,sBAAa,GAAE,CAAC;AACzB,CAAC;AAED,8EAA8E;AAC9E,qCAAqC;AACrC,8EAA8E;AAE9E,MAAM,SAAS,GAAG,6CAA6C,CAAC;AAEhE,8EAA8E;AAC9E,8DAA8D;AAC9D,uDAAuD;AACvD,8EAA8E;AAE9E,wEAAwE;AACxE,KAAK,UAAU,kBAAkB;IAC/B,yDAAc,aAAa,IAAE;AAC/B,CAAC;AA0BD,MAAM,iBAAiB,GAAc;IACnC,cAAc;IACd,gBAAgB;IAChB,UAAU;IACV,iBAAiB;CAClB,CAAC;AAEF,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E,SAAS,oBAAoB,CAAC,IAAyB;IACrD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,OAAO,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;AACjC,CAAC;AAED,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAE9E,SAAS,UAAU,CAAC,IAAY,EAAE,MAAc;IAC9C,MAAM,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC5C,OAAO,EAAE,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,mBAAmB,CAAC,YAAoB,EAAE,OAAe,EAAE,QAAgB;IAClF,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IACjD,MAAM,KAAK,GAAG,SAAS,GAAG,SAAS,CAAC;IACpC,OAAO,KAAK,GAAG,EAAE,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,UAAU,CACjB,WAAmB,EACnB,YAAoB,EACpB,YAAoB,EACpB,aAAqB;IAErB,IAAI,WAAW,KAAK,EAAE;QAAE,OAAO,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,YAAY,CAAC;IACtD,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,aAAa,CAAC;IACzD,OAAO,KAAK,GAAG,IAAI,CAAC;AACtB,CAAC;AAED,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAE9E,SAAS,kBAAkB,CAAC,IAAY;IACtC,OAAO;QACL,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC1C,MAAM,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC3C,KAAK,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1C,KAAK,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1C,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;QAC9B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;KAC/B,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY;IACvC,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAChF,OAAO;QACL,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC3C,MAAM,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC3C,KAAK,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1C,KAAK,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1C,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;QACnD,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;KACpD,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY;IAC1C,OAAO;QACL,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC3C,MAAM,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC3C,KAAK,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACxC,KAAK,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACzC,SAAS,EAAE,CAAC;QACZ,SAAS,EAAE,CAAC;KACb,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY;IACtC,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACzC,KAAK,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1C,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;QAC9B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;KAC/B,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAY;IAC3C,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACnF,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1C,KAAK,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1C,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;KAC9B,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,8CAA8C;AAC9C,8EAA8E;AAE9E,SAAS,iBAAiB,CAAC,IAAY,EAAE,IAAY,EAAE,IAAY;IACjE,OAAO,mBAAmB,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY,EAAE,IAAY,EAAE,IAAY;IACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IAC1C,IAAI,QAAQ,KAAK,EAAE;QAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY;IACxC,OAAO;QACL,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1C,KAAK,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1C,MAAM,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC3C,MAAM,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC3C,SAAS,EAAE,CAAC,EAAE,qCAAqC;QACnD,SAAS,EAAE,CAAC;KACb,CAAC;AACJ,CAAC;AAmBD,8EAA8E;AAC9E,qCAAqC;AACrC,8EAA8E;AAE9E,MAAa,UAAU;IACb,KAAK,CAAqB;IAC1B,IAAI,CAA8B;IAClC,OAAO,CAAoB;IAC3B,QAAQ,GAAkC,IAAI,GAAG,EAAE,CAAC;IAC5D,oEAAoE;IAC5D,gBAAgB,GAA4E,IAAI,GAAG,EAAE,CAAC;IACtG,OAAO,GAAG,KAAK,CAAC;IAChB,SAAS,GAAG,CAAC,CAAC;IACd,UAAU,GAAG,CAAC,CAAC;IACf,UAAU,GAAQ,IAAI,CAAC;IACvB,UAAU,GAAQ,IAAI,CAAC;IACvB,YAAY,GAA0C,IAAI,CAAC;IAC3D,YAAY,GAAG,KAAK,CAAC;IAE7B,YAAY,KAAyB,EAAE,OAA0B,EAAE;QACjE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG;YACV,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,QAAQ;YACjC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,MAAM;YACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,KAAK;SACjD,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,2BAAiB,EAAE,CAAC;IACzC,CAAC;IAED,0EAA0E;IAC1E,aAAa;IACb,0EAA0E;IAE1E,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;QAC5C,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,qBAAqB,CAAC,CAAC;QAE9D,6DAA6D;QAC7D,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAClC,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,OAAO,CAAC,GAAG,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC3F,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QAED,0BAA0B;QAC1B,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAEzB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,QAAQ,CAAC,IAAI,2CAA2C,CAAC,CAAC;QACrF,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACjC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAC3B,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC;gBAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;YAC1C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,4BAA4B,IAAI,CAAC,SAAS,YAAY,IAAI,CAAC,UAAU,YAAY,CAAC,CAAC;IACtG,CAAC;IAED,QAAQ;QACN,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;YAClC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,SAAS,EAAE,MAAe;SAC3B,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,6BAA6B;IAC7B,0EAA0E;IAElE,KAAK,CAAC,WAAW;QACvB,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,kBAAkB,EAAE,CAAC;QAC7C,MAAM,MAAM,GAAG,CAAC,wDAAa,8BAA8B,GAAC,CAAC,CAAC,OAAO,CAAC;QAEtE,IAAI,CAAC,UAAU,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE;YACxC,iCAAiC,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;SACpD,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;QACjD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QAEzB,0EAA0E;QAC1E,MAAM,oBAAoB,GAAwB,EAAE,CAAC;QAErD,KAAK,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC9C,uEAAuE;QACzE,CAAC;QAED,0CAA0C;QAC1C,MAAM,cAAc,GAAa,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC;QAEnE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,oBAAoB,CAAC,iBAAiB,CAAC,GAAG;gBACxC,OAAO,EAAE,cAAc;gBACvB,KAAK,EAAE,EAAE;gBACT,OAAO,EAAE,EAAE;aACZ,CAAC;QACJ,CAAC;QAED,MAAM,gBAAgB,GAAG;YACvB,QAAQ,EAAE,oBAAoB;YAC9B,KAAK,EAAE,EAAE;YACT,YAAY,EAAE,EAAE;YAChB,kBAAkB,EAAE,EAAE;YACtB,MAAM,EAAE,EAAE;YACV,UAAU,EAAE,EAAE;YACd,iBAAiB,EAAE,EAAE;YACrB,KAAK,EAAE,EAAE;YACT,UAAU,EAAE,CAAC,EAAE,YAAY;SAC5B,CAAC;QAEF,0BAA0B;QAC1B,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,GAAQ,EAAE,EAAE;gBAC1C,IAAI,GAAG;oBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;oBAChB,OAAO,EAAE,CAAC;YACjB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,qBAAqB,cAAc,CAAC,MAAM,sBAAsB,CAAC,CAAC;QAEpF,sBAAsB;QACtB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAS,EAAE,EAAE;YAC9B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACtC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,uBAAuB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBACvD,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,+CAA+C;QAC/C,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAQ,EAAE,EAAE;YAC9B,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,kBAAkB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAClD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACpB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;YAC1C,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;YAC5C,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,kCAAkC;QAClC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;YACnC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU;gBAAE,OAAO;YAC9C,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG;oBAClB,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE;oBACf,QAAQ,EAAE,EAAE;oBACZ,iBAAiB,EAAE,EAAE;oBACrB,YAAY,EAAE,EAAE;oBAChB,kBAAkB,EAAE,EAAE;oBACtB,MAAM,EAAE,EAAE;oBACV,UAAU,EAAE,EAAE;oBACd,KAAK,EAAE,EAAE;oBACT,KAAK,EAAE,EAAE;iBACV,CAAC;gBACF,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAC/C,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,CAAC;QACH,CAAC,EAAE,MAAM,CAAC,CAAC;IACb,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,YAAY;YAAE,OAAO;QAC/C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEzB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACjC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,qBAAqB,IAAI,CAAC,IAAI,CAAC,gBAAgB,OAAO,CAAC,CAAC;QAEzE,UAAU,CAAC,KAAK,IAAI,EAAE;YACpB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,OAAO;YAC1B,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;gBACzB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;YAC5C,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,uBAAuB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBACvD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,CAAC;QACH,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACjC,CAAC;IAED,0EAA0E;IAC1E,+BAA+B;IAC/B,0EAA0E;IAElE,KAAK,CAAC,cAAc,CAAC,IAAS;QACpC,wBAAwB;QACxB,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO;QAEtB,iBAAiB;QACjB,IAAI,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAE9D,0CAA0C;YAC1C,MAAM,YAAY,GAAG,IAAI,mBAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;YAE9D,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACxD,IAAI,CAAC,OAAO;gBAAE,OAAO;YAErB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACtD,IAAI,CAAC,OAAO;gBAAE,OAAO;YAErB,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAE9C,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3D,uBAAuB;gBACvB,MAAM,OAAO,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;gBAClD,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC9B,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC;gBAClC,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC;gBAClC,CAAC;gBACD,MAAM,IAAI,GAAG,OAAO,CAAC,QAA8B,CAAC;gBACpD,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBACpD,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5C,CAAC;iBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACnC,oBAAoB;gBACpB,IAAI,KAAa,CAAC;gBAClB,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,cAAc,EAAE,CAAC;oBAC1C,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;gBAC3C,CAAC;qBAAM,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,aAAa,EAAE,CAAC;oBAChD,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACtD,CAAC;qBAAM,CAAC;oBACN,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,QAA6B,CAAC,CAAC;gBAC7G,CAAC;gBACD,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,oCAAoC;IACpC,0EAA0E;IAElE,KAAK,CAAC,WAAW,CAAC,OAAyB;QACjD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QACrD,MAAM,UAAU,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,IAAI,mBAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACxB,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QAEhD,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,OAAO,GAAG,CAAC,CAAC;QAE9G,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAE7E,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC;QAClC,IAAI,QAAkB,CAAC;QACvB,IAAI,OAAO,GAAG,CAAC,CAAC;QAEhB,IAAI,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACpC,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YACpD,MAAM,SAAS,GAAG,QAA8B,CAAC;YAEjD,8DAA8D;YAC9D,IAAI,SAAS,CAAC,SAAS,KAAK,CAAC,IAAI,SAAS,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;gBAC3D,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;gBAC5F,SAAS,CAAC,SAAS,GAAG,EAAE,CAAC;gBACzB,SAAS,CAAC,SAAS,GAAG,EAAE,CAAC;YAC3B,CAAC;YAED,mCAAmC;YACnC,IAAI,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,SAAS;gBAAE,OAAO,GAAG,CAAC,CAAC;YAE1D,+BAA+B;YAC/B,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACjC,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC;gBAC3C,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC;aAC5C,CAAC,CAAC;YACH,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAE9D,MAAM,OAAO,GAAqB;gBAChC,MAAM,EAAE,OAAO;gBACf,QAAQ;gBACR,WAAW,EAAE,EAAE;gBACf,UAAU;gBACV,aAAa,EAAE,oBAAoB,CAAC,EAAE,CAAC,IAAI,CAAC;gBAC5C,aAAa,EAAE,oBAAoB,CAAC,EAAE,CAAC,IAAI,CAAC;gBAC5C,OAAO;aACR,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAEhC,gDAAgD;YAChD,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC9C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC1E,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YAE1E,qBAAqB;YACrB,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAChE,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAEnF,MAAM,OAAO,GAAqB;gBAChC,MAAM,EAAE,OAAO;gBACf,QAAQ;gBACR,WAAW,EAAE,EAAE;gBACf,UAAU;gBACV,aAAa,EAAE,EAAE;gBACjB,aAAa,EAAE,EAAE;gBACjB,OAAO,EAAE,CAAC;aACX,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAEhC,8CAA8C;YAC9C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;YAE3E,qBAAqB;YACrB,IAAI,GAAG,KAAK,cAAc,EAAE,CAAC;gBAC3B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBACnE,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;gBACrC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;gBAC/C,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5C,CAAC;iBAAM,IAAI,GAAG,KAAK,aAAa,EAAE,CAAC;gBACjC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACnD,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5C,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,QAAQ,EAAE,QAA6B,CAAC,CAAC;gBACvF,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;IACH,CAAC;IAEO,oBAAoB,CAAC,GAAY,EAAE,IAAY;QACrD,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,cAAc,CAAC,CAAC,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACrD,KAAK,gBAAgB,CAAC,CAAC,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC;YACxD,KAAK,UAAU,CAAC,CAAC,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAC;YACrD,KAAK,iBAAiB,CAAC,CAAC,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC;YAC1D,OAAO,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,GAAY,EACZ,IAAY,EACZ,UAAsB,EACtB,WAAmB;QAEnB,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,cAAc;gBACjB,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAClC,KAAK,mBAAmB;gBACtB,OAAO,uBAAuB,CAAC,IAAI,CAAC,CAAC;YACvC,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,6DAA6D;gBAC7D,MAAM,SAAS,GAAG,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;gBACtD,MAAM,UAAU,GAAG,IAAI,mBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;gBACvD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;oBACzC,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC;oBACpC,UAAU,CAAC,cAAc,CAAC,UAAU,CAAC;iBACtC,CAAC,CAAC;gBACH,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM;oBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;gBAC1E,MAAM,QAAQ,GAAG,IAAI,mBAAS,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;gBACzD,MAAM,SAAS,GAAG,IAAI,mBAAS,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;gBAC1D,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;gBACnF,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;YACrG,CAAC;YACD,KAAK,cAAc,CAAC,CAAC,CAAC;gBACpB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;gBAClE,OAAO;oBACL,IAAI,EAAE,YAAY;oBAClB,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS;iBAC9B,CAAC;YACJ,CAAC;YACD;gBACE,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,EAAE,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,UAAsB,EAAE,KAAgB,EAAE,KAAgB;QACxF,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACvC,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC;YAChC,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC;SACjC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACnE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,UAAsB,EAAE,WAAmB;QACpE,MAAM,IAAI,GAAG,CAAC,wDAAa,kBAAkB,GAAC,CAAC,CAAC,OAAO,CAAC;QACxD,MAAM,MAAM,GAAG,IAAI,mBAAS,CAAC,WAAW,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACvD,OAAO;YACL,QAAQ;YACR,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;YAChC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;YAChC,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;YAChD,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;SACjD,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,+BAA+B;IAC/B,0EAA0E;IAElE,iBAAiB,CAAC,OAAyB,EAAE,IAAwB;QAC3E,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QAC1F,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QAC3F,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QACxE,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QACzE,OAAO,UAAU,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAClE,CAAC;IAEO,qBAAqB,CAAC,GAAY,EAAE,IAAY,EAAE,IAAuB;QAC/E,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,cAAc,CAAC,CAAC,OAAO,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YACpF,KAAK,mBAAmB,CAAC,CAAC,OAAO,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC9F,OAAO,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,sCAAsC,GAAG,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,WAAmB;QAC3C,MAAM,EAAE,aAAa,EAAE,GAAG,wDAAa,WAAW,GAAC,CAAC;QACpD,wDAAa,uBAAuB,GAAC,CAAC;QACtC,MAAM,OAAO,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QACjF,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACtD,OAAO,SAAS,CAAC,KAAK,CAAC;IACzB,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,OAAyB;QAClD,IAAI,CAAC,OAAO,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACpE,MAAM,IAAI,GAAG,OAAO,CAAC,QAA6B,CAAC;QACnD,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;QAClE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QAClE,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC;IACxC,CAAC;IAED,0EAA0E;IAC1E,0BAA0B;IAC1B,0EAA0E;IAElE,KAAK,CAAC,cAAc,CAAC,OAAyB,EAAE,KAAa;QACnE,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO;QAE3C,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC;QAChD,IAAI,OAAO,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC;YACtF,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QAC5D,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,kBAAkB,EAAE,CAAC;QAE3C,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC5E,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAEzD,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC;YAC9B,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,cAAc,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QAC/I,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,qBAAqB;IACrB,0EAA0E;IAElE,GAAG,CAAC,KAAuB,EAAE,GAAW;QAC9C,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ;YAAE,OAAO;QAC5C,IAAI,KAAK,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,OAAO;YAAE,OAAO;QAChE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;CACF;AAjfD,gCAifC"}
|
|
@@ -80,6 +80,12 @@ export declare class WsKeeper {
|
|
|
80
80
|
private computeVaultBasedPrice;
|
|
81
81
|
private extractPoolStatePrice;
|
|
82
82
|
private getDlmmPrice;
|
|
83
|
+
/**
|
|
84
|
+
* Get DBC price using the adapter's getPrice() which wraps the DBC SDK.
|
|
85
|
+
* This is more reliable than raw sqrtPrice decoding since DBC uses a complex
|
|
86
|
+
* bonding curve with virtual reserves.
|
|
87
|
+
*/
|
|
88
|
+
private getDbcPrice;
|
|
83
89
|
/**
|
|
84
90
|
* Push price to the Percolator market if it has changed (dedup by priceE6).
|
|
85
91
|
* Also cranks the market after pushing.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws-keeper.d.ts","sourceRoot":"","sources":["../../../src/dex/percolator/ws-keeper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAWH,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAMzD,MAAM,MAAM,OAAO,GACf,cAAc,GACd,gBAAgB,GAChB,cAAc,GACd,mBAAmB,GACnB,UAAU,GACV,iBAAiB,GACjB,aAAa,GACb,cAAc,CAAC;AAEnB,MAAM,WAAW,gBAAgB;IAC/B,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,GAAG,EAAE,OAAO,CAAC;IACb,gCAAgC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,uDAAuD;IACvD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACvC,4CAA4C;IAC5C,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;
|
|
1
|
+
{"version":3,"file":"ws-keeper.d.ts","sourceRoot":"","sources":["../../../src/dex/percolator/ws-keeper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAWH,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAMzD,MAAM,MAAM,OAAO,GACf,cAAc,GACd,gBAAgB,GAChB,cAAc,GACd,mBAAmB,GACnB,UAAU,GACV,iBAAiB,GACjB,aAAa,GACb,cAAc,CAAC;AAEnB,MAAM,WAAW,gBAAgB;IAC/B,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,GAAG,EAAE,OAAO,CAAC;IACb,gCAAgC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,uDAAuD;IACvD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACvC,4CAA4C;IAC5C,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AA2ZD,qBAAa,QAAQ;IACnB,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,IAAI,CAA4B;IACxC,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,QAAQ,CAA4C;IAC5D,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,UAAU,CAAK;gBAEX,KAAK,EAAE,gBAAgB,EAAE,EAAE,IAAI,GAAE,eAAoB;IAcjE,0EAA0E;IACpE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAmB5B,uDAAuD;IACjD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAe3B,gCAAgC;IAChC,QAAQ;;;;;;YAaM,WAAW;IAoDzB,OAAO,CAAC,oBAAoB;YAed,mBAAmB;IA6CjC,gDAAgD;YAClC,iBAAiB;IAiB/B,oCAAoC;YACtB,YAAY;IAe1B;;;OAGG;YACW,eAAe;IAwD7B;;;OAGG;YACW,kBAAkB;IAqDhC,OAAO,CAAC,sBAAsB;IAY9B,OAAO,CAAC,qBAAqB;YAWf,YAAY;IAQ1B;;;;OAIG;YACW,WAAW;IAczB;;;OAGG;YACW,cAAc;IAgC5B,OAAO,CAAC,GAAG;CAKZ;AAMD;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CA2BtF"}
|
|
@@ -80,11 +80,11 @@ const VAULT_BASED_DEXES = [
|
|
|
80
80
|
"raydium-cpmm",
|
|
81
81
|
"raydium-amm-v4",
|
|
82
82
|
"pumpswap",
|
|
83
|
+
"meteora-damm-v2",
|
|
83
84
|
];
|
|
84
85
|
const POOL_STATE_DEXES = [
|
|
85
86
|
"raydium-clmm",
|
|
86
87
|
"raydium-launchlab",
|
|
87
|
-
"meteora-damm-v2",
|
|
88
88
|
"meteora-dbc",
|
|
89
89
|
"meteora-dlmm",
|
|
90
90
|
];
|
|
@@ -228,79 +228,48 @@ function decodeLaunchLabPoolInfo(data) {
|
|
|
228
228
|
};
|
|
229
229
|
}
|
|
230
230
|
/**
|
|
231
|
-
* Decode Meteora DAMM v2 pool account — extract
|
|
232
|
-
*
|
|
233
|
-
* Layout (Anchor zero_copy, 8-byte discriminator, INIT_SPACE=1104):
|
|
234
|
-
* The pool struct starts with PoolFees, then various fields. We need to
|
|
235
|
-
* compute the PoolFees struct size to find the mints.
|
|
231
|
+
* Decode Meteora DAMM v2 pool account — extract vaults + mints.
|
|
236
232
|
*
|
|
237
|
-
*
|
|
238
|
-
*
|
|
239
|
-
* = 6 * 8 = 48 bytes for PoolFees
|
|
233
|
+
* Layout (Anchor zero_copy, 8-byte discriminator, total 1112 bytes):
|
|
234
|
+
* Verified on mainnet pool 9x7WTW... (MET/SOL):
|
|
240
235
|
*
|
|
241
|
-
*
|
|
242
|
-
*
|
|
243
|
-
*
|
|
244
|
-
*
|
|
245
|
-
* 120..152 token_a_vault (32 bytes)
|
|
246
|
-
* 152..184 token_b_vault (32 bytes)
|
|
247
|
-
* 184..216 lp_mint (32 bytes)
|
|
248
|
-
* 216..232 sqrt_price (u128, 16 bytes)
|
|
236
|
+
* 168..200 token_a_mint (32 bytes)
|
|
237
|
+
* 200..232 token_b_mint (32 bytes)
|
|
238
|
+
* 232..264 token_a_vault (32 bytes)
|
|
239
|
+
* 264..296 token_b_vault (32 bytes)
|
|
249
240
|
*
|
|
250
|
-
*
|
|
251
|
-
*
|
|
252
|
-
* We'll fetch decimals from the mint accounts.
|
|
241
|
+
* Decimals are fetched from mint accounts at startup (not stored in pool).
|
|
242
|
+
* Treated as vault-based: price = quoteVaultBalance / baseVaultBalance.
|
|
253
243
|
*/
|
|
254
244
|
function decodeDammV2PoolInfo(data) {
|
|
255
245
|
return {
|
|
256
|
-
kind: "
|
|
257
|
-
mint0: new web3_js_1.PublicKey(data.slice(
|
|
258
|
-
mint1: new web3_js_1.PublicKey(data.slice(
|
|
259
|
-
|
|
260
|
-
|
|
246
|
+
kind: "vault",
|
|
247
|
+
mint0: new web3_js_1.PublicKey(data.slice(168, 200)),
|
|
248
|
+
mint1: new web3_js_1.PublicKey(data.slice(200, 232)),
|
|
249
|
+
vault0: new web3_js_1.PublicKey(data.slice(232, 264)),
|
|
250
|
+
vault1: new web3_js_1.PublicKey(data.slice(264, 296)),
|
|
261
251
|
// Decimals must be fetched from mint accounts — set placeholder, will be filled at startup
|
|
262
252
|
decimals0: 0,
|
|
263
253
|
decimals1: 0,
|
|
264
254
|
};
|
|
265
255
|
}
|
|
266
256
|
/**
|
|
267
|
-
* Decode Meteora DBC (Dynamic Bonding Curve) pool account.
|
|
257
|
+
* Decode Meteora DBC (Dynamic Bonding Curve) pool account — extract vaults + mints.
|
|
268
258
|
*
|
|
269
|
-
*
|
|
270
|
-
*
|
|
259
|
+
* DBC uses a bonding curve with virtual reserves; vault ratios and raw sqrtPrice
|
|
260
|
+
* offsets are unreliable across program versions. We use the DBC SDK for price
|
|
261
|
+
* calculation (like DLMM) and watch vault token accounts for change notifications.
|
|
271
262
|
*
|
|
272
|
-
*
|
|
273
|
-
*
|
|
274
|
-
*
|
|
275
|
-
* padding: [u8; 8] (8)
|
|
276
|
-
* sqrt_price_reference: u128 (16)
|
|
277
|
-
* cumulative_seconds_with_empty_liquidity_position: u64 (8)
|
|
278
|
-
* = 40 bytes total
|
|
263
|
+
* Verified mainnet layout (pool DgxYpX..., 424 bytes):
|
|
264
|
+
* 168..200 base_vault (token account, mint = base token)
|
|
265
|
+
* 200..232 quote_vault (token account, mint = SOL/quote)
|
|
279
266
|
*
|
|
280
|
-
*
|
|
281
|
-
* 48..80 config (Pubkey, 32 bytes) — links to PoolConfig which has quote_mint
|
|
282
|
-
* 80..112 creator (Pubkey, 32 bytes)
|
|
283
|
-
* 112..144 base_mint (Pubkey, 32 bytes)
|
|
284
|
-
* 144..176 base_vault (Pubkey, 32 bytes)
|
|
285
|
-
* 176..208 quote_vault (Pubkey, 32 bytes)
|
|
286
|
-
* 208..216 base_reserve (u64, 8 bytes)
|
|
287
|
-
* 216..224 quote_reserve (u64, 8 bytes)
|
|
288
|
-
* 224..232 protocol_base_fee (u64, 8 bytes)
|
|
289
|
-
* 232..240 protocol_quote_fee (u64, 8 bytes)
|
|
290
|
-
* 240..248 trading_base_fee (u64, 8 bytes)
|
|
291
|
-
* 248..256 trading_quote_fee (u64, 8 bytes)
|
|
292
|
-
* 256..272 sqrt_price (u128, 16 bytes)
|
|
267
|
+
* The base_mint and quote_mint are resolved from vault token accounts at startup.
|
|
293
268
|
*/
|
|
294
|
-
function
|
|
269
|
+
function decodeDbcVaults(data) {
|
|
295
270
|
return {
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
mint0: new web3_js_1.PublicKey(data.slice(112, 144)),
|
|
299
|
-
// quote_mint comes from PoolConfig, not the pool itself — will be resolved at startup
|
|
300
|
-
mint1: web3_js_1.PublicKey.default,
|
|
301
|
-
// Decimals fetched from mint accounts at startup
|
|
302
|
-
decimals0: 0,
|
|
303
|
-
decimals1: 0,
|
|
271
|
+
baseVault: new web3_js_1.PublicKey(data.slice(168, 200)),
|
|
272
|
+
quoteVault: new web3_js_1.PublicKey(data.slice(200, 232)),
|
|
304
273
|
};
|
|
305
274
|
}
|
|
306
275
|
/**
|
|
@@ -508,6 +477,13 @@ class WsKeeper {
|
|
|
508
477
|
// Decode pool layout based on DEX type
|
|
509
478
|
if (VAULT_BASED_DEXES.includes(dex)) {
|
|
510
479
|
poolInfo = this.decodeVaultBasedPool(dex, poolData);
|
|
480
|
+
// For DAMM v2, decimals need to be fetched from mint accounts
|
|
481
|
+
const vaultInfo = poolInfo;
|
|
482
|
+
if (vaultInfo.decimals0 === 0 && vaultInfo.decimals1 === 0) {
|
|
483
|
+
const [d0, d1] = await this.fetchMintDecimals(connection, vaultInfo.mint0, vaultInfo.mint1);
|
|
484
|
+
vaultInfo.decimals0 = d0;
|
|
485
|
+
vaultInfo.decimals1 = d1;
|
|
486
|
+
}
|
|
511
487
|
}
|
|
512
488
|
else {
|
|
513
489
|
poolInfo = await this.decodePoolStatePool(dex, poolData, connection, poolCfg.pool);
|
|
@@ -538,6 +514,8 @@ class WsKeeper {
|
|
|
538
514
|
return decodeAmmV4PoolInfo(data);
|
|
539
515
|
case "pumpswap":
|
|
540
516
|
return decodePumpSwapPoolInfo(data);
|
|
517
|
+
case "meteora-damm-v2":
|
|
518
|
+
return decodeDammV2PoolInfo(data);
|
|
541
519
|
default:
|
|
542
520
|
throw new Error(`Not a vault-based DEX: ${dex}`);
|
|
543
521
|
}
|
|
@@ -548,30 +526,20 @@ class WsKeeper {
|
|
|
548
526
|
return decodeClmmPoolInfo(data);
|
|
549
527
|
case "raydium-launchlab":
|
|
550
528
|
return decodeLaunchLabPoolInfo(data);
|
|
551
|
-
case "meteora-damm-v2": {
|
|
552
|
-
const raw = decodeDammV2PoolInfo(data);
|
|
553
|
-
// Fetch decimals from mint accounts
|
|
554
|
-
const [dec0, dec1] = await this.fetchMintDecimals(connection, raw.mint0, raw.mint1);
|
|
555
|
-
return { kind: "pool-state", mint0: raw.mint0, mint1: raw.mint1, decimals0: dec0, decimals1: dec1 };
|
|
556
|
-
}
|
|
557
529
|
case "meteora-dbc": {
|
|
558
|
-
|
|
559
|
-
//
|
|
560
|
-
const
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
const
|
|
569
|
-
const
|
|
570
|
-
|
|
571
|
-
throw new Error(`DBC quote vault not found`);
|
|
572
|
-
const quoteMint = new web3_js_1.PublicKey(quoteVaultAccount.data.slice(0, 32));
|
|
573
|
-
const [dec0, dec1] = await this.fetchMintDecimals(connection, raw.mint0, quoteMint);
|
|
574
|
-
return { kind: "pool-state", mint0: raw.mint0, mint1: quoteMint, decimals0: dec0, decimals1: dec1 };
|
|
530
|
+
// DBC uses SDK for price (bonding curve math is complex).
|
|
531
|
+
// Resolve mints from vault token accounts.
|
|
532
|
+
const vaults = decodeDbcVaults(data);
|
|
533
|
+
const [baseVaultAcct, quoteVaultAcct] = await Promise.all([
|
|
534
|
+
connection.getAccountInfo(vaults.baseVault),
|
|
535
|
+
connection.getAccountInfo(vaults.quoteVault),
|
|
536
|
+
]);
|
|
537
|
+
if (!baseVaultAcct || !quoteVaultAcct)
|
|
538
|
+
throw new Error("DBC vault account(s) not found");
|
|
539
|
+
const baseMint = new web3_js_1.PublicKey(baseVaultAcct.data.slice(0, 32));
|
|
540
|
+
const quoteMint = new web3_js_1.PublicKey(quoteVaultAcct.data.slice(0, 32));
|
|
541
|
+
const [dec0, dec1] = await this.fetchMintDecimals(connection, baseMint, quoteMint);
|
|
542
|
+
return { kind: "pool-state", mint0: baseMint, mint1: quoteMint, decimals0: dec0, decimals1: dec1 };
|
|
575
543
|
}
|
|
576
544
|
case "meteora-dlmm": {
|
|
577
545
|
// Use SDK to get mints and decimals
|
|
@@ -670,14 +638,19 @@ class WsKeeper {
|
|
|
670
638
|
async subscribePoolState(watcher, poolPk, dex) {
|
|
671
639
|
const { connection } = watcher;
|
|
672
640
|
const info = watcher.poolInfo;
|
|
673
|
-
// For DLMM,
|
|
641
|
+
// For SDK-based DEXes (DLMM, DBC), initialize the SDK pool instance
|
|
674
642
|
if (dex === "meteora-dlmm") {
|
|
675
643
|
const dlmmData = await this.initDlmmPool(connection, poolPk.toBase58());
|
|
676
644
|
watcher.dlmmPool = dlmmData.dlmmPool;
|
|
677
|
-
// Get initial price
|
|
678
645
|
const initialPrice = await this.getDlmmPrice(watcher);
|
|
679
646
|
await this.maybePushPrice(watcher, initialPrice);
|
|
680
647
|
}
|
|
648
|
+
else if (dex === "meteora-dbc") {
|
|
649
|
+
watcher.dbcPoolAddress = poolPk.toBase58();
|
|
650
|
+
watcher.dbcConnection = connection;
|
|
651
|
+
const initialPrice = await this.getDbcPrice(watcher);
|
|
652
|
+
await this.maybePushPrice(watcher, initialPrice);
|
|
653
|
+
}
|
|
681
654
|
else {
|
|
682
655
|
// Get initial price from current pool data
|
|
683
656
|
const poolAccount = await connection.getAccountInfo(poolPk);
|
|
@@ -691,9 +664,11 @@ class WsKeeper {
|
|
|
691
664
|
try {
|
|
692
665
|
let price;
|
|
693
666
|
if (dex === "meteora-dlmm") {
|
|
694
|
-
// Re-fetch active bin via SDK
|
|
695
667
|
price = await this.getDlmmPrice(watcher);
|
|
696
668
|
}
|
|
669
|
+
else if (dex === "meteora-dbc") {
|
|
670
|
+
price = await this.getDbcPrice(watcher);
|
|
671
|
+
}
|
|
697
672
|
else {
|
|
698
673
|
price = this.extractPoolStatePrice(dex, accountInfo.data, info);
|
|
699
674
|
}
|
|
@@ -723,10 +698,6 @@ class WsKeeper {
|
|
|
723
698
|
return clmmPriceFromPoolData(data, info.decimals0, info.decimals1);
|
|
724
699
|
case "raydium-launchlab":
|
|
725
700
|
return launchLabPriceFromPoolData(data, info.decimals0, info.decimals1);
|
|
726
|
-
case "meteora-damm-v2":
|
|
727
|
-
return dammV2PriceFromPoolData(data, info.decimals0, info.decimals1);
|
|
728
|
-
case "meteora-dbc":
|
|
729
|
-
return dbcPriceFromPoolData(data, info.decimals0, info.decimals1);
|
|
730
701
|
default:
|
|
731
702
|
throw new Error(`No pool-state price extractor for: ${dex}`);
|
|
732
703
|
}
|
|
@@ -739,6 +710,22 @@ class WsKeeper {
|
|
|
739
710
|
const priceFactor = Math.pow(10, info.decimals1 - info.decimals0);
|
|
740
711
|
return Number(rawPrice) / priceFactor;
|
|
741
712
|
}
|
|
713
|
+
/**
|
|
714
|
+
* Get DBC price using the adapter's getPrice() which wraps the DBC SDK.
|
|
715
|
+
* This is more reliable than raw sqrtPrice decoding since DBC uses a complex
|
|
716
|
+
* bonding curve with virtual reserves.
|
|
717
|
+
*/
|
|
718
|
+
async getDbcPrice(watcher) {
|
|
719
|
+
if (!watcher.dbcPoolAddress)
|
|
720
|
+
throw new Error("DBC pool address not set");
|
|
721
|
+
const { getDexAdapter } = await Promise.resolve().then(() => __importStar(require("../../dex")));
|
|
722
|
+
await Promise.resolve().then(() => __importStar(require("../../dex/meteora-dbc")));
|
|
723
|
+
const adapter = getDexAdapter("meteora-dbc");
|
|
724
|
+
if (!adapter.getPrice)
|
|
725
|
+
throw new Error("meteora-dbc adapter missing getPrice()");
|
|
726
|
+
const priceInfo = await adapter.getPrice(watcher.dbcPoolAddress);
|
|
727
|
+
return priceInfo.price;
|
|
728
|
+
}
|
|
742
729
|
// -----------------------------------------------------------------------
|
|
743
730
|
// Internal — dedup + push
|
|
744
731
|
// -----------------------------------------------------------------------
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws-keeper.js","sourceRoot":"","sources":["../../../src/dex/percolator/ws-keeper.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ws-keeper.js","sourceRoot":"","sources":["../../../src/dex/percolator/ws-keeper.ts"],"names":[],"mappings":"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"}
|