@yaswap/yacoin 3.4.3 → 3.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # @yaswap/bitcoin
2
2
 
3
+ ## 3.4.4
4
+
5
+ ### Patch Changes
6
+
7
+ - Improve change UTXOs and change addresses logic
8
+ - Updated dependencies
9
+ - @yaswap/client@3.4.4
10
+ - @yaswap/errors@3.4.4
11
+ - @yaswap/types@3.4.4
12
+ - @yaswap/utils@3.4.4
13
+
3
14
  ## 3.4.3
4
15
 
5
16
  ### Patch Changes
@@ -116,6 +116,17 @@ export interface UsedUnusedAddressesResult {
116
116
  external: Address | null;
117
117
  };
118
118
  }
119
+ /**
120
+ * Controls where the change output is sent.
121
+ * - USE_FIRST_RECEIVING_ADDRESS: Use the first receiving address (default).
122
+ * - USE_UNUSED_CHANGE_ADDRESS: Use unused change address if available; otherwise randomly select from used change addresses.
123
+ * - USE_RANDOM_USED_RECEIVING_ADDRESS: Randomly select one of the previously used receiving addresses.
124
+ */
125
+ export declare enum ChangeAddressType {
126
+ USE_FIRST_RECEIVING_ADDRESS = "use_first_receiving_address",
127
+ USE_UNUSED_CHANGE_ADDRESS = "use_unused_change_address",
128
+ USE_RANDOM_USED_RECEIVING_ADDRESS = "use_random_used_receiving_address"
129
+ }
119
130
  /**
120
131
  * Options for Yacoin sendTransaction and sendTransactionFixedInputs.
121
132
  * Extends TransactionRequest with Yacoin-specific options.
@@ -127,13 +138,15 @@ export interface YacoinSendTransactionOptions extends TransactionRequest {
127
138
  */
128
139
  inputs?: UTXO[];
129
140
  /**
130
- * When true, use a change address (internal branch) for the change output;
131
- * when false, use a receiving address (external branch). Default: false.
141
+ * Where to send the change output. Default: USE_FIRST_RECEIVING_ADDRESS.
142
+ */
143
+ changeAddressType?: ChangeAddressType;
144
+ /**
145
+ * When false, only UTXOs from receiving addresses are used. When true, UTXOs from both receiving and change addresses are used. Default: false.
132
146
  *
133
- * NOTE: This only affects which branch is scanned for UTXOs and where
134
- * the change output is sent; it does not alter token behavior.
147
+ * NOTE: This only affects which branch is scanned for UTXOs; change output destination is controlled by changeAddressType. It does not alter token behavior.
135
148
  */
136
- change?: boolean;
149
+ useChangeUtxos?: boolean;
137
150
  /**
138
151
  * Maximum number of addresses to scan for UTXOs. Default: 40.
139
152
  */
package/dist/lib/types.js CHANGED
@@ -26,7 +26,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
26
26
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.SwapMode = exports.AddressType = exports.YacoinEsploraTypes = void 0;
29
+ exports.ChangeAddressType = exports.SwapMode = exports.AddressType = exports.YacoinEsploraTypes = void 0;
30
30
  exports.YacoinEsploraTypes = __importStar(require("./chain/esplora/types"));
31
31
  __exportStar(require("./swap/types"), exports);
32
32
  var AddressType;
@@ -37,4 +37,16 @@ var SwapMode;
37
37
  (function (SwapMode) {
38
38
  SwapMode["P2SH"] = "p2sh";
39
39
  })(SwapMode = exports.SwapMode || (exports.SwapMode = {}));
