@bsv/wallet-toolbox 2.11.0 → 2.12.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 (28) hide show
  1. package/CHANGELOG.md +33 -4
  2. package/README.md +33 -1
  3. package/out/src/Wallet.js +4 -2
  4. package/out/src/Wallet.js.map +1 -1
  5. package/out/src/WalletAuthenticationManager.d.ts +12 -0
  6. package/out/src/WalletAuthenticationManager.d.ts.map +1 -1
  7. package/out/src/WalletAuthenticationManager.js +92 -28
  8. package/out/src/WalletAuthenticationManager.js.map +1 -1
  9. package/out/src/WalletPermissionsManager.d.ts +11 -5
  10. package/out/src/WalletPermissionsManager.d.ts.map +1 -1
  11. package/out/src/WalletPermissionsManager.js +70 -55
  12. package/out/src/WalletPermissionsManager.js.map +1 -1
  13. package/out/src/services/providers/ArcSSEClient.d.ts.map +1 -1
  14. package/out/src/services/providers/ArcSSEClient.js +40 -9
  15. package/out/src/services/providers/ArcSSEClient.js.map +1 -1
  16. package/out/src/storage/remoting/StorageClientBase.d.ts.map +1 -1
  17. package/out/src/storage/remoting/StorageClientBase.js +27 -1
  18. package/out/src/storage/remoting/StorageClientBase.js.map +1 -1
  19. package/out/src/utility/identityUtils.js +2 -1
  20. package/out/src/utility/identityUtils.js.map +1 -1
  21. package/out/src/wab-client/WABClient.d.ts +1 -0
  22. package/out/src/wab-client/WABClient.d.ts.map +1 -1
  23. package/out/src/wab-client/WABClient.js +7 -0
  24. package/out/src/wab-client/WABClient.js.map +1 -1
  25. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts +2 -0
  26. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts.map +1 -1
  27. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js.map +1 -1
  28. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -6,6 +6,30 @@ attention to changes that materially alter behavior or extend functionality.
6
6
 
7
7
  ## wallet-toolbox (unreleased)
8
8
 
9
+ - Require an affirmative certifier-signature verification result before
10
+ storing directly acquired or issuer-returned certificates. Identity overlay
11
+ results are verified before decryption and trust scoring, so forged
12
+ certificates cannot become wallet-held or trusted discovered identities. The
13
+ synchronized browser Vite ceilings advance to 1,695,000 raw and 401,000 gzip,
14
+ covering measured 1,694,211-byte and 400,048-byte bundles; Brotli is unchanged.
15
+ The mobile Metro raw ceiling advances to 1,750,000 for the measured
16
+ 1,748,892-byte bundle. The browser esbuild raw ceiling advances to 1,323,000
17
+ for the measured 1,321,768-byte bundle, its gzip ceiling advances to 365,000
18
+ for the measured 364,413-byte bundle, and the optimized Hermes gzip ceiling
19
+ advances to 1,442,000 for the measured 1,441,531-byte bytecode; remaining
20
+ compressed ceilings are unchanged.
21
+ - Never cache, coalesce, or reuse spending approvals, give each prompt a
22
+ distinct request identity, and paginate the complete action history before
23
+ calculating an authorization token's prior spending.
24
+ - Require HTTPS for credential-bearing remote storage and Arcade SSE outside
25
+ explicit loopback development, disable dependency debug output, and avoid
26
+ serializing credential-bearing transport errors. Snapshot formats remain
27
+ unchanged and are documented as wallet-equivalent secrets.
28
+ - Make new WAB account creation resumable when wallet setup, funding, KDF, UMP
29
+ publication, or the final acknowledgement is interrupted. The manager accepts
30
+ a clean missing-token result only for a server-declared pending registration,
31
+ finalizes after successful publication, repairs a lost acknowledgement on the
32
+ next login, and preserves fail-closed continuity for active and legacy WABs.
9
33
  - Keep Argon2id-backed UMP v3 wallets available in React Native and other
10
34
  runtimes without WebAssembly by falling back to an asynchronously yielding,
11
35
  standards-compatible JavaScript implementation. The same KDF parameters and
@@ -22,10 +46,15 @@ attention to changes that materially alter behavior or extend functionality.
22
46
  bytes with Vite, 1,319,059 raw / 362,220 gzip / 291,206 Brotli bytes with
23
47
  esbuild, 1,746,067 raw / 442,648 gzip / 343,342 Brotli bytes with Metro, and
24
48
  3,542,034 raw / 1,419,515 gzip / 1,117,531 Brotli bytes as optimized Hermes
25
- bytecode; hosted Linux measures 1,439,166 gzip bytes. The reviewed ceilings
26
- advance to 1,693,000 / 400,000 / 314,000 Vite bytes, 1,321,000 / 364,000 /
27
- 293,000 esbuild bytes, 1,748,000 raw Metro bytes with the compressed ceilings
28
- unchanged, and 3,547,000 / 1,441,000 / 1,123,000 Hermes bytes.
49
+ bytecode; hosted Linux measures 1,439,166 gzip bytes. Combined with the
50
+ interrupted-registration recovery path above, current measurements are
51
+ 1,694,823 raw / 399,940 gzip / 312,528 Brotli bytes with Vite, 1,322,223 raw
52
+ / 364,260 gzip / 291,914 Brotli bytes with esbuild, 1,749,694 raw / 443,665
53
+ gzip / 344,059 Brotli bytes with Metro, and 3,549,495 raw / 1,441,622 gzip /
54
+ 1,119,600 Brotli bytes as optimized Hermes bytecode. The reviewed ceilings
55
+ advance to 1,697,000 raw / 400,000 gzip Vite bytes, 1,324,000 raw / 365,000
56
+ gzip esbuild bytes, 1,752,000 raw Metro bytes, and 3,552,000 raw / 1,442,000
57
+ gzip Hermes bytes; Brotli ceilings remain unchanged.
29
58
 
30
59
  - Extend the BRC-98/99/111 permission-module interface with an optional semantic
31
60
  `handleRequest` hook. A module can now return a conforming BRC-100 result
package/README.md CHANGED
@@ -92,13 +92,22 @@ checks leave multiple valid UMP tokens, and only when the pinned outpoint is
92
92
  present in the verified candidates. A pin cannot introduce an outpoint that the
93
93
  wallet did not independently retrieve and validate.
94
94
 
95
+ New WAB registrations are interruption-safe across the off-chain/on-chain
96
+ boundary. A WAB that advertises `registrationStatus: "pending"` lets a verified
97
+ retry reuse the stored presentation key when a clean UMP lookup confirms that
98
+ publication has not happened. After publishing the UMP token, the manager
99
+ finalizes WAB idempotently. A lost finalization response is non-fatal: the next
100
+ verified login finds the published token and repairs the pending state. Missing
101
+ or invalid lifecycle metadata remains fail-closed for established accounts, and
102
+ older WAB servers and clients retain their existing wire behavior.
103
+
95
104
  Authenticated applications can verify a phone number and roll the presentation
96
105
  key, including when the user enters the same phone number:
97
106
 
98
107
  ```ts
99
108
  await manager.startPhoneNumberChange('+12065550100')
100
109
  await manager.completePhoneNumberChange(code)
101
- await persist(manager.saveSnapshot())
110
+ await platformKeyStore.storeSecret('wallet-snapshot', manager.saveSnapshot())
102
111
  ```
103
112
 
104
113
  The completion call first stages the verified phone association and new key in
@@ -112,6 +121,29 @@ also resumes an unpublished staged change without committing another key.
112
121
  Persist the snapshot immediately after success. Deploy the compatible overlay
113
122
  topic and WAB schema/routes before enabling this UI.
114
123
 
124
+ ### Snapshot security
125
+
126
+ `CWIStyleWalletManager` and `SimpleWalletManager` snapshots contain wallet root
127
+ key material and intentionally embed the key needed to restore that material.
128
+ Encryption protects their internal representation, but it does not make the
129
+ snapshot safe to disclose: **access to a snapshot is access to the wallet**.
130
+ Store the complete snapshot as a secret in an OS Keychain, hardware-backed
131
+ keystore, or comparably trusted storage. Do not put snapshots in ordinary
132
+ localStorage/AsyncStorage, logs, analytics, crash reports, unprotected backups,
133
+ clipboard data, or cloud sync. If a snapshot may have escaped trusted storage,
134
+ treat the wallet credentials as compromised and rotate them; deleting one copy
135
+ does not revoke other copies.
136
+
137
+ Remote `StorageClient` and credential-bearing Arcade SSE endpoints require
138
+ HTTPS. Plain HTTP is accepted only for explicit loopback hosts during local
139
+ development. Arcade SSE dependency debug logging remains disabled because its
140
+ request URL and headers carry wallet callback credentials.
141
+
142
+ Certificate signatures fail closed at every wallet trust boundary. Direct and
143
+ issuer-mediated acquisition require an affirmative certifier-signature result
144
+ before storage, and identity discovery verifies each untrusted overlay
145
+ certificate before decryption or trust scoring.
146
+
115
147
  ### ChainTracks sources and networks
