@tatumio/doge 2.0.1-alpha.221 → 2.0.1-alpha.227

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/package.json CHANGED
@@ -1,19 +1,19 @@
1
1
  {
2
2
  "name": "@tatumio/doge",
3
- "version": "2.0.1-alpha.221",
3
+ "version": "2.0.1-alpha.227",
4
4
  "license": "MIT",
5
5
  "main": "./src/index.js",
6
6
  "typings": "./src/index.d.ts",
7
7
  "dependencies": {
8
- "@tatumio/shared-testing": "2.0.1-alpha.220",
9
- "@tatumio/shared-blockchain-btc-based": "2.0.1-alpha.220",
10
- "@tatumio/shared-core": "2.0.1-alpha.220",
8
+ "@tatumio/shared-testing": "2.0.1-alpha.224",
9
+ "@tatumio/shared-blockchain-btc-based": "2.0.1-alpha.224",
10
+ "@tatumio/shared-core": "2.0.1-alpha.224",
11
11
  "axios": "^0.24.0",
12
- "@tatumio/api-client": "2.0.1-alpha.220",
12
+ "@tatumio/api-client": "2.0.1-alpha.224",
13
13
  "cross-blob": "^3.0.0",
14
14
  "form-data": "^4.0.0",
15
- "@tatumio/shared-blockchain-abstract": "2.0.1-alpha.220",
16
- "@tatumio/shared-abstract-sdk": "2.0.1-alpha.220",
15
+ "@tatumio/shared-blockchain-abstract": "2.0.1-alpha.224",
16
+ "@tatumio/shared-abstract-sdk": "2.0.1-alpha.224",
17
17
  "bignumber.js": "^9.0.2",
18
18
  "bip32": "^2.0.5",
19
19
  "bip39": "^3.0.2",
package/src/index.js CHANGED
@@ -1,5 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- (0, tslib_1.__exportStar)(require("./lib/doge.sdk"), exports);
1
+ export * from './lib/doge.sdk';
5
2
  //# sourceMappingURL=index.js.map
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/blockchain/doge/src/index.ts"],"names":[],"mappings":";;;AAAA,8DAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/blockchain/doge/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA"}
@@ -1,13 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DogeSdkError = exports.DOGE_ERRORS_MAPPING = void 0;
4
- const shared_abstract_sdk_1 = require("@tatumio/shared-abstract-sdk");
5
- exports.DOGE_ERRORS_MAPPING = {
6
- 'dogecore.ErrorTransactionFeeErrorTooSmall': shared_abstract_sdk_1.SdkErrorCode.BTC_FEE_TOO_SMALL,
7
- 'dogecore.ErrorTransactionInvalidOutputAmountSum': shared_abstract_sdk_1.SdkErrorCode.BTC_NOT_ENOUGH_BALANCE,
8
- 'dogecore.ErrorTransactionFeeErrorDifferent': shared_abstract_sdk_1.SdkErrorCode.BTC_FEE_TOO_SMALL,
1
+ import { SdkError, SdkErrorCode } from '@tatumio/shared-abstract-sdk';
2
+ export const DOGE_ERRORS_MAPPING = {
3
+ 'dogecore.ErrorTransactionFeeErrorTooSmall': SdkErrorCode.BTC_FEE_TOO_SMALL,
4
+ 'dogecore.ErrorTransactionInvalidOutputAmountSum': SdkErrorCode.BTC_NOT_ENOUGH_BALANCE,
5
+ 'dogecore.ErrorTransactionFeeErrorDifferent': SdkErrorCode.BTC_FEE_TOO_SMALL,
9
6
  };
10
- class DogeSdkError extends shared_abstract_sdk_1.SdkError {
7
+ export class DogeSdkError extends SdkError {
11
8
  constructor(error) {
12
9
  if (typeof error === 'string') {
13
10
  super({
@@ -17,10 +14,9 @@ class DogeSdkError extends shared_abstract_sdk_1.SdkError {
17
14
  else {
18
15
  super({
19
16
  originalError: error,
20
- errorSubstringMapping: exports.DOGE_ERRORS_MAPPING,
17
+ errorSubstringMapping: DOGE_ERRORS_MAPPING,
21
18
  });
22
19
  }
23
20
  }
24
21
  }
25
- exports.DogeSdkError = DogeSdkError;
26
22
  //# sourceMappingURL=doge.sdk.errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"doge.sdk.errors.js","sourceRoot":"","sources":["../../../../../../packages/blockchain/doge/src/lib/doge.sdk.errors.ts"],"names":[],"mappings":";;;AAAA,sEAAqE;AAExD,QAAA,mBAAmB,GAAG;IACjC,2CAA2C,EAAE,kCAAY,CAAC,iBAAiB;IAC3E,iDAAiD,EAAE,kCAAY,CAAC,sBAAsB;IACtF,4CAA4C,EAAE,kCAAY,CAAC,iBAAiB;CAC7E,CAAA;AAOD,MAAa,YAAa,SAAQ,8BAAQ;IACxC,YAAY,KAA+B;QACzC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,KAAK,CAAC;gBACJ,IAAI,EAAE,KAAK;aACZ,CAAC,CAAA;SACH;aAAM;YACL,KAAK,CAAC;gBACJ,aAAa,EAAE,KAAK;gBACpB,qBAAqB,EAAE,2BAAmB;aAC3C,CAAC,CAAA;SACH;IACH,CAAC;CACF;AAbD,oCAaC"}
1
+ {"version":3,"file":"doge.sdk.errors.js","sourceRoot":"","sources":["../../../../../../packages/blockchain/doge/src/lib/doge.sdk.errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAErE,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,2CAA2C,EAAE,YAAY,CAAC,iBAAiB;IAC3E,iDAAiD,EAAE,YAAY,CAAC,sBAAsB;IACtF,4CAA4C,EAAE,YAAY,CAAC,iBAAiB;CAC7E,CAAA;AAOD,MAAM,OAAO,YAAa,SAAQ,QAAQ;IACxC,YAAY,KAA+B;QACzC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,KAAK,CAAC;gBACJ,IAAI,EAAE,KAAK;aACZ,CAAC,CAAA;SACH;aAAM;YACL,KAAK,CAAC;gBACJ,aAAa,EAAE,KAAK;gBACpB,qBAAqB,EAAE,mBAAmB;aAC3C,CAAC,CAAA;SACH;IACH,CAAC;CACF"}
@@ -1,22 +1,18 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TatumDogeSDK = void 0;
4
- const shared_core_1 = require("@tatumio/shared-core");
5
- const shared_blockchain_btc_based_1 = require("@tatumio/shared-blockchain-btc-based");
6
- const api_client_1 = require("@tatumio/api-client");
7
- const doge_sdk_tx_1 = require("./doge.sdk.tx");
8
- const blockchain = shared_core_1.Blockchain.DOGE;
9
- const TatumDogeSDK = (args) => {
10
- return Object.assign(Object.assign({}, (0, shared_blockchain_btc_based_1.btcBasedSdk)(Object.assign(Object.assign({}, args), { blockchain }))), { transaction: (0, doge_sdk_tx_1.dogeTransactions)(), blockchain: {
11
- mempool: api_client_1.BlockchainDogecoinService.dogeGetMempool,
12
- info: api_client_1.BlockchainDogecoinService.dogeGetBlockChainInfo,
13
- broadcast: api_client_1.BlockchainDogecoinService.dogeBroadcast,
14
- getBlockHash: api_client_1.BlockchainDogecoinService.dogeGetBlockHash,
15
- getBlock: api_client_1.BlockchainDogecoinService.dogeGetBlock,
16
- getUTXO: api_client_1.BlockchainDogecoinService.dogeGetUtxo,
17
- getTransaction: api_client_1.BlockchainDogecoinService.dogeGetRawTransaction,
18
- sendTransaction: api_client_1.BlockchainDogecoinService.dogeTransferBlockchain,
1
+ import { Blockchain } from '@tatumio/shared-core';
2
+ import { btcBasedSdk } from '@tatumio/shared-blockchain-btc-based';
3
+ import { BlockchainDogecoinService } from '@tatumio/api-client';
4
+ import { dogeTransactions } from './doge.sdk.tx';
5
+ const blockchain = Blockchain.DOGE;
6
+ export const TatumDogeSDK = (args) => {
7
+ return Object.assign(Object.assign({}, btcBasedSdk(Object.assign(Object.assign({}, args), { blockchain }))), { transaction: dogeTransactions(), blockchain: {
8
+ mempool: BlockchainDogecoinService.dogeGetMempool,
9
+ info: BlockchainDogecoinService.dogeGetBlockChainInfo,
10
+ broadcast: BlockchainDogecoinService.dogeBroadcast,
11
+ getBlockHash: BlockchainDogecoinService.dogeGetBlockHash,
12
+ getBlock: BlockchainDogecoinService.dogeGetBlock,
13
+ getUTXO: BlockchainDogecoinService.dogeGetUtxo,
14
+ getTransaction: BlockchainDogecoinService.dogeGetRawTransaction,
15
+ sendTransaction: BlockchainDogecoinService.dogeTransferBlockchain,
19
16
  } });
20
17
  };
21
- exports.TatumDogeSDK = TatumDogeSDK;
22
18
  //# sourceMappingURL=doge.sdk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"doge.sdk.js","sourceRoot":"","sources":["../../../../../../packages/blockchain/doge/src/lib/doge.sdk.ts"],"names":[],"mappings":";;;AAAA,sDAAiD;AACjD,sFAAkE;AAClE,oDAAyE;AACzE,+CAAgD;AAEhD,MAAM,UAAU,GAAG,wBAAU,CAAC,IAAI,CAAA;AAE3B,MAAM,YAAY,GAAG,CAAC,IAAwC,EAAE,EAAE;IACvE,uCACK,IAAA,yCAAW,kCAAM,IAAI,KAAE,UAAU,IAAG,KACvC,WAAW,EAAE,IAAA,8BAAgB,GAAE,EAC/B,UAAU,EAAE;YACV,OAAO,EAAE,sCAAyB,CAAC,cAAc;YACjD,IAAI,EAAE,sCAAyB,CAAC,qBAAqB;YACrD,SAAS,EAAE,sCAAyB,CAAC,aAAa;YAClD,YAAY,EAAE,sCAAyB,CAAC,gBAAgB;YACxD,QAAQ,EAAE,sCAAyB,CAAC,YAAY;YAChD,OAAO,EAAE,sCAAyB,CAAC,WAAW;YAC9C,cAAc,EAAE,sCAAyB,CAAC,qBAAqB;YAC/D,eAAe,EAAE,sCAAyB,CAAC,sBAAsB;SAClE,IACF;AACH,CAAC,CAAA;AAfY,QAAA,YAAY,gBAexB"}
1
+ {"version":3,"file":"doge.sdk.js","sourceRoot":"","sources":["../../../../../../packages/blockchain/doge/src/lib/doge.sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAA;AAClE,OAAO,EAAE,yBAAyB,EAAY,MAAM,qBAAqB,CAAA;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAEhD,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAA;AAElC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAwC,EAAE,EAAE;IACvE,uCACK,WAAW,iCAAM,IAAI,KAAE,UAAU,IAAG,KACvC,WAAW,EAAE,gBAAgB,EAAE,EAC/B,UAAU,EAAE;YACV,OAAO,EAAE,yBAAyB,CAAC,cAAc;YACjD,IAAI,EAAE,yBAAyB,CAAC,qBAAqB;YACrD,SAAS,EAAE,yBAAyB,CAAC,aAAa;YAClD,YAAY,EAAE,yBAAyB,CAAC,gBAAgB;YACxD,QAAQ,EAAE,yBAAyB,CAAC,YAAY;YAChD,OAAO,EAAE,yBAAyB,CAAC,WAAW;YAC9C,cAAc,EAAE,yBAAyB,CAAC,qBAAqB;YAC/D,eAAe,EAAE,yBAAyB,CAAC,sBAAsB;SAClE,IACF;AACH,CAAC,CAAA"}
@@ -1,24 +1,21 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.dogeTransactions = void 0;
4
- const tslib_1 = require("tslib");
1
+ import { __awaiter } from "tslib";
5
2
  // @ts-ignore
6
- const bitcore_lib_doge_1 = require("bitcore-lib-doge");
7
- const api_client_1 = require("@tatumio/api-client");
8
- const shared_abstract_sdk_1 = require("@tatumio/shared-abstract-sdk");
9
- const doge_sdk_errors_1 = require("./doge.sdk.errors");
3
+ import { PrivateKey, Script, Transaction } from 'bitcore-lib-doge';
4
+ import { ApiServices, } from '@tatumio/api-client';
5
+ import { amountUtils } from '@tatumio/shared-abstract-sdk';
6
+ import { DogeSdkError } from './doge.sdk.errors';
10
7
  // @TODO add support - by address
11
- const prepareSignedTransaction = (body) => (0, tslib_1.__awaiter)(void 0, void 0, void 0, function* () {
8
+ const prepareSignedTransaction = (body) => __awaiter(void 0, void 0, void 0, function* () {
12
9
  try {
13
10
  const { fromUTXO, to, fee, changeAddress } = body;
14
- const tx = new bitcore_lib_doge_1.Transaction().fee(shared_abstract_sdk_1.amountUtils.toSatoshis(fee)).change(changeAddress);
11
+ const tx = new Transaction().fee(amountUtils.toSatoshis(fee)).change(changeAddress);
15
12
  const privateKeysToSign = [];
16
13
  for (const item of fromUTXO) {
17
14
  tx.from({
18
15
  txId: item.txHash,
19
16
  outputIndex: item.index,
20
- script: bitcore_lib_doge_1.Script.fromAddress(item.address).toString(),
21
- satoshis: shared_abstract_sdk_1.amountUtils.toSatoshis(item.value),
17
+ script: Script.fromAddress(item.address).toString(),
18
+ satoshis: amountUtils.toSatoshis(item.value),
22
19
  });
23
20
  if ('signatureId' in item)
24
21
  privateKeysToSign.push(item.signatureId);
@@ -26,28 +23,27 @@ const prepareSignedTransaction = (body) => (0, tslib_1.__awaiter)(void 0, void 0
26
23
  privateKeysToSign.push(item.privateKey);
27
24
  }
28
25
  for (const item of to) {
29
- tx.to(item.address, shared_abstract_sdk_1.amountUtils.toSatoshis(item.value));
26
+ tx.to(item.address, amountUtils.toSatoshis(item.value));
30
27
  }
31
28
  if (fromUTXO && 'signatureId' in fromUTXO[0] && fromUTXO[0].signatureId) {
32
29
  return JSON.stringify({ txData: JSON.stringify(tx), privateKeysToSign });
33
30
  }
34
31
  for (const pk of privateKeysToSign) {
35
- tx.sign(bitcore_lib_doge_1.PrivateKey.fromWIF(pk));
32
+ tx.sign(PrivateKey.fromWIF(pk));
36
33
  }
37
34
  return tx.serialize();
38
35
  }
39
36
  catch (e) {
40
- throw new doge_sdk_errors_1.DogeSdkError(e);
37
+ throw new DogeSdkError(e);
41
38
  }
42
39
  });
43
- const sendTransaction = (body) => (0, tslib_1.__awaiter)(void 0, void 0, void 0, function* () {
44
- return api_client_1.ApiServices.blockchain.doge.dogeBroadcast({
40
+ const sendTransaction = (body) => __awaiter(void 0, void 0, void 0, function* () {
41
+ return ApiServices.blockchain.doge.dogeBroadcast({
45
42
  txData: yield prepareSignedTransaction(body),
46
43
  });
47
44
  });
48
- const dogeTransactions = () => ({
45
+ export const dogeTransactions = () => ({
49
46
  sendTransaction,
50
47
  prepareSignedTransaction,
51
48
  });
52
- exports.dogeTransactions = dogeTransactions;
53
49
  //# sourceMappingURL=doge.sdk.tx.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"doge.sdk.tx.js","sourceRoot":"","sources":["../../../../../../packages/blockchain/doge/src/lib/doge.sdk.tx.ts"],"names":[],"mappings":";;;;AAAA,aAAa;AACb,uDAAkE;AAClE,oDAK4B;AAE5B,sEAA0D;AAC1D,uDAAgD;AAIhD,iCAAiC;AACjC,MAAM,wBAAwB,GAAG,CAAO,IAAqB,EAAmB,EAAE;IAChF,IAAI;QACF,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,IAAI,CAAA;QACjD,MAAM,EAAE,GAAG,IAAI,8BAAW,EAAE,CAAC,GAAG,CAAC,iCAAW,CAAC,UAAU,CAAC,GAAI,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;QAEpF,MAAM,iBAAiB,GAAG,EAAE,CAAA;QAC5B,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE;YAC3B,EAAE,CAAC,IAAI,CAAC;gBACN,IAAI,EAAE,IAAI,CAAC,MAAM;gBACjB,WAAW,EAAE,IAAI,CAAC,KAAK;gBACvB,MAAM,EAAE,yBAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE;gBACnD,QAAQ,EAAE,iCAAW,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;aAC7C,CAAC,CAAA;YACF,IAAI,aAAa,IAAI,IAAI;gBAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;iBAC9D,IAAI,YAAY,IAAI,IAAI;gBAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;SACvE;QAED,KAAK,MAAM,IAAI,IAAI,EAAE,EAAE;YACrB,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,iCAAW,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;SACxD;QAED,IAAI,QAAQ,IAAI,aAAa,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;YACvE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAA;SACzE;QAED,KAAK,MAAM,EAAE,IAAI,iBAAiB,EAAE;YAClC,EAAE,CAAC,IAAI,CAAC,6BAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;SAChC;QAED,OAAO,EAAE,CAAC,SAAS,EAAE,CAAA;KACtB;IAAC,OAAO,CAAM,EAAE;QACf,MAAM,IAAI,8BAAY,CAAC,CAAC,CAAC,CAAA;KAC1B;AACH,CAAC,CAAA,CAAA;AAED,MAAM,eAAe,GAAG,CAAO,IAAqB,EAA+B,EAAE;IACnF,OAAO,wBAAW,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC;QAC/C,MAAM,EAAE,MAAM,wBAAwB,CAAC,IAAI,CAAC;KAC7C,CAAC,CAAA;AACJ,CAAC,CAAA,CAAA;AAEM,MAAM,gBAAgB,GAAG,GAAgC,EAAE,CAAC,CAAC;IAClE,eAAe;IACf,wBAAwB;CACzB,CAAC,CAAA;AAHW,QAAA,gBAAgB,oBAG3B"}
1
+ {"version":3,"file":"doge.sdk.tx.js","sourceRoot":"","sources":["../../../../../../packages/blockchain/doge/src/lib/doge.sdk.tx.ts"],"names":[],"mappings":";AAAA,aAAa;AACb,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAClE,OAAO,EACL,WAAW,GAIZ,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAIhD,iCAAiC;AACjC,MAAM,wBAAwB,GAAG,CAAO,IAAqB,EAAmB,EAAE;IAChF,IAAI;QACF,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,IAAI,CAAA;QACjD,MAAM,EAAE,GAAG,IAAI,WAAW,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,GAAI,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;QAEpF,MAAM,iBAAiB,GAAG,EAAE,CAAA;QAC5B,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE;YAC3B,EAAE,CAAC,IAAI,CAAC;gBACN,IAAI,EAAE,IAAI,CAAC,MAAM;gBACjB,WAAW,EAAE,IAAI,CAAC,KAAK;gBACvB,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE;gBACnD,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;aAC7C,CAAC,CAAA;YACF,IAAI,aAAa,IAAI,IAAI;gBAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;iBAC9D,IAAI,YAAY,IAAI,IAAI;gBAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;SACvE;QAED,KAAK,MAAM,IAAI,IAAI,EAAE,EAAE;YACrB,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;SACxD;QAED,IAAI,QAAQ,IAAI,aAAa,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;YACvE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAA;SACzE;QAED,KAAK,MAAM,EAAE,IAAI,iBAAiB,EAAE;YAClC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;SAChC;QAED,OAAO,EAAE,CAAC,SAAS,EAAE,CAAA;KACtB;IAAC,OAAO,CAAM,EAAE;QACf,MAAM,IAAI,YAAY,CAAC,CAAC,CAAC,CAAA;KAC1B;AACH,CAAC,CAAA,CAAA;AAED,MAAM,eAAe,GAAG,CAAO,IAAqB,EAA+B,EAAE;IACnF,OAAO,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC;QAC/C,MAAM,EAAE,MAAM,wBAAwB,CAAC,IAAI,CAAC;KAC7C,CAAC,CAAA;AACJ,CAAC,CAAA,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAgC,EAAE,CAAC,CAAC;IAClE,eAAe;IACf,wBAAwB;CACzB,CAAC,CAAA"}