@chainvue/verus-sdk 0.12.0 → 0.14.0

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.
Files changed (47) hide show
  1. package/README.md +23 -9
  2. package/dist/VerusSDK.d.ts +43 -1
  3. package/dist/VerusSDK.d.ts.map +1 -1
  4. package/dist/VerusSDK.js +51 -1
  5. package/dist/VerusSDK.js.map +1 -1
  6. package/dist/bundle.js +1162 -125
  7. package/dist/currency/definition.d.ts +181 -0
  8. package/dist/currency/definition.d.ts.map +1 -0
  9. package/dist/currency/definition.js +396 -0
  10. package/dist/currency/definition.js.map +1 -0
  11. package/dist/currency/index.d.ts +17 -7
  12. package/dist/currency/index.d.ts.map +1 -1
  13. package/dist/currency/index.js +32 -9
  14. package/dist/currency/index.js.map +1 -1
  15. package/dist/currency/launch.d.ts +43 -0
  16. package/dist/currency/launch.d.ts.map +1 -0
  17. package/dist/currency/launch.js +96 -0
  18. package/dist/currency/launch.js.map +1 -0
  19. package/dist/currency/outputs.d.ts +40 -0
  20. package/dist/currency/outputs.d.ts.map +1 -0
  21. package/dist/currency/outputs.js +296 -0
  22. package/dist/currency/outputs.js.map +1 -0
  23. package/dist/currency/reserveTransfer.d.ts +36 -0
  24. package/dist/currency/reserveTransfer.d.ts.map +1 -0
  25. package/dist/currency/reserveTransfer.js +104 -0
  26. package/dist/currency/reserveTransfer.js.map +1 -0
  27. package/dist/currency/wire.d.ts +76 -0
  28. package/dist/currency/wire.d.ts.map +1 -0
  29. package/dist/currency/wire.js +252 -0
  30. package/dist/currency/wire.js.map +1 -0
  31. package/dist/identity/index.js +3 -3
  32. package/dist/identity/index.js.map +1 -1
  33. package/dist/identity/multisig.d.ts +101 -0
  34. package/dist/identity/multisig.d.ts.map +1 -0
  35. package/dist/identity/multisig.js +176 -0
  36. package/dist/identity/multisig.js.map +1 -0
  37. package/dist/index.d.ts +10 -0
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/index.js +18 -1
  40. package/dist/index.js.map +1 -1
  41. package/dist/transfer/index.d.ts.map +1 -1
  42. package/dist/transfer/index.js +38 -14
  43. package/dist/transfer/index.js.map +1 -1
  44. package/dist/types/index.d.ts +27 -1
  45. package/dist/types/index.d.ts.map +1 -1
  46. package/dist/types/index.js.map +1 -1
  47. package/package.json +1 -1
package/README.md CHANGED
@@ -2,8 +2,9 @@
2
2
 
3
3
  Offline Verus transaction signing. Bring UTXOs and a WIF; get back signed
4
4
  transaction hex — no daemon, no network. Native transfers, token/currency
5
- transfers, conversions, and the full VerusID lifecycle. Serialization uses
6
- VerusCoin's own primitives, so the wire format is the daemon's, not a reimpl.
5
+ transfers, conversions, currency creation (token / basket / NFT), and the full
6
+ VerusID lifecycle. Serialization uses VerusCoin's own primitives, so the wire
7
+ format is the daemon's, not a reimpl.
7
8
 