116
148
 
117
149
  Wallet services do not require a WhatsOnChain key for ChainTracks. Node
package/out/src/Wallet.js CHANGED
@@ -369,7 +369,8 @@ class Wallet {
369
369
  })).publicKey;
370
370
  try {
371
371
  const certificate = new sdk_1.MasterCertificate(vargs.type, vargs.serialNumber, vargs.subject, vargs.certifier, vargs.revocationOutpoint, vargs.fields, vargs.keyringForSubject, vargs.signature);
372
- await certificate.verify();
372
+ if (!(await certificate.verify()))
373
+ throw new Error('Certificate verification failed');
373
374
  await sdk_1.MasterCertificate.decryptFields(this, vargs.keyringForSubject, vargs.fields, vargs.certifier, vargs.privileged, vargs.privilegedReason);
374
375
  }
375
376
  catch (error_) {
@@ -442,7 +443,8 @@ class Wallet {
442
443
  if (!valid)
443
444
  throw new Error('Invalid serialNumber');
444
445
  this.validateIssuedCertificate(signedCertificate, vargs, certificateFields);
445
- await signedCertificate.verify();
446
+ if (!(await signedCertificate.verify()))
447
+ throw new Error('Certificate verification failed');
446
448
  await sdk_1.MasterCertificate.decryptFields(this, masterKeyring, certificate.fields, vargs.certifier);
447
449
  return await (0, acquireDirectCertificate_1.acquireDirectCertificate)(this, auth, {
448
450
  ...certificate,
@@ -1 +1 @@
1
- {"version":3,"file":"Wallet.js","sourceRoot":"","sources":["../../src/Wallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Wallet.js","sourceRoot":"","sources":["../../src/Wallet.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,7 @@ export declare class WalletAuthenticationManager extends CWIStyleWalletManager {
23
23
  private authMethod?;
24
24
  private authSession?;
25
25
  private phoneChangeSession?;
26
+ private pendingRegistrationPresentationKey?;
26
27
  private readonly authSessionTtlMs;
27
28
  constructor(...[adminOriginator, walletBuilder, interactor, recoveryKeySaver, passwordRetriever, wabClient, authMethod, stateSnapshot, options]: [
28
29
  adminOriginator: string,
@@ -50,6 +51,17 @@ export declare class WalletAuthenticationManager extends CWIStyleWalletManager {
50
51
  */
51
52
  completeAuth(payload: AuthPayload): Promise<void>;
52
53
  cancelAuth(): void;
54
+ /**
55
+ * Publishes a new UMP token before committing WAB's registration state.
56
+ * Finalization is deliberately best-effort: if its response is lost, the
57
+ * next verified login finds the UMP token and repairs WAB idempotently.
58
+ */
59
+ providePassword(password: string): Promise<void>;
60
+ private readRegistrationStatus;
61
+ private assertAccountContinuity;
62
+ private reconcilePendingRegistration;
63
+ private describeContinuity;
64
+ private finalizePendingRegistration;
53
65
  private readPendingPhoneChange;
54
66
  private provideWABPresentationKey;
55
67
  private finalizePendingPhoneChange;
@@ -1 +1 @@
1
- {"version":3,"file":"WalletAuthenticationManager.d.ts","sourceRoot":"","sources":["../../src/WalletAuthenticationManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AACnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,EAAE,eAAe,EAA8D,eAAe,EAAE,MAAM,UAAU,CAAA;AACvH,OAAO,EAAE,SAAS,EAAwB,MAAM,wBAAwB,CAAA;AAExE,OAAO,EACL,oBAAoB,EACpB,WAAW,EAEZ,MAAM,2DAA2D,CAAA;AASlE,MAAM,WAAW,kCAAkC;IACjD,SAAS,CAAC,EAAE,eAAe,CAAA;IAC3B,oFAAoF;IACpF,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,qBAAa,yBAA0B,SAAQ,KAAK;IAClD,QAAQ,CAAC,IAAI,iCAAgC;IAE7C,YAAY,OAAO,GAAE,MAA2D,EAG/E;CACF;AAiCD;;;;;GAKG;AACH,qBAAa,2BAA4B,SAAQ,qBAAqB;IACpE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,UAAU,CAAC,CAAsB;IACzC,OAAO,CAAC,WAAW,CAAC,CAAgB;IACpC,OAAO,CAAC,kBAAkB,CAAC,CAAuB;IAClD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IAEzC,YACE,GAAG,CACD,eAAe,EACf,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,aAAa,EACb,OAAY,CACb,EAAE;QACD,eAAe,EAAE,MAAM;QACvB,aAAa,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,oBAAoB,EAAE,oBAAoB,KAAK,OAAO,CAAC,eAAe,CAAC;QAC7G,UAAU,EAAE,kBAAkB,GAAG,SAAS;QAC1C,gBAAgB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC;QAClD,iBAAiB,EAAE,CACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,CAAC,iBAAiB,EAAE,MAAM,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAC5D,OAAO,CAAC,MAAM,CAAC;QACpB,SAAS,EAAE,SAAS;QACpB,UAAU,CAAC,EAAE,oBAAoB;QACjC,aAAa,CAAC,EAAE,MAAM,EAAE;QACxB,OAAO,CAAC,EAAE,kCAAkC;KAC7C,EA2FF;IAED;;;OAGG;IACI,aAAa,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAGvD;IAED;;;OAGG;IACU,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAoD1D;IAED;;OAEG;IACU,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA0F7D;IAEM,UAAU,IAAI,IAAI,CAExB;IAED,OAAO,CAAC,sBAAsB;YAchB,yBAAyB;YA+BzB,0BAA0B;IAgBxC;;;OAGG;IACU,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAatE;IAED;;;;;OAKG;IACU,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CA2DjF;IAEM,uBAAuB,IAAI,IAAI,CAErC;IAEe,OAAO,IAAI,IAAI,CAI9B;IAED,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,kBAAkB;IAsC1B,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,gCAAgC;CAKzC"}
1
+ {"version":3,"file":"WalletAuthenticationManager.d.ts","sourceRoot":"","sources":["../../src/WalletAuthenticationManager.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ const AUTH_COMPONENT = 'wallet-toolbox.authentication-manager';
10
10
  const AUTH_EVENT = 'wallet-toolbox.authentication.';
11
11
  const EXISTING_USER = 'existing-user';
12
12
  const NEW_USER = 'new-user';
13
+ const PENDING_REGISTRATION = 'pending';
13
14
  class WABAccountContinuityError extends Error {
14
15
  code = 'WERR_WAB_ACCOUNT_CONTINUITY';
15
16
  constructor(message = 'WAB and UMP accounts disagree; retry or recover.') {
@@ -29,6 +30,7 @@ class WalletAuthenticationManager extends CWIStyleWalletManager_1.CWIStyleWallet
29
30
  authMethod; // chosen AuthMethod interactor
30
31
  authSession;
31
32
  phoneChangeSession;
33
+ pendingRegistrationPresentationKey;
32
34
  authSessionTtlMs;
33
35
  constructor(...[adminOriginator, walletBuilder, interactor, recoveryKeySaver, passwordRetriever, wabClient, authMethod, stateSnapshot, options = {}]) {
34
36
  super(adminOriginator, walletBuilder, interactor, recoveryKeySaver, passwordRetriever,
@@ -118,6 +120,7 @@ class WalletAuthenticationManager extends CWIStyleWalletManager_1.CWIStyleWallet
118
120
  if (this.authenticated)
119
121
  throw new Error('User is already authenticated');
120
122
  this.cancelAuth();
123
+ this.pendingRegistrationPresentationKey = undefined;
121
124
  const presentationKey = this.generateTemporaryPresentationKey();
122
125
  const correlationId = this.telemetry.enabled === true ? this.telemetry.createCorrelationId() : undefined;
123
126
  this.authSession = {
@@ -197,6 +200,7 @@ class WalletAuthenticationManager extends CWIStyleWalletManager_1.CWIStyleWallet
197
200
  }
198
201
  this.cancelAuth();
199
202
  const wabAccountStatus = this.inferAccountStatus(result, session.presentationKey);
203
+ const registrationStatus = this.readRegistrationStatus(result);
200
204
  try {
201
205
  await this.provideWABPresentationKey(result, wabAccountStatus);
202
206
  }
@@ -214,24 +218,9 @@ class WalletAuthenticationManager extends CWIStyleWalletManager_1.CWIStyleWallet
214
218
  });
215
219
  throw error;
216
220
  }
217
- if (wabAccountStatus === EXISTING_USER && this.authenticationFlow !== EXISTING_USER) {
218
- super.destroy();
219
- const error = new WABAccountContinuityError();
220
- this.telemetry.capture({
221
- name: `${AUTH_EVENT}account-continuity.mismatch`,
222
- component: AUTH_COMPONENT,
223
- severity: 'error',
224
- correlationId: session.correlationId,
225
- attributes: {
226
- methodType: session.methodType,
227
- wabAccountStatus,
228
- umpAccountStatus: NEW_USER
229
- },
230
- error
231
- });
232
- throw error;
233
- }
234
- const continuity = wabAccountStatus === this.authenticationFlow ? 'matched' : 'ump-existing';
221
+ this.assertAccountContinuity(wabAccountStatus, registrationStatus, session);
222
+ await this.reconcilePendingRegistration(result, registrationStatus);
223
+ const continuity = this.describeContinuity(wabAccountStatus, registrationStatus);
235
224
  this.telemetry.capture({
236
225
  name: `${AUTH_EVENT}completed`,
237
226
  component: AUTH_COMPONENT,
@@ -248,22 +237,98 @@ class WalletAuthenticationManager extends CWIStyleWalletManager_1.CWIStyleWallet
248
237
  cancelAuth() {
249
238
  this.authSession = undefined;
250
239
  }
240
+ /**
241
+ * Publishes a new UMP token before committing WAB's registration state.
242
+ * Finalization is deliberately best-effort: if its response is lost, the
243
+ * next verified login finds the UMP token and repairs WAB idempotently.
244
+ */
245
+ async providePassword(password) {
246
+ const shouldFinalize = this.pendingRegistrationPresentationKey != null && this.authenticationFlow === NEW_USER;
247
+ await super.providePassword(password);
248
+ if (shouldFinalize)
249
+ await this.finalizePendingRegistration();
250
+ }
251
+ readRegistrationStatus(result) {
252
+ const status = result.registrationStatus;
253
+ if (status === undefined)
254
+ return 'active';
255
+ if (status !== 'pending' && status !== 'active') {
256
+ throw new WABAccountContinuityError('WAB returned an invalid registration status.');
257
+ }
258
+ return status;
259
+ }
260
+ assertAccountContinuity(wabAccountStatus, registrationStatus, session) {
261
+ const mismatch = wabAccountStatus === EXISTING_USER && this.authenticationFlow !== EXISTING_USER;
262
+ if (!mismatch || registrationStatus === PENDING_REGISTRATION)
263
+ return;
264
+ super.destroy();
265
+ const error = new WABAccountContinuityError();
266
+ this.telemetry.capture({
267
+ name: `${AUTH_EVENT}account-continuity.mismatch`,
268
+ component: AUTH_COMPONENT,
269
+ severity: 'error',
270
+ correlationId: session.correlationId,
271
+ attributes: {
272
+ methodType: session.methodType,
273
+ wabAccountStatus,
274
+ umpAccountStatus: NEW_USER
275
+ },
276
+ error
277
+ });
278
+ throw error;
279
+ }
280
+ async reconcilePendingRegistration(result, registrationStatus) {
281
+ if (registrationStatus !== PENDING_REGISTRATION)
282
+ return;
283
+ this.pendingRegistrationPresentationKey = result.presentationKey;
284
+ if (this.authenticationFlow === EXISTING_USER)
285
+ await this.finalizePendingRegistration();
286
+ }
287
+ describeContinuity(wabAccountStatus, registrationStatus) {
288
+ if (registrationStatus === PENDING_REGISTRATION && this.authenticationFlow === NEW_USER) {
289
+ return 'registration-resumed';
290
+ }
291
+ if (wabAccountStatus === this.authenticationFlow)
292
+ return 'matched';
293
+ return 'ump-existing';
294
+ }
295
+ async finalizePendingRegistration() {
296
+ const presentationKey = this.pendingRegistrationPresentationKey;
297
+ if (presentationKey == null)
298
+ return;
299
+ try {
300
+ const result = await this.wabClient.finalizeRegistration(presentationKey);
301
+ if (result.success !== true || result.registrationStatus !== 'active') {
302
+ throw new Error(result.message || 'WAB registration finalization was not acknowledged.');
303
+ }
304
+ this.pendingRegistrationPresentationKey = undefined;
305
+ this.telemetry.capture({
306
+ name: `${AUTH_EVENT}registration-finalize.completed`,
307
+ component: AUTH_COMPONENT,
308
+ severity: 'info'
309
+ });
310
+ }
311
+ catch (error) {
312
+ this.telemetry.capture({
313
+ name: `${AUTH_EVENT}registration-finalize.deferred`,
314
+ component: AUTH_COMPONENT,
315
+ severity: 'warn',
316
+ error: new Error('WAB registration finalization was deferred.', { cause: error })
317
+ });
318
+ }
319
+ }
251
320
  readPendingPhoneChange(result) {
252
321
  const presentationKey = result.pendingPresentationKey;
253
322
  const changeId = result.pendingPhoneChangeId;
254
323
  if (presentationKey === undefined && changeId === undefined)
255
324
  return undefined;
256
- if (!/^[0-9a-fA-F]{64}$/.test(presentationKey ?? '') ||
257
- !Number.isSafeInteger(changeId) ||
258
- changeId <= 0) {
325
+ if (!/^[0-9a-fA-F]{64}$/.test(presentationKey ?? '') || !Number.isSafeInteger(changeId) || changeId <= 0) {
259
326
  throw new WABAccountContinuityError('WAB returned invalid pending phone-change data.');
260
327
  }
261
328
  return { presentationKey: presentationKey, changeId: changeId };
262
329
  }
263
330
  async provideWABPresentationKey(result, wabAccountStatus) {
264
- const umpTokenOutpoint = typeof result.umpTokenOutpoint === 'string'
265
- ? result.umpTokenOutpoint
266
- : undefined;
331
+ const umpTokenOutpoint = typeof result.umpTokenOutpoint === 'string' ? result.umpTokenOutpoint : undefined;
267
332
  const lookupOptions = umpTokenOutpoint == null ? undefined : { pinnedOutpoint: umpTokenOutpoint };
268
333
  const pending = this.readPendingPhoneChange(result);
269
334
  let usePending = false;
@@ -276,8 +341,7 @@ class WalletAuthenticationManager extends CWIStyleWalletManager_1.CWIStyleWallet
276
341
  usePending = true;
277
342
  }
278
343
  if (pending != null &&
279
- (usePending ||
280
- (wabAccountStatus === EXISTING_USER && this.authenticationFlow !== EXISTING_USER))) {
344
+ (usePending || (wabAccountStatus === EXISTING_USER && this.authenticationFlow !== EXISTING_USER))) {
281
345
  await this.providePresentationKey(sdk_1.Utils.toArray(pending.presentationKey, 'hex'), lookupOptions);
282
346
  if (this.authenticationFlow === EXISTING_USER) {
283
347
  await this.finalizePendingPhoneChange(result.presentationKey, pending);
@@ -340,8 +404,7 @@ class WalletAuthenticationManager extends CWIStyleWalletManager_1.CWIStyleWallet
340
404
  session.newKey = sdk_1.Utils.toArray(authorization.pendingPresentationKey, 'hex');
341
405
  session.changeId = authorization.pendingPhoneChangeId;
342
406
  }
343
- else if (typeof authorization.changeToken === 'string' &&
344
- authorization.changeToken.length > 0) {
407
+ else if (typeof authorization.changeToken === 'string' && authorization.changeToken.length > 0) {
345
408
  session.changeToken = authorization.changeToken;
346
409
  }
347
410
  else {
@@ -382,6 +445,7 @@ class WalletAuthenticationManager extends CWIStyleWalletManager_1.CWIStyleWallet
382
445
  destroy() {
383
446
  this.cancelAuth();
384
447
  this.cancelPhoneNumberChange();
448
+ this.pendingRegistrationPresentationKey = undefined;
385
449
  super.destroy();
386
450
  }
387
451
  phoneChange(phase, body) {
@@ -1 +1 @@
1
- {"version":3,"file":"WalletAuthenticationManager.js","sourceRoot":"","sources":["../../src/WalletAuthenticationManager.ts"],"names":[],"mappings":";;;AAAA,mEAAmF;AAEnF,kCAAuH;AAEvH,4DAA0D;AAO1D,MAAM,2BAA2B,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAClD,MAAM,uBAAuB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAC9C,MAAM,cAAc,GAAG,uCAAuC,CAAA;AAC9D,MAAM,UAAU,GAAG,gCAAgC,CAAA;AACnD,MAAM,aAAa,GAAG,eAAe,CAAA;AACrC,MAAM,QAAQ,GAAG,UAAU,CAAA;AAQ3B,+BAAuC,SAAQ,KAAK;IACzC,IAAI,GAAG,6BAA6B,CAAA;IAE7C,YAAY,OAAO,GAAW,kDAAkD;QAC9E,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAA;IACzC,CAAC;CACF;;AAiCD;;;;;GAKG;AACH,iCAAyC,SAAQ,6CAAqB;IACnD,SAAS,CAAW,CAAC,wBAAwB;IACtD,UAAU,CAAuB,CAAC,+BAA+B;IACjE,WAAW,CAAiB;IAC5B,kBAAkB,CAAwB;IACjC,gBAAgB,CAAQ;IAEzC,YACE,GAAG,CACD,eAAe,EACf,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,aAAa,EACb,OAAO,GAAG,EAAE,CAcb;QAED,KAAK,CACH,eAAe,EACf,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,iBAAiB;QACjB,0EAA0E;QAC1E,KAAK,EAAE,eAAyB,EAAE,MAAuB,EAAE,eAAuB,EAAE,EAAE;YACpF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,WAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAA;YACvF,MAAM,WAAW,GAAG,cAAc,CAAC,WAAW,CAAA;YAC9C,MAAM,eAAe,GAAY,cAAc,CAAC,OAAO,CAAA;YAEvD,IAAI,eAAe,KAAK,IAAI,IAAI,WAAW,IAAI,IAAI,EAAE,CAAC;gBACpD,MAAM,OAAO,GACX,cAAc,CAAC,OAAO,IAAI,IAAI,IAAI,cAAc,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;oBACjE,CAAC,CAAC,cAAc,CAAC,OAAO;oBACxB,CAAC,CAAC,8BAA8B,CAAA;gBACpC,MAAM,IAAI,KAAK,CAAC,0BAA0B,OAAO,EAAE,CAAC,CAAA;YACtD,CAAC;YAED,IACE,WAAW,CAAC,CAAC,IAAI,IAAI;gBACrB,WAAW,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC;gBAC1B,WAAW,CAAC,EAAE,IAAI,IAAI;gBACtB,WAAW,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC;gBAC3B,WAAW,CAAC,IAAI,IAAI,IAAI;gBACxB,WAAW,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAC7B,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAA;YAC5E,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,EAAE,GAAG,iBAAW,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;gBACrD,MAAM,4BAA4B,GAAG,MAAM,MAAM,CAAC,YAAY,CAC5D;oBACE,SAAS,EAAE,EAAE,CAAC,MAAM,EAAE;oBACtB,MAAM,EAAE;wBACN;4BACE,QAAQ,EAAE,GAAG,WAAW,CAAC,IAAI,IAAI;4BACjC,qBAAqB,EAAE,GAAG;4BAC1B,gBAAgB,EAAE,kBAAkB;yBACrC;qBACF;oBACD,WAAW,EAAE,aAAa;oBAC1B,OAAO,EAAE;wBACP,sBAAsB,EAAE,KAAK;qBAC9B;iBACF,EACD,eAAe,CAChB,CAAA;gBAED,IAAI,4BAA4B,CAAC,mBAAmB,IAAI,IAAI,EAAE,CAAC;oBAC7D,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;gBACxD,CAAC;gBAED,MAAM,cAAc,GAAG,iBAAW,CAAC,cAAc,CAAC,4BAA4B,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAA;gBACtG,MAAM,sBAAsB,GAAG,IAAI,aAAO,EAAE,CAAA;gBAC5C,MAAM,0BAA0B,GAAG,gBAAU,CAAC,UAAU,EAAE,CAAA;gBAC1D,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,MAAM,CACxD,IAAI,eAAS,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,CAAC,EAChC,0BAA0B,CAC3B,CAAA;gBACD,MAAM,2BAA2B,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA;gBAEtF,MAAM,MAAM,CAAC,UAAU,CAAC;oBACtB,SAAS,EAAE,4BAA4B,CAAC,mBAAmB,CAAC,SAAS;oBACrE,MAAM,EAAE;wBACN,CAAC,EAAE;4BACD,eAAe,EAAE,2BAA2B,CAAC,KAAK,EAAE;yBACrD;qBACF;iBACF,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;gBACtE,MAAM,IAAI,KAAK,CAAC,6BAA6B,OAAO,EAAE,CAAC,CAAA;YACzD,CAAC;QACH,CAAC,EACD,aAAa,EACb,SAAS,EACT,OAAO,CAAC,SAAS,CAClB,CAAA;QAED,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,2BAA2B,CAAA;QAChF,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,gBAAgB,IAAI,CAAC,IAAI,gBAAgB,GAAG,uBAAuB,EAAE,CAAC;YAC/G,MAAM,IAAI,SAAS,CAAC,0CAA0C,uBAAuB,GAAG,CAAC,CAAA;QAC3F,CAAC;QACD,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;IAC1C,CAAC;IAED;;;OAGG;IACI,aAAa,CAAC,MAA4B;QAC/C,IAAI,IAAI,CAAC,UAAU,EAAE,UAAU,KAAK,MAAM,CAAC,UAAU;YAAE,IAAI,CAAC,UAAU,EAAE,CAAA;QACxE,IAAI,CAAC,UAAU,GAAG,MAAM,CAAA;IAC1B,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,SAAS,CAAC,OAAoB;QACzC,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;QAC3D,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;QAClC,IAAI,IAAI,CAAC,aAAa;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;QACxE,IAAI,CAAC,UAAU,EAAE,CAAA;QAEjB,MAAM,eAAe,GAAG,IAAI,CAAC,gCAAgC,EAAE,CAAA;QAC/D,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;QACxG,IAAI,CAAC,WAAW,GAAG;YACjB,eAAe;YACf,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,gBAAgB;YAC7C,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1D,CAAA;QACD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG,UAAU,mBAAmB;YACtC,SAAS,EAAE,cAAc;YACzB,QAAQ,EAAE,OAAO;YACjB,aAAa;YACb,UAAU,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE;SAClD,CAAC,CAAA;QAEF,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,UAAU,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,CAAC,CAAA;YAE1G,MAAM,cAAc,GAAY,QAAQ,CAAC,OAAO,CAAA;YAChD,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;gBAC5B,MAAM,OAAO,GACX,QAAQ,CAAC,OAAO,IAAI,IAAI,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,iCAAiC,CAAA;gBAChH,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;YAC1B,CAAC;YACD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACrB,IAAI,EAAE,GAAG,UAAU,qBAAqB;gBACxC,SAAS,EAAE,cAAc;gBACzB,QAAQ,EAAE,MAAM;gBAChB,aAAa;gBACb,UAAU,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE;aAClD,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,EAAE,CAAA;YACjB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACrB,IAAI,EAAE,GAAG,UAAU,kBAAkB;gBACrC,SAAS,EAAE,cAAc;gBACzB,QAAQ,EAAE,MAAM;gBAChB,aAAa;gBACb,UAAU,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE;gBACjD,KAAK,EAAE,KAAK,YAAY,6BAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,kCAAkC,CAAC;aAC/F,CAAC,CAAA;YACF,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,YAAY,CAAC,OAAoB;QAC5C,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;QACpD,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;QAClC,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,EAAE,CAAC;YAC1D,IAAI,CAAC,UAAU,EAAE,CAAA;YACjB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;QAChE,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;YAC7C,IAAI,CAAC,UAAU,EAAE,CAAA;YACjB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;QACzD,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAA;QAChC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,CACpD,UAAU,EACV,OAAO,CAAC,eAAe,EACvB,OAAO,EACP,OAAO,CAAC,aAAa,CACtB,CAAA;QAED,MAAM,aAAa,GAAY,MAAM,CAAC,OAAO,CAAA;QAC7C,IAAI,aAAa,KAAK,IAAI,IAAI,MAAM,CAAC,eAAe,IAAI,IAAI,IAAI,MAAM,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACrB,IAAI,EAAE,GAAG,UAAU,uBAAuB;gBAC1C,SAAS,EAAE,cAAc;gBACzB,QAAQ,EAAE,MAAM;gBAChB,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,UAAU,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE;aAC/C,CAAC,CAAA;YACF,MAAM,OAAO,GACX,MAAM,CAAC,OAAO,IAAI,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAA;YACtG,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;QAC1B,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC;YACtD,IAAI,CAAC,UAAU,EAAE,CAAA;YACjB,MAAM,IAAI,yBAAyB,CAAC,2CAA2C,CAAC,CAAA;QAClF,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAA;QACjB,MAAM,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;QACjF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;QAChE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACrB,IAAI,EAAE,GAAG,UAAU,uBAAuB;gBAC1C,SAAS,EAAE,cAAc;gBACzB,QAAQ,EAAE,MAAM;gBAChB,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,UAAU,EAAE;oBACV,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,gBAAgB;iBACjB;gBACD,KAAK;aACN,CAAC,CAAA;YACF,MAAM,KAAK,CAAA;QACb,CAAC;QAED,IAAI,gBAAgB,KAAK,aAAa,IAAI,IAAI,CAAC,kBAAkB,KAAK,aAAa,EAAE,CAAC;YACpF,KAAK,CAAC,OAAO,EAAE,CAAA;YACf,MAAM,KAAK,GAAG,IAAI,yBAAyB,EAAE,CAAA;YAC7C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACrB,IAAI,EAAE,GAAG,UAAU,6BAA6B;gBAChD,SAAS,EAAE,cAAc;gBACzB,QAAQ,EAAE,OAAO;gBACjB,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,UAAU,EAAE;oBACV,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,gBAAgB;oBAChB,gBAAgB,EAAE,QAAQ;iBAC3B;gBACD,KAAK;aACN,CAAC,CAAA;YACF,MAAM,KAAK,CAAA;QACb,CAAC;QAED,MAAM,UAAU,GAAG,gBAAgB,KAAK,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAA;QAC5F,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG,UAAU,WAAW;YAC9B,SAAS,EAAE,cAAc;YACzB,QAAQ,EAAE,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YACpD,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,UAAU,EAAE;gBACV,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,gBAAgB;gBAChB,gBAAgB,EAAE,IAAI,CAAC,kBAAkB;gBACzC,UAAU;aACX;SACF,CAAC,CAAA;IACJ,CAAC;IAEM,UAAU;QACf,IAAI,CAAC,WAAW,GAAG,SAAS,CAAA;IAC9B,CAAC;IAEO,sBAAsB,CAAC,MAA4B;QACzD,MAAM,eAAe,GAAG,MAAM,CAAC,sBAAsB,CAAA;QACrD,MAAM,QAAQ,GAAG,MAAM,CAAC,oBAAoB,CAAA;QAC5C,IAAI,eAAe,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO,SAAS,CAAA;QAC7E,IACE,CAAC,mBAAmB,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC;YAChD,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;YAC/B,QAAS,IAAI,CAAC,EACd,CAAC;YACD,MAAM,IAAI,yBAAyB,CAAC,iDAAiD,CAAC,CAAA;QACxF,CAAC;QACD,OAAO,EAAE,eAAe,EAAE,eAAgB,EAAE,QAAQ,EAAE,QAAS,EAAE,CAAA;IACnE,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACrC,MAA4B,EAC5B,gBAAwB;QAExB,MAAM,gBAAgB,GACpB,OAAO,MAAM,CAAC,gBAAgB,KAAK,QAAQ;YACzC,CAAC,CAAE,MAAM,CAAC,gBAA0C;YACpD,CAAC,CAAC,SAAS,CAAA;QACf,MAAM,aAAa,GACjB,gBAAgB,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,gBAAgB,EAAE,CAAA;QAC7E,MAAM,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAA;QACnD,IAAI,UAAU,GAAG,KAAK,CAAA;QACtB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAK,CAAC,OAAO,CAAC,MAAM,CAAC,eAAgB,EAAE,KAAK,CAAC,EAAE,aAAa,CAAC,CAAA;QACjG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,OAAO,IAAI,IAAI;gBAAE,MAAM,KAAK,CAAA;YAChC,UAAU,GAAG,IAAI,CAAA;QACnB,CAAC;QAED,IACE,OAAO,IAAI,IAAI;YACf,CAAC,UAAU;gBACT,CAAC,gBAAgB,KAAK,aAAa,IAAI,IAAI,CAAC,kBAAkB,KAAK,aAAa,CAAC,CAAC,EACpF,CAAC;YACD,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,EAAE,aAAa,CAAC,CAAA;YAC/F,IAAI,IAAI,CAAC,kBAAkB,KAAK,aAAa,EAAE,CAAC;gBAC9C,MAAM,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,eAAgB,EAAE,OAAO,CAAC,CAAA;YACzE,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,0BAA0B,CACtC,sBAA8B,EAC9B,OAA2B;QAE3B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAuB,UAAU,EAAE;YACzE,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,eAAe,EAAE,sBAAsB;YACvC,kBAAkB,EAAE,OAAO,CAAC,eAAe;SAC5C,CAAC,CAAA;QACF,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,IAAI,SAAS,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC1E,MAAM,IAAI,yBAAyB,CACjC,SAAS,CAAC,OAAO,IAAI,kDAAkD,CACxE,CAAA;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,sBAAsB,CAAC,WAAmB;QACrD,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;QAC7D,MAAM,eAAe,GAAG,WAAW,CAAC,IAAI,EAAE,CAAA;QAC1C,MAAM,sBAAsB,GAAG,WAAK,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAA;QACnF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAuB,OAAO,EAAE;YACrE,eAAe,EAAE,sBAAsB;YACvC,WAAW,EAAE,eAAe;SAC7B,CAAC,CAAA;QACF,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,IAAI,qBAAqB,CAAC,CAAA;QACzF,IAAI,CAAC,kBAAkB,GAAG;YACxB,WAAW,EAAE,eAAe;YAC5B,eAAe,EAAE,sBAAsB;SACxC,CAAA;IACH,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,yBAAyB,CAAC,GAAW;QAChD,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAA;QACvC,IAAI,OAAO,IAAI,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;QAEvD,IAAI,OAAO,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;YAChC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,WAAW,CAA8B,UAAU,EAAE;gBACpF,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE;aAChB,CAAC,CAAA;YACF,IAAI,aAAa,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,OAAO,IAAI,qBAAqB,CAAC,CAAA;YACjE,CAAC;YACD,MAAM,SAAS,GACb,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,sBAAsB,IAAI,EAAE,CAAC;gBACpE,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,oBAAoB,CAAC;gBACxD,aAAa,CAAC,oBAAqB,GAAG,CAAC,CAAA;YACzC,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,CAAC,MAAM,GAAG,WAAK,CAAC,OAAO,CAAC,aAAa,CAAC,sBAAuB,EAAE,KAAK,CAAC,CAAA;gBAC5E,OAAO,CAAC,QAAQ,GAAG,aAAa,CAAC,oBAAoB,CAAA;YACvD,CAAC;iBAAM,IACL,OAAO,aAAa,CAAC,WAAW,KAAK,QAAQ;gBAC7C,aAAa,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EACpC,CAAC;gBACD,OAAO,CAAC,WAAW,GAAG,aAAa,CAAC,WAAW,CAAA;YACjD,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,OAAO,IAAI,qBAAqB,CAAC,CAAA;YACjE,CAAC;QACH,CAAC;QAED,OAAO,CAAC,MAAM,KAAK,IAAA,YAAM,EAAC,EAAE,CAAC,CAAA;QAC7B,IAAI,OAAO,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAuB,QAAQ,EAAE;gBACvE,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,kBAAkB,EAAE,WAAK,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;aAChD,CAAC,CAAA;YACF,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,QAAS,IAAI,CAAC,EAAE,CAAC;gBACxG,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,IAAI,qBAAqB,CAAC,CAAA;YAC7D,CAAC;YACD,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAkB,CAAA;QACjD,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;QAEjC,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAChC,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YAChD,OAAO,CAAC,UAAU,GAAG,IAAI,CAAA;QAC3B,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAuB,UAAU,EAAE;YACzE,QAAQ;YACR,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,kBAAkB,EAAE,WAAK,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;SAChD,CAAC,CAAA;QACF,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,IAAI,SAAS,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAClE,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,IAAI,qBAAqB,CAAC,CAAA;QAC7D,CAAC;QACD,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAA;QACnC,OAAO,EAAE,QAAQ,EAAE,CAAA;IACrB,CAAC;IAEM,uBAAuB;QAC5B,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAA;IACrC,CAAC;IAEe,OAAO;QACrB,IAAI,CAAC,UAAU,EAAE,CAAA;QACjB,IAAI,CAAC,uBAAuB,EAAE,CAAA;QAC9B,KAAK,CAAC,OAAO,EAAE,CAAA;IACjB,CAAC;IAEO,WAAW,CAAI,KAAa,EAAE,IAAa;QACjD,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAI,sBAAsB,KAAK,EAAE,EAAE;YACxE,SAAS,EAAE,cAAc;YACzB,IAAI;SACL,CAAC,CAAA;IACJ,CAAC;IAEO,kBAAkB,CACxB,MAA4B,EAC5B,wBAAgC;QAEhC,IAAI,MAAM,CAAC,eAAe,IAAI,IAAI,EAAE,CAAC;YACnC,MAAM,IAAI,yBAAyB,CAAC,wCAAwC,CAAC,CAAA;QAC/E,CAAC;QACD,MAAM,mBAAmB,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,eAAe,EAAE,wBAAwB,CAAC,CAAA;QACvG,MAAM,gBAAgB,GAAY,MAAM,CAAC,aAAa,CAAA;QACtD,IAAI,gBAAgB,KAAK,SAAS,IAAI,gBAAgB,KAAK,QAAQ,IAAI,gBAAgB,KAAK,aAAa,EAAE,CAAC;YAC1G,MAAM,IAAI,yBAAyB,CAAC,yCAAyC,CAAC,CAAA;QAChF,CAAC;QACD,MAAM,eAAe,GAAY,MAAM,CAAC,YAAY,CAAA;QACpD,IAAI,eAAe,KAAK,SAAS,IAAI,OAAO,eAAe,KAAK,SAAS,EAAE,CAAC;YAC1E,MAAM,IAAI,yBAAyB,CAAC,0CAA0C,CAAC,CAAA;QACjF,CAAC;QACD,IACE,gBAAgB,KAAK,SAAS;YAC9B,eAAe,KAAK,SAAS;YAC7B,CAAC,gBAAgB,KAAK,aAAa,CAAC,KAAK,eAAe,EACxD,CAAC;YACD,MAAM,IAAI,yBAAyB,CAAC,0CAA0C,CAAC,CAAA;QACjF,CAAC;QACD,IAAI,mBAA6D,CAAA;QACjE,IAAI,OAAO,eAAe,KAAK,SAAS,EAAE,CAAC;YACzC,mBAAmB,GAAG,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAA;QAClE,CAAC;QACD,MAAM,cAAc,GAAG,gBAAgB,IAAI,mBAAmB,CAAA;QAE9D,IACE,CAAC,cAAc,KAAK,QAAQ,IAAI,CAAC,mBAAmB,CAAC;YACrD,CAAC,cAAc,KAAK,aAAa,IAAI,mBAAmB,CAAC,EACzD,CAAC;YACD,MAAM,IAAI,yBAAyB,CAAC,0CAA0C,CAAC,CAAA;QACjF,CAAC;QACD,OAAO,cAAc,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAA;IAC3E,CAAC;IAEO,oBAAoB,CAAC,IAAY,EAAE,KAAa;QACtD,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAAE,OAAO,KAAK,CAAA;QAC9C,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QACzC,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;QAC3C,IAAI,UAAU,GAAG,CAAC,CAAA;QAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,UAAU,IAAI,cAAc,CAAC,WAAW,CAAC,CAAC,CAAE,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC,CAAE,CAAA;QAChF,CAAC;QACD,OAAO,UAAU,KAAK,CAAC,CAAA;IACzB,CAAC;IAEO,gCAAgC;QACtC,8EAA8E;QAC9E,MAAM,WAAW,GAAG,IAAA,YAAM,EAAC,EAAE,CAAC,CAAA,CAAC,qBAAqB;QACpD,OAAO,WAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IACjC,CAAC;CACF"}
1
+ {"version":3,"file":"WalletAuthenticationManager.js","sourceRoot":"","sources":["../../src/WalletAuthenticationManager.ts"],"names":[],"mappings":";;;AAAA,mEAAmF;AAEnF,kCAAuH;AAEvH,4DAA0D;AAO1D,MAAM,2BAA2B,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAClD,MAAM,uBAAuB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAC9C,MAAM,cAAc,GAAG,uCAAuC,CAAA;AAC9D,MAAM,UAAU,GAAG,gCAAgC,CAAA;AACnD,MAAM,aAAa,GAAG,eAAe,CAAA;AACrC,MAAM,QAAQ,GAAG,UAAU,CAAA;AAC3B,MAAM,oBAAoB,GAAG,SAAS,CAAA;AAQtC,+BAAuC,SAAQ,KAAK;IACzC,IAAI,GAAG,6BAA6B,CAAA;IAE7C,YAAY,OAAO,GAAW,kDAAkD;QAC9E,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAA;IACzC,CAAC;CACF;;AAiCD;;;;;GAKG;AACH,iCAAyC,SAAQ,6CAAqB;IACnD,SAAS,CAAW,CAAC,wBAAwB;IACtD,UAAU,CAAuB,CAAC,+BAA+B;IACjE,WAAW,CAAiB;IAC5B,kBAAkB,CAAwB;IAC1C,kCAAkC,CAAS;IAClC,gBAAgB,CAAQ;IAEzC,YACE,GAAG,CACD,eAAe,EACf,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,aAAa,EACb,OAAO,GAAG,EAAE,CAcb;QAED,KAAK,CACH,eAAe,EACf,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,iBAAiB;QACjB,0EAA0E;QAC1E,KAAK,EAAE,eAAyB,EAAE,MAAuB,EAAE,eAAuB,EAAE,EAAE;YACpF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,WAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAA;YACvF,MAAM,WAAW,GAAG,cAAc,CAAC,WAAW,CAAA;YAC9C,MAAM,eAAe,GAAY,cAAc,CAAC,OAAO,CAAA;YAEvD,IAAI,eAAe,KAAK,IAAI,IAAI,WAAW,IAAI,IAAI,EAAE,CAAC;gBACpD,MAAM,OAAO,GACX,cAAc,CAAC,OAAO,IAAI,IAAI,IAAI,cAAc,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;oBACjE,CAAC,CAAC,cAAc,CAAC,OAAO;oBACxB,CAAC,CAAC,8BAA8B,CAAA;gBACpC,MAAM,IAAI,KAAK,CAAC,0BAA0B,OAAO,EAAE,CAAC,CAAA;YACtD,CAAC;YAED,IACE,WAAW,CAAC,CAAC,IAAI,IAAI;gBACrB,WAAW,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC;gBAC1B,WAAW,CAAC,EAAE,IAAI,IAAI;gBACtB,WAAW,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC;gBAC3B,WAAW,CAAC,IAAI,IAAI,IAAI;gBACxB,WAAW,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAC7B,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAA;YAC5E,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,EAAE,GAAG,iBAAW,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;gBACrD,MAAM,4BAA4B,GAAG,MAAM,MAAM,CAAC,YAAY,CAC5D;oBACE,SAAS,EAAE,EAAE,CAAC,MAAM,EAAE;oBACtB,MAAM,EAAE;wBACN;4BACE,QAAQ,EAAE,GAAG,WAAW,CAAC,IAAI,IAAI;4BACjC,qBAAqB,EAAE,GAAG;4BAC1B,gBAAgB,EAAE,kBAAkB;yBACrC;qBACF;oBACD,WAAW,EAAE,aAAa;oBAC1B,OAAO,EAAE;wBACP,sBAAsB,EAAE,KAAK;qBAC9B;iBACF,EACD,eAAe,CAChB,CAAA;gBAED,IAAI,4BAA4B,CAAC,mBAAmB,IAAI,IAAI,EAAE,CAAC;oBAC7D,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;gBACxD,CAAC;gBAED,MAAM,cAAc,GAAG,iBAAW,CAAC,cAAc,CAAC,4BAA4B,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAA;gBACtG,MAAM,sBAAsB,GAAG,IAAI,aAAO,EAAE,CAAA;gBAC5C,MAAM,0BAA0B,GAAG,gBAAU,CAAC,UAAU,EAAE,CAAA;gBAC1D,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,MAAM,CACxD,IAAI,eAAS,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,CAAC,EAChC,0BAA0B,CAC3B,CAAA;gBACD,MAAM,2BAA2B,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA;gBAEtF,MAAM,MAAM,CAAC,UAAU,CAAC;oBACtB,SAAS,EAAE,4BAA4B,CAAC,mBAAmB,CAAC,SAAS;oBACrE,MAAM,EAAE;wBACN,CAAC,EAAE;4BACD,eAAe,EAAE,2BAA2B,CAAC,KAAK,EAAE;yBACrD;qBACF;iBACF,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;gBACtE,MAAM,IAAI,KAAK,CAAC,6BAA6B,OAAO,EAAE,CAAC,CAAA;YACzD,CAAC;QACH,CAAC,EACD,aAAa,EACb,SAAS,EACT,OAAO,CAAC,SAAS,CAClB,CAAA;QAED,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,2BAA2B,CAAA;QAChF,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,gBAAgB,IAAI,CAAC,IAAI,gBAAgB,GAAG,uBAAuB,EAAE,CAAC;YAC/G,MAAM,IAAI,SAAS,CAAC,0CAA0C,uBAAuB,GAAG,CAAC,CAAA;QAC3F,CAAC;QACD,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;IAC1C,CAAC;IAED;;;OAGG;IACI,aAAa,CAAC,MAA4B;QAC/C,IAAI,IAAI,CAAC,UAAU,EAAE,UAAU,KAAK,MAAM,CAAC,UAAU;YAAE,IAAI,CAAC,UAAU,EAAE,CAAA;QACxE,IAAI,CAAC,UAAU,GAAG,MAAM,CAAA;IAC1B,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,SAAS,CAAC,OAAoB;QACzC,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;QAC3D,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;QAClC,IAAI,IAAI,CAAC,aAAa;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;QACxE,IAAI,CAAC,UAAU,EAAE,CAAA;QACjB,IAAI,CAAC,kCAAkC,GAAG,SAAS,CAAA;QAEnD,MAAM,eAAe,GAAG,IAAI,CAAC,gCAAgC,EAAE,CAAA;QAC/D,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;QACxG,IAAI,CAAC,WAAW,GAAG;YACjB,eAAe;YACf,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,gBAAgB;YAC7C,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1D,CAAA;QACD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG,UAAU,mBAAmB;YACtC,SAAS,EAAE,cAAc;YACzB,QAAQ,EAAE,OAAO;YACjB,aAAa;YACb,UAAU,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE;SAClD,CAAC,CAAA;QAEF,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,UAAU,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,CAAC,CAAA;YAE1G,MAAM,cAAc,GAAY,QAAQ,CAAC,OAAO,CAAA;YAChD,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;gBAC5B,MAAM,OAAO,GACX,QAAQ,CAAC,OAAO,IAAI,IAAI,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,iCAAiC,CAAA;gBAChH,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;YAC1B,CAAC;YACD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACrB,IAAI,EAAE,GAAG,UAAU,qBAAqB;gBACxC,SAAS,EAAE,cAAc;gBACzB,QAAQ,EAAE,MAAM;gBAChB,aAAa;gBACb,UAAU,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE;aAClD,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,EAAE,CAAA;YACjB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACrB,IAAI,EAAE,GAAG,UAAU,kBAAkB;gBACrC,SAAS,EAAE,cAAc;gBACzB,QAAQ,EAAE,MAAM;gBAChB,aAAa;gBACb,UAAU,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE;gBACjD,KAAK,EAAE,KAAK,YAAY,6BAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,kCAAkC,CAAC;aAC/F,CAAC,CAAA;YACF,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,YAAY,CAAC,OAAoB;QAC5C,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;QACpD,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;QAClC,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,EAAE,CAAC;YAC1D,IAAI,CAAC,UAAU,EAAE,CAAA;YACjB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;QAChE,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;YAC7C,IAAI,CAAC,UAAU,EAAE,CAAA;YACjB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;QACzD,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAA;QAChC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,CACpD,UAAU,EACV,OAAO,CAAC,eAAe,EACvB,OAAO,EACP,OAAO,CAAC,aAAa,CACtB,CAAA;QAED,MAAM,aAAa,GAAY,MAAM,CAAC,OAAO,CAAA;QAC7C,IAAI,aAAa,KAAK,IAAI,IAAI,MAAM,CAAC,eAAe,IAAI,IAAI,IAAI,MAAM,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACrB,IAAI,EAAE,GAAG,UAAU,uBAAuB;gBAC1C,SAAS,EAAE,cAAc;gBACzB,QAAQ,EAAE,MAAM;gBAChB,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,UAAU,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE;aAC/C,CAAC,CAAA;YACF,MAAM,OAAO,GACX,MAAM,CAAC,OAAO,IAAI,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAA;YACtG,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;QAC1B,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC;YACtD,IAAI,CAAC,UAAU,EAAE,CAAA;YACjB,MAAM,IAAI,yBAAyB,CAAC,2CAA2C,CAAC,CAAA;QAClF,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAA;QACjB,MAAM,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;QACjF,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAA;QAC9D,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;QAChE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACrB,IAAI,EAAE,GAAG,UAAU,uBAAuB;gBAC1C,SAAS,EAAE,cAAc;gBACzB,QAAQ,EAAE,MAAM;gBAChB,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,UAAU,EAAE;oBACV,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,gBAAgB;iBACjB;gBACD,KAAK;aACN,CAAC,CAAA;YACF,MAAM,KAAK,CAAA;QACb,CAAC;QAED,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAA;QAC3E,MAAM,IAAI,CAAC,4BAA4B,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;QACnE,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAA;QAChF,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG,UAAU,WAAW;YAC9B,SAAS,EAAE,cAAc;YACzB,QAAQ,EAAE,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YACpD,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,UAAU,EAAE;gBACV,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,gBAAgB;gBAChB,gBAAgB,EAAE,IAAI,CAAC,kBAAkB;gBACzC,UAAU;aACX;SACF,CAAC,CAAA;IACJ,CAAC;IAEM,UAAU;QACf,IAAI,CAAC,WAAW,GAAG,SAAS,CAAA;IAC9B,CAAC;IAED;;;;OAIG;IACa,KAAK,CAAC,eAAe,CAAC,QAAgB;QACpD,MAAM,cAAc,GAAG,IAAI,CAAC,kCAAkC,IAAI,IAAI,IAAI,IAAI,CAAC,kBAAkB,KAAK,QAAQ,CAAA;QAC9G,MAAM,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAA;QACrC,IAAI,cAAc;YAAE,MAAM,IAAI,CAAC,2BAA2B,EAAE,CAAA;IAC9D,CAAC;IAEO,sBAAsB,CAAC,MAA4B;QACzD,MAAM,MAAM,GAAY,MAAM,CAAC,kBAAkB,CAAA;QACjD,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,QAAQ,CAAA;QACzC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YAChD,MAAM,IAAI,yBAAyB,CAAC,8CAA8C,CAAC,CAAA;QACrF,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAEO,uBAAuB,CAC7B,gBAA8C,EAC9C,kBAAwC,EACxC,OAAuB;QAEvB,MAAM,QAAQ,GAAG,gBAAgB,KAAK,aAAa,IAAI,IAAI,CAAC,kBAAkB,KAAK,aAAa,CAAA;QAChG,IAAI,CAAC,QAAQ,IAAI,kBAAkB,KAAK,oBAAoB;YAAE,OAAM;QAEpE,KAAK,CAAC,OAAO,EAAE,CAAA;QACf,MAAM,KAAK,GAAG,IAAI,yBAAyB,EAAE,CAAA;QAC7C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG,UAAU,6BAA6B;YAChD,SAAS,EAAE,cAAc;YACzB,QAAQ,EAAE,OAAO;YACjB,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,UAAU,EAAE;gBACV,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,gBAAgB;gBAChB,gBAAgB,EAAE,QAAQ;aAC3B;YACD,KAAK;SACN,CAAC,CAAA;QACF,MAAM,KAAK,CAAA;IACb,CAAC;IAEO,KAAK,CAAC,4BAA4B,CACxC,MAA4B,EAC5B,kBAAwC;QAExC,IAAI,kBAAkB,KAAK,oBAAoB;YAAE,OAAM;QACvD,IAAI,CAAC,kCAAkC,GAAG,MAAM,CAAC,eAAe,CAAA;QAChE,IAAI,IAAI,CAAC,kBAAkB,KAAK,aAAa;YAAE,MAAM,IAAI,CAAC,2BAA2B,EAAE,CAAA;IACzF,CAAC;IAEO,kBAAkB,CACxB,gBAA8C,EAC9C,kBAAwC;QAExC,IAAI,kBAAkB,KAAK,oBAAoB,IAAI,IAAI,CAAC,kBAAkB,KAAK,QAAQ,EAAE,CAAC;YACxF,OAAO,sBAAsB,CAAA;QAC/B,CAAC;QACD,IAAI,gBAAgB,KAAK,IAAI,CAAC,kBAAkB;YAAE,OAAO,SAAS,CAAA;QAClE,OAAO,cAAc,CAAA;IACvB,CAAC;IAEO,KAAK,CAAC,2BAA2B;QACvC,MAAM,eAAe,GAAG,IAAI,CAAC,kCAAkC,CAAA;QAC/D,IAAI,eAAe,IAAI,IAAI;YAAE,OAAM;QACnC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAA;YACzE,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,IAAI,MAAM,CAAC,kBAAkB,KAAK,QAAQ,EAAE,CAAC;gBACtE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,qDAAqD,CAAC,CAAA;YAC1F,CAAC;YACD,IAAI,CAAC,kCAAkC,GAAG,SAAS,CAAA;YACnD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACrB,IAAI,EAAE,GAAG,UAAU,iCAAiC;gBACpD,SAAS,EAAE,cAAc;gBACzB,QAAQ,EAAE,MAAM;aACjB,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACrB,IAAI,EAAE,GAAG,UAAU,gCAAgC;gBACnD,SAAS,EAAE,cAAc;gBACzB,QAAQ,EAAE,MAAM;gBAChB,KAAK,EAAE,IAAI,KAAK,CAAC,6CAA6C,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;aAClF,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAEO,sBAAsB,CAAC,MAA4B;QACzD,MAAM,eAAe,GAAG,MAAM,CAAC,sBAAsB,CAAA;QACrD,MAAM,QAAQ,GAAG,MAAM,CAAC,oBAAoB,CAAA;QAC5C,IAAI,eAAe,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO,SAAS,CAAA;QAC7E,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,QAAS,IAAI,CAAC,EAAE,CAAC;YAC1G,MAAM,IAAI,yBAAyB,CAAC,iDAAiD,CAAC,CAAA;QACxF,CAAC;QACD,OAAO,EAAE,eAAe,EAAE,eAAgB,EAAE,QAAQ,EAAE,QAAS,EAAE,CAAA;IACnE,CAAC;IAEO,KAAK,CAAC,yBAAyB,CAAC,MAA4B,EAAE,gBAAwB;QAC5F,MAAM,gBAAgB,GACpB,OAAO,MAAM,CAAC,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAE,MAAM,CAAC,gBAA0C,CAAC,CAAC,CAAC,SAAS,CAAA;QAC9G,MAAM,aAAa,GAAG,gBAAgB,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,gBAAgB,EAAE,CAAA;QACjG,MAAM,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAA;QACnD,IAAI,UAAU,GAAG,KAAK,CAAA;QACtB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAK,CAAC,OAAO,CAAC,MAAM,CAAC,eAAgB,EAAE,KAAK,CAAC,EAAE,aAAa,CAAC,CAAA;QACjG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,OAAO,IAAI,IAAI;gBAAE,MAAM,KAAK,CAAA;YAChC,UAAU,GAAG,IAAI,CAAA;QACnB,CAAC;QAED,IACE,OAAO,IAAI,IAAI;YACf,CAAC,UAAU,IAAI,CAAC,gBAAgB,KAAK,aAAa,IAAI,IAAI,CAAC,kBAAkB,KAAK,aAAa,CAAC,CAAC,EACjG,CAAC;YACD,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,EAAE,aAAa,CAAC,CAAA;YAC/F,IAAI,IAAI,CAAC,kBAAkB,KAAK,aAAa,EAAE,CAAC;gBAC9C,MAAM,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,eAAgB,EAAE,OAAO,CAAC,CAAA;YACzE,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,0BAA0B,CAAC,sBAA8B,EAAE,OAA2B;QAClG,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAuB,UAAU,EAAE;YACzE,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,eAAe,EAAE,sBAAsB;YACvC,kBAAkB,EAAE,OAAO,CAAC,eAAe;SAC5C,CAAC,CAAA;QACF,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,IAAI,SAAS,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC1E,MAAM,IAAI,yBAAyB,CAAC,SAAS,CAAC,OAAO,IAAI,kDAAkD,CAAC,CAAA;QAC9G,CAAC;IACH,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,sBAAsB,CAAC,WAAmB;QACrD,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;QAC7D,MAAM,eAAe,GAAG,WAAW,CAAC,IAAI,EAAE,CAAA;QAC1C,MAAM,sBAAsB,GAAG,WAAK,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAA;QACnF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAuB,OAAO,EAAE;YACrE,eAAe,EAAE,sBAAsB;YACvC,WAAW,EAAE,eAAe;SAC7B,CAAC,CAAA;QACF,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,IAAI,qBAAqB,CAAC,CAAA;QACzF,IAAI,CAAC,kBAAkB,GAAG;YACxB,WAAW,EAAE,eAAe;YAC5B,eAAe,EAAE,sBAAsB;SACxC,CAAA;IACH,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,yBAAyB,CAAC,GAAW;QAChD,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAA;QACvC,IAAI,OAAO,IAAI,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;QAEvD,IAAI,OAAO,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;YAChC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,WAAW,CAA8B,UAAU,EAAE;gBACpF,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE;aAChB,CAAC,CAAA;YACF,IAAI,aAAa,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,OAAO,IAAI,qBAAqB,CAAC,CAAA;YACjE,CAAC;YACD,MAAM,SAAS,GACb,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,sBAAsB,IAAI,EAAE,CAAC;gBACpE,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,oBAAoB,CAAC;gBACxD,aAAa,CAAC,oBAAqB,GAAG,CAAC,CAAA;YACzC,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,CAAC,MAAM,GAAG,WAAK,CAAC,OAAO,CAAC,aAAa,CAAC,sBAAuB,EAAE,KAAK,CAAC,CAAA;gBAC5E,OAAO,CAAC,QAAQ,GAAG,aAAa,CAAC,oBAAoB,CAAA;YACvD,CAAC;iBAAM,IAAI,OAAO,aAAa,CAAC,WAAW,KAAK,QAAQ,IAAI,aAAa,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjG,OAAO,CAAC,WAAW,GAAG,aAAa,CAAC,WAAW,CAAA;YACjD,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,OAAO,IAAI,qBAAqB,CAAC,CAAA;YACjE,CAAC;QACH,CAAC;QAED,OAAO,CAAC,MAAM,KAAK,IAAA,YAAM,EAAC,EAAE,CAAC,CAAA;QAC7B,IAAI,OAAO,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAuB,QAAQ,EAAE;gBACvE,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,kBAAkB,EAAE,WAAK,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;aAChD,CAAC,CAAA;YACF,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,QAAS,IAAI,CAAC,EAAE,CAAC;gBACxG,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,IAAI,qBAAqB,CAAC,CAAA;YAC7D,CAAC;YACD,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAkB,CAAA;QACjD,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;QAEjC,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAChC,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YAChD,OAAO,CAAC,UAAU,GAAG,IAAI,CAAA;QAC3B,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAuB,UAAU,EAAE;YACzE,QAAQ;YACR,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,kBAAkB,EAAE,WAAK,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;SAChD,CAAC,CAAA;QACF,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,IAAI,SAAS,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAClE,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,IAAI,qBAAqB,CAAC,CAAA;QAC7D,CAAC;QACD,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAA;QACnC,OAAO,EAAE,QAAQ,EAAE,CAAA;IACrB,CAAC;IAEM,uBAAuB;QAC5B,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAA;IACrC,CAAC;IAEe,OAAO;QACrB,IAAI,CAAC,UAAU,EAAE,CAAA;QACjB,IAAI,CAAC,uBAAuB,EAAE,CAAA;QAC9B,IAAI,CAAC,kCAAkC,GAAG,SAAS,CAAA;QACnD,KAAK,CAAC,OAAO,EAAE,CAAA;IACjB,CAAC;IAEO,WAAW,CAAI,KAAa,EAAE,IAAa;QACjD,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAI,sBAAsB,KAAK,EAAE,EAAE;YACxE,SAAS,EAAE,cAAc;YACzB,IAAI;SACL,CAAC,CAAA;IACJ,CAAC;IAEO,kBAAkB,CACxB,MAA4B,EAC5B,wBAAgC;QAEhC,IAAI,MAAM,CAAC,eAAe,IAAI,IAAI,EAAE,CAAC;YACnC,MAAM,IAAI,yBAAyB,CAAC,wCAAwC,CAAC,CAAA;QAC/E,CAAC;QACD,MAAM,mBAAmB,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,eAAe,EAAE,wBAAwB,CAAC,CAAA;QACvG,MAAM,gBAAgB,GAAY,MAAM,CAAC,aAAa,CAAA;QACtD,IAAI,gBAAgB,KAAK,SAAS,IAAI,gBAAgB,KAAK,QAAQ,IAAI,gBAAgB,KAAK,aAAa,EAAE,CAAC;YAC1G,MAAM,IAAI,yBAAyB,CAAC,yCAAyC,CAAC,CAAA;QAChF,CAAC;QACD,MAAM,eAAe,GAAY,MAAM,CAAC,YAAY,CAAA;QACpD,IAAI,eAAe,KAAK,SAAS,IAAI,OAAO,eAAe,KAAK,SAAS,EAAE,CAAC;YAC1E,MAAM,IAAI,yBAAyB,CAAC,0CAA0C,CAAC,CAAA;QACjF,CAAC;QACD,IACE,gBAAgB,KAAK,SAAS;YAC9B,eAAe,KAAK,SAAS;YAC7B,CAAC,gBAAgB,KAAK,aAAa,CAAC,KAAK,eAAe,EACxD,CAAC;YACD,MAAM,IAAI,yBAAyB,CAAC,0CAA0C,CAAC,CAAA;QACjF,CAAC;QACD,IAAI,mBAA6D,CAAA;QACjE,IAAI,OAAO,eAAe,KAAK,SAAS,EAAE,CAAC;YACzC,mBAAmB,GAAG,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAA;QAClE,CAAC;QACD,MAAM,cAAc,GAAG,gBAAgB,IAAI,mBAAmB,CAAA;QAE9D,IACE,CAAC,cAAc,KAAK,QAAQ,IAAI,CAAC,mBAAmB,CAAC;YACrD,CAAC,cAAc,KAAK,aAAa,IAAI,mBAAmB,CAAC,EACzD,CAAC;YACD,MAAM,IAAI,yBAAyB,CAAC,0CAA0C,CAAC,CAAA;QACjF,CAAC;QACD,OAAO,cAAc,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAA;IAC3E,CAAC;IAEO,oBAAoB,CAAC,IAAY,EAAE,KAAa;QACtD,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAAE,OAAO,KAAK,CAAA;QAC9C,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QACzC,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;QAC3C,IAAI,UAAU,GAAG,CAAC,CAAA;QAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,UAAU,IAAI,cAAc,CAAC,WAAW,CAAC,CAAC,CAAE,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC,CAAE,CAAA;QAChF,CAAC;QACD,OAAO,UAAU,KAAK,CAAC,CAAA;IACzB,CAAC;IAEO,gCAAgC;QACtC,8EAA8E;QAC9E,MAAM,WAAW,GAAG,IAAA,YAAM,EAAC,EAAE,CAAC,CAAA,CAAC,qBAAqB;QACpD,OAAO,WAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IACjC,CAAC;CACF"}