40
+ /**
41
+ * Controls where the change output is sent.
42
+ * - USE_FIRST_RECEIVING_ADDRESS: Use the first receiving address (default).
43
+ * - USE_UNUSED_CHANGE_ADDRESS: Use unused change address if available; otherwise randomly select from used change addresses.
44
+ * - USE_RANDOM_USED_RECEIVING_ADDRESS: Randomly select one of the previously used receiving addresses.
45
+ */
46
+ var ChangeAddressType;
47
+ (function (ChangeAddressType) {
48
+ ChangeAddressType["USE_FIRST_RECEIVING_ADDRESS"] = "use_first_receiving_address";
49
+ ChangeAddressType["USE_UNUSED_CHANGE_ADDRESS"] = "use_unused_change_address";
50
+ ChangeAddressType["USE_RANDOM_USED_RECEIVING_ADDRESS"] = "use_random_used_receiving_address";
51
+ })(ChangeAddressType = exports.ChangeAddressType || (exports.ChangeAddressType = {}));
40
52
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../lib/types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,4EAA4D;AAC5D,+CAA6B;AAkG7B,IAAY,WAEX;AAFD,WAAY,WAAW;IACnB,gCAAiB,CAAA;AACrB,CAAC,EAFW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAEtB;AAED,IAAY,QAEX;AAFD,WAAY,QAAQ;IAChB,yBAAa,CAAA;AACjB,CAAC,EAFW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAEnB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../lib/types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,4EAA4D;AAC5D,+CAA6B;AAkG7B,IAAY,WAEX;AAFD,WAAY,WAAW;IACnB,gCAAiB,CAAA;AACrB,CAAC,EAFW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAEtB;AAED,IAAY,QAEX;AAFD,WAAY,QAAQ;IAChB,yBAAa,CAAA;AACjB,CAAC,EAFW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAEnB;AA2BD;;;;;GAKG;AACH,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IACzB,gFAA2D,CAAA;IAC3D,4EAAuD,CAAA;IACvD,4FAAuE,CAAA;AAC3E,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B"}
@@ -4,7 +4,7 @@ import { Address, AddressType, Asset, Transaction, TransactionRequest, CreateTok
4
4
  import { BIP32Interface } from 'bip32';
5
5
  import { payments } from '@yaswap/yacoinjs-lib';
6
6
  import { YacoinBaseChainProvider } from '../chain/YacoinBaseChainProvider';
7
- import { AddressType as YaAddressType, YacoinNetwork, YacoinWalletProviderOptions, OutputTarget, P2SHInput, PsbtInputTarget, Transaction as YaTransaction, UsedUnusedAddressesResult, UTXO, YacoinSendTransactionOptions } from '../types';
7
+ import { AddressType as YaAddressType, ChangeAddressType, YacoinNetwork, YacoinWalletProviderOptions, OutputTarget, P2SHInput, PsbtInputTarget, Transaction as YaTransaction, UsedUnusedAddressesResult, UTXO, YacoinSendTransactionOptions } from '../types';
8
8
  import { CoinSelectTarget } from '../utils';
9
9
  export declare const NUMBER_ADDRESS_LIMIT = 40;
10
10
  export declare enum AddressSearchType {
@@ -24,7 +24,7 @@ export declare abstract class YacoinBaseWalletProvider<T extends YacoinBaseChain
24
24
  constructor(options: YacoinWalletProviderOptions, chainProvider?: Chain<T>);
25
25
  protected onChainProviderUpdate(chainProvider: Chain<T>): void;
26
26
  protected abstract baseDerivationNode(): Promise<BIP32Interface>;
27
- protected abstract buildTransaction(targets: OutputTarget[], feePerByte?: number, fixedUtxos?: UTXO[], change?: boolean, addressLimit?: number): Promise<{
27
+ protected abstract buildTransaction(targets: OutputTarget[], feePerByte?: number, fixedUtxos?: UTXO[], useChangeUtxos?: boolean, changeAddressType?: ChangeAddressType, addressLimit?: number): Promise<{
28
28
  hex: string;
29
29
  fee: number;
30
30
  }>;
@@ -54,24 +54,13 @@ export declare abstract class YacoinBaseWalletProvider<T extends YacoinBaseChain
54
54
  getUsedAddresses(addressType?: AddressSearchType, addressLimit?: number): Promise<Address[]>;
55
55
  getAddresses(startingIndex?: number, numAddresses?: number, change?: boolean): Promise<Address[]>;
56
56
  createToken(options: CreateTokenTransaction): Promise<Transaction>;
57
- sendTransaction(options: TransactionRequest & {
58
- change?: boolean;
59
- addressLimit?: number;
60
- inputs?: UTXO[];
61
- }): Promise<Transaction<YaTransaction>>;
62
- sendTransactionFixedInputs(options: TransactionRequest & {
63
- change?: boolean;
64
- addressLimit?: number;
65
- inputs?: UTXO[];
66
- }): Promise<Transaction<YaTransaction>>;
67
- sendBatchTransaction(transactions: (TransactionRequest & {
68
- change?: boolean;
69
- addressLimit?: number;
70
- })[]): Promise<Transaction<YaTransaction>[]>;
57
+ sendTransaction(options: YacoinSendTransactionOptions): Promise<Transaction<YaTransaction>>;
58
+ sendTransactionFixedInputs(options: YacoinSendTransactionOptions): Promise<Transaction<YaTransaction>>;
59
+ sendBatchTransaction(transactions: YacoinSendTransactionOptions[]): Promise<Transaction<YaTransaction>[]>;
71
60
  sendSweepTransaction(externalChangeAddress: AddressType, _asset: Asset, feePerByte: number): Promise<Transaction<YaTransaction>>;
72
61
  updateTransactionFee(tx: Transaction<YaTransaction> | string, newFeePerByte: number): Promise<Transaction<YaTransaction>>;
73
62
  getTotalFees(transactions: YacoinSendTransactionOptions[], max: boolean): Promise<any>;
74
- protected _sendTransaction(transactions: OutputTarget[], feePerByte?: number, change?: boolean, addressLimit?: number, fixedUtxos?: UTXO[]): Promise<Transaction<YaTransaction>>;
63
+ protected _sendTransaction(transactions: OutputTarget[], feePerByte?: number, useChangeUtxos?: boolean, changeAddressType?: ChangeAddressType, addressLimit?: number, fixedUtxos?: UTXO[]): Promise<Transaction<YaTransaction>>;
75
64
  protected findAddress(addresses: string[], change?: boolean, addressLimit?: number): Promise<Address>;
76
65
  getWalletAddress(address: string): Promise<Address>;
77
66
  protected getDerivationPathAddress(path: string): Promise<Address>;
@@ -79,7 +68,7 @@ export declare abstract class YacoinBaseWalletProvider<T extends YacoinBaseChain
79
68
  protected withCachedUtxos(func: () => any): Promise<any>;
80
69
  getTotalFeeFixedInputs(opts: YacoinSendTransactionOptions, max: boolean): Promise<number>;
81
70
  protected getTotalFee(opts: YacoinSendTransactionOptions, max: boolean): Promise<number>;
82
- protected getInputsForAmount(_targets: OutputTarget[], feePerByte?: number, fixedUtxos?: UTXO[], sweep?: boolean, addressLimit?: number, change?: boolean): Promise<{
71
+ protected getInputsForAmount(_targets: OutputTarget[], feePerByte?: number, fixedUtxos?: UTXO[], sweep?: boolean, addressLimit?: number, useChangeUtxos?: boolean): Promise<{
83
72
  inputs: UTXO[];
84
73
  coinChange: CoinSelectTarget;
85
74
  tokenChange: CoinSelectTarget;
@@ -117,21 +117,23 @@ class YacoinBaseWalletProvider extends client_1.Wallet {
117
117
  });
118
118
  }
119
119
  sendTransaction(options) {
120
- var _a, _b;
120
+ var _a, _b, _c;
121
121
  return __awaiter(this, void 0, void 0, function* () {
122
- const change = (_a = options.change) !== null && _a !== void 0 ? _a : false;
123
- const addressLimit = (_b = options.addressLimit) !== null && _b !== void 0 ? _b : exports.NUMBER_ADDRESS_LIMIT;
124
- return this._sendTransaction(this.sendOptionsToOutputs([options]), options.fee, change, addressLimit, options.inputs);
122
+ const useChangeUtxos = (_a = options.useChangeUtxos) !== null && _a !== void 0 ? _a : false;
123
+ const changeAddressType = (_b = options.changeAddressType) !== null && _b !== void 0 ? _b : types_2.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS;
124
+ const addressLimit = (_c = options.addressLimit) !== null && _c !== void 0 ? _c : exports.NUMBER_ADDRESS_LIMIT;
125
+ return this._sendTransaction(this.sendOptionsToOutputs([options]), options.fee, useChangeUtxos, changeAddressType, addressLimit, options.inputs);
125
126
  });
126
127
  }
127
128
  sendTransactionFixedInputs(options) {
128
- var _a, _b, _c;
129
+ var _a, _b, _c, _d;
129
130
  return __awaiter(this, void 0, void 0, function* () {
130
131
  const targets = this.sendOptionsToOutputs([options]);
131
132
  const fixedUtxos = (_a = options.inputs) !== null && _a !== void 0 ? _a : [];
132
- const change = (_b = options.change) !== null && _b !== void 0 ? _b : false;
133
- const addressLimit = (_c = options.addressLimit) !== null && _c !== void 0 ? _c : exports.NUMBER_ADDRESS_LIMIT;
134
- const { hex, fee } = yield this.buildTransaction(targets, options.fee, fixedUtxos, change, addressLimit);
133
+ const useChangeUtxos = (_b = options.useChangeUtxos) !== null && _b !== void 0 ? _b : false;
134
+ const changeAddressType = (_c = options.changeAddressType) !== null && _c !== void 0 ? _c : types_2.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS;
135
+ const addressLimit = (_d = options.addressLimit) !== null && _d !== void 0 ? _d : exports.NUMBER_ADDRESS_LIMIT;
136
+ const { hex, fee } = yield this.buildTransaction(targets, options.fee, fixedUtxos, useChangeUtxos, changeAddressType, addressLimit);
135
137
  const result = yield this.chainProvider.sendRawTransaction(`data=${hex}`);
136
138
  if (result == 'There was an error. Check your console.') {
137
139
  throw new Error("Cannot send transaction, there might some reasons:\n 1) It might be the fee is not enough, please try increasing the fee.\n 2) The wallet haven't updated latest balance info, please wait 10 seconds and try again.");
@@ -140,12 +142,13 @@ class YacoinBaseWalletProvider extends client_1.Wallet {
140
142
  });
141
143
  }
142
144
  sendBatchTransaction(transactions) {
143
- var _a, _b;
145
+ var _a, _b, _c;
144
146
  return __awaiter(this, void 0, void 0, function* () {
145
147
  const first = transactions[0];
146
- const change = (_a = first === null || first === void 0 ? void 0 : first.change) !== null && _a !== void 0 ? _a : false;
147
- const addressLimit = (_b = first === null || first === void 0 ? void 0 : first.addressLimit) !== null && _b !== void 0 ? _b : exports.NUMBER_ADDRESS_LIMIT;
148
- return [yield this._sendTransaction(this.sendOptionsToOutputs(transactions), undefined, change, addressLimit)];
148
+ const useChangeUtxos = (_a = first === null || first === void 0 ? void 0 : first.useChangeUtxos) !== null && _a !== void 0 ? _a : false;
149
+ const changeAddressType = (_b = first === null || first === void 0 ? void 0 : first.changeAddressType) !== null && _b !== void 0 ? _b : types_2.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS;
150
+ const addressLimit = (_c = first === null || first === void 0 ? void 0 : first.addressLimit) !== null && _c !== void 0 ? _c : exports.NUMBER_ADDRESS_LIMIT;
151
+ return [yield this._sendTransaction(this.sendOptionsToOutputs(transactions), undefined, useChangeUtxos, changeAddressType, addressLimit)];
149
152
  });
150
153
  }
151
154
  sendSweepTransaction(externalChangeAddress, _asset, feePerByte) {
@@ -186,7 +189,7 @@ class YacoinBaseWalletProvider extends client_1.Wallet {
186
189
  address: output.scriptPubKey.addresses[0],
187
190
  value: new types_1.BigNumber(output.value).times(1e6).toNumber(),
188
191
  }));
189
- const { hex, fee } = yield this.buildTransaction(transactions, newFeePerByte, fixedUtxos, true, exports.NUMBER_ADDRESS_LIMIT);
192
+ const { hex, fee } = yield this.buildTransaction(transactions, newFeePerByte, fixedUtxos, true, types_2.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS, exports.NUMBER_ADDRESS_LIMIT);
190
193
  const result = yield this.chainProvider.sendRawTransaction(`data=${hex}`);
191
194
  if (result == 'There was an error. Check your console.') {
192
195
  throw new Error("Cannot send transaction, there might some reasons:\n 1) It might be the fee is not enough, please try increasing the fee.\n 2) The wallet haven't updated latest balance info, please wait 10 seconds and try again.");
@@ -207,9 +210,9 @@ class YacoinBaseWalletProvider extends client_1.Wallet {
207
210
  return fees;
208
211
  });
209
212
  }
210
- _sendTransaction(transactions, feePerByte, change = false, addressLimit = exports.NUMBER_ADDRESS_LIMIT, fixedUtxos = []) {
213
+ _sendTransaction(transactions, feePerByte, useChangeUtxos = false, changeAddressType = types_2.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS, addressLimit = exports.NUMBER_ADDRESS_LIMIT, fixedUtxos = []) {
211
214
  return __awaiter(this, void 0, void 0, function* () {
212
- const { hex, fee } = yield this.buildTransaction(transactions, feePerByte, fixedUtxos, change, addressLimit);
215
+ const { hex, fee } = yield this.buildTransaction(transactions, feePerByte, fixedUtxos, useChangeUtxos, changeAddressType, addressLimit);
213
216
  const result = yield this.chainProvider.sendRawTransaction(`data=${hex}`);
214
217
  if (result == 'There was an error. Check your console.') {
215
218
  throw new Error("Cannot send transaction, there might some reasons:\n 1) It might be the fee is not enough, please try increasing the fee.\n 2) The wallet haven't updated latest balance info, please wait 10 seconds and try again.");
@@ -368,32 +371,34 @@ class YacoinBaseWalletProvider extends client_1.Wallet {
368
371
  return __awaiter(this, void 0, void 0, function* () {
369
372
  const targets = this.sendOptionsToOutputs([opts]);
370
373
  const addressLimit = (_a = opts.addressLimit) !== null && _a !== void 0 ? _a : exports.NUMBER_ADDRESS_LIMIT;
371
- const useChangeUtxos = (_b = opts.change) !== null && _b !== void 0 ? _b : false;
374
+ const useChangeUtxos = (_b = opts.useChangeUtxos) !== null && _b !== void 0 ? _b : false;
372
375
  const { fee } = yield this.getInputsForAmount(targets.filter((t) => !t.value), opts.fee, (_c = opts.inputs) !== null && _c !== void 0 ? _c : [], max, addressLimit, useChangeUtxos);
373
376
  return fee;
374
377
  });
375
378
  }
376
379
  getTotalFee(opts, max) {
377
- var _a, _b, _c, _d;
380
+ var _a, _b;
378
381
  return __awaiter(this, void 0, void 0, function* () {
379
382
  const targets = this.sendOptionsToOutputs([opts]);
383
+ const useChangeUtxos = (_a = opts.useChangeUtxos) !== null && _a !== void 0 ? _a : false;
384
+ const addressLimit = (_b = opts.addressLimit) !== null && _b !== void 0 ? _b : exports.NUMBER_ADDRESS_LIMIT;
380
385
  if (!max) {
381
- const { fee } = yield this.getInputsForAmount(targets, opts.fee, [], false, (_a = opts.addressLimit) !== null && _a !== void 0 ? _a : exports.NUMBER_ADDRESS_LIMIT, (_b = opts.change) !== null && _b !== void 0 ? _b : false);
386
+ const { fee } = yield this.getInputsForAmount(targets, opts.fee, [], false, addressLimit, useChangeUtxos);
382
387
  return fee;
383
388
  }
384
389
  else {
385
- const { fee } = yield this.getInputsForAmount(targets.filter((t) => !t.value), opts.fee, [], true, (_c = opts.addressLimit) !== null && _c !== void 0 ? _c : exports.NUMBER_ADDRESS_LIMIT, (_d = opts.change) !== null && _d !== void 0 ? _d : false);
390
+ const { fee } = yield this.getInputsForAmount(targets.filter((t) => !t.value), opts.fee, [], true, addressLimit, useChangeUtxos);
386
391
  return fee;
387
392
  }
388
393
  });
389
394
  }
390
- getInputsForAmount(_targets, feePerByte, fixedUtxos = [], sweep = false, addressLimit = exports.NUMBER_ADDRESS_LIMIT, change = false) {
395
+ getInputsForAmount(_targets, feePerByte, fixedUtxos = [], sweep = false, addressLimit = exports.NUMBER_ADDRESS_LIMIT, useChangeUtxos = false) {
391
396
  return __awaiter(this, void 0, void 0, function* () {
392
397
  const tokenTransferOutput = _targets.find((target) => target.tokenName !== undefined && target.tokenScriptType === types_1.TokenScriptType.transfer);
393
398
  const feePerBytePromise = this.chainProvider.getProvider().getFeePerByte();
394
399
  let utxos = [];
395
400
  let tokenUtxos = [];
396
- const addressType = change ? AddressSearchType.EXTERNAL_OR_CHANGE : AddressSearchType.EXTERNAL;
401
+ const addressType = useChangeUtxos ? AddressSearchType.EXTERNAL_OR_CHANGE : AddressSearchType.EXTERNAL;
397
402
  const addresses = yield this.getUsedAddresses(addressType, addressLimit);
398
403
  const enrichedFixedUtxos = yield Promise.all(fixedUtxos.map((utxo) => __awaiter(this, void 0, void 0, function* () {
399
404
  let derivationPath = utxo.derivationPath;
@@ -1 +1 @@
1
- {"version":3,"file":"YacoinBaseWallet.js","sourceRoot":"","sources":["../../../lib/wallet/YacoinBaseWallet.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA+C;AAC/C,2CAA0D;AAC1D,yCAA4J;AAC5J,yCAAkD;AAElD,uDAAwD;AACxD,wDAA+B;AAE/B,oCAWkB;AAClB,oCAA4K;AAE/J,QAAA,oBAAoB,GAAG,EAAE,CAAC;AAEvC,oEAAoE;AACpE,MAAM,kCAAkC,GAAG,EAAE,GAAG,IAAI,CAAC;AAErD,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IACzB,iEAAQ,CAAA;IACR,6DAAM,CAAA;IACN,qFAAkB,CAAA;AACtB,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B;AAMD,SAAS,gBAAgB,CAAC,KAAa;IACnC,MAAM,UAAU,GAAG,EAAE,CAAC;IACtB,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAC;QACtB,IAAI,KAAK,GAAG,KAAK,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QAClC,KAAK,IAAI,MAAM,CAAC,GAAG,CAAC,CAAA;QACpB,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;KACxC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;AAClC,CAAC;AAED,MAAsB,wBAA2E,SAAQ,eAAY;IAOjH,YAAY,OAAoC,EAAE,aAAwB;QACtE,MAAM,EAAE,kBAAkB,EAAE,WAAW,GAAG,mBAAa,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC;QAC3E,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,mBAAa,CAAC,CAAC;QAClD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;YACrC,MAAM,IAAI,KAAK,CAAC,8BAA8B,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SAC3E;QAED,KAAK,CAAC,aAAa,CAAC,CAAC;QATjB,8BAAyB,GAA0D,EAAE,CAAC;QAW1F,IAAI,CAAC,mBAAmB,GAAG,kBAAkB,CAAC;QAC9C,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAE,aAAa,CAAC,UAAU,EAAoB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QAChG,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;IAC/B,CAAC;IAES,qBAAqB,CAAC,aAAuB;QACnD,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,UAAU,EAAmB,CAAC;IAChE,CAAC;IAqBM,kBAAkB;QACrB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAED;;;;;;OAMG;IACU,gBAAgB,CAAC,MAAM,GAAG,KAAK,EAAE,YAAY,GAAG,4BAAoB;;YAC7E,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC;YACnF,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;YAC3C,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YACvF,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;KAAA;IAED;;;;;;OAMG;IACU,gBAAgB,CACzB,cAAiC,iBAAiB,CAAC,kBAAkB,EACrE,YAAY,GAAG,4BAAoB;;YAEnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YAE5E,IAAI,WAAW,KAAK,iBAAiB,CAAC,QAAQ,EAAE;gBAC5C,OAAO,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;aACxC;YAED,IAAI,WAAW,KAAK,iBAAiB,CAAC,MAAM,EAAE;gBAC1C,OAAO,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC;aACtC;YAED,OAAO,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC9E,CAAC;KAAA;IAEY,YAAY,CAAC,aAAa,GAAG,CAAC,EAAE,YAAY,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK;;YACzE,IAAI,YAAY,GAAG,CAAC,EAAE;gBAClB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;aAC3D;YAED,MAAM,SAAS,GAAG,EAAE,CAAC;YACrB,MAAM,SAAS,GAAG,aAAa,GAAG,YAAY,CAAC;YAC/C,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YAErC,KAAK,IAAI,YAAY,GAAG,aAAa,EAAE,YAAY,GAAG,SAAS,EAAE,YAAY,EAAE,EAAE;gBAC7E,MAAM,OAAO,GAAG,SAAS,GAAG,GAAG,GAAG,YAAY,CAAC;gBAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,GAAG,GAAG,GAAG,OAAO,CAAC;gBACtD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;gBAChE,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAE9B,MAAM,IAAA,yBAAiB,GAAE,CAAC;aAC7B;YAED,OAAO,SAAS,CAAC;QACrB,CAAC;KAAA;IAEY,WAAW,CAAC,OAA+B;;YACpD,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,GAAa,CAAC,CAAC;QAC1F,CAAC;KAAA;IAEY,eAAe,CAAC,OAA0F;;;YACnH,MAAM,MAAM,GAAG,MAAA,OAAO,CAAC,MAAM,mCAAI,KAAK,CAAC;YACvC,MAAM,YAAY,GAAG,MAAA,OAAO,CAAC,YAAY,mCAAI,4BAAoB,CAAC;YAClE,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,GAAa,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;;KACnI;IAEY,0BAA0B,CAAC,OAA0F;;;YAC9H,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACrD,MAAM,UAAU,GAAG,MAAA,OAAO,CAAC,MAAM,mCAAI,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,MAAA,OAAO,CAAC,MAAM,mCAAI,KAAK,CAAC;YACvC,MAAM,YAAY,GAAG,MAAA,OAAO,CAAC,YAAY,mCAAI,4BAAoB,CAAC;YAClE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,GAAa,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;YACnH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;YAC1E,IAAI,MAAM,IAAI,yCAAyC,EACvD;gBACE,MAAM,IAAI,KAAK,CACb,sNAAsN,CACvN,CAAA;aACF;YACD,OAAO,IAAA,kCAA0B,EAAC,IAAA,4BAAoB,EAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAA;;KACnF;IAEY,oBAAoB,CAAC,YAAkF;;;YAChH,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAC9B,MAAM,MAAM,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,mCAAI,KAAK,CAAC;YACtC,MAAM,YAAY,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,mCAAI,4BAAoB,CAAC;YACjE,OAAO,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;;KAClH;IAEY,oBAAoB,CAAC,qBAAkC,EAAE,MAAa,EAAE,UAAkB;;YACnG,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,CAAC;YACpG,MAAM,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;YAC3D,OAAO,IAAA,kCAA0B,EAAC,IAAA,4BAAoB,EAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;QACrF,CAAC;KAAA;IAEY,oBAAoB,CAAC,EAAuC,EAAE,aAAqB;;YAC5F,MAAM,MAAM,GAAG,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC;YACrD,MAAM,WAAW,GAAkB,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;YAChG,MAAM,UAAU,GAAW,EAAE,CAAC;YAC9B,KAAK,MAAM,GAAG,IAAI,WAAW,CAAC,GAAG,EAAE;gBAC/B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACvF,MAAM,SAAS,GAAG,IAAA,4BAAoB,EAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC7D,MAAM,KAAK,GAAG,IAAI,iBAAS,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAClF,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBACnE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC3D,UAAU,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,KAAK;oBACL,OAAO;oBACP,cAAc,EAAE,aAAa,CAAC,cAAc;iBAC/C,CAAC,CAAC;aACN;YAED,MAAM,eAAe,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACvF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;YACpE,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,OAAO,CAAC,CAAC;YAE/G,IAAI,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC;YAC/B,IAAI,YAAY,EAAE;gBACd,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;aACjH;YAED,oBAAoB;YACpB,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAC1C,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;gBACzC,KAAK,EAAE,IAAI,iBAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;aAC3D,CAAC,CAAC,CAAC;YACJ,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,IAAI,EAAE,4BAAoB,CAAC,CAAC;YACtH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;YAC1E,IAAI,MAAM,IAAI,yCAAyC,EACvD;gBACE,MAAM,IAAI,KAAK,CACb,sNAAsN,CACvN,CAAA;aACF;YACD,OAAO,IAAA,kCAA0B,EAAC,IAAA,4BAAoB,EAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;QACrF,CAAC;KAAA;IAEY,YAAY,CAAC,YAA4C,EAAE,GAAY;;YAChF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAS,EAAE;gBAC/C,MAAM,IAAI,GAAmC,EAAE,CAAC;gBAChD,KAAK,MAAM,EAAE,IAAI,YAAY,EAAE;oBAC3B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;oBAC5C,IAAI,CAAC,EAAE,CAAC,GAAa,CAAC,GAAG,IAAI,iBAAS,CAAC,GAAG,CAAC,CAAC;iBAC/C;gBACD,OAAO,IAAI,CAAC;YAChB,CAAC,CAAA,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAEe,gBAAgB,CAC5B,YAA4B,EAC5B,UAAmB,EACnB,MAAM,GAAG,KAAK,EACd,YAAY,GAAG,4BAAoB,EACnC,aAAqB,EAAE;;YAEvB,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;YAC7G,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;YAC1E,IAAI,MAAM,IAAI,yCAAyC,EACvD;gBACE,MAAM,IAAI,KAAK,CACb,sNAAsN,CACvN,CAAA;aACF;YACD,OAAO,IAAA,kCAA0B,EAAC,IAAA,4BAAoB,EAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAA;QACpF,CAAC;KAAA;IAEe,WAAW,CAAC,SAAmB,EAAE,MAAM,GAAG,KAAK,EAAE,YAAY,GAAG,4BAAoB;;YAChG,iHAAiH;YACjH,MAAM,YAAY,GAAG,YAAY,CAAC;YAClC,MAAM,gBAAgB,GAAG,4BAAoB,CAAC;YAC9C,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,OAAO,KAAK,GAAG,YAAY,EAAE;gBACzB,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC;gBACjF,MAAM,aAAa,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBAChI,IAAI,aAAa,EAAE;oBACf,OAAO,aAAa,CAAC;iBACxB;gBACD,KAAK,IAAI,gBAAgB,CAAC;aAC7B;QACL,CAAC;KAAA;IAEY,gBAAgB,CAAC,OAAe;;YACzC,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;YACjE,IAAI,eAAe,EAAE;gBACjB,OAAO,eAAe,CAAC;aAC1B;YAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;YAC9D,IAAI,aAAa,EAAE;gBACf,OAAO,aAAa,CAAC;aACxB;YAED,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACvD,CAAC;KAAA;IAEe,wBAAwB,CAAC,IAAY;;YACjD,IAAI,IAAI,IAAI,IAAI,CAAC,gBAAgB,EAAE;gBAC/B,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;aACtC;YAED,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;YACjE,MAAM,SAAS,GAAG,kBAAkB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC;YACnE,MAAM,OAAO,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;YACxD,MAAM,aAAa,GAAG,IAAI,eAAO,CAAC;gBAC9B,OAAO;gBACP,SAAS,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACpC,cAAc,EAAE,IAAI;aACvB,CAAC,CAAC;YAEH,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC;YAC5C,OAAO,aAAa,CAAC;QACzB,CAAC;KAAA;IAEY,sBAAsB,CAC/B,WAA8B,EAC9B,eAAuB,4BAAoB,EAC3C,WAAmB,CAAC,EACpB,WAAoB,IAAI;;YAExB,MAAM,QAAQ,GAAG,GAAG,WAAW,IAAI,YAAY,IAAI,QAAQ,EAAE,CAAC;YAC9D,IAAI,QAAQ,EAAE;gBACV,MAAM,MAAM,GAAG,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC;gBACxD,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,GAAG,kCAAkC,EAAE;oBAC9E,OAAO,MAAM,CAAC,MAAM,CAAC;iBACxB;aACJ;YAED,MAAM,aAAa,GAA+C;gBAC9D,MAAM,EAAE,EAAE;gBACV,QAAQ,EAAE,EAAE;aACf,CAAC;YACF,MAAM,gBAAgB,GAAyD;gBAC3E,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,IAAI;aACjB,CAAC;YACF,MAAM,sBAAsB,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;YAC1D,IAAI,oBAAoB,GAAG,CAAC,CAAC;YAE7B,MAAM,iBAAiB,GAAG,GAAG,CAAC;YAC9B,IAAI,YAAY,GAAG,CAAC,CAAC;YAErB,iDAAiD;YACjD,OACI,CAAC,CAAC,WAAW,KAAK,iBAAiB,CAAC,kBAAkB;gBAClD,CAAC,sBAAsB,CAAC,MAAM,GAAG,QAAQ,IAAI,sBAAsB,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC;gBACzF,CAAC,WAAW,KAAK,iBAAiB,CAAC,QAAQ,IAAI,sBAAsB,CAAC,QAAQ,GAAG,QAAQ,CAAC;gBAC1F,CAAC,WAAW,KAAK,iBAAiB,CAAC,MAAM,IAAI,sBAAsB,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC;gBAC3F,oBAAoB,GAAG,YAAY,EACrC;gBACE,gDAAgD;gBAChD,IAAI,QAAQ,GAAc,EAAE,CAAC;gBAC7B,IAAI,eAAe,GAAc,EAAE,CAAC;gBACpC,IAAI,iBAAiB,GAAc,EAAE,CAAC;gBACtC,IAAI,YAAY,GAAG,CAAC,CAAC;gBAErB,IACI,CAAC,WAAW,KAAK,iBAAiB,CAAC,kBAAkB,IAAI,WAAW,KAAK,iBAAiB,CAAC,MAAM,CAAC;oBAClG,sBAAsB,CAAC,MAAM,GAAG,QAAQ;oBACxC,oBAAoB,GAAG,YAAY,EACrC;oBACE,MAAM,cAAc,GAAG,YAAY,GAAG,oBAAoB,CAAC;oBAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;oBAC9D,eAAe,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;oBACzE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;oBAC5C,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;iBACpD;gBAED,IACI,CAAC,WAAW,KAAK,iBAAiB,CAAC,kBAAkB,IAAI,WAAW,KAAK,iBAAiB,CAAC,QAAQ,CAAC;oBACpG,sBAAsB,CAAC,QAAQ,GAAG,QAAQ;oBAC1C,oBAAoB,GAAG,YAAY,EACrC;oBACE,MAAM,cAAc,GAAG,YAAY,GAAG,oBAAoB,CAAC;oBAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;oBAC9D,iBAAiB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;oBAC5E,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;oBAC9C,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;iBACpD;gBAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;oBACvB,MAAM;iBACT;gBAED,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAC;gBAEvG,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;oBAC5B,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;oBACzD,MAAM,eAAe,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACzF,MAAM,GAAG,GAAG,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;oBAEpD,IAAI,MAAM,EAAE;wBACR,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wBACjC,sBAAsB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBAChC,gBAAgB,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;qBAChC;yBAAM;wBACH,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAC;wBAE9B,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE;4BACxB,gBAAgB,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;yBACnC;qBACJ;iBACJ;gBAED,oBAAoB,IAAI,YAAY,CAAC;gBACrC,YAAY,IAAI,YAAY,CAAC;aAChC;YAED,MAAM,MAAM,GAA8B;gBACtC,aAAa;gBACb,aAAa,EAAE,gBAAgB;aAClC,CAAC;YAEF,IAAI,QAAQ,EAAE;gBACV,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;aAChF;YAED,OAAO,MAAM,CAAC;QAClB,CAAC;KAAA;IAEe,eAAe,CAAC,IAAe;;YAC3C,MAAM,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;YAC1D,MAAM,qBAAqB,GAAG,IAAA,kBAAO,EAAC,gBAAgB,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3F,MAAM,8BAA8B,GAAG,IAAA,kBAAO,EAAC,gBAAgB,CAAC,sBAAsB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7G,MAAM,mCAAmC,GAAG,IAAA,kBAAO,EAAC,gBAAgB,CAAC,2BAA2B,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAEvH,MAAM,WAAW,GAAG,gBAAgB,CAAC;YACrC,WAAW,CAAC,aAAa,GAAG,qBAAqB,CAAC;YAClD,WAAW,CAAC,sBAAsB,GAAG,8BAA8B,CAAC;YACpE,WAAW,CAAC,2BAA2B,GAAG,mCAAmC,CAAC;YAE9E,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;YAEjD,OAAO,MAAM,CAAC;QAClB,CAAC;KAAA;IAEY,sBAAsB,CAAC,IAAkC,EAAE,GAAY;;;YAChF,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAClD,MAAM,YAAY,GAAG,MAAA,IAAI,CAAC,YAAY,mCAAI,4BAAoB,CAAC;YAC/D,MAAM,cAAc,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,KAAK,CAAC;YAC5C,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CACzC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAC/B,IAAI,CAAC,GAAa,EAClB,MAAA,IAAI,CAAC,MAAM,mCAAI,EAAE,EACjB,GAAG,EACH,YAAY,EACZ,cAAc,CACjB,CAAC;YACF,OAAO,GAAG,CAAC;;KACd;IAEe,WAAW,CAAC,IAAkC,EAAE,GAAY;;;YACxE,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAClD,IAAI,CAAC,GAAG,EAAE;gBACN,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CACzC,OAAO,EACP,IAAI,CAAC,GAAa,EAClB,EAAE,EACF,KAAK,EACL,MAAA,IAAI,CAAC,YAAY,mCAAI,4BAAoB,EACzC,MAAA,IAAI,CAAC,MAAM,mCAAI,KAAK,CACvB,CAAC;gBACF,OAAO,GAAG,CAAC;aACd;iBAAM;gBACH,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CACzC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAC/B,IAAI,CAAC,GAAa,EAClB,EAAE,EACF,IAAI,EACJ,MAAA,IAAI,CAAC,YAAY,mCAAI,4BAAoB,EACzC,MAAA,IAAI,CAAC,MAAM,mCAAI,KAAK,CACvB,CAAC;gBACF,OAAO,GAAG,CAAC;aACd;;KACJ;IAEe,kBAAkB,CAC9B,QAAwB,EACxB,UAAmB,EACnB,aAAqB,EAAE,EACvB,KAAK,GAAG,KAAK,EACb,eAAuB,4BAAoB,EAC3C,MAAM,GAAG,KAAK;;YAEd,MAAM,mBAAmB,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,eAAe,KAAK,uBAAe,CAAC,QAAQ,CAAC,CAAC;YAC7I,MAAM,iBAAiB,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,aAAa,EAAE,CAAC;YAC3E,IAAI,KAAK,GAAW,EAAE,CAAC;YACvB,IAAI,UAAU,GAAW,EAAE,CAAC;YAE5B,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC;YAC/F,MAAM,SAAS,GAAc,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YAEpF,MAAM,kBAAkB,GAAW,MAAM,OAAO,CAAC,GAAG,CAChD,UAAU,CAAC,GAAG,CAAC,CAAO,IAAI,EAAE,EAAE;gBAC1B,IAAI,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;gBACzC,IAAI,cAAc,KAAK,SAAS,EAAE;oBAC9B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAChE,cAAc,GAAG,aAAa,CAAC,cAAc,CAAC;iBACjD;gBACD,uCAAY,IAAI,KAAE,cAAc,IAAG;YACvC,CAAC,CAAA,CAAC,CACL,CAAC;YAEF,IAAI,CAAC,KAAK,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3C,MAAM,MAAM,GAAW,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;gBAChG,KAAK,CAAC,IAAI,CACN,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;oBACnB,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC/D,uCACO,IAAI,KACP,cAAc,EAAE,IAAI,CAAC,cAAc,IACrC;gBACN,CAAC,CAAC,CACL,CAAC;aACL;iBAAM;gBACH,KAAK,GAAG,kBAAkB,CAAC;aAC9B;YAED,IAAI,mBAAmB,EAAE;gBACrB,MAAM,WAAW,GAAG,mBAAmB,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;gBACrE,MAAM,MAAM,GAAW,WAAW,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,yBAAyB,CAAC,SAAS,EAAE,mBAAmB,CAAC,SAAS,CAAC;oBAC1G,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,2BAA2B,CAAC,SAAS,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;gBACpJ,UAAU,CAAC,IAAI,CACX,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;oBACnB,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC/D,uCACO,IAAI,KACP,cAAc,EAAE,IAAI,CAAC,cAAc,IACrC;gBACN,CAAC,CAAC,CACL,CAAC;aACL;YAED,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAElE,IAAI,CAAC,UAAU;gBAAE,UAAU,GAAG,MAAM,iBAAiB,CAAC;YACtD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,cAAc,EAAE,CAAC;YAC5E,IAAI,UAAU,GAAG,WAAW,EAAE;gBAC1B,MAAM,IAAI,KAAK,CAAC,iBAAiB,UAAU,yCAAyC,WAAW,QAAQ,CAAC,CAAC;aAC5G;YAED,IAAI,OAA2B,CAAC;YAChC,IAAI,KAAK,EAAE;gBACP,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAE1E,MAAM,eAAe,GAAG,EAAE,CAAC,CAAC,mDAAmD;gBAC/E,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC;gBACnF,MAAM,gBAAgB,GAAG,QAAQ;qBAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC;qBACnC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;gBAE7D,MAAM,UAAU,GAAG,eAAe,GAAG,iBAAiB,GAAG,gBAAgB,CAAC;gBAC1E,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,qEAAqE;gBAE3G,MAAM,QAAQ,GAAG,UAAU,GAAG,CAAC,SAAS,GAAG,UAAU,CAAC,CAAC;gBACvD,MAAM,YAAY,GAAG,IAAI,iBAAS,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAEhE,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;gBACxM,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;aACrF;iBAAM;gBACH,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,eAAe,EAAE,MAAM,CAAC,eAAe,EAAC,CAAC,CAAC,CAAC;aAC1M;YAED,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,IAAA,mBAAW,EAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,CAAC;YAErI,IAAI,MAAM,IAAI,OAAO,EAAE;gBACnB,OAAO;oBACH,MAAM;oBACN,UAAU;oBACV,WAAW;oBACX,OAAO;oBACP,GAAG;iBACN,CAAC;aACL;YAED,MAAM,IAAI,iCAAwB,CAAC,oBAAoB,CAAC,CAAC;QAC7D,CAAC;KAAA;IAES,0BAA0B,CAAC,OAAe,EAAE,SAAiB,EAAE,UAAkB;QACvF;;;;;;;;;;;;;;;;;;;UAmBE;QACF,MAAM,mBAAmB,GAAG,IAAA,qBAAa,EAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAElE,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAClC,UAAU,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;QAEvC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAErD,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxC,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAEnD,MAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAA;QAE3D,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC;QAE1G,MAAM,YAAY,GAAG,qBAAM,CAAC,OAAO,CAAC;YAChC,qBAAM,CAAC,GAAG,CAAC,MAAM;YACjB,qBAAM,CAAC,GAAG,CAAC,UAAU;YACrB,mBAAmB;YACnB,qBAAM,CAAC,GAAG,CAAC,cAAc;YACzB,qBAAM,CAAC,GAAG,CAAC,WAAW;YACtB,qBAAM,CAAC,GAAG,CAAC,OAAO;YAClB,sBAAsB;YACtB,qBAAM,CAAC,GAAG,CAAC,OAAO;SACrB,CAAC,CAAC;QACH,OAAO;YACH,KAAK,EAAE,CAAC;YACR,WAAW,EAAE,UAAU;YACvB,MAAM,EAAE,YAAY;YACpB,SAAS;YACT,eAAe,EAAE,uBAAe,CAAC,QAAQ;SAC5C,CAAA;IACL,CAAC;IAES,qBAAqB,CAAC,OAAe,EAAE,SAAiB,EAAE,WAAmB,EAAE,QAAgB,EAAE,UAAmB,EAAE,QAAgB;QAC5I;;;;;;;;;;;;;;;;;;;;;;;UAuBE;QACF,MAAM,mBAAmB,GAAG,IAAA,qBAAa,EAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAElE,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAClC,UAAU,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;QAEvC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAErD,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxC,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAEnD,MAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAA;QAE5D,IAAI,iBAAiB,GAAa,CAAC,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;QAE9F,MAAM,wBAAwB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjD,wBAAwB,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACjD,wBAAwB,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;QAE3D,IAAI,QAAQ,EAAE;YACV,wBAAwB,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1C,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACjD,iBAAiB,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;YAChD,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;SACtC;aAAM;YACH,wBAAwB,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1C,iBAAiB,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;SACnD;QAED,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAE3D,MAAM,YAAY,GAAG,qBAAM,CAAC,OAAO,CAAC;YAChC,qBAAM,CAAC,GAAG,CAAC,MAAM;YACjB,qBAAM,CAAC,GAAG,CAAC,UAAU;YACrB,mBAAmB;YACnB,qBAAM,CAAC,GAAG,CAAC,cAAc;YACzB,qBAAM,CAAC,GAAG,CAAC,WAAW;YACtB,qBAAM,CAAC,GAAG,CAAC,OAAO;YAClB,iBAAiB;YACjB,qBAAM,CAAC,GAAG,CAAC,OAAO;SACrB,CAAC,CAAC;QACH,OAAO;YACH,KAAK,EAAE,CAAC;YACR,WAAW,EAAE,WAAW;YACxB,MAAM,EAAE,YAAY;YACpB,SAAS;YACT,eAAe,EAAE,uBAAe,CAAC,QAAQ;SAC5C,CAAA;IACL,CAAC;IAES,uBAAuB,CAAC,OAAe,EAAE,cAAsB;QACrE;;;;;;;;;;;;;;;;;;UAkBE;QACF,MAAM,mBAAmB,GAAG,IAAA,qBAAa,EAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAElE,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAClC,UAAU,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;QAEvC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAE1D,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxC,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAEnD,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC;QAEvF,MAAM,YAAY,GAAG,qBAAM,CAAC,OAAO,CAAC;YAChC,qBAAM,CAAC,GAAG,CAAC,MAAM;YACjB,qBAAM,CAAC,GAAG,CAAC,UAAU;YACrB,mBAAmB;YACnB,qBAAM,CAAC,GAAG,CAAC,cAAc;YACzB,qBAAM,CAAC,GAAG,CAAC,WAAW;YACtB,qBAAM,CAAC,GAAG,CAAC,OAAO;YAClB,mBAAmB;YACnB,qBAAM,CAAC,GAAG,CAAC,OAAO;SACrB,CAAC,CAAC;QACH,OAAO;YACH,KAAK,EAAE,CAAC;YACR,WAAW,EAAE,GAAG;YAChB,MAAM,EAAE,YAAY;YACpB,SAAS,EAAE,cAAc;YACzB,eAAe,EAAE,uBAAe,CAAC,UAAU;SAC9C,CAAA;IACL,CAAC;IAES,qBAAqB,CAAC,OAAe,EAAE,MAAc,EAAE,QAAgB;QAC7E;;UAEE;QACF,MAAM,mBAAmB,GAAG,IAAA,qBAAa,EAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAElE,MAAM,YAAY,GAAG,qBAAM,CAAC,OAAO,CAAC;YAChC,qBAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;YAC9B,qBAAM,CAAC,GAAG,CAAC,sBAAsB;YACjC,qBAAM,CAAC,GAAG,CAAC,OAAO;YAClB,qBAAM,CAAC,GAAG,CAAC,MAAM;YACjB,qBAAM,CAAC,GAAG,CAAC,UAAU;YACrB,mBAAmB;YACnB,qBAAM,CAAC,GAAG,CAAC,cAAc;YACzB,qBAAM,CAAC,GAAG,CAAC,WAAW;SACzB,CAAC,CAAC;QACH,OAAO;YACH,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,YAAY;SACvB,CAAA;IACL,CAAC;IAES,kBAAkB,CAAC,WAAmC;;QAC5D,MAAM,OAAO,GAAmB,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,WAAW,CAAA;QAEtB,yCAAyC;QACzC,EAAE,CAAC,SAAS,GAAG,MAAA,EAAE,CAAC,SAAS,0CAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;QAEjD,kBAAkB;QAClB,IAAI,EAAE,CAAC,SAAS,KAAK,iBAAS,CAAC,KAAK,EAAE;YAClC,MAAM,gBAAgB,GAAG,EAAE,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;YACtD,IAAI,gBAAgB,KAAK,CAAC,CAAC,EAAE,EAAE,WAAW;gBACtC;;;;;;;;;kBASE;gBACF,MAAM,cAAc,GAAG,EAAE,CAAC,SAAS,GAAG,GAAG,CAAA;gBACzC,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,IAAA,mCAA2B,GAAE,EAAE,IAAA,2BAAmB,GAAE,CAAC,CAAC;gBAC9H,MAAM,gBAAgB,GAAG,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,cAAc,CAAC,CAAC;gBACxF,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC;gBAC3I,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBACjC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAC/B,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;aAChC;iBAAM,EAAE,eAAe;gBACpB;;;;;;;;;;;kBAWE;gBACF,MAAM,cAAc,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,GAAG,GAAG,CAAA;gBACpE,MAAM,iBAAiB,GAAG,EAAE,CAAC,SAAS,GAAG,GAAG,CAAA;gBAC5C,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,IAAA,mCAA2B,GAAE,EAAE,IAAA,2BAAmB,GAAE,CAAC,CAAC;gBAC9H,MAAM,mBAAmB,GAAG,IAAI,CAAC,0BAA0B,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,cAAc,EAAE,GAAG,CAAC,CAAA;gBAClG,MAAM,gBAAgB,GAAG,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,iBAAiB,CAAC,CAAC;gBAC3F,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC;gBAC3I,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBACjC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAClC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAC/B,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;aAChC;SACJ;aAAM,EAAE,gBAAgB;YACrB;;;;;;;;;;cAUE;YACF,MAAM,cAAc,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;YACvD,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,IAAA,mCAA2B,GAAE,EAAE,IAAA,2BAAmB,GAAE,CAAC,CAAC;YAC9H,MAAM,mBAAmB,GAAG,IAAI,CAAC,0BAA0B,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,cAAc,EAAE,GAAG,CAAC,CAAA;YAClG,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC;YAC3I,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SAChC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAES,oBAAoB,CAAC,YAAkC;QAC7D,MAAM,OAAO,GAAmB,EAAE,CAAC;QAEnC,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;YACxB,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;gBACrC,mBAAmB;gBACnB,IAAI,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;oBACxC,MAAM,mBAAmB,GAAG,IAAI,CAAC,0BAA0B,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;oBACtI,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;oBAClC,OAAM;iBACT;qBAAM,IAAI,EAAE,CAAC,gBAAgB,IAAI,IAAI,EAAE;oBACpC,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC;oBAC9G,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBAChC;qBAAM,EAAE,qBAAqB;oBAC1B,OAAO,CAAC,IAAI,CAAC;wBACT,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE;wBACzB,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE;qBAC7B,CAAC,CAAC;iBACN;aACJ;YAED,IAAI,EAAE,CAAC,IAAI,EAAE;gBACT,MAAM,YAAY,GAAG,qBAAM,CAAC,OAAO,CAAC,CAAC,qBAAM,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;gBACzF,OAAO,CAAC,IAAI,CAAC;oBACT,KAAK,EAAE,CAAC;oBACR,MAAM,EAAE,YAAY;iBACvB,CAAC,CAAC;aACN;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACnB,CAAC;IAES,uBAAuB,CAAC,SAAiB;QAC/C,OAAO,IAAI,CAAC,8BAA8B,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC;IAClE,CAAC;IAES,8BAA8B,CAAC,SAAiB;QACtD,IAAI,IAAI,CAAC,YAAY,KAAK,mBAAa,CAAC,MAAM,EAAE;YAC5C,OAAO,uBAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;SACvE;;YAAM,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;IACjD,CAAC;CACJ;AAt1BD,4DAs1BC"}
1
+ {"version":3,"file":"YacoinBaseWallet.js","sourceRoot":"","sources":["../../../lib/wallet/YacoinBaseWallet.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { Chain } from '@yaswap/client';
3
3
  import { AddressType, Asset, BigNumber } from '@yaswap/types';
4
4
  import { BIP32Interface } from 'bip32';
5
5
  import { YacoinBaseChainProvider } from '../chain/YacoinBaseChainProvider';
6
- import { YacoinHDWalletProviderOptions, OutputTarget, PsbtInputTarget, RawExtendedPrivateKey, RawExtendedPublicKey, UTXO } from '../types';
6
+ import { ChangeAddressType, YacoinHDWalletProviderOptions, OutputTarget, PsbtInputTarget, RawExtendedPrivateKey, RawExtendedPublicKey, UTXO } from '../types';
7
7
  import { YacoinBaseWalletProvider } from './YacoinBaseWallet';
8
8
  import { IYacoinWallet } from './IYacoinWallet';
9
9
  export declare class YacoinHDWalletProvider extends YacoinBaseWalletProvider implements IYacoinWallet<YacoinBaseChainProvider> {
@@ -27,7 +27,7 @@ export declare class YacoinHDWalletProvider extends YacoinBaseWalletProvider imp
27
27
  getConnectedNetwork(): Promise<import("../types").YacoinNetwork>;
28
28
  isWalletAvailable(): Promise<boolean>;
29
29
  protected baseDerivationNode(): Promise<BIP32Interface>;
30
- protected buildTransaction(targets: OutputTarget[], feePerByte?: number, fixedUtxos?: UTXO[], change?: boolean, addressLimit?: number): Promise<{
30
+ protected buildTransaction(targets: OutputTarget[], feePerByte?: number, fixedUtxos?: UTXO[], useChangeUtxos?: boolean, changeAddressType?: ChangeAddressType, addressLimit?: number): Promise<{
31
31
  hex: string;
32
32
  fee: number;
33
33
  }>;
@@ -57,9 +57,10 @@ export declare class YacoinHDWalletProvider extends YacoinBaseWalletProvider imp
57
57
  private assertExtendedPrivateKey;
58
58
  private resetDerivedState;
59
59
  /**
60
- * Select the address to receive the change output.
61
- * - If change === true: use unused change address if available, otherwise pick randomly from used change addresses.
62
- * - If change === false: pick randomly from used receiving (external) addresses.
60
+ * Select the address to receive the change output according to changeAddressType:
61
+ * - USE_FIRST_RECEIVING_ADDRESS: first receiving address (default).
62
+ * - USE_UNUSED_CHANGE_ADDRESS: unused change address if available; otherwise random from used change addresses.
63
+ * - USE_RANDOM_USED_RECEIVING_ADDRESS: random from used receiving addresses.
63
64
  */
64
65
  private selectChangeAddress;
65
66
  }
@@ -106,12 +106,12 @@ class YacoinHDWalletProvider extends YacoinBaseWallet_1.YacoinBaseWalletProvider
106
106
  throw new Error('No credentials available');
107
107
  });
108
108
  }
109
- buildTransaction(targets, feePerByte, fixedUtxos, change = false, addressLimit = YacoinBaseWallet_1.NUMBER_ADDRESS_LIMIT) {
109
+ buildTransaction(targets, feePerByte, fixedUtxos, useChangeUtxos = false, changeAddressType = types_1.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS, addressLimit = YacoinBaseWallet_1.NUMBER_ADDRESS_LIMIT) {
110
110
  return __awaiter(this, void 0, void 0, function* () {
111
111
  this.ensureCanSign();
112
112
  const network = this._network;
113
- const { inputs, coinChange, tokenChange, fee } = yield this.getInputsForAmount(targets, feePerByte, fixedUtxos, false, addressLimit, change);
114
- const changeAddress = yield this.selectChangeAddress(change, addressLimit);
113
+ const { inputs, coinChange, tokenChange, fee } = yield this.getInputsForAmount(targets, feePerByte, fixedUtxos, false, addressLimit, useChangeUtxos);
114
+ const changeAddress = yield this.selectChangeAddress(changeAddressType, addressLimit);
115
115
  if (coinChange) {
116
116
  targets.unshift({
117
117
  address: changeAddress.address,
@@ -162,7 +162,7 @@ class YacoinHDWalletProvider extends YacoinBaseWallet_1.YacoinBaseWalletProvider
162
162
  }
163
163
  const _outputs = [{ address: externalChangeAddress, value: outputs[0].value }];
164
164
  // TODO: fix the inherited legacy code
165
- return this.buildTransaction(_outputs, feePerByte, inputs, false, YacoinBaseWallet_1.NUMBER_ADDRESS_LIMIT);
165
+ return this.buildTransaction(_outputs, feePerByte, inputs, true, types_1.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS, YacoinBaseWallet_1.NUMBER_ADDRESS_LIMIT);
166
166
  });
167
167
  }
168
168
  signPSBT(data, inputs) {
@@ -295,34 +295,45 @@ class YacoinHDWalletProvider extends YacoinBaseWallet_1.YacoinBaseWalletProvider
295
295
  this._derivationCache = {};
296
296
  }
297
297
  /**
298
- * Select the address to receive the change output.
299
- * - If change === true: use unused change address if available, otherwise pick randomly from used change addresses.
300
- * - If change === false: pick randomly from used receiving (external) addresses.
298
+ * Select the address to receive the change output according to changeAddressType:
299
+ * - USE_FIRST_RECEIVING_ADDRESS: first receiving address (default).
300
+ * - USE_UNUSED_CHANGE_ADDRESS: unused change address if available; otherwise random from used change addresses.
301
+ * - USE_RANDOM_USED_RECEIVING_ADDRESS: random from used receiving addresses.
301
302
  */
302
- selectChangeAddress(change, addressLimit) {
303
+ selectChangeAddress(changeAddressType, addressLimit) {
303
304
  return __awaiter(this, void 0, void 0, function* () {
304
305
  const gapLimit = 1;
305
- if (change) {
306
- const { usedAddresses, unusedAddress } = yield this.getUsedUnusedAddresses(YacoinBaseWallet_1.AddressSearchType.CHANGE, addressLimit, gapLimit, true);
307
- if (unusedAddress.change !== null) {
308
- return unusedAddress.change;
306
+ switch (changeAddressType) {
307
+ case types_1.ChangeAddressType.USE_FIRST_RECEIVING_ADDRESS: {
308
+ const [firstExternal] = yield this.getAddresses(0, 1, false);
309
+ return firstExternal;
309
310
  }
310
- if (usedAddresses.change.length > 0) {
311
- return usedAddresses.change[Math.floor(Math.random() * usedAddresses.change.length)];
311
+ case types_1.ChangeAddressType.USE_UNUSED_CHANGE_ADDRESS: {
312
+ const { usedAddresses, unusedAddress } = yield this.getUsedUnusedAddresses(YacoinBaseWallet_1.AddressSearchType.CHANGE, addressLimit, gapLimit, true);
313
+ if (unusedAddress.change !== null) {
314
+ return unusedAddress.change;
315
+ }
316
+ if (usedAddresses.change.length > 0) {
317
+ return usedAddresses.change[Math.floor(Math.random() * usedAddresses.change.length)];
318
+ }
319
+ const [firstChange] = yield this.getAddresses(0, 1, true);
320
+ return firstChange;
312
321
  }
313
- const [firstChange] = yield this.getAddresses(0, 1, true);
314
- return firstChange;
315
- }
316
- else {
317
- const { usedAddresses, unusedAddress } = yield this.getUsedUnusedAddresses(YacoinBaseWallet_1.AddressSearchType.EXTERNAL, addressLimit, gapLimit, true);
318
- if (usedAddresses.external.length > 0) {
319
- return usedAddresses.external[Math.floor(Math.random() * usedAddresses.external.length)];
322
+ case types_1.ChangeAddressType.USE_RANDOM_USED_RECEIVING_ADDRESS: {
323
+ const { usedAddresses, unusedAddress } = yield this.getUsedUnusedAddresses(YacoinBaseWallet_1.AddressSearchType.EXTERNAL, addressLimit, gapLimit, true);
324
+ if (usedAddresses.external.length > 0) {
325
+ return usedAddresses.external[Math.floor(Math.random() * usedAddresses.external.length)];
326
+ }
327
+ if (unusedAddress.external !== null) {
328
+ return unusedAddress.external;
329
+ }
330
+ const [firstExternal] = yield this.getAddresses(0, 1, false);
331
+ return firstExternal;
320
332
  }
321
- if (unusedAddress.external !== null) {
322
- return unusedAddress.external;
333
+ default: {
334
+ const [firstExternal] = yield this.getAddresses(0, 1, false);
335
+ return firstExternal;
323
336
  }
324
- const [firstExternal] = yield this.getAddresses(0, 1, false);
325
- return firstExternal;
326
337
  }
327
338
  });
328
339
  }
@@ -1 +1 @@
1
- {"version":3,"file":"YacoinHDWallet.js","sourceRoot":"","sources":["../../../lib/wallet/YacoinHDWallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"YacoinHDWallet.js","sourceRoot":"","sources":["../../../lib/wallet/YacoinHDWallet.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yaswap/yacoin",
3
- "version": "3.4.3",
3
+ "version": "3.4.4",
4
4
  "description": "",
5
5
  "author": "Yaswap",
6
6
  "homepage": "",
@@ -20,10 +20,10 @@
20
20
  "@types/bitcoinjs-lib": "^5.0.0",
21
21
  "@types/lodash": "^4.14.178",
22
22
  "@types/memoizee": "^0.4.7",
23
- "@yaswap/client": "3.4.3",
24
- "@yaswap/errors": "3.4.3",
25
- "@yaswap/types": "3.4.3",
26
- "@yaswap/utils": "3.4.3",
23
+ "@yaswap/client": "3.4.4",
24
+ "@yaswap/errors": "3.4.4",
25
+ "@yaswap/types": "3.4.4",
26
+ "@yaswap/utils": "3.4.4",
27
27
  "@yaswap/yacoinjs-coinselect": "^1.1.0",
28
28
  "@yaswap/yacoinjs-lib": "^1.3.0",
29
29
  "bip174": "^2.0.1",