8
9
  ```bash
9
10
  npm i @chainvue/verus-sdk
@@ -31,19 +32,31 @@ const { signedTx, txid, fee } = sdk.transfer({
31
32
  ## What it does
32
33
 
33
34
  - **Transfers** — `transfer`, `transferToken`, `convert`, and `sendCurrency`
34
- (full control over multi-output / cross-chain sends).
35
+ (multi-output / cross-chain sends, conversions, pre-convert, and mint / burn of
36
+ a centralized currency).
35
37
  - **VerusID** — `createCommitment` → `registerIdentity` (incl. sub-IDs), then
36
38
  `updateIdentity` / `lockIdentity` / `unlockIdentity` / `revokeIdentity` /
37
- `recoverIdentity`, plus `signMessage` / `verifyMessage`.
39
+ `recoverIdentity`, plus `signMessage` / `verifyMessage`. Multisig (m-of-n)
40
+ identities update via `buildMultisigIdentityUpdate` + `addIdentitySignature`.
38
41
  - **Marketplace offers** — build and complete fully on-chain atomic swaps:
39
42
  currency↔currency (`buildOfferFunding` → `buildOffer` → `completeOffer`), and
40
43
  VerusID sell / buy / swap (`build*IdentityOffer` / `complete*IdentityOffer`).
41
44
  Native coin, tokens, and identities, in every combination — plus
42
45
  `buildReclaimOffer` to cancel an unaccepted offer and reclaim the funds.
43
- - **Helpers** — `VerusSDK.generateWif()`, `deriveAddress(wif)`,
44
- `deriveIdentityAddress(name, parent?)`, `validateAddress`, `validateWif`;
45
- `utils.summarizeSignedTransaction(hex)` decodes a signed tx (txid, spent
46
- outpoints, addressed outputs) for your ledger.
46
+ - **Currencies** — build and sign a full currency launch offline:
47
+ `buildCurrencyDefinitionScript` for the definition output (token,
48
+ fractional basket, or NFT), `buildCurrencyLaunchTransaction` for the complete
49
+ broadcastable transaction (all seven outputs, byte-equivalent to the daemon's
50
+ `definecurrency`), and `buildReserveTransferOutput` to pre-convert / invest in
51
+ a launching currency. See [docs/currency.md](./docs/currency.md).
52
+ - **Helpers** — `VerusSDK.generateWif()`, `await deriveAddress(wif)` (async),
53
+ `deriveIdentityAddress(name, parent?)`, `validateAddress` / `validateWif`
54
+ (→ `{ valid, error? }`); `utils.summarizeSignedTransaction(hex, network)`
55
+ decodes a signed tx (txid, spent outpoints, addressed outputs) for your ledger.
56
+ - **Typed errors** — every boundary failure is a `VerusError` subclass
57
+ (`InsufficientFundsError`, `InvalidWifError`, `InvalidAddressError`,
58
+ `InvalidNameError`, `InvalidAmountError`, `TransactionBuildError`), so you can
59
+ branch on the error type instead of parsing messages.
47
60
 
48
61
  Every built transfer is re-validated against its intent — per-currency value
49
62
  conservation, change to the declared address — before the hex is returned. A
@@ -68,9 +81,10 @@ Per-area guides, plus runnable offline examples in [`examples/`](./examples):
68
81
  | Guide | What's in it |
69
82
  |---|---|
70
83
  | [amounts](./docs/amounts.md) | the money model — `bigint` satoshis, `parseSats`/`toCoins`, the one float64 boundary |
71
- | [transfers](./docs/transfers.md) | `transfer` / `transferToken` / `convert` / `sendCurrency`, UTXOs, change, re-validation |
84
+ | [transfers](./docs/transfers.md) | `transfer` / `transferToken` / `convert` / `sendCurrency`, conversions, pre-convert, mint / burn, UTXOs, change, re-validation |
72
85
  | [VerusID lifecycle](./docs/identity.md) | commit → register, update, lock/unlock, revoke/recover, sign/verify messages |
73
86
  | [marketplace offers](./docs/offers.md) | atomic-swap model, the maker/taker halves, currency↔currency and VerusID sell/buy/swap |
87
+ | [currencies](./docs/currency.md) | define + launch a currency offline (token / fractional basket / NFT), the full seven-output launch transaction, and pre-converting into a launching currency |
74
88
  | [signing & wire format](./docs/signing-and-wire.md) | why the bytes are the daemon's, the self-contained bundle, the proof rings |
75
89
  | [architecture](./docs/architecture.md) | the fork boundary, the two assemblers, what's unrepresentable vs checked, the differential harness |
76
90
  | [testing](./docs/testing.md) | the gate, the plain-`node` rule, the live-proof ring model |
@@ -7,6 +7,9 @@
7
7
  import type { Network } from './constants/index.js';
8
8
  import type { VerusSDKConfig, TransferParams, TransferTokenParams, ConvertParams, SendCurrencyParams, SendCurrencyResult, BuildAndSignParams, SignedTxResult, CreateCommitmentParams, CreateCommitmentResult, RegisterIdentityParams, RegisterIdentityResult, UpdateIdentityParams, UpdateIdentityResult, LockIdentityParams, UnlockIdentityParams, RevokeIdentityParams, RecoverIdentityParams, DefineCurrencyParams, DefineCurrencyResult, SignMessageParams, SignMessageResult, VerifyMessageParams, VerifyMessageResult } from './types/index.js';
9
9
  import type { BuildOfferFundingParams, BuildOfferFundingResult, BuildOfferParams, BuildOfferResult, CompleteOfferParams, CompleteOfferResult, ReclaimOfferParams, ReclaimOfferResult, BuildSellIdentityOfferParams, CompleteSellIdentityOfferParams, CompleteSellIdentityOfferResult, BuildBuyIdentityOfferParams, CompleteBuyIdentityOfferParams, CompleteBuyIdentityOfferResult, BuildSwapIdentityOfferParams, CompleteSwapIdentityOfferParams, CompleteSwapIdentityOfferResult } from './offers/public.js';
10
+ import * as currencyModule from './currency/index.js';
11
+ import type { CurrencyDefinitionInput } from './currency/definition.js';
12
+ import type { MultisigIdentityUpdateParams, MultisigIdentityUpdateResult, AddIdentitySignatureParams, AddIdentitySignatureResult } from './identity/multisig.js';
10
13
  export declare class VerusSDK {
11
14
  readonly network: Network;
12
15
  constructor(config: VerusSDKConfig);
@@ -35,10 +38,49 @@ export declare class VerusSDK {
35
38
  unlockIdentity(params: UnlockIdentityParams): UpdateIdentityResult;
36
39
  /** Revoke an identity (requires revocation authority key) */
37
40
  revokeIdentity(params: RevokeIdentityParams): UpdateIdentityResult;
41
+ /**
42
+ * Build the funded half of an m-of-n (multisig) identity update: funding inputs
43
+ * signed by the funder, the identity CC input left open. Pass the result to
44
+ * `addIdentitySignature` for each authority until `minSignatures` are collected.
45
+ */
46
+ buildMultisigIdentityUpdate(params: MultisigIdentityUpdateParams): MultisigIdentityUpdateResult;
47
+ /** Add one authority signature to a multisig identity update (see buildMultisigIdentityUpdate). */
48
+ addIdentitySignature(params: AddIdentitySignatureParams): AddIdentitySignatureResult;
38
49
  /** Recover an identity (requires recovery authority key) */
39
50
  recoverIdentity(params: RecoverIdentityParams): UpdateIdentityResult;
40
- /** Define a new currency (manual mode — pre-built script) */
51
+ /**
52
+ * Assemble the identity-spend + currency-definition output for a currency.
53
+ *
54
+ * A partial helper — NOT a full launch. For a complete, broadcastable launch
55
+ * built entirely offline (all seven outputs), use
56
+ * {@link VerusSDK.buildCurrencyLaunchTransaction}. To build only the definition
57
+ * output script, use {@link VerusSDK.buildCurrencyDefinitionScript}.
58
+ */
41
59
  defineCurrency(params: DefineCurrencyParams): DefineCurrencyResult;
60
+ /**
61
+ * Serialize a currency definition (token or fractional basket) to its
62
+ * EVAL_CURRENCY_DEFINITION output script — offline, byte-equivalent to the
63
+ * daemon's `definecurrency`. For building/inspecting/verifying the definition
64
+ * script; a full on-chain launch is a daemon operation (see `defineCurrency`).
65
+ */
66
+ buildCurrencyDefinitionScript(input: CurrencyDefinitionInput): string;
67
+ /**
68
+ * Build all seven output scripts of a currency-definition transaction offline,
69
+ * byte-equivalent to `definecurrency` — identity update, currency definition,
70
+ * import, notarization (with currency state), export, reserve deposit, and
71
+ * change. Needs the defining identity (from a lite node's `getidentity`), the
72
+ * current chain tip height, and the chain's currency launch fee. Produces the
73
+ * output scripts; funding, the identity input, and signing are assembled
74
+ * separately (see `CurrencyLaunchContext`).
75
+ */
76
+ buildCurrencyLaunchOutputs(input: CurrencyDefinitionInput, context: currencyModule.CurrencyLaunchContext): currencyModule.CurrencyLaunchOutputs;
77
+ /**
78
+ * Build and sign a full, broadcastable currency-definition transaction offline:
79
+ * the seven byte-locked outputs, funded from the supplied UTXOs, with the
80
+ * defining identity spent under primary authority. Hand the signed hex to any
81
+ * node to launch the currency. See `CurrencyLaunchTxParams`.
82
+ */
83
+ buildCurrencyLaunchTransaction(params: currencyModule.CurrencyLaunchTxParams): currencyModule.CurrencyLaunchTxResult;
42
84
  /** Sign a message with a VerusID identity signature */
43
85
  signMessage(params: SignMessageParams): SignMessageResult;
44
86
  /** Verify a VerusID message signature */
@@ -1 +1 @@
1
- {"version":3,"file":"VerusSDK.d.ts","sourceRoot":"","sources":["../src/VerusSDK.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VerusSDK.d.ts","sourceRoot":"","sources":["../src/VerusSDK.ts"],"names":[],"mappings":"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"}
package/dist/VerusSDK.js CHANGED
@@ -46,6 +46,7 @@ const messageModule = __importStar(require("./message/index.js"));
46
46
  const currencyModule = __importStar(require("./currency/index.js"));
47
47
  const keysModule = __importStar(require("./keys/index.js"));
48
48
  const offersModule = __importStar(require("./offers/public.js"));
49
+ const multisigModule = __importStar(require("./identity/multisig.js"));
49
50
  class VerusSDK {
50
51
  constructor(config) {
51
52
  this.network = config.network;
@@ -120,6 +121,18 @@ class VerusSDK {
120
121
  expiryHeight: params.expiryHeight,
121
122
  }, this.network, 'revoke');
122
123
  }
124
+ /**
125
+ * Build the funded half of an m-of-n (multisig) identity update: funding inputs
126
+ * signed by the funder, the identity CC input left open. Pass the result to
127
+ * `addIdentitySignature` for each authority until `minSignatures` are collected.
128
+ */
129
+ buildMultisigIdentityUpdate(params) {
130
+ return multisigModule.buildMultisigIdentityUpdate(params, this.network);
131
+ }
132
+ /** Add one authority signature to a multisig identity update (see buildMultisigIdentityUpdate). */
133
+ addIdentitySignature(params) {
134
+ return multisigModule.addIdentitySignature(params, this.network);
135
+ }
123
136
  /** Recover an identity (requires recovery authority key) */
124
137
  recoverIdentity(params) {
125
138
  return identityModule.buildAndSignIdentityUpdate({
@@ -136,10 +149,47 @@ class VerusSDK {
136
149
  }, this.network, 'recover');
137
150
  }
138
151
  // ─── Currency ──────────────────────────────────────
139
- /** Define a new currency (manual mode — pre-built script) */
152
+ /**
153
+ * Assemble the identity-spend + currency-definition output for a currency.
154
+ *
155
+ * A partial helper — NOT a full launch. For a complete, broadcastable launch
156
+ * built entirely offline (all seven outputs), use
157
+ * {@link VerusSDK.buildCurrencyLaunchTransaction}. To build only the definition
158
+ * output script, use {@link VerusSDK.buildCurrencyDefinitionScript}.
159
+ */
140
160
  defineCurrency(params) {
141
161
  return currencyModule.defineCurrency(params, this.network);
142
162
  }
163
+ /**
164
+ * Serialize a currency definition (token or fractional basket) to its
165
+ * EVAL_CURRENCY_DEFINITION output script — offline, byte-equivalent to the
166
+ * daemon's `definecurrency`. For building/inspecting/verifying the definition
167
+ * script; a full on-chain launch is a daemon operation (see `defineCurrency`).
168
+ */
169
+ buildCurrencyDefinitionScript(input) {
170
+ return currencyModule.buildCurrencyDefinitionScript(input);
171
+ }
172
+ /**
173
+ * Build all seven output scripts of a currency-definition transaction offline,
174
+ * byte-equivalent to `definecurrency` — identity update, currency definition,
175
+ * import, notarization (with currency state), export, reserve deposit, and
176
+ * change. Needs the defining identity (from a lite node's `getidentity`), the
177
+ * current chain tip height, and the chain's currency launch fee. Produces the
178
+ * output scripts; funding, the identity input, and signing are assembled
179
+ * separately (see `CurrencyLaunchContext`).
180
+ */
181
+ buildCurrencyLaunchOutputs(input, context) {
182
+ return currencyModule.buildCurrencyLaunchOutputs(input, context);
183
+ }
184
+ /**
185
+ * Build and sign a full, broadcastable currency-definition transaction offline:
186
+ * the seven byte-locked outputs, funded from the supplied UTXOs, with the
187
+ * defining identity spent under primary authority. Hand the signed hex to any
188
+ * node to launch the currency. See `CurrencyLaunchTxParams`.
189
+ */
190
+ buildCurrencyLaunchTransaction(params) {
191
+ return currencyModule.buildCurrencyLaunchTransaction(params, this.network);
192
+ }
143
193
  // ─── Message Signing ───────────────────────────────
144
194
  /** Sign a message with a VerusID identity signature */
145
195
  signMessage(params) {
@@ -1 +1 @@
1
- {"version":3,"file":"VerusSDK.js","sourceRoot":"","sources":["../src/VerusSDK.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VerusSDK.js","sourceRoot":"","sources":["../src/VerusSDK.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkDH,oEAAsD;AACtD,oEAAsD;AACtD,kEAAoD;AACpD,oEAAsD;AAEtD,4DAA8C;AAC9C,iEAAmD;AACnD,uEAAyD;AAQzD,MAAa,QAAQ;IAGnB,YAAY,MAAsB;QAChC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,sDAAsD;IAEtD,kDAAkD;IAClD,QAAQ,CAAC,MAAsB;QAC7B,OAAO,cAAc,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED,8BAA8B;IAC9B,aAAa,CAAC,MAA2B;QACvC,OAAO,cAAc,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED,0BAA0B;IAC1B,OAAO,CAAC,MAAqB;QAC3B,OAAO,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IAED,iEAAiE;IACjE,YAAY,CAAC,MAA0B;QACrC,OAAO,cAAc,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,gDAAgD;IAChD,YAAY,CAAC,MAA0B;QACrC,OAAO,cAAc,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,sDAAsD;IAEtD,4DAA4D;IAC5D,gBAAgB,CAAC,MAA8B;QAC7C,OAAO,cAAc,CAAC,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACrE,CAAC;IAED,yDAAyD;IACzD,gBAAgB,CAAC,MAA8B;QAC7C,OAAO,cAAc,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACvE,CAAC;IAED,mFAAmF;IACnF,cAAc,CAAC,MAA4B;QACzC,OAAO,cAAc,CAAC,0BAA0B,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACnF,CAAC;IAED;;;OAGG;IACH,YAAY,CAAC,MAA0B;QACrC,OAAO,cAAc,CAAC,0BAA0B,CAC9C;YACE,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,YAAY,EAAE,MAAM,CAAC,YAAY;SAClC,EACD,IAAI,CAAC,OAAO,EACZ,MAAM,EACN,EAAE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,KAAK,EAAE,CAChG,CAAC;IACJ,CAAC;IAED,+BAA+B;IAC/B,cAAc,CAAC,MAA4B;QACzC,OAAO,cAAc,CAAC,0BAA0B,CAC9C;YACE,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,YAAY,EAAE,MAAM,CAAC,YAAY;SAClC,EACD,IAAI,CAAC,OAAO,EACZ,QAAQ,CACT,CAAC;IACJ,CAAC;IAED,6DAA6D;IAC7D,cAAc,CAAC,MAA4B;QACzC,OAAO,cAAc,CAAC,0BAA0B,CAC9C;YACE,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,YAAY,EAAE,MAAM,CAAC,YAAY;SAClC,EACD,IAAI,CAAC,OAAO,EACZ,QAAQ,CACT,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,2BAA2B,CAAC,MAAoC;QAC9D,OAAO,cAAc,CAAC,2BAA2B,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1E,CAAC;IAED,mGAAmG;IACnG,oBAAoB,CAAC,MAAkC;QACrD,OAAO,cAAc,CAAC,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACnE,CAAC;IAED,4DAA4D;IAC5D,eAAe,CAAC,MAA6B;QAC3C,OAAO,cAAc,CAAC,0BAA0B,CAC9C;YACE,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,GAAG,CAAC,MAAM,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/F,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,GAAG,CAAC,MAAM,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxG,GAAG,CAAC,MAAM,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClG,YAAY,EAAE,MAAM,CAAC,YAAY;SAClC,EACD,IAAI,CAAC,OAAO,EACZ,SAAS,CACV,CAAC;IACJ,CAAC;IAED,sDAAsD;IAEtD;;;;;;;OAOG;IACH,cAAc,CAAC,MAA4B;QACzC,OAAO,cAAc,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;OAKG;IACH,6BAA6B,CAAC,KAA8B;QAC1D,OAAO,cAAc,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;;;;OAQG;IACH,0BAA0B,CACxB,KAA8B,EAC9B,OAA6C;QAE7C,OAAO,cAAc,CAAC,0BAA0B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAED;;;;;OAKG;IACH,8BAA8B,CAC5B,MAA6C;QAE7C,OAAO,cAAc,CAAC,8BAA8B,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7E,CAAC;IAED,sDAAsD;IAEtD,uDAAuD;IACvD,WAAW,CAAC,MAAyB;QACnC,OAAO,aAAa,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,yCAAyC;IACzC,aAAa,CAAC,MAA2B;QACvC,OAAO,aAAa,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,sDAAsD;IAEtD;;;OAGG;IACH,iBAAiB,CAAC,MAA+B;QAC/C,OAAO,YAAY,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,MAAwB;QACjC,OAAO,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,MAA2B;QACvC,OAAO,YAAY,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,MAA0B;QAC1C,OAAO,YAAY,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED,qFAAqF;IACrF,sBAAsB,CAAC,MAAoC;QACzD,OAAO,YAAY,CAAC,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACnE,CAAC;IAED,sFAAsF;IACtF,yBAAyB,CAAC,MAAuC;QAC/D,OAAO,YAAY,CAAC,yBAAyB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACtE,CAAC;IAED,oFAAoF;IACpF,qBAAqB,CAAC,MAAmC;QACvD,OAAO,YAAY,CAAC,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,uGAAuG;IACvG,wBAAwB,CAAC,MAAsC;QAC7D,OAAO,YAAY,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACrE,CAAC;IAED,sEAAsE;IACtE,sBAAsB,CAAC,MAAoC;QACzD,OAAO,YAAY,CAAC,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACnE,CAAC;IAED,8FAA8F;IAC9F,yBAAyB,CAAC,MAAuC;QAC/D,OAAO,YAAY,CAAC,yBAAyB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACtE,CAAC;IAED,qDAAqD;IAErD,4CAA4C;IAC5C,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,GAAW;QACpC,OAAO,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;IAED,gEAAgE;IAChE,MAAM,CAAC,qBAAqB,CAAC,IAAY,EAAE,cAAuB;QAChE,OAAO,cAAc,CAAC,qBAAqB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IACpE,CAAC;IAED,4CAA4C;IAC5C,MAAM,CAAC,WAAW;QAChB,OAAO,UAAU,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;IAED,iCAAiC;IACjC,MAAM,CAAC,eAAe,CAAC,OAAe;QACpC,OAAO,UAAU,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,iCAAiC;IACjC,MAAM,CAAC,WAAW,CAAC,GAAW;QAC5B,OAAO,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;CACF;AApSD,4BAoSC"}