@openzeppelin/miden-multisig-client 0.14.8 → 0.14.9-rc.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.
package/README.md CHANGED
@@ -197,6 +197,53 @@ const signedJson = await multisig.signProposalOffline(imported.id);
197
197
  console.log(signedJson);
198
198
  ```
199
199
 
200
+ ### Custom Proposal Types
201
+
202
+ GUARDIAN accepts any non-empty `proposalType`, so an integration can propose a
203
+ transaction the SDK does not model (an agglayer bridge note, an arbitrary dApp
204
+ transaction) under its own label. The SDK normalizes the label to lowercase
205
+ `snake_case` (trims and lowercases it, then requires `[a-z0-9_]+` — the same
206
+ shape as built-in labels like `add_signer`), so `'B2Agg'` becomes `b2agg` and
207
+ `'add signer'` / `'add-signer'` are rejected. Such a proposal buckets to
208
+ `proposalType: 'custom'` and keeps its normalized label in
209
+ `CustomProposalMetadata.rawProposalType`. It can be listed, signed, and
210
+ exported/imported through the normal flow, but the SDK cannot build its on-chain
211
+ transaction — the integration owns that recipe and submits it itself.
212
+
213
+ ```typescript
214
+ import { buildP2idTransactionRequest } from '@openzeppelin/miden-multisig-client';
215
+
216
+ // Producer: build a transaction and propose it under a custom label.
217
+ const { request, salt } = buildP2idTransactionRequest(senderId, recipientId, faucetId, amount);
218
+ const proposal = await multisig.createCustomProposal(request.serialize(), 'b2agg');
219
+
220
+ // Cosigners review and sign through the usual signProposal flow.
221
+
222
+ // Producer (once threshold is met): bind-check the request and fetch the
223
+ // validated advice (cosigner signatures + GUARDIAN ack). `prepareCustomExecution`
224
+ // verifies the request against the signed commitment *before* the ack request.
225
+ const advice = await multisig.prepareCustomExecution(proposal.id, request.serialize());
226
+
227
+ // The browser TransactionRequest is immutable, so rebuild from the same recipe
228
+ // (inputs + salt) with the advice, then submit.
229
+ const { request: finalRequest } = buildP2idTransactionRequest(
230
+ senderId, recipientId, faucetId, amount, { salt, signatureAdviceMap: advice },
231
+ );
232
+ await multisig.submitTransaction(finalRequest);
233
+ ```
234
+
235
+ The integration keeps only its own recipe (build inputs + salt) so it can
236
+ reproduce the exact transaction at execute time — the SDK does not store the
237
+ serialized request. The binding check guarantees the rebuilt transaction matches the
238
+ commitment the cosigners signed.
239
+
240
+ > **Rust ↔ TS parity:** both SDKs expose the same producer surface —
241
+ > `createCustomProposal` / `propose_custom_transaction`, `prepareCustomExecution` /
242
+ > `prepare_custom_execution`, and `submitTransaction` / `submit_transaction`. The
243
+ > only difference is advice injection: Rust mutates the request's advice map in
244
+ > place (`request.advice_map_mut().extend(advice)`), while the immutable browser
245
+ > `TransactionRequest` is rebuilt from the recipe with the advice.
246
+
200
247
  ## Transaction Utilities
201
248
 
202
249
  The package also exports utility functions for building transactions:
@@ -147,8 +147,9 @@ async function buildFinalRequest(params, saltHex, adviceMap) {
147
147
  const { request } = buildP2idTransactionRequest(params.accountId, metadata.recipientId, metadata.faucetId, BigInt(metadata.amount), { salt: normalizedSalt, signatureAdviceMap: adviceMap });
148
148
  return request;
149
149
  }
150
- case 'unknown':
151
- throw new Error('Cannot execute proposal with unknown type. The proposal must have been imported without proper metadata.');
150
+ case 'custom':
151
+ throw new Error(`Cannot execute a custom proposal type (${metadata.rawProposalType ?? 'custom'}) via the generic SDK; ` +
152
+ 'use prepareCustomExecution to get the cosigner + GUARDIAN advice, then submitTransaction with your rebuilt request (issue #266).');
152
153
  default: {
153
154
  const { request } = await buildUpdateSignersTransactionRequest(params.midenClient, metadata.targetThreshold, metadata.targetSignerCommitments, {
154
155
  salt: normalizedSalt,
@@ -1 +1 @@
1
- {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../../src/multisig/proposal/execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../../src/multisig/proposal/execution.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,8 @@
7
7
  import { GuardianHttpClient, type Signer } from '@openzeppelin/guardian-client';
8
8
  import type { ConsumableNote, ExportedProposal, MultisigConfig, Proposal, ProposalMetadata, ProposalType } from './types.js';
9
9
  import type { ProcedureName } from './procedures.js';
10
- import type { MidenClient, TransactionRequest } from '@miden-sdk/miden-sdk';
11
- import { Account } from '@miden-sdk/miden-sdk';
10
+ import type { MidenClient } from '@miden-sdk/miden-sdk';
11
+ import { Account, AdviceMap, TransactionRequest } from '@miden-sdk/miden-sdk';
12
12
  /**
13
13
  * Result of fetching account state from GUARDIAN.
14
14
  */
@@ -27,9 +27,6 @@ export interface AccountStateVerificationResult {
27
27
  localCommitment: string;
28
28
  onChainCommitment: string;
29
29
  }
30
- /**
31
- * Represents a multisig account with GUARDIAN integration.
32
- */
33
30
  export declare class Multisig {
34
31
  account: Account;
35
32
  threshold: number;
@@ -186,6 +183,32 @@ export declare class Multisig {
186
183
  * @param proposalId - The proposal commitment/ID
187
184
  */
188
185
  executeProposal(proposalId: string): Promise<void>;
186
+ /**
187
+ * Submit an integration-built transaction (advice already injected). Mirrors
188
+ * the Rust `submit_transaction`; used by the custom proposal producer flow
189
+ * after `prepareCustomExecution` rebuilds its request with the returned advice.
190
+ */
191
+ submitTransaction(request: TransactionRequest): Promise<void>;
192
+ /**
193
+ * Create a proposal from a producer-built transaction the SDK does not model
194
+ * (issue #266 producer API). `transactionRequestBytes` is a serialized TransactionRequest;
195
+ * `proposalType` is a free-form, non-empty label that must not collide with a
196
+ * built-in type. The integration keeps its own recipe to execute later via
197
+ * `prepareCustomExecution`.
198
+ */
199
+ createCustomProposal(transactionRequestBytes: Uint8Array, proposalType: string, nonce?: number): Promise<Proposal>;
200
+ /**
201
+ * Assemble the validated execution advice (cosigner signatures + GUARDIAN
202
+ * acknowledgment) for a ready custom proposal, so an integration can rebuild
203
+ * its transaction with its own recipe and submit (issue #266 producer API).
204
+ *
205
+ * `transactionRequestBytes` is the serialized transaction request; it is used only to verify
206
+ * (binding check) that it reproduces the signed commitment, before the
207
+ * acknowledgment is requested. Returns the advice the integration folds into
208
+ * its rebuilt transaction (`builder.extendAdviceMap(advice)`).
209
+ */
210
+ prepareCustomExecution(proposalId: string, transactionRequestBytes: Uint8Array): Promise<AdviceMap>;
211
+ private assembleCustomAdvice;
189
212
  private getLocalProposal;
190
213
  private prepareProposalExecution;
191
214
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"multisig.d.ts","sourceRoot":"","sources":["../src/multisig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multisig.d.ts","sourceRoot":"","sources":["../src/multisig.ts"],"names":[],"mappings":"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"}
package/dist/multisig.js CHANGED
@@ -5,7 +5,7 @@
5
5
  * for proposal management.
6
6
  */
7
7
  import { GuardianHttpClient } from '@openzeppelin/guardian-client';
8
- import { Account, AccountId, AdviceMap, Endpoint, FeltArray, Note, RpcClient, Signature, TransactionSummary, Word, } from '@miden-sdk/miden-sdk';
8
+ import { Account, AccountId, AdviceMap, Endpoint, FeltArray, Note, RpcClient, Signature, TransactionRequest, TransactionSummary, Word, } from '@miden-sdk/miden-sdk';
9
9
  import { executeForSummary, buildUpdateSignersTransactionRequest, buildUpdateProcedureThresholdTransactionRequest, buildUpdateGuardianTransactionRequest, buildConsumeNotesTransactionRequest, buildP2idTransactionRequest, } from './transaction.js';
10
10
  import { buildConsumeNotesTransactionRequestFromNotes } from './transaction/consumeNotes.js';
11
11
  import { CONSUME_NOTES_METADATA_VERSION_V2, MAX_CONSUME_NOTES_METADATA_BYTES, } from './types/proposal.js';
@@ -24,6 +24,31 @@ import { getRawMidenClient, getTransactionProver } from './raw-client.js';
24
24
  /**
25
25
  * Represents a multisig account with GUARDIAN integration.
26
26
  */
27
+ const BUILTIN_PROPOSAL_TYPES = new Set([
28
+ 'add_signer',
29
+ 'remove_signer',
30
+ 'change_threshold',
31
+ 'update_procedure_threshold',
32
+ 'switch_guardian',
33
+ 'consume_notes',
34
+ 'p2id',
35
+ // Reserved: the SDK's internal bucket name for unmodeled types. A producer
36
+ // must not use it as a custom label, or it would collide with the bucket.
37
+ 'custom',
38
+ ]);
39
+ /**
40
+ * Deserialize producer-supplied transaction request bytes, wrapping any failure
41
+ * in a stable message that mirrors the Rust SDK's `deserialize_transaction_request`.
42
+ */
43
+ function deserializeTransactionRequest(bytes) {
44
+ try {
45
+ return TransactionRequest.deserialize(bytes);
46
+ }
47
+ catch (err) {
48
+ const detail = err instanceof Error ? err.message : String(err);
49
+ throw new Error(`failed to decode transaction request: ${detail}`);
50
+ }
51
+ }
27
52
  export class Multisig {
28
53
  account;
29
54
  threshold;
@@ -671,6 +696,139 @@ export class Multisig {
671
696
  }
672
697
  proposal.status = 'finalized';
673
698
  }
699
+ /**
700
+ * Submit an integration-built transaction (advice already injected). Mirrors
701
+ * the Rust `submit_transaction`; used by the custom proposal producer flow
702
+ * after `prepareCustomExecution` rebuilds its request with the returned advice.
703
+ */
704
+ async submitTransaction(request) {
705
+ await this.midenClient.transactions.submit(AccountId.fromHex(this._accountId), request);
706
+ }
707
+ /**
708
+ * Create a proposal from a producer-built transaction the SDK does not model
709
+ * (issue #266 producer API). `transactionRequestBytes` is a serialized TransactionRequest;
710
+ * `proposalType` is a free-form, non-empty label that must not collide with a
711
+ * built-in type. The integration keeps its own recipe to execute later via
712
+ * `prepareCustomExecution`.
713
+ */
714
+ async createCustomProposal(transactionRequestBytes, proposalType, nonce) {
715
+ const label = proposalType.trim().toLowerCase();
716
+ if (label.length === 0) {
717
+ throw new Error('proposalType must not be empty');
718
+ }
719
+ if (!/^[a-z0-9_]+$/.test(label)) {
720
+ throw new Error(`proposalType '${label}' must be lowercase snake_case ([a-z0-9_]): no spaces, hyphens, or other characters`);
721
+ }
722
+ if (BUILTIN_PROPOSAL_TYPES.has(label)) {
723
+ throw new Error(`'${label}' is a built-in proposal type; use the typed proposal API instead`);
724
+ }
725
+ const webClient = await this.getRawClient();
726
+ const request = deserializeTransactionRequest(transactionRequestBytes);
727
+ const summary = await executeForSummary(webClient, this._accountId, request);
728
+ const summaryBase64 = uint8ArrayToBase64(summary.serialize());
729
+ const proposalNonce = nonce ?? Date.now();
730
+ const metadata = {
731
+ proposalType: 'custom',
732
+ description: '',
733
+ rawProposalType: label,
734
+ requiredSignatures: this.getEffectiveThreshold('custom'),
735
+ };
736
+ return this.createProposal(proposalNonce, summaryBase64, metadata);
737
+ }
738
+ /**
739
+ * Assemble the validated execution advice (cosigner signatures + GUARDIAN
740
+ * acknowledgment) for a ready custom proposal, so an integration can rebuild
741
+ * its transaction with its own recipe and submit (issue #266 producer API).
742
+ *
743
+ * `transactionRequestBytes` is the serialized transaction request; it is used only to verify
744
+ * (binding check) that it reproduces the signed commitment, before the
745
+ * acknowledgment is requested. Returns the advice the integration folds into
746
+ * its rebuilt transaction (`builder.extendAdviceMap(advice)`).
747
+ */
748
+ async prepareCustomExecution(proposalId, transactionRequestBytes) {
749
+ const normalizedProposalId = normalizeHexWord(proposalId);
750
+ const delta = await this.guardian.getDeltaProposal(this._accountId, normalizedProposalId);
751
+ const existing = this.getLocalProposal(proposalId);
752
+ const proposal = this.proposalFactory().fromDelta(delta, normalizedProposalId, existing?.metadata, existing?.signatures ?? []);
753
+ if (proposal.metadata.proposalType !== 'custom') {
754
+ throw new Error('prepareCustomExecution is only for custom proposals; use executeProposal for built-in types');
755
+ }
756
+ const effectiveThreshold = this.getEffectiveThreshold('custom');
757
+ const signaturesForExecution = new ProposalSignatures(proposal.signatures, this.signerCommitments, `Invalid proposal signatures for ${proposalId}`).entries();
758
+ if (signaturesForExecution.length < effectiveThreshold) {
759
+ throw new Error(`Proposal is not ready for execution: have ${signaturesForExecution.length} of ${effectiveThreshold} required signatures.`);
760
+ }
761
+ const txSummary = TransactionSummary.deserialize(base64ToUint8Array(delta.deltaPayload.txSummary.data));
762
+ const signedCommitmentHex = normalizeHexWord(txSummary.toCommitment().toHex());
763
+ const bindingRequest = deserializeTransactionRequest(transactionRequestBytes);
764
+ const webClient = await this.getRawClient();
765
+ const derived = await executeForSummary(webClient, this._accountId, bindingRequest);
766
+ const derivedCommitmentHex = normalizeHexWord(derived.toCommitment().toHex());
767
+ if (derivedCommitmentHex !== signedCommitmentHex) {
768
+ throw new Error(`Custom proposal binding mismatch: expected ${signedCommitmentHex}, got ${derivedCommitmentHex}`);
769
+ }
770
+ return this.assembleCustomAdvice(proposalId, signaturesForExecution, signedCommitmentHex, delta);
771
+ }
772
+ async assembleCustomAdvice(proposalId, signaturesForExecution, normalizedTxCommitmentHex, delta) {
773
+ const normalizedSignerCommitments = new Set(this.signerCommitments.map((commitment) => normalizeHexWord(commitment)));
774
+ const adviceMap = new AdviceMap();
775
+ const adviceMapKeys = new Set();
776
+ const createTxCommitmentWord = () => Word.fromHex(normalizedTxCommitmentHex);
777
+ for (const cosignerSig of signaturesForExecution) {
778
+ let signerCommitmentHex = normalizeHexWord(cosignerSig.signerId);
779
+ const ecdsaPublicKey = cosignerSig.signature.scheme === 'ecdsa' ? cosignerSig.signature.publicKey : undefined;
780
+ if (cosignerSig.signature.scheme === 'ecdsa') {
781
+ if (!ecdsaPublicKey) {
782
+ throw new Error(`ECDSA proposal signature for ${signerCommitmentHex} is missing publicKey`);
783
+ }
784
+ const derivedCommitment = tryComputeEcdsaCommitmentHex(ecdsaPublicKey);
785
+ if (derivedCommitment && derivedCommitment !== signerCommitmentHex) {
786
+ if (!normalizedSignerCommitments.has(derivedCommitment)) {
787
+ throw new Error(`ECDSA public key commitment mismatch: derived commitment ${derivedCommitment} is not in signerCommitments.`);
788
+ }
789
+ signerCommitmentHex = derivedCommitment;
790
+ }
791
+ }
792
+ const signerCommitment = Word.fromHex(signerCommitmentHex);
793
+ const sigBytes = signatureHexToBytes(cosignerSig.signature.signature, cosignerSig.signature.scheme);
794
+ const signature = Signature.deserialize(sigBytes);
795
+ const { key, values } = buildSignatureAdviceEntry(signerCommitment, createTxCommitmentWord(), signature, ecdsaPublicKey, cosignerSig.signature.scheme === 'ecdsa' ? cosignerSig.signature.signature : undefined);
796
+ const keyHex = normalizeHexWord(key.toHex());
797
+ if (adviceMapKeys.has(keyHex)) {
798
+ throw new Error(`Duplicate advice-map key detected for proposal ${proposalId}`);
799
+ }
800
+ adviceMapKeys.add(keyHex);
801
+ adviceMap.insert(key, new FeltArray(values));
802
+ }
803
+ const executionDelta = { ...delta, deltaPayload: delta.deltaPayload.txSummary };
804
+ const pushResult = await this.guardian.pushDelta(executionDelta);
805
+ const ackSigHex = pushResult.ackSig;
806
+ if (!ackSigHex) {
807
+ throw new Error('GUARDIAN did not return acknowledgment signature');
808
+ }
809
+ const guardianCommitment = Word.fromHex(normalizeHexWord(this.guardianCommitment));
810
+ const ackScheme = pushResult.ackScheme || this.signer.scheme;
811
+ const ackPubkey = pushResult.ackPubkey || this.guardianPublicKey;
812
+ if (ackScheme === 'ecdsa' && !ackPubkey) {
813
+ throw new Error('GUARDIAN acknowledgment is missing ECDSA public key');
814
+ }
815
+ if (ackScheme === 'ecdsa' && ackPubkey) {
816
+ const derivedCommitment = tryComputeEcdsaCommitmentHex(ackPubkey);
817
+ if (derivedCommitment && derivedCommitment !== normalizeHexWord(this.guardianCommitment)) {
818
+ throw new Error('GUARDIAN public key commitment mismatch');
819
+ }
820
+ }
821
+ const ackSigBytes = signatureHexToBytes(ackSigHex, ackScheme);
822
+ const ackSignature = Signature.deserialize(ackSigBytes);
823
+ const { key: ackKey, values: ackValues } = buildSignatureAdviceEntry(guardianCommitment, createTxCommitmentWord(), ackSignature, ackScheme === 'ecdsa' ? ackPubkey : undefined, ackScheme === 'ecdsa' ? ackSigHex : undefined);
824
+ const ackKeyHex = normalizeHexWord(ackKey.toHex());
825
+ if (adviceMapKeys.has(ackKeyHex)) {
826
+ throw new Error(`Duplicate advice-map key detected for GUARDIAN acknowledgment in proposal ${proposalId}`);
827
+ }
828
+ adviceMapKeys.add(ackKeyHex);
829
+ adviceMap.insert(ackKey, new FeltArray(ackValues));
830
+ return adviceMap;
831
+ }
674
832
  getLocalProposal(proposalId) {
675
833
  const normalizedProposalId = normalizeHexWord(proposalId);
676
834
  return this.proposals.get(proposalId) ?? this.proposals.get(normalizedProposalId);
@@ -683,6 +841,13 @@ export class Multisig {
683
841
  this.proposalFactory().assertAccountId(proposal.accountId);
684
842
  await this.verifyProposalMetadataBinding(proposal);
685
843
  const metadata = proposal.metadata;
844
+ // Reject custom proposals before any advice assembly or GUARDIAN ack push:
845
+ // the SDK cannot rebuild an opaque custom transaction, and the rejection
846
+ // must stay side-effect free (mirrors the Rust early guard in execute_proposal).
847
+ if (metadata.proposalType === 'custom') {
848
+ throw new Error('Cannot execute a custom proposal via executeProposal; use prepareCustomExecution to ' +
849
+ 'get the cosigner + GUARDIAN advice, then submitTransaction with your rebuilt request (issue #266).');
850
+ }
686
851
  const effectiveThreshold = this.getEffectiveThreshold(metadata.proposalType);
687
852
  const signatureContext = `Invalid proposal signatures for ${proposalId}`;
688
853
  const signaturesForExecution = new ProposalSignatures(proposal.signatures, this.signerCommitments, signatureContext).entries();
@@ -907,8 +1072,11 @@ export class Multisig {
907
1072
  }
908
1073
  async verifyProposalMetadataBinding(proposal) {
909
1074
  const txSummaryCommitment = this.ensureProposalCommitmentMatchesSummary(proposal);
910
- if (proposal.metadata.proposalType === 'unknown') {
911
- throw new Error(`Cannot verify proposal metadata for unknown proposal type: ${proposal.id}`);
1075
+ if (proposal.metadata.proposalType === 'custom') {
1076
+ // Custom proposals (issue #266) have no per-type reconstruction recipe;
1077
+ // the id ↔ tx_summary commitment match above is the only available
1078
+ // integrity guarantee for an opaque proposal.
1079
+ return txSummaryCommitment;
912
1080
  }
913
1081
  const summary = TransactionSummary.deserialize(base64ToUint8Array(proposal.txSummary));
914
1082
  const salt = proposal.metadata.saltHex
@@ -980,8 +1148,8 @@ export class Multisig {
980
1148
  const { request } = buildP2idTransactionRequest(this._accountId, metadata.recipientId, metadata.faucetId, BigInt(metadata.amount), { salt, signatureAdviceMap });
981
1149
  return request;
982
1150
  }
983
- case 'unknown':
984
- throw new Error('Unsupported proposal type: unknown');
1151
+ case 'custom':
1152
+ throw new Error(`Cannot build a transaction for a custom proposal type: ${metadata.rawProposalType ?? 'custom'}`);
985
1153
  }
986
1154
  }
987
1155
  }
@@ -1 +1 @@
1
- {"version":3,"file":"multisig.js","sourceRoot":"","sources":["../src/multisig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multisig.js","sourceRoot":"","sources":["../src/multisig.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/proposal/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,IAAI,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAClG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAGpD,qBAAa,qBAAqB;IAChC,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,gBAAgB,GAAG,wBAAwB;IAkDvE,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,wBAAwB,GAAG,gBAAgB;IA4E1E,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,GAAG,gBAAgB;CAqC9D"}
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/proposal/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,IAAI,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAClG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAGpD,qBAAa,qBAAqB;IAChC,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,gBAAgB,GAAG,wBAAwB;IAmDvE,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,wBAAwB,GAAG,gBAAgB;IAkF1E,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,GAAG,gBAAgB;CAuC9D"}