@helios-lang/effect 0.2.0 → 0.4.31
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/.vscode/settings.json +3 -0
- package/dist/Cardano/Ledger/Address.js +1 -1
- package/dist/Cardano/Ledger/Address.js.map +1 -1
- package/dist/Cardano/Ledger/AssetClass.js +6 -1
- package/dist/Cardano/Ledger/AssetClass.js.map +1 -1
- package/dist/Cardano/Ledger/Assets.js +85 -3
- package/dist/Cardano/Ledger/Assets.js.map +1 -1
- package/dist/Cardano/Ledger/Credential.js +1 -1
- package/dist/Cardano/Ledger/Credential.js.map +1 -1
- package/dist/Cardano/Ledger/DCert.js +2 -1
- package/dist/Cardano/Ledger/DCert.js.map +1 -1
- package/dist/Cardano/Ledger/DatumHash.js +2 -2
- package/dist/Cardano/Ledger/DatumHash.js.map +1 -1
- package/dist/Cardano/Ledger/MintingPolicy.js +2 -0
- package/dist/Cardano/Ledger/MintingPolicy.js.map +1 -1
- package/dist/Cardano/Ledger/NativeScript.js +2 -1
- package/dist/Cardano/Ledger/NativeScript.js.map +1 -1
- package/dist/Cardano/Ledger/PubKey.js +17 -15
- package/dist/Cardano/Ledger/PubKey.js.map +1 -1
- package/dist/Cardano/Ledger/PubKeyHash.js +1 -1
- package/dist/Cardano/Ledger/PubKeyHash.js.map +1 -1
- package/dist/Cardano/Ledger/Redeemer.js +1 -1
- package/dist/Cardano/Ledger/Redeemer.js.map +1 -1
- package/dist/Cardano/Ledger/Signature.js +1 -0
- package/dist/Cardano/Ledger/Signature.js.map +1 -1
- package/dist/Cardano/Ledger/Tx.js +165 -17
- package/dist/Cardano/Ledger/Tx.js.map +1 -1
- package/dist/Cardano/Ledger/TxOutput.js +12 -6
- package/dist/Cardano/Ledger/TxOutput.js.map +1 -1
- package/dist/Cardano/Ledger/TxOutputDatum.js +36 -34
- package/dist/Cardano/Ledger/TxOutputDatum.js.map +1 -1
- package/dist/Cardano/Ledger/UTxO.js +1 -1
- package/dist/Cardano/Ledger/UTxO.js.map +1 -1
- package/dist/Cardano/Ledger/UTxORef.js +1 -0
- package/dist/Cardano/Ledger/UTxORef.js.map +1 -1
- package/dist/Cardano/Ledger/ValidatorHash.js +1 -1
- package/dist/Cardano/Ledger/ValidatorHash.js.map +1 -1
- package/dist/Cardano/Ledger/index.js +1 -0
- package/dist/Cardano/Ledger/index.js.map +1 -1
- package/dist/Cardano/Network/AssetMetadata.js +11 -0
- package/dist/Cardano/Network/AssetMetadata.js.map +1 -0
- package/dist/Cardano/Network/IsMainnet.js +1 -1
- package/dist/Cardano/Network/IsMainnet.js.map +1 -1
- package/dist/Cardano/Network/Params.js +105 -1
- package/dist/Cardano/Network/Params.js.map +1 -1
- package/dist/Cardano/Network/Submit.js +15 -0
- package/dist/Cardano/Network/Submit.js.map +1 -0
- package/dist/Cardano/Network/UTxO.js +2 -2
- package/dist/Cardano/Network/UTxO.js.map +1 -1
- package/dist/Cardano/Network/UTxOsAt.js +3 -2
- package/dist/Cardano/Network/UTxOsAt.js.map +1 -1
- package/dist/Cardano/Network/errors.js +16 -3
- package/dist/Cardano/Network/errors.js.map +1 -1
- package/dist/Cardano/Network/index.js +2 -0
- package/dist/Cardano/Network/index.js.map +1 -1
- package/dist/Cardano/ScriptContext.js +264 -0
- package/dist/Cardano/ScriptContext.js.map +1 -0
- package/dist/Cardano/TxBuilder.js +109 -46
- package/dist/Cardano/TxBuilder.js.map +1 -1
- package/dist/Cardano/Uplc/Builtins.js +293 -32
- package/dist/Cardano/Uplc/Builtins.js.map +1 -1
- package/dist/Cardano/Uplc/Cek.js +6 -5
- package/dist/Cardano/Uplc/Cek.js.map +1 -1
- package/dist/Cardano/Uplc/Cost.js +257 -1
- package/dist/Cardano/Uplc/Cost.js.map +1 -1
- package/dist/Cardano/Uplc/Data.js +22 -8
- package/dist/Cardano/Uplc/Data.js.map +1 -1
- package/dist/Cardano/Uplc/Script.js +52 -10
- package/dist/Cardano/Uplc/Script.js.map +1 -1
- package/dist/Cardano/Uplc/Term.js +14 -0
- package/dist/Cardano/Uplc/Term.js.map +1 -1
- package/dist/Cardano/Uplc/index.js +2 -1
- package/dist/Cardano/Uplc/index.js.map +1 -1
- package/dist/Cardano/Wallet.js +51 -0
- package/dist/Cardano/Wallet.js.map +1 -0
- package/dist/Cardano/index.js +4 -3
- package/dist/Cardano/index.js.map +1 -1
- package/dist/Codecs/Base32.js +4 -1
- package/dist/Codecs/Base32.js.map +1 -1
- package/dist/Codecs/BigEndian.js +1 -1
- package/dist/Codecs/BigEndian.js.map +1 -1
- package/dist/Codecs/Bytes.js +1 -1
- package/dist/Codecs/Bytes.js.map +1 -1
- package/dist/Codecs/LittleEndian.js +4 -0
- package/dist/Codecs/LittleEndian.js.map +1 -1
- package/dist/Codecs/Utf8.js +1 -1
- package/dist/Codecs/Utf8.js.map +1 -1
- package/dist/Crypto/Bip32.js +134 -0
- package/dist/Crypto/Bip32.js.map +1 -0
- package/dist/Crypto/Bip39.js +2176 -0
- package/dist/Crypto/Bip39.js.map +1 -0
- package/dist/Crypto/Curve.js +1 -0
- package/dist/Crypto/Curve.js.map +1 -1
- package/dist/Crypto/Ed25519.js +2 -1
- package/dist/Crypto/Ed25519.js.map +1 -1
- package/dist/Crypto/EdDSA.js +2 -1
- package/dist/Crypto/EdDSA.js.map +1 -1
- package/dist/Crypto/Sha3_256.js +1 -0
- package/dist/Crypto/Sha3_256.js.map +1 -1
- package/dist/Crypto/index.js +2 -0
- package/dist/Crypto/index.js.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/package.json +2 -1
- package/types/Cardano/Ledger/Address.d.ts +2 -2
- package/types/Cardano/Ledger/Address.d.ts.map +1 -1
- package/types/Cardano/Ledger/AssetClass.d.ts +6 -1
- package/types/Cardano/Ledger/AssetClass.d.ts.map +1 -1
- package/types/Cardano/Ledger/Assets.d.ts +14 -2
- package/types/Cardano/Ledger/Assets.d.ts.map +1 -1
- package/types/Cardano/Ledger/Credential.d.ts +1 -1
- package/types/Cardano/Ledger/Credential.d.ts.map +1 -1
- package/types/Cardano/Ledger/DatumHash.d.ts +2 -2
- package/types/Cardano/Ledger/DatumHash.d.ts.map +1 -1
- package/types/Cardano/Ledger/MintingPolicy.d.ts +1 -0
- package/types/Cardano/Ledger/MintingPolicy.d.ts.map +1 -1
- package/types/Cardano/Ledger/PubKey.d.ts +13 -9
- package/types/Cardano/Ledger/PubKey.d.ts.map +1 -1
- package/types/Cardano/Ledger/PubKeyHash.d.ts +2 -2
- package/types/Cardano/Ledger/PubKeyHash.d.ts.map +1 -1
- package/types/Cardano/Ledger/Redeemer.d.ts +1 -1
- package/types/Cardano/Ledger/Redeemer.d.ts.map +1 -1
- package/types/Cardano/Ledger/Signature.d.ts +2 -2
- package/types/Cardano/Ledger/Signature.d.ts.map +1 -1
- package/types/Cardano/Ledger/Tx.d.ts +19 -241
- package/types/Cardano/Ledger/Tx.d.ts.map +1 -1
- package/types/Cardano/Ledger/TxOutput.d.ts +98 -108
- package/types/Cardano/Ledger/TxOutput.d.ts.map +1 -1
- package/types/Cardano/Ledger/TxOutputDatum.d.ts +69 -68
- package/types/Cardano/Ledger/TxOutputDatum.d.ts.map +1 -1
- package/types/Cardano/Ledger/UTxO.d.ts +275 -325
- package/types/Cardano/Ledger/UTxO.d.ts.map +1 -1
- package/types/Cardano/Ledger/ValidatorHash.d.ts +2 -2
- package/types/Cardano/Ledger/ValidatorHash.d.ts.map +1 -1
- package/types/Cardano/Ledger/index.d.ts +1 -0
- package/types/Cardano/Ledger/index.d.ts.map +1 -1
- package/types/Cardano/Network/AssetMetadata.d.ts +15 -0
- package/types/Cardano/Network/AssetMetadata.d.ts.map +1 -0
- package/types/Cardano/Network/IsMainnet.d.ts +1 -1
- package/types/Cardano/Network/Params.d.ts +9 -1
- package/types/Cardano/Network/Params.d.ts.map +1 -1
- package/types/Cardano/Network/Submit.d.ts +18 -0
- package/types/Cardano/Network/Submit.d.ts.map +1 -0
- package/types/Cardano/Network/UTxO.d.ts +1 -1
- package/types/Cardano/Network/UTxO.d.ts.map +1 -1
- package/types/Cardano/Network/UTxOsAt.d.ts +2 -2
- package/types/Cardano/Network/UTxOsAt.d.ts.map +1 -1
- package/types/Cardano/Network/errors.d.ts +22 -2
- package/types/Cardano/Network/errors.d.ts.map +1 -1
- package/types/Cardano/Network/index.d.ts +2 -0
- package/types/Cardano/Network/index.d.ts.map +1 -1
- package/types/Cardano/ScriptContext.d.ts +1340 -0
- package/types/Cardano/ScriptContext.d.ts.map +1 -0
- package/types/Cardano/TxBuilder.d.ts +12 -39
- package/types/Cardano/TxBuilder.d.ts.map +1 -1
- package/types/Cardano/Uplc/Builtins.d.ts.map +1 -1
- package/types/Cardano/Uplc/Cek.d.ts.map +1 -1
- package/types/Cardano/Uplc/Cost.d.ts +1 -0
- package/types/Cardano/Uplc/Cost.d.ts.map +1 -1
- package/types/Cardano/Uplc/Data.d.ts.map +1 -1
- package/types/Cardano/Uplc/Script.d.ts +5 -3
- package/types/Cardano/Uplc/Script.d.ts.map +1 -1
- package/types/Cardano/Uplc/Term.d.ts +3 -0
- package/types/Cardano/Uplc/Term.d.ts.map +1 -1
- package/types/Cardano/Uplc/index.d.ts +2 -1
- package/types/Cardano/Uplc/index.d.ts.map +1 -1
- package/types/Cardano/Wallet.d.ts +68 -0
- package/types/Cardano/Wallet.d.ts.map +1 -0
- package/types/Cardano/index.d.ts +4 -3
- package/types/Cardano/index.d.ts.map +1 -1
- package/types/Codecs/Base32.d.ts +4 -1
- package/types/Codecs/Base32.d.ts.map +1 -1
- package/types/Codecs/LittleEndian.d.ts +1 -0
- package/types/Codecs/LittleEndian.d.ts.map +1 -1
- package/types/Crypto/Bip32.d.ts +31 -0
- package/types/Crypto/Bip32.d.ts.map +1 -0
- package/types/Crypto/Bip39.d.ts +43 -0
- package/types/Crypto/Bip39.d.ts.map +1 -0
- package/types/Crypto/EdDSA.d.ts +1 -1
- package/types/Crypto/EdDSA.d.ts.map +1 -1
- package/types/Crypto/index.d.ts +2 -0
- package/types/Crypto/index.d.ts.map +1 -1
- package/types/index.d.ts +3 -3
- package/types/index.d.ts.map +1 -1
- package/bun.lock +0 -60
- package/tsconfig.build.json +0 -14
- package/tsconfig.build.tsbuildinfo +0 -1
- package/tsconfig.json +0 -38
- package/tsconfig.tsbuildinfo +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScriptContext.js","sourceRoot":"","sources":["../../src/Cardano/ScriptContext.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { Console, Context, Data, Effect } from "effect";
|
|
2
|
+
import { Bytes } from "../Codecs/index.js";
|
|
2
3
|
import * as CoinSelection from "./CoinSelection.js";
|
|
3
|
-
import { Address, Assets, DCert, MintingPolicy, NativeScript, RewardAddress, Tx, TxOutput, UTxO } from "./Ledger";
|
|
4
|
-
import * as Network from "./Network";
|
|
5
|
-
import * as
|
|
4
|
+
import { Address, AssetClass, Assets, Credential, DatumHash, DCert, MintingPolicy, NativeScript, PubKeyHash, Redeemer, RewardAddress, Tx, TxOutput, UTxO, UTxORef, ValidatorHash } from "./Ledger/index.js";
|
|
5
|
+
import * as Network from "./Network/index.js";
|
|
6
|
+
import * as ScriptContext from "./ScriptContext.js";
|
|
7
|
+
import * as Uplc from "./Uplc/index.js";
|
|
8
|
+
import { Balancing as BalancingWallet } from "./Wallet.js";
|
|
6
9
|
export class UTxOAlreadyAdded extends Data.TaggedError("Cardano.TxBuilder.UTxOAlreadyAdded") {
|
|
7
10
|
constructor(ref) {
|
|
8
11
|
super({ ref, message: `UTxO ${ref} already added to Tx` });
|
|
@@ -191,7 +194,7 @@ export const mint = (assets, redeemer = undefined) => (b) => Effect.gen(function
|
|
|
191
194
|
if (!hasUplcScript(b, hash)) {
|
|
192
195
|
return yield* Effect.fail(new MissingScript(hash));
|
|
193
196
|
}
|
|
194
|
-
addMintingRedeemer(b, policy, redeemer);
|
|
197
|
+
b = yield* addMintingRedeemer(b, policy, redeemer);
|
|
195
198
|
}
|
|
196
199
|
else {
|
|
197
200
|
if (!hasNativeScript(b, hash)) {
|
|
@@ -256,7 +259,7 @@ export const spend = (utxos, redeemer = undefined) => (b) => Effect.gen(function
|
|
|
256
259
|
if (!datum && !hasDatumlessScript(b, spendingCred.hash)) {
|
|
257
260
|
return yield* Effect.fail(new MissingDatum());
|
|
258
261
|
}
|
|
259
|
-
if (datum &&
|
|
262
|
+
if (datum && "hash" in datum) {
|
|
260
263
|
// provide datum through service
|
|
261
264
|
const getDatum = yield* GetDatum;
|
|
262
265
|
const datumData = yield* getDatum(datum.hash);
|
|
@@ -599,7 +602,7 @@ function hasSigner(b, signer) {
|
|
|
599
602
|
}
|
|
600
603
|
class CurrentTxBuilder extends Context.Tag("Cardano.TxBuilder.CurrentTxBuilder")() {
|
|
601
604
|
}
|
|
602
|
-
export const build = (
|
|
605
|
+
export const build = (options = {}) => (b) => Effect.gen(function* () {
|
|
603
606
|
/**
|
|
604
607
|
* Calculate the metadata hash
|
|
605
608
|
*/
|
|
@@ -608,6 +611,7 @@ export const build = (config) => (b) => Effect.gen(function* () {
|
|
|
608
611
|
* Calculate the validity time range slots
|
|
609
612
|
*/
|
|
610
613
|
const { firstValidSlot, lastValidSlot } = yield* buildValidityTimeRange;
|
|
614
|
+
yield* Console.log(`Built validatity slots: ${firstValidSlot}:${lastValidSlot}`);
|
|
611
615
|
/**
|
|
612
616
|
* Make sure the outputs contain enough lovelace
|
|
613
617
|
*/
|
|
@@ -643,7 +647,7 @@ export const build = (config) => (b) => Effect.gen(function* () {
|
|
|
643
647
|
signers: b.signers,
|
|
644
648
|
collateralReturn: undefined, // TODO
|
|
645
649
|
metadataHash,
|
|
646
|
-
encoding:
|
|
650
|
+
encoding: options.bodyEncoding
|
|
647
651
|
},
|
|
648
652
|
witnesses: {
|
|
649
653
|
signatures: [],
|
|
@@ -655,15 +659,22 @@ export const build = (config) => (b) => Effect.gen(function* () {
|
|
|
655
659
|
v3Scripts: b.v3Scripts.map((s) => s.script),
|
|
656
660
|
v2RefScripts: b.v2RefScripts.map((s) => s.script),
|
|
657
661
|
v3RefScripts: b.v3RefScripts.map((s) => s.script),
|
|
658
|
-
encoding:
|
|
662
|
+
encoding: options.witnessesEncoding
|
|
659
663
|
},
|
|
660
664
|
isValid: false,
|
|
661
665
|
metadata
|
|
662
666
|
};
|
|
667
|
+
yield* Console.log("validating outputs...");
|
|
668
|
+
for (const output of outputs) {
|
|
669
|
+
yield* Console.log(`Output lovelace: ${output.assets[""]?.toString()}`);
|
|
670
|
+
}
|
|
671
|
+
yield* Tx.validateOutputs(true)(tx);
|
|
672
|
+
yield* Console.log(`Initialized tx`);
|
|
663
673
|
/**
|
|
664
674
|
* The redeemer indices depend on some tx body fields, so are initialized after the init tx is created
|
|
665
675
|
*/
|
|
666
676
|
tx = yield* buildRedeemersWithoutCost(tx);
|
|
677
|
+
yield* Console.log(`Built redeemers without cost`);
|
|
667
678
|
/**
|
|
668
679
|
* Now in a loop the transaction is updated:
|
|
669
680
|
* - fee is set to min fee
|
|
@@ -675,12 +686,32 @@ export const build = (config) => (b) => Effect.gen(function* () {
|
|
|
675
686
|
* The loop continues as long as the tx.fee field is smaller than the min required field.
|
|
676
687
|
* We know that this loop will run at least once because initially tx.fee=0n, ensuring the tx is balanced
|
|
677
688
|
*/
|
|
689
|
+
yield* Console.log(`Start loop`);
|
|
678
690
|
while (tx.body.fee < (yield* Tx.minFee(tx))) {
|
|
691
|
+
yield* Console.log(`Updating fee`);
|
|
679
692
|
tx = yield* updateFee(tx);
|
|
680
|
-
|
|
693
|
+
yield* Console.log(`Updated fee`);
|
|
694
|
+
tx = yield* balanceTx(tx);
|
|
695
|
+
yield* Console.log(`Balanced tx`);
|
|
681
696
|
tx = yield* buildRedeemersWithCost(tx);
|
|
697
|
+
yield* Console.log(`Built redeemers with cost`);
|
|
682
698
|
tx = yield* updateScriptDataHash(tx);
|
|
699
|
+
yield* Console.log(`Updated script hash`);
|
|
683
700
|
}
|
|
701
|
+
yield* Console.log(`End loop`);
|
|
702
|
+
/**
|
|
703
|
+
* Sign using balancing wallet
|
|
704
|
+
*/
|
|
705
|
+
tx = {
|
|
706
|
+
...tx,
|
|
707
|
+
witnesses: {
|
|
708
|
+
...tx.witnesses,
|
|
709
|
+
signatures: [
|
|
710
|
+
...tx.witnesses.signatures,
|
|
711
|
+
...(yield* (yield* BalancingWallet).signTx(tx))
|
|
712
|
+
]
|
|
713
|
+
}
|
|
714
|
+
};
|
|
684
715
|
return tx;
|
|
685
716
|
}).pipe(Effect.provideService(CurrentTxBuilder, b));
|
|
686
717
|
const buildMetadata = CurrentTxBuilder.pipe(Effect.map((b) => {
|
|
@@ -712,18 +743,29 @@ const buildNonChangeOutputs = Effect.gen(function* () {
|
|
|
712
743
|
const b = yield* CurrentTxBuilder;
|
|
713
744
|
const outputs = b.outputs.slice();
|
|
714
745
|
for (let i = 0; i < outputs.length; i++) {
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
746
|
+
let output = outputs[i];
|
|
747
|
+
let lovelace = yield* TxOutput.minLovelace(output);
|
|
748
|
+
// iterate, because including lovelace value requires more lovelace itself
|
|
749
|
+
while (lovelace > (output.assets[""] ?? 0n)) {
|
|
750
|
+
yield* Console.log(`Updated output ${i} to contain ${lovelace} lovelace (${"" in output.assets ? `contained only ${output.assets[""]} before` : `didn't contain any lovelace before`})`);
|
|
751
|
+
output = {
|
|
719
752
|
...output,
|
|
720
753
|
assets: {
|
|
721
754
|
...output.assets,
|
|
722
755
|
"": lovelace
|
|
723
756
|
}
|
|
724
757
|
};
|
|
758
|
+
outputs[i] = output;
|
|
759
|
+
lovelace = yield* TxOutput.minLovelace(output);
|
|
725
760
|
}
|
|
726
761
|
}
|
|
762
|
+
// sort all assets
|
|
763
|
+
for (let i = 0; i < outputs.length; i++) {
|
|
764
|
+
outputs[i] = {
|
|
765
|
+
...outputs[i],
|
|
766
|
+
assets: Assets.sort()(outputs[i].assets)
|
|
767
|
+
};
|
|
768
|
+
}
|
|
727
769
|
return outputs;
|
|
728
770
|
});
|
|
729
771
|
const selectCollateralInputs = Effect.gen(function* () {
|
|
@@ -788,6 +830,7 @@ const buildRedeemersWithCost = (tx) => Effect.gen(function* () {
|
|
|
788
830
|
* Rebuild the redeemers to make sure the indices point to the correct policy/input/withdrawal/dcert
|
|
789
831
|
*/
|
|
790
832
|
tx = yield* buildRedeemersWithoutCost(tx);
|
|
833
|
+
yield* Console.log("rebuilt redeemers without cost");
|
|
791
834
|
/**
|
|
792
835
|
* Now calculate the cost of each redeemer
|
|
793
836
|
*/
|
|
@@ -828,11 +871,26 @@ const redeemerValidatorHash = (redeemer) => {
|
|
|
828
871
|
}
|
|
829
872
|
};
|
|
830
873
|
const profileRedeemer = (b, tx) => (vh, redeemerIndex) => Effect.gen(function* () {
|
|
874
|
+
yield* Console.log(`Profiling redeemer of ${vh}`);
|
|
831
875
|
const script = getUplcScript(b, vh);
|
|
832
|
-
const args = yield*
|
|
876
|
+
const args = yield* ScriptContext.makeArgs(script.version, tx, redeemerIndex);
|
|
833
877
|
const costModel = yield* Network.Params.costModel(script.version);
|
|
878
|
+
yield* Console.log(`Evaluating script`);
|
|
834
879
|
const profile = yield* Uplc.Script.eval(script, args, costModel);
|
|
880
|
+
yield* Console.log(`Done evaluating script`);
|
|
835
881
|
if (profile.value._tag == "Left") {
|
|
882
|
+
yield* Console.log(profile.value.left);
|
|
883
|
+
yield* Console.error(`Script evaluation failed`);
|
|
884
|
+
yield* Console.log(`Script cborHex: ${Bytes.toHex(script.root)}`);
|
|
885
|
+
for (const arg of args) {
|
|
886
|
+
if (Uplc.Value.isData(arg)) {
|
|
887
|
+
yield* Console.log(Bytes.toHex(Uplc.Data.encode(arg.data)));
|
|
888
|
+
}
|
|
889
|
+
else {
|
|
890
|
+
yield* Console.log(arg);
|
|
891
|
+
}
|
|
892
|
+
}
|
|
893
|
+
yield* Console.log(``);
|
|
836
894
|
// TODO: return a RuntimeError with nice stack trace
|
|
837
895
|
return yield* Effect.fail(new Error(profile.value.left.error));
|
|
838
896
|
}
|
|
@@ -865,20 +923,37 @@ const updateFee = (tx) => Effect.gen(function* () {
|
|
|
865
923
|
const selectCoinsForBalancing = CoinSelection.smallestFirst({
|
|
866
924
|
allowSelectingUninvolvedAssets: true
|
|
867
925
|
});
|
|
868
|
-
const balanceTx = (tx
|
|
926
|
+
const balanceTx = (tx) => Effect.gen(function* () {
|
|
927
|
+
yield* Console.log("Balancing tx...");
|
|
928
|
+
const balancingWallet = yield* BalancingWallet;
|
|
929
|
+
const changeAddress = yield* balancingWallet.changeAddress;
|
|
930
|
+
const spareUTxOs = yield* balancingWallet.utxos;
|
|
931
|
+
/**
|
|
932
|
+
* Lookup or create the change output (TODO: support multiple change outputs?)
|
|
933
|
+
*/
|
|
934
|
+
let changeOutput = tx.body.outputs.find((output) => output.address == changeAddress &&
|
|
935
|
+
output.datum === undefined &&
|
|
936
|
+
output.refScript === undefined);
|
|
937
|
+
const nonChangeOutputs = tx.body.outputs.filter((output) => output != changeOutput);
|
|
938
|
+
/**
|
|
939
|
+
* Create the change output if no change output was found
|
|
940
|
+
*/
|
|
941
|
+
if (changeOutput === undefined) {
|
|
942
|
+
changeOutput = {
|
|
943
|
+
address: changeAddress,
|
|
944
|
+
assets: {}
|
|
945
|
+
};
|
|
946
|
+
}
|
|
869
947
|
const inputAssets = UTxO.sumAssets(...tx.body.inputs);
|
|
870
|
-
|
|
948
|
+
// don't count the changeOutput!
|
|
949
|
+
const outputAssets = Assets.sum(...nonChangeOutputs.map((output) => output.assets));
|
|
871
950
|
const feeAssets = { "": tx.body.fee };
|
|
872
951
|
const mintedAssets = tx.body.minted;
|
|
952
|
+
yield* Console.log("Summing assets...");
|
|
873
953
|
let net = Assets.sum(inputAssets, mintedAssets, Assets.negate(outputAssets), Assets.negate(feeAssets));
|
|
874
|
-
/**
|
|
875
|
-
* Return if already balanced
|
|
876
|
-
*/
|
|
877
|
-
if (Assets.isEmpty(net)) {
|
|
878
|
-
return tx;
|
|
879
|
-
}
|
|
880
954
|
const selectAndAddInputs = (amount) => Effect.gen(function* () {
|
|
881
|
-
|
|
955
|
+
yield* Console.log("Selecting coins...");
|
|
956
|
+
const extraInputs = yield* selectCoinsForBalancing(UTxO.difference(spareUTxOs ?? [], tx.body.inputs.concat(tx.body.refInputs)), amount);
|
|
882
957
|
net = Assets.add(net, UTxO.sumAssets(...extraInputs));
|
|
883
958
|
tx = {
|
|
884
959
|
...tx,
|
|
@@ -895,38 +970,26 @@ const balanceTx = (tx, config) => Effect.gen(function* () {
|
|
|
895
970
|
yield* selectAndAddInputs(Assets.negate(Assets.filterNegative(net)));
|
|
896
971
|
}
|
|
897
972
|
/**
|
|
898
|
-
*
|
|
973
|
+
* `net` must be positive at this point
|
|
899
974
|
*/
|
|
900
|
-
if (Assets.isEmpty(net)) {
|
|
901
|
-
|
|
975
|
+
if (!Assets.isEmpty(Assets.filterNegative(net))) {
|
|
976
|
+
throw new Error("net not positive");
|
|
902
977
|
}
|
|
903
|
-
if (Address.isValidator(
|
|
978
|
+
if (Address.isValidator(changeAddress)) {
|
|
904
979
|
throw new Error("can't send change to validator");
|
|
905
980
|
}
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
output.refScript === undefined);
|
|
912
|
-
const nonChangeOutputs = tx.body.outputs.filter((output) => output != changeOutput);
|
|
913
|
-
/**
|
|
914
|
-
* Create the change output if no change output was found
|
|
915
|
-
*/
|
|
916
|
-
if (changeOutput === undefined) {
|
|
917
|
-
changeOutput = {
|
|
918
|
-
address: config.changeAddress,
|
|
919
|
-
assets: Assets.filterPositive(net)
|
|
920
|
-
};
|
|
921
|
-
net = {};
|
|
922
|
-
}
|
|
981
|
+
changeOutput = {
|
|
982
|
+
...changeOutput,
|
|
983
|
+
assets: Assets.sort()(net)
|
|
984
|
+
};
|
|
985
|
+
net = {};
|
|
923
986
|
const minLovelace = yield* TxOutput.minLovelace(changeOutput);
|
|
924
987
|
let diff = minLovelace - (changeOutput.assets[""] ?? 0n);
|
|
925
988
|
while (diff > 0n) {
|
|
926
|
-
yield* selectAndAddInputs({ "": diff });
|
|
989
|
+
yield* selectAndAddInputs(Assets.add({ "": diff }, Assets.negate(Assets.filterNegative(changeOutput.assets))));
|
|
927
990
|
changeOutput = {
|
|
928
991
|
...changeOutput,
|
|
929
|
-
assets: Assets.add(changeOutput.assets,
|
|
992
|
+
assets: Assets.sort()(Assets.add(changeOutput.assets, net))
|
|
930
993
|
};
|
|
931
994
|
net = {};
|
|
932
995
|
diff =
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TxBuilder.js","sourceRoot":"","sources":["../../src/Cardano/TxBuilder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TxBuilder.js","sourceRoot":"","sources":["../../src/Cardano/TxBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,EACL,OAAO,EACP,UAAU,EACV,MAAM,EACN,UAAU,EACV,SAAS,EACT,KAAK,EACL,aAAa,EACb,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,aAAa,EACb,EAAE,EACF,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,aAAa,EACd,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,SAAS,IAAI,eAAe,EAAE,MAAM,aAAa,CAAA;AAO1D,MAAM,OAAO,gBAAiB,SAAQ,IAAI,CAAC,WAAW,CACpD,oCAAoC,CACM;IAC1C,YAAY,GAAoB;QAC9B,KAAK,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,GAAG,sBAAsB,EAAE,CAAC,CAAA;IAC5D,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,IAAI,CAAC,WAAW,CAChD,gCAAgC,CACZ;IACpB;QACE,KAAK,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAA;IACrC,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,IAAI,CAAC,WAAW,CACnD,mCAAmC,CACf;IACpB;QACE,KAAK,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC,CAAA;IACxC,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,IAAI,CAAC,WAAW,CACrD,qCAAqC,CACjB;IACpB;QACE,KAAK,CAAC;YACJ,OAAO,EAAE,yDAAyD;SACnE,CAAC,CAAA;IACJ,CAAC;CACF;AAED,MAAM,OAAO,oBAAqB,SAAQ,IAAI,CAAC,WAAW,CACxD,wCAAwC,CACpB;IACpB;QACE,KAAK,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAA;IAC9C,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,IAAI,CAAC,WAAW,CACjD,iCAAiC,CACb;IACpB,YAAY,IAAiC;QAC3C,KAAK,CAAC,EAAE,OAAO,EAAE,sBAAsB,IAAI,EAAE,EAAE,CAAC,CAAA;IAClD,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,IAAI,CAAC,WAAW,CACjD,iCAAiC,CACb;IACpB,YAAY,IAAyB,EAAE,KAAc;QACnD,KAAK,CAAC,EAAE,OAAO,EAAE,aAAa,IAAI,eAAe,KAAK,GAAG,EAAE,CAAC,CAAA;IAC9D,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,IAAI,CAAC,WAAW,CAC1D,0CAA0C,CACtB;IACpB;QACE,KAAK,CAAC;YACJ,OAAO,EAAE,wHAAwH;SAClI,CAAC,CAAA;IACJ,CAAC;CACF;AAED,MAAM,OAAO,QAAS,SAAQ,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,EAKpE;CAAG;AAkFN,MAAM,KAAK,GAAc;IACvB,MAAM,EAAE,EAAE;IACV,MAAM,EAAE,EAAE;IACV,MAAM,EAAE,EAAE;IACV,QAAQ,EAAE,EAAE;IACZ,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,EAAE;IACb,gBAAgB,EAAE,EAAE;IACpB,iBAAiB,EAAE,EAAE;IACrB,kBAAkB,EAAE,EAAE;IACtB,mBAAmB,EAAE,EAAE;IACvB,aAAa,EAAE,EAAE;IACjB,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,YAAY,EAAE,EAAE;IAChB,YAAY,EAAE,EAAE;IAChB,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,SAAS;IACpB,OAAO,EAAE,SAAS;IAClB,WAAW,EAAE,EAAE;CAChB,CAAA;AAED,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;AAE1C;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GACvB,CAAC,MAAsD,EAAE,EAAE,CAC3D,CAAC,CAAY,EAAE,EAAE;IACf,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;YACrC,OAAO,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;QAC/B,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5C,OAAO,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;QAC/B,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5C,OAAO,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;QAC/B,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,4BAA4B,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;QAC/D,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAEtC,IAAI,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,CAAA;QACV,CAAC;QAED,kEAAkE;QAClE,CAAC,GAAG;YACF,GAAG,CAAC;YACJ,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;SACtD,CAAA;QAED,OAAO,CAAC,CAAA;IACV,CAAC;AACH,CAAC,CAAA;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,MAAsD,EACtD,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAA;AAErC,MAAM,CAAC,MAAM,QAAQ,GACnB,CACE,UAAiC,EACjC,MAA6B,EAC7B,WAAyD,SAAS,EAClE,EAAE,CACJ,CAAC,CAAY,EAAE,EAAE,CACf,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,KAAK,GAAgB;QACzB,IAAI,EAAE,YAAY;QAClB,UAAU;QACV,MAAM;KACP,CAAA;IAED,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IAEtB,IAAI,UAAU,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC;QACnC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,eAAe,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAA;YACpD,CAAC;YAED,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;YAC/D,CAAC;YAED,CAAC,GAAG,KAAK,CAAC,CAAC,qBAAqB,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;QACtD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,eAAe,EAAE,CAAC,CAAA;YAClD,CAAC;QACH,CAAC;IACH,CAAC;SAAM,IAAI,QAAQ,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAA;IACpD,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAC,CAAA;AAEN,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,UAAiC,EACjC,MAA6B,EAC7B,WAAyD,SAAS,EAClE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;AAE3D,MAAM,CAAC,MAAM,UAAU,GACrB,CACE,UAAiC,EACjC,WAAyD,SAAS,EAClE,EAAE,CACJ,CAAC,CAAY,EAAE,EAAE,CACf,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,KAAK,GAAgB;QACzB,IAAI,EAAE,gBAAgB;QACtB,UAAU;KACX,CAAA;IAED,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IAEtB,IAAI,UAAU,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC;QACnC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,eAAe,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAA;YACpD,CAAC;YAED,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;YAC/D,CAAC;YAED,CAAC,GAAG,KAAK,CAAC,CAAC,qBAAqB,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;QACtD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,eAAe,EAAE,CAAC,CAAA;YAClD,CAAC;QACH,CAAC;IACH,CAAC;SAAM,IAAI,QAAQ,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAA;IACpD,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAC,CAAA;AAEN,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,UAAiC,EACjC,WAAyD,SAAS,EAClE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAA;AAErD,MAAM,CAAC,MAAM,QAAQ,GACnB,CAAC,KAAkB,EAAE,EAAE,CACvB,CAAC,CAAY,EAAa,EAAE;IAC1B,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,GAAG,KAAK,EAAE;KACtC,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAkB,EAAE,EAAE,CACnD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;AAE7B;;;GAGG;AACH,MAAM,CAAC,MAAM,IAAI,GACf,CACE,MAAqB,EACrB,WAAyD,SAAS,EAClE,EAAE,CACJ,CAAC,CAAY,EAAE,EAAE,CACf,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;IAE9C,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,kEAAkE;QAClE,CAAC,GAAG;YACF,GAAG,CAAC;YACJ,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;SACpE,CAAA;QAED,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAEvC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC7B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAA;YACpD,CAAC;YAED,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC5B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;YACpD,CAAC;YAED,CAAC,GAAG,KAAK,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;QACpD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC9B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,eAAe,EAAE,CAAC,CAAA;YAClD,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAC,CAAA;AAEN,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,MAAqB,EACrB,WAAyD,SAAS,EAClE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;AAE3C,MAAM,CAAC,MAAM,GAAG,GACd,CAAC,GAAG,OAA4B,EAAE,EAAE,CACpC,CAAC,CAAY,EAAE,EAAE,CACf,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,CAAC,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;IACjC,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAC,CAAA;AAEN,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,GAAG,OAA4B,EAAE,EAAE,CAC3D,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAA;AAEjC,MAAM,CAAC,MAAM,KAAK,GAChB,CAAC,GAAG,KAAkB,EAAE,EAAE,CAC1B,CAAC,CAAY,EAAE,EAAE,CACf,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,CAAC,GAAG,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;QAE/B,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAA;QAEvC,QAAQ,SAAS,EAAE,OAAO,EAAE,CAAC;YAC3B,KAAK,CAAC;gBACJ,CAAC,GAAG,cAAc,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;gBAChC,MAAK;YACP,KAAK,CAAC;gBACJ,CAAC,GAAG,cAAc,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;gBAChC,MAAK;QACT,CAAC;IACH,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAC,CAAA;AAEN,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAG,KAAkB,EAAE,EAAE,CACnD,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAA;AAEjC,MAAM,CAAC,MAAM,QAAQ,GACnB,CAAC,UAAiC,EAAE,EAAE,CAAC,CAAC,CAAY,EAAE,EAAE;IACtD,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE;QACd,IAAI,EAAE,cAAc;QACpB,UAAU;KACX,CAAC,CAAA;IAEF,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,UAAiC,EAAE,EAAE,CAClE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAA;AAElC,MAAM,CAAC,MAAM,IAAI,GACf,CAAC,GAAG,OAAgC,EAAE,EAAE,CACxC,CAAC,CAAY,EAAE,EAAE;IACf,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,CAAC,GAAG,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;IAC1B,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAG,OAAgC,EAAE,EAAE,CAChE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAA;AAE9B,MAAM,CAAC,MAAM,KAAK,GAChB,CACE,KAA8B,EAC9B,WAAyD,SAAS,EAClE,EAAE,CACJ,CAAC,CAAY,EAAE,EAAE,CACf,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1D,CAAC,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;QAE5B,MAAM,YAAY,GAAG,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAEpE,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,YAAY,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC;gBACrC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAA;YACpD,CAAC;YAED,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAA;YACjE,CAAC;YAED,CAAC,GAAG,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;YAEjD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAA;YAE/B,IAAI,CAAC,KAAK,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxD,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,YAAY,EAAE,CAAC,CAAA;YAC/C,CAAC;YAED,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;gBAC7B,gCAAgC;gBAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAA;gBAChC,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBAE7C,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;YAC5B,CAAC;QACH,CAAC;aAAM,IAAI,YAAY,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC;YAC5C,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3C,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,eAAe,EAAE,CAAC,CAAA;YAClD,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAC,CAAA;AAEN,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,KAA8B,EAC9B,WAAyD,SAAS,EAClE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;AAE3C,MAAM,CAAC,MAAM,aAAa,GACxB,CAAC,IAAY,EAAE,EAAE,CACjB,CAAC,CAAY,EAAa,EAAE;IAC1B,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,SAAS,EAAE,EAAE,IAAI,EAAE;KACpB,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAE,EAAE,CAClD,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;AAEjC;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GACxB,CAAC,IAAY,EAAE,EAAE,CACjB,CAAC,CAAY,EAAa,EAAE;IAC1B,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,SAAS,EAAE,EAAE,IAAI,EAAE;KACpB,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAE,EAAE,CAClD,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;AAEjC,MAAM,CAAC,MAAM,WAAW,GACtB,CAAC,IAAY,EAAE,EAAE,CACjB,CAAC,CAAY,EAAa,EAAE;IAC1B,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,OAAO,EAAE,EAAE,IAAI,EAAE;KAClB,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAA;AAEhF;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GACtB,CAAC,IAAY,EAAE,EAAE,CACjB,CAAC,CAAY,EAAa,EAAE;IAC1B,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,OAAO,EAAE,EAAE,IAAI,EAAE;KAClB,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAA;AAEhF,MAAM,CAAC,MAAM,QAAQ,GACnB,CACE,aAA0C,EAC1C,QAAyB,EACzB,WAAyD,SAAS,EAClE,EAAE,CACJ,CAAC,CAAY,EAAE,EAAE,CACf,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,aAAa,CAAC,CAAA;IAEpE,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,aAAa,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC;YAChE,MAAM,IAAI,KAAK,CACb,kEAAkE,CACnE,CAAA;QACH,CAAC;QAED,CAAC,GAAG,KAAK,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAA;IAC7D,CAAC;IAED,MAAM,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,CAAA;IAEzC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACZ,WAAW,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IAC1E,CAAC;SAAM,CAAC;QACN,WAAW,CAAC,CAAC,CAAC,GAAG;YACf,OAAO,EAAE,aAAa;YACtB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ;SACrD,CAAA;IACH,CAAC;IAED,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAClD,aAAa,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAC5B,CAAA;IAED,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,WAAW;KACZ,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAC,CAAA;AAEN,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,aAA0C,EAC1C,QAAyB,EACzB,WAAyD,SAAS,EAClE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAA;AAEhE,SAAS,QAAQ,CAAC,CAAY,EAAE,IAAoB;IAClD,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,CAAA;IACV,CAAC;IAED,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC;KAC5B,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAED,SAAS,QAAQ,CAAC,CAAY,EAAE,IAAoB;IAClD,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;AACxD,CAAC;AAED,SAAS,QAAQ,CAAC,CAAY,EAAE,KAAkB;IAChD,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC;KAC7B,CAAA;IAED,IAAI,KAAK,CAAC,IAAI,IAAI,YAAY,IAAI,KAAK,CAAC,IAAI,IAAI,gBAAgB,EAAE,CAAC;QACjE,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;YACtC,CAAC,GAAG,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACzC,CAAC;IACH,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAED,MAAM,QAAQ,GAAG,CAAC,CAAY,EAAE,KAAgB,EAAE,EAAE,CAClD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,KAAK,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAEpD,IAAI,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;IAC5D,CAAC;IAED,IAAI,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;IAC5D,CAAC;IAED,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC;KACrC,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAC,CAAA;AAEJ,SAAS,QAAQ,CAAC,CAAY,EAAE,GAAoB;IAClD,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,CAAA;AACjD,CAAC;AAED,MAAM,WAAW,GAAG,CAAC,CAAY,EAAE,QAAmB,EAAE,EAAE,CACxD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,KAAK,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAEvD,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACtD,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;IAC/D,CAAC;IAED,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACzD,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;IAC/D,CAAC;IAED,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC;KAC9C,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAC,CAAA;AAEJ,SAAS,WAAW,CAAC,CAAY,EAAE,GAAoB;IACrD,OAAO,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,CAAA;AACpD,CAAC;AAED,MAAM,SAAS,GAAG,CAAC,CAAY,EAAE,MAAyB,EAAE,EAAE,CAC5D,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,KAAK,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAE9C,MAAM,UAAU,GAAG,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAE7D,IAAI,UAAU,CAAC,IAAI,IAAI,WAAW,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QACjE,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CACjB,wDAAwD,CACzD,CAAA;IACH,CAAC;IAED,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC;KAChC,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC,CAAC,CAAA;AAEJ,SAAS,qBAAqB,CAC5B,CAAY,EACZ,KAAkB,EAClB,QAA0C;IAE1C,IAAI,qBAAqB,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,oBAAoB,EAAE,CAAC,CAAA;IAChD,CAAC;IAED,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,mBAAmB,EAAE,CAAC,GAAG,CAAC,CAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;KACrE,CAAA;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AAC1B,CAAC;AAED,SAAS,qBAAqB,CAAC,CAAY,EAAE,KAAkB;IAC7D,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;AACrD,CAAC;AAED,SAAS,kBAAkB,CACzB,CAAY,EACZ,MAAmC,EACnC,QAA0C;IAE1C,IAAI,kBAAkB,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC;QAClC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,oBAAoB,EAAE,CAAC,CAAA;IAChD,CAAC;IAED,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,gBAAgB,EAAE,CAAC,GAAG,CAAC,CAAC,gBAAgB,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;KAChE,CAAA;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AAC1B,CAAC;AAED,SAAS,kBAAkB,CACzB,CAAY,EACZ,MAAmC;IAEnC,OAAO,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,CAAA;AAC3D,CAAC;AAED,SAAS,oBAAoB,CAC3B,CAAY,EACZ,IAAiC,EACjC,QAA0C;IAE1C,IAAI,oBAAoB,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;QAClC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,oBAAoB,EAAE,CAAC,CAAA;IAChD,CAAC;IAED,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,kBAAkB,EAAE,CAAC,GAAG,CAAC,CAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;KAClE,CAAA;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AAC1B,CAAC;AAED,SAAS,oBAAoB,CAC3B,CAAY,EACZ,IAAiC;IAEjC,OAAO,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;AACzD,CAAC;AAED,SAAS,mBAAmB,CAC1B,CAAY,EACZ,IAAe,EACf,QAA0C;IAE1C,IAAI,mBAAmB,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;QACjC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,oBAAoB,EAAE,CAAC,CAAA;IAChD,CAAC;IAED,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,iBAAiB,EAAE,CAAC,GAAG,CAAC,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;KAChE,CAAA;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AAC1B,CAAC;AAED,SAAS,mBAAmB,CAAC,CAAY,EAAE,IAAe;IACxD,OAAO,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAA;AAChE,CAAC;AAED,SAAS,YAAY,CAAC,CAAY;IAChC,OAAO,CACL,CAAC,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC;QAChC,CAAC,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC;QAC7B,CAAC,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC;QAC/B,CAAC,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAC/B,CAAA;AACH,CAAC;AAED,SAAS,WAAW,CAAC,CAAY,EAAE,MAA6B;IAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAErC,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,CAAA;IACV,CAAC;IAED,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KAC9C,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAED,SAAS,WAAW,CAAC,CAAY,EAAE,IAAiC;IAClE,OAAO,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;AAChD,CAAC;AAED,SAAS,WAAW,CAAC,CAAY,EAAE,MAA6B;IAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAErC,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,CAAA;IACV,CAAC;IAED,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KAC9C,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAED,SAAS,WAAW,CAAC,CAAY,EAAE,IAAiC;IAClE,OAAO,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;AAChD,CAAC;AAED,SAAS,WAAW,CAAC,CAAY,EAAE,MAA6B;IAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAErC,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,CAAA;IACV,CAAC;IAED,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KAC9C,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAED,SAAS,WAAW,CAAC,CAAY,EAAE,IAAiC;IAClE,OAAO,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;AAChD,CAAC;AAED,SAAS,cAAc,CACrB,CAAY,EACZ,MAA6B;IAE7B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAErC,IAAI,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,CAAA;IACV,CAAC;IAED,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KACpD,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAED,SAAS,cAAc,CACrB,CAAY,EACZ,IAAiC;IAEjC,OAAO,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;AACnD,CAAC;AAED,SAAS,cAAc,CAAC,CAAY,EAAE,MAA6B;IACjE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAErC,IAAI,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,CAAA;IACV,CAAC;IAED,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KACpD,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAED,SAAS,cAAc,CACrB,CAAY,EACZ,IAAiC;IAEjC,OAAO,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;AACnD,CAAC;AAED,SAAS,kBAAkB,CACzB,CAAY,EACZ,IAAiC;IAEjC,OAAO,CACL,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAC5E,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CACtB,CAAY,EACZ,IAAiC;IAEjC,OAAO,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;AACpD,CAAC;AAED,SAAS,aAAa,CACpB,CAAY,EACZ,IAAiC;IAEjC,OAAO,CACL,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC;QACpB,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC;QACpB,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC;QACpB,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC;QACvB,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CACxB,CAAA;AACH,CAAC;AAED,SAAS,cAAc,CACrB,CAAY;IAEZ,OACE,EACD;SACE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;SACnB,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;SACnB,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;SACnB,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC;SACtB,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;AAC3B,CAAC;AAED,SAAS,aAAa,CACpB,CAAY,EACZ,IAAiC;IAEjC,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAA;IAE5D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,qBAAqB,IAAI,4CAA4C,CACtE,CAAA;IACH,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAA;AACtB,CAAC;AAED,SAAS,SAAS,CAAC,CAAY,EAAE,MAA6B;IAC5D,IAAI,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,CAAA;IACV,CAAC;IAED,kEAAkE;IAClE,CAAC,GAAG;QACF,GAAG,CAAC;QACJ,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC;KAChC,CAAA;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAED,SAAS,SAAS,CAAC,CAAY,EAAE,MAA6B;IAC5D,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;AACnC,CAAC;AAmDD,MAAM,gBAAiB,SAAQ,OAAO,CAAC,GAAG,CACxC,oCAAoC,CACrC,EAA+B;CAAG;AAEnC,MAAM,CAAC,MAAM,KAAK,GAChB,CAAC,UAAwB,EAAE,EAAE,EAAE,CAC/B,CAAC,CAAY,EAAE,EAAE,CACf,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB;;OAEG;IACH,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC,CAAC,aAAa,CAAA;IAEvD;;OAEG;IACH,MAAM,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC,CAAC,sBAAsB,CAAA;IAEvE,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAChB,2BAA2B,cAAc,IAAI,aAAa,EAAE,CAC7D,CAAA;IAED;;OAEG;IACH,MAAM,OAAO,GAAwB,KAAK,CAAC,CAAC,qBAAqB,CAAA;IAEjE;;OAEG;IACH,MAAM,gBAAgB,GAAG,KAAK,CAAC,CAAC,sBAAsB,CAAA;IAEtD;;;;;;;OAOG;IACH,IAAI,EAAE,GAAU;QACd,IAAI,EAAE;YACJ,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,OAAO;YACP,GAAG,EAAE,EAAE;YACP,cAAc;YACd,aAAa;YACb,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,cAAc,EAAE,YAAY,CAAC,CAAC,CAAC;gBAC7B,CAAC,CAAE,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAc;gBACrC,CAAC,CAAC,SAAS;YACb,WAAW,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAC5B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAU,CACxC;YACD,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,eAAe,EAAE,EAAE;YACnB,UAAU,EAAE,gBAAgB;YAC5B,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,gBAAgB,EAAE,SAAS,EAAE,OAAO;YACpC,YAAY;YACZ,QAAQ,EAAE,OAAO,CAAC,YAAY;SACb;QACnB,SAAS,EAAE;YACT,UAAU,EAAE,EAAE;YACd,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,SAAS,EAAE,EAAE;YACb,aAAa,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;YACnD,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;YAC3C,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;YAC3C,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;YAC3C,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;YACjD,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;YACjD,QAAQ,EAAE,OAAO,CAAC,iBAAiB;SACpC;QACD,OAAO,EAAE,KAAK;QACd,QAAQ;KACT,CAAA;IAED,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;IAC3C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;IACzE,CAAC;IACD,KAAK,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAA;IAEnC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;IAEpC;;OAEG;IACH,EAAE,GAAG,KAAK,CAAC,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAA;IAEzC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAA;IAElD;;;;;;;;;;OAUG;IACH,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;IAChC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;QAClC,EAAE,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAEzB,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;QAEjC,EAAE,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAEzB,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;QAEjC,EAAE,GAAG,KAAK,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAA;QAEtC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;QAE/C,EAAE,GAAG,KAAK,CAAC,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAA;QAEpC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;IAC3C,CAAC;IAED,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAE9B;;OAEG;IACH,EAAE,GAAG;QACH,GAAG,EAAE;QACL,SAAS,EAAE;YACT,GAAG,EAAE,CAAC,SAAS;YACf,UAAU,EAAE;gBACV,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU;gBAC1B,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;aAChD;SACF;KACF,CAAA;IAED,OAAO,EAAE,CAAA;AACX,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAA;AAEvD,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CACzC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;IACf,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAA;IAC5E,CAAC;SAAM,CAAC;QACN,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAA;IACzD,CAAC;AACH,CAAC,CAAC,CACH,CAAA;AAED,MAAM,sBAAsB,GAAG,gBAAgB,CAAC,IAAI,CAClD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;IACnB,MAAM,QAAQ,GAAG,CACf,UAA2D,EAC3D,EAAE;QACF,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QAClC,CAAC;aAAM,IAAI,MAAM,IAAI,UAAU,EAAE,CAAC;YAChC,OAAO,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACnD,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACxC,CAAC;IACH,CAAC,CAAA;IAED,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAChE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/C,cAAc;QACd,aAAa;KACd,CAAC,CAAC,CACJ,CAAA;AACH,CAAC,CAAC,CACH,CAAA;AAED,MAAM,qBAAqB,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAChD,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,gBAAgB,CAAA;IACjC,MAAM,OAAO,GAAwB,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;IAEtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,IAAI,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;QACvB,IAAI,QAAQ,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QAElD,0EAA0E;QAC1E,OAAO,QAAQ,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YAC5C,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAChB,kBAAkB,CAAC,eAAe,QAAQ,cAAc,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,oCAAoC,GAAG,CACrK,CAAA;YAED,MAAM,GAAG;gBACP,GAAG,MAAM;gBACT,MAAM,EAAE;oBACN,GAAG,MAAM,CAAC,MAAM;oBAChB,EAAE,EAAE,QAAQ;iBACb;aACF,CAAA;YAED,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAA;YAEnB,QAAQ,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QAChD,CAAC;IACH,CAAC;IAED,kBAAkB;IAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,OAAO,CAAC,CAAC,CAAC,GAAG;YACX,GAAG,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;SACzC,CAAA;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC,CAAC,CAAA;AAEF,MAAM,sBAAsB,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IACjD,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,gBAAgB,CAAA;IAEjC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,CAAA;IACX,CAAC;SAAM,CAAC;QACN,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAA;QAE3C,MAAM,GAAG,GAAG,MAAM,CAAC,cAAc,CAAA;QAEjC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,sBAAsB,EAAE,CAAC,CAAA;QACzD,CAAC;QAED,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IAC5C,CAAC;AACH,CAAC,CAAC,CAAA;AAEF,MAAM,yBAAyB,GAAG,CAAC,EAAS,EAAE,EAAE,CAC9C,gBAAgB,CAAC,IAAI,CACnB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;IACf,MAAM,SAAS,GAAG,CAAC,CAAC,gBAAgB;SACjC,GAAG,CACF,CAAC,CAAC,EAAqB,EAAE,CAAC,CAAC;QACzB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CACxD,CAAC,CAAC,MAAM,CACT;QACD,IAAI,EAAE,OAAO,CAAC,CAAC,QAAQ,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ;QACnE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;KAC3B,CAAC,CACH;SACA,MAAM,CACL,CAAC,CAAC,iBAAiB,CAAC,GAAG,CACrB,CAAC,CAAC,EAAqB,EAAE,CAAC,CAAC;QACzB,IAAI,EAAE,UAAU;QAChB,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAChE,IAAI,EACF,OAAO,CAAC,CAAC,QAAQ,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ;QAC/D,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;KAC3B,CAAC,CACH,CACF;SACA,MAAM,CACL,CAAC,CAAC,kBAAkB,CAAC,GAAG,CACtB,CAAC,CAAC,EAAqB,EAAE,CAAC,CAAC;QACzB,IAAI,EAAE,WAAW;QACjB,eAAe,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW;aACjC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAChB,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QAClB,IAAI,EACF,OAAO,CAAC,CAAC,QAAQ,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ;QAC/D,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;KAC3B,CAAC,CACH,CACF;SACA,MAAM,CACL,CAAC,CAAC,mBAAmB,CAAC,GAAG,CACvB,CAAC,CAAC,EAAqB,EAAE,CAAC,CAAC;QACzB,IAAI,EAAE,YAAY;QAClB,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAC7C,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAC7B;QACD,IAAI,EACF,OAAO,CAAC,CAAC,QAAQ,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ;QAC/D,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;KAC3B,CAAC,CACH,CACF,CAAA;IAEH,2DAA2D;IAC3D,EAAE,GAAG;QACH,GAAG,EAAE;QACL,SAAS,EAAE;YACT,GAAG,EAAE,CAAC,SAAS;YACf,SAAS;SACV;KACF,CAAA;IAED,OAAO,EAAE,CAAA;AACX,CAAC,CAAC,CACH,CAAA;AAEH,MAAM,aAAa,GAAG,CAAC,CAAY,EAAE,EAAE,CACpC,CAAC,CAAC,gBAAmC;KACnC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC;KAC3B,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC;KAC5B,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAA;AAElC,MAAM,sBAAsB,GAAG,CAAC,EAAS,EAAE,EAAE,CAC3C,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,gBAAgB,CAAA;IAEjC;;OAEG;IACH,EAAE,GAAG,KAAK,CAAC,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAA;IAEzC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAA;IAEpD;;OAEG;IACH,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAC7B,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CACxE,CAAA;IAED,2DAA2D;IAC3D,EAAE,GAAG;QACH,GAAG,EAAE;QACL,SAAS,EAAE;YACT,GAAG,EAAE,CAAC,SAAS;YACf,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC/C,GAAG,CAAC;gBACJ,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;aACf,CAAC,CAAC;SACJ;KACF,CAAA;IAED,OAAO,EAAE,CAAA;AACX,CAAC,CAAC,CAAA;AAEJ,MAAM,qBAAqB,GAAG,CAAC,QAAsB,EAAE,EAAE;IACvD,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;QACzB,OAAO,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC5C,CAAC;SAAM,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACrE,IAAI,IAAI,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAA;QACH,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;SAAM,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,aAAa,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACpD,IAAI,IAAI,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAA;QAC5E,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;SAAM,CAAC;QACN,OAAO,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC5C,CAAC;AACH,CAAC,CAAA;AAED,MAAM,eAAe,GACnB,CAAC,CAAY,EAAE,EAAS,EAAE,EAAE,CAC5B,CAAC,EAA+B,EAAE,aAAqB,EAAE,EAAE,CACzD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAA;IAEjD,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAEnC,MAAM,IAAI,GAAuB,KAAK,CAAC,CAAC,aAAa,CAAC,QAAQ,CAC5D,MAAM,CAAC,OAAO,EACd,EAAE,EACF,aAAa,CACd,CAAA;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAEjE,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;IACvC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,CAAA;IAEhE,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;IAE5C,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;QACjC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAEtC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAA;QAEhD,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACjE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC3B,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YAC7D,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACzB,CAAC;QACH,CAAC;QAED,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAEtB,oDAAoD;QACpD,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;IAChE,CAAC;IAED,OAAO,OAAO,CAAC,IAAI,CAAA;AACrB,CAAC,CAAC,CAAA;AAEN,MAAM,oBAAoB,GAAG,CAAC,EAAS,EAAE,EAAE,CACzC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC,CAAA;IAEnD,2DAA2D;IAC3D,EAAE,GAAG;QACH,GAAG,EAAE;QACL,IAAI,EAAE;YACJ,GAAG,EAAE,CAAC,IAAI;YACV,cAAc;SACf;KACF,CAAA;IAED,OAAO,EAAE,CAAA;AACX,CAAC,CAAC,CAAA;AAEJ,MAAM,SAAS,GAAG,CAAC,EAAS,EAAE,EAAE,CAC9B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAEhC,2DAA2D;IAC3D,EAAE,GAAG;QACH,GAAG,EAAE;QACL,IAAI,EAAE;YACJ,GAAG,EAAE,CAAC,IAAI;YACV,GAAG;SACJ;KACF,CAAA;IAED,OAAO,EAAE,CAAA;AACX,CAAC,CAAC,CAAA;AAEJ,MAAM,uBAAuB,GAAG,aAAa,CAAC,aAAa,CAAC;IAC1D,8BAA8B,EAAE,IAAI;CACrC,CAAC,CAAA;AAEF,MAAM,SAAS,GAAG,CAAC,EAAS,EAAE,EAAE,CAC9B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;IAErC,MAAM,eAAe,GAAG,KAAK,CAAC,CAAC,eAAe,CAAA;IAC9C,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,aAAa,CAAA;IAC1D,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,KAAK,CAAA;IAE/C;;OAEG;IACH,IAAI,YAAY,GAAkC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CACpE,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,OAAO,IAAI,aAAa;QAC/B,MAAM,CAAC,KAAK,KAAK,SAAS;QAC1B,MAAM,CAAC,SAAS,KAAK,SAAS,CACjC,CAAA;IAED,MAAM,gBAAgB,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAC7C,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,IAAI,YAAY,CACnC,CAAA;IAED;;OAEG;IACH,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,YAAY,GAAG;YACb,OAAO,EAAE,aAAa;YACtB,MAAM,EAAE,EAAE;SACX,CAAA;IACH,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAErD,gCAAgC;IAChC,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAC7B,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CACnD,CAAA;IACD,MAAM,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAmB,CAAA;IACtD,MAAM,YAAY,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAA;IAEnC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;IACvC,IAAI,GAAG,GAAG,MAAM,CAAC,GAAG,CAClB,WAAW,EACX,YAAY,EACZ,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAC3B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CACzB,CAAA;IAED,MAAM,kBAAkB,GAAG,CAAC,MAAqB,EAAE,EAAE,CACnD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;QACxC,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,uBAAuB,CAChD,IAAI,CAAC,UAAU,CACb,UAAU,IAAI,EAAE,EAChB,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CACzC,EACD,MAAM,CACP,CAAA;QAED,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC,CAAC,CAAA;QAErD,EAAE,GAAG;YACH,GAAG,EAAE;YACL,IAAI,EAAE;gBACJ,GAAG,EAAE,CAAC,IAAI;gBACV,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC;aACpD;SACF,CAAA;IACH,CAAC,CAAC,CAAA;IAEJ;;OAEG;IACH,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAChD,KAAK,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACtE,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAA;IACrC,CAAC;IAED,IAAI,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;IACnD,CAAC;IAED,YAAY,GAAG;QACb,GAAG,YAAY;QACf,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC;KAC3B,CAAA;IACD,GAAG,GAAG,EAAE,CAAA;IAER,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAA;IAC7D,IAAI,IAAI,GAAG,WAAW,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAA;IAExD,OAAO,IAAI,GAAG,EAAE,EAAE,CAAC;QACjB,KAAK,CAAC,CAAC,kBAAkB,CACvB,MAAM,CAAC,GAAG,CACR,EAAE,EAAE,EAAE,IAAI,EAAmB,EAC7B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAC1D,CACF,CAAA;QAED,YAAY,GAAG;YACb,GAAG,YAAY;YACf,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;SAC5D,CAAA;QAED,GAAG,GAAG,EAAE,CAAA;QAER,IAAI;YACF,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;gBAC3C,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAA;IACnC,CAAC;IAED,2DAA2D;IAC3D,EAAE,GAAG;QACH,GAAG,EAAE;QACL,IAAI,EAAE;YACJ,GAAG,EAAE,CAAC,IAAI;YACV,OAAO,EAAE,CAAC,GAAG,gBAAgB,EAAE,YAAY,CAAC;SAC7C;KACF,CAAA;IAED,OAAO,EAAE,CAAA;AACX,CAAC,CAAC,CAAA"}
|