@bsv/sdk 1.9.31 → 1.10.2

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 (51) hide show
  1. package/dist/cjs/package.json +1 -1
  2. package/dist/cjs/src/auth/Peer.js +68 -48
  3. package/dist/cjs/src/auth/Peer.js.map +1 -1
  4. package/dist/cjs/src/identity/IdentityClient.js +124 -20
  5. package/dist/cjs/src/identity/IdentityClient.js.map +1 -1
  6. package/dist/cjs/src/primitives/BigNumber.js +28 -54
  7. package/dist/cjs/src/primitives/BigNumber.js.map +1 -1
  8. package/dist/cjs/src/primitives/ECDSA.js +36 -1
  9. package/dist/cjs/src/primitives/ECDSA.js.map +1 -1
  10. package/dist/cjs/src/primitives/ReductionContext.js +35 -46
  11. package/dist/cjs/src/primitives/ReductionContext.js.map +1 -1
  12. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  13. package/dist/esm/src/auth/Peer.js +68 -48
  14. package/dist/esm/src/auth/Peer.js.map +1 -1
  15. package/dist/esm/src/identity/IdentityClient.js +124 -20
  16. package/dist/esm/src/identity/IdentityClient.js.map +1 -1
  17. package/dist/esm/src/primitives/BigNumber.js +28 -54
  18. package/dist/esm/src/primitives/BigNumber.js.map +1 -1
  19. package/dist/esm/src/primitives/ECDSA.js +36 -1
  20. package/dist/esm/src/primitives/ECDSA.js.map +1 -1
  21. package/dist/esm/src/primitives/ReductionContext.js +35 -46
  22. package/dist/esm/src/primitives/ReductionContext.js.map +1 -1
  23. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  24. package/dist/types/src/auth/Peer.d.ts.map +1 -1
  25. package/dist/types/src/auth/types.d.ts +2 -0
  26. package/dist/types/src/auth/types.d.ts.map +1 -1
  27. package/dist/types/src/identity/IdentityClient.d.ts +8 -0
  28. package/dist/types/src/identity/IdentityClient.d.ts.map +1 -1
  29. package/dist/types/src/primitives/BigNumber.d.ts +8 -0
  30. package/dist/types/src/primitives/BigNumber.d.ts.map +1 -1
  31. package/dist/types/src/primitives/ECDSA.d.ts +24 -0
  32. package/dist/types/src/primitives/ECDSA.d.ts.map +1 -1
  33. package/dist/types/src/primitives/ReductionContext.d.ts +9 -0
  34. package/dist/types/src/primitives/ReductionContext.d.ts.map +1 -1
  35. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  36. package/dist/umd/bundle.js +3 -3
  37. package/dist/umd/bundle.js.map +1 -1
  38. package/docs/index.md +15 -1
  39. package/docs/reference/auth.md +2 -0
  40. package/docs/reference/messages.md +0 -24
  41. package/docs/reference/primitives.md +91 -31
  42. package/package.json +1 -1
  43. package/src/auth/Peer.ts +122 -57
  44. package/src/auth/__tests/Peer.test.ts +166 -257
  45. package/src/auth/types.ts +2 -0
  46. package/src/identity/IdentityClient.ts +153 -29
  47. package/src/identity/__tests/IdentityClient.test.ts +289 -1
  48. package/src/primitives/BigNumber.ts +27 -31
  49. package/src/primitives/ECDSA.ts +41 -2
  50. package/src/primitives/ReductionContext.ts +44 -48
  51. package/src/primitives/__tests/ECDSA.test.ts +16 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bsv/sdk",
3
- "version": "1.9.31",
3
+ "version": "1.10.2",
4
4
  "type": "commonjs",
5
5
  "description": "BSV Blockchain Software Development Kit",
6
6
  "files": [
@@ -104,7 +104,13 @@ class Peer {
104
104
  identityKey = this.lastInteractedWithPeer;
105
105
  }
106
106
  const peerSession = await this.getAuthenticatedSession(identityKey, maxWaitTime);
107
- // Prepare the general message
107
+ if (peerSession.peerIdentityKey == null) {
108
+ throw new Error('Peer identity is not established');
109
+ }
110
+ if (peerSession.certificatesRequired === true &&
111
+ peerSession.certificatesValidated !== true) {
112
+ throw new Error('Cannot send general message before certificate validation is complete');
113
+ }
108
114
  const requestNonce = Utils.toBase64((0, Random_js_1.default)(32));
109
115
  const { signature } = await this.wallet.createSignature({
110
116
  data: message,
@@ -274,14 +280,16 @@ class Peer {
274
280
  * @returns {Promise<string>} A promise that resolves to the session nonce.
275
281
  */
276
282
  async initiateHandshake(identityKey, maxWaitTime = 10000) {
277
- const sessionNonce = await (0, index_js_1.createNonce)(this.wallet, undefined, this.originator); // Initial request nonce
278
- // Create the preliminary session (not yet authenticated)
283
+ const sessionNonce = await (0, index_js_1.createNonce)(this.wallet, undefined, this.originator);
279
284
  const now = Date.now();
285
+ const certificatesRequired = this.certificatesToRequest.certifiers.length > 0;
280
286
  this.sessionManager.addSession({
281
287
  isAuthenticated: false,
282
288
  sessionNonce,
283
289
  peerIdentityKey: identityKey,
284
- lastUpdate: now
290
+ lastUpdate: now,
291
+ certificatesRequired,
292
+ certificatesValidated: !certificatesRequired
285
293
  });
286
294
  const initialRequest = {
287
295
  version: AUTH_VERSION,
@@ -365,24 +373,30 @@ class Peer {
365
373
  if (typeof message.version !== 'string' || message.version !== AUTH_VERSION) {
366
374
  throw new Error(`Invalid or unsupported message auth version! Received: ${message.version}, expected: ${AUTH_VERSION}`);
367
375
  }
368
- switch (message.messageType) {
369
- case 'initialRequest':
370
- await this.processInitialRequest(message);
371
- break;
372
- case 'initialResponse':
373
- await this.processInitialResponse(message);
374
- break;
375
- case 'certificateRequest':
376
- await this.processCertificateRequest(message);
377
- break;
378
- case 'certificateResponse':
379
- await this.processCertificateResponse(message);
380
- break;
381
- case 'general':
382
- await this.processGeneralMessage(message);
383
- break;
384
- default:
385
- throw new Error(`Unknown message type of ${String(message.messageType)} from ${String(message.identityKey)}`);
376
+ try {
377
+ switch (message.messageType) {
378
+ case 'initialRequest':
379
+ await this.processInitialRequest(message);
380
+ break;
381
+ case 'initialResponse':
382
+ await this.processInitialResponse(message);
383
+ break;
384
+ case 'certificateRequest':
385
+ await this.processCertificateRequest(message);
386
+ break;
387
+ case 'certificateResponse':
388
+ await this.processCertificateResponse(message);
389
+ break;
390
+ case 'general':
391
+ await this.processGeneralMessage(message);
392
+ break;
393
+ default:
394
+ throw new Error(`Unknown message type of ${String(message.messageType)} from ${String(message.identityKey)}`);
395
+ }
396
+ }
397
+ catch (err) {
398
+ // Swallow protocol violations so transport does not crash the process
399
+ // (Message is intentionally rejected)
386
400
  }
387
401
  }
388
402
  /**
@@ -396,34 +410,32 @@ class Peer {
396
410
  message.initialNonce === '') {
397
411
  throw new Error('Missing required fields in initialRequest message.');
398
412
  }
399
- // Create a new sessionNonce for our side
400
413
  const sessionNonce = await (0, index_js_1.createNonce)(this.wallet, undefined, this.originator);
401
414
  const now = Date.now();
402
- // We'll treat this as fully authenticated from *our* perspective (the responding side).
415
+ const certificatesRequired = Array.isArray(this.certificatesToRequest?.certifiers) &&
416
+ this.certificatesToRequest.certifiers.length > 0;
403
417
  this.sessionManager.addSession({
404
418
  isAuthenticated: true,
405
419
  sessionNonce,
406
420
  peerNonce: message.initialNonce,
407
421
  peerIdentityKey: message.identityKey,
408
- lastUpdate: now
422
+ lastUpdate: now,
423
+ certificatesRequired,
424
+ certificatesValidated: !certificatesRequired
409
425
  });
410
- // Possibly handle the peer's requested certs
411
426
  let certificatesToInclude;
412
- if ((message.requestedCertificates != null) &&
413
- Array.isArray(message.requestedCertificates.certifiers) &&
427
+ // Handle THEIR certificate request (if any)
428
+ if (Array.isArray(message.requestedCertificates?.certifiers) &&
414
429
  message.requestedCertificates.certifiers.length > 0) {
415
430
  if (this.onCertificateRequestReceivedCallbacks.size > 0) {
416
- // Let the application handle it
417
431
  this.onCertificateRequestReceivedCallbacks.forEach(cb => {
418
432
  cb(message.identityKey, message.requestedCertificates);
419
433
  });
420
434
  }
421
435
  else {
422
- // Attempt to find automatically
423
436
  certificatesToInclude = await (0, index_js_1.getVerifiableCertificates)(this.wallet, message.requestedCertificates, message.identityKey, this.originator);
424
437
  }
425
438
  }
426
- // Create signature
427
439
  const { signature } = await this.wallet.createSignature({
428
440
  data: Peer.base64ToBytes(message.initialNonce + sessionNonce),
429
441
  protocolID: [2, 'auth message signature'],
@@ -440,11 +452,9 @@ class Peer {
440
452
  requestedCertificates: this.certificatesToRequest,
441
453
  signature
442
454
  };
443
- // If we haven't interacted with a peer yet, store this identity as "lastInteracted"
444
455
  if (this.lastInteractedWithPeer === undefined) {
445
456
  this.lastInteractedWithPeer = message.identityKey;
446
457
  }
447
- // Send the response
448
458
  await this.transport.send(initialResponseMessage);
449
459
  }
450
460
  /**
@@ -459,12 +469,10 @@ class Peer {
459
469
  if (!validNonce) {
460
470
  throw new Error(`Initial response nonce verification failed from peer: ${message.identityKey}`);
461
471
  }
462
- // This is the session we previously created by calling initiateHandshake
463
472
  const peerSession = this.sessionManager.getSession(message.yourNonce);
464
473
  if (peerSession == null) {
465
474
  throw new Error(`Peer session not found for peer: ${message.identityKey}`);
466
475
  }
467
- // Validate message signature
468
476
  const dataToVerify = Peer.base64ToBytes((peerSession.sessionNonce ?? '') + (message.initialNonce ?? ''));
469
477
  const { valid } = await this.wallet.verifySignature({
470
478
  data: dataToVerify,
@@ -476,39 +484,45 @@ class Peer {
476
484
  if (!valid) {
477
485
  throw new Error(`Unable to verify initial response signature for peer: ${message.identityKey}`);
478
486
  }
479
- // Now mark the session as authenticated
487
+ // --- Transport authentication complete ---
480
488
  peerSession.peerNonce = message.initialNonce;
481
489
  peerSession.peerIdentityKey = message.identityKey;
482
490
  peerSession.isAuthenticated = true;
491
+ peerSession.certificatesRequired =
492
+ Array.isArray(this.certificatesToRequest?.certifiers) &&
493
+ this.certificatesToRequest.certifiers.length > 0;
494
+ // IMPORTANT: validation defaults to false if certs are required
495
+ peerSession.certificatesValidated = !peerSession.certificatesRequired;
483
496
  peerSession.lastUpdate = Date.now();
484
497
  this.sessionManager.updateSession(peerSession);
485
- // If the handshake had requested certificates, validate them
486
- if (this.certificatesToRequest?.certifiers?.length > 0 &&
487
- message.certificates?.length > 0) {
498
+ // --- Validate certificates if provided ---
499
+ if (peerSession.certificatesRequired &&
500
+ Array.isArray(message.certificates) &&
501
+ message.certificates.length > 0) {
488
502
  await (0, index_js_1.validateCertificates)(this.wallet, message, this.certificatesToRequest, this.originator);
489
- // Notify listeners
503
+ peerSession.certificatesValidated = true;
504
+ peerSession.lastUpdate = Date.now();
505
+ this.sessionManager.updateSession(peerSession);
490
506
  this.onCertificatesReceivedCallbacks.forEach(cb => cb(message.identityKey, message.certificates));
491
507
  }
492
- // Update lastInteractedWithPeer
508
+ // Update last-interacted peer
493
509
  this.lastInteractedWithPeer = message.identityKey;
494
- // Let the handshake wait-latch know we got our response
510
+ // Release handshake waiters (even if certs still pending)
495
511
  this.onInitialResponseReceivedCallbacks.forEach(entry => {
496
512
  if (entry.sessionNonce === peerSession.sessionNonce) {
497
513
  entry.callback(peerSession.sessionNonce);
498
514
  }
499
515
  });
500
- // The peer might also request certificates from us
501
- if ((message.requestedCertificates != null) &&
516
+ // --- Peer may request certificates from us ---
517
+ if (message.requestedCertificates != null &&
502
518
  Array.isArray(message.requestedCertificates.certifiers) &&
503
519
  message.requestedCertificates.certifiers.length > 0) {
504
520
  if (this.onCertificateRequestReceivedCallbacks.size > 0) {
505
- // Let the application handle it
506
521
  this.onCertificateRequestReceivedCallbacks.forEach(cb => {
507
522
  cb(message.identityKey, message.requestedCertificates);
508
523
  });
509
524
  }
510
525
  else {
511
- // Attempt auto
512
526
  const verifiableCertificates = await (0, index_js_1.getVerifiableCertificates)(this.wallet, message.requestedCertificates, message.identityKey, this.originator);
513
527
  await this.sendCertificateResponse(message.identityKey, verifiableCertificates);
514
528
  }
@@ -624,12 +638,13 @@ class Peer {
624
638
  }
625
639
  // We also handle optional validation if there's a requestedCertificates field
626
640
  await (0, index_js_1.validateCertificates)(this.wallet, message, message.requestedCertificates, this.originator);
641
+ peerSession.certificatesValidated = true;
642
+ peerSession.lastUpdate = Date.now();
643
+ this.sessionManager.updateSession(peerSession);
627
644
  // Notify any listeners
628
645
  this.onCertificatesReceivedCallbacks.forEach(cb => {
629
646
  cb(message.identityKey, message.certificates ?? []);
630
647
  });
631
- peerSession.lastUpdate = Date.now();
632
- this.sessionManager.updateSession(peerSession);
633
648
  }
634
649
  /**
635
650
  * Processes a general message from a peer.
@@ -647,6 +662,11 @@ class Peer {
647
662
  if (peerSession == null) {
648
663
  throw new Error(`Session not found for nonce: ${message.yourNonce}`);
649
664
  }
665
+ const certificatesRequired = peerSession.certificatesRequired === true;
666
+ const certificatesValidated = peerSession.certificatesValidated === true;
667
+ if (certificatesRequired && !certificatesValidated) {
668
+ throw new Error(`Received general message before certificate validation from peer ${peerSession.peerIdentityKey ?? 'unknown'}`);
669
+ }
650
670
  const { valid } = await this.wallet.verifySignature({
651
671
  data: message.payload,
652
672
  signature: message.signature,
@@ -1 +1 @@
1
- {"version":3,"file":"Peer.js","sourceRoot":"","sources":["../../../../src/auth/Peer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Peer.js","sourceRoot":"","sources":["../../../../src/auth/Peer.ts"],"names":[],"mappings":"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"}
@@ -8,10 +8,14 @@ const index_js_1 = require("./types/index.js");
8
8
  const index_js_2 = require("../wallet/index.js");
9
9
  const index_js_3 = require("../transaction/index.js");
10
10
  const Certificate_js_1 = __importDefault(require("../auth/certificates/Certificate.js"));
11
+ const VerifiableCertificate_js_1 = require("../auth/certificates/VerifiableCertificate.js");
11
12
  const index_js_4 = require("../script/index.js");
12
13
  const index_js_5 = require("../primitives/index.js");
14
+ const ProtoWallet_js_1 = __importDefault(require("../wallet/ProtoWallet.js"));
13
15
  const index_js_6 = require("../overlay-tools/index.js");
14
16
  const ContactsManager_js_1 = require("./ContactsManager.js");
17
+ // Default SocialCert certifier for fallback resolution when no wallet is available
18
+ const DEFAULT_CERTIFIER = '02cf6cdf466951d8dfc9e7c9367511d0007ed6fba35ed42d425cc412fd6cfd4a17';
15
19
  /**
16
20
  * IdentityClient lets you discover who others are, and let the world know who you are.
17
21
  */
@@ -20,7 +24,7 @@ class IdentityClient {
20
24
  this.options = options;
21
25
  this.originator = originator;
22
26
  this.originator = originator;
23
- this.wallet = wallet ?? new index_js_2.WalletClient();
27
+ this.wallet = wallet ?? new index_js_2.WalletClient('auto', this.originator);
24
28
  this.contactsManager = new ContactsManager_js_1.ContactsManager(this.wallet, this.originator);
25
29
  }
26
30
  /**
@@ -92,15 +96,31 @@ class IdentityClient {
92
96
  async resolveByIdentityKey(args, overrideWithContacts = true) {
93
97
  if (overrideWithContacts) {
94
98
  // Override results with personal contacts if available
95
- const contacts = await this.contactsManager.getContacts(args.identityKey);
96
- if (contacts.length > 0) {
97
- return contacts;
99
+ try {
100
+ const contacts = await this.contactsManager.getContacts(args.identityKey);
101
+ if (contacts.length > 0) {
102
+ return contacts;
103
+ }
104
+ }
105
+ catch (e) {
106
+ // Contacts require wallet - continue to try discovery
98
107
  }
99
108
  }
100
- const { certificates } = await this.wallet.discoverByIdentityKey(args, this.originator);
101
- return certificates.map((cert) => {
102
- return IdentityClient.parseIdentity(cert);
103
- });
109
+ try {
110
+ const { certificates } = await this.wallet.discoverByIdentityKey(args, this.originator);
111
+ return certificates.map((cert) => {
112
+ return IdentityClient.parseIdentity(cert);
113
+ });
114
+ }
115
+ catch (error) {
116
+ // Fallback to LookupResolver if no wallet is available
117
+ const errorMessage = error instanceof Error ? error.message : '';
118
+ if (errorMessage.includes('No wallet available')) {
119
+ const certificates = await this.resolveViaLookup({ identityKey: args.identityKey });
120
+ return certificates.map((cert) => IdentityClient.parseIdentity(cert));
121
+ }
122
+ throw error;
123
+ }
104
124
  }
105
125
  /**
106
126
  * Resolves displayable identity certificates by specific identity attributes, issued by a trusted entity.
@@ -111,18 +131,102 @@ class IdentityClient {
111
131
  */
112
132
  async resolveByAttributes(args, overrideWithContacts = true) {
113
133
  // Run both queries in parallel for better performance
114
- const [contacts, certificatesResult] = await Promise.all([
115
- overrideWithContacts
116
- ? this.contactsManager.getContacts()
117
- : Promise.resolve([]),
118
- this.wallet.discoverByAttributes(args, this.originator)
119
- ]);
120
- // Fast lookup by identityKey
121
- const contactByKey = new Map(contacts.map((contact) => [contact.identityKey, contact]));
122
- // Guard if certificates might be absent
123
- const certs = certificatesResult?.certificates ?? [];
124
- // Parse certificates and substitute with contacts where available
125
- return certs.map((cert) => contactByKey.get(cert.subject) ?? IdentityClient.parseIdentity(cert));
134
+ const contactsPromise = overrideWithContacts
135
+ ? this.contactsManager.getContacts().catch(() => [])
136
+ : Promise.resolve([]);
137
+ try {
138
+ const [contacts, certificatesResult] = await Promise.all([
139
+ contactsPromise,
140
+ this.wallet.discoverByAttributes(args, this.originator)
141
+ ]);
142
+ // Fast lookup by identityKey
143
+ const contactByKey = new Map(contacts.map((contact) => [contact.identityKey, contact]));
144
+ // Guard if certificates might be absent
145
+ const certs = certificatesResult?.certificates ?? [];
146
+ // Parse certificates and substitute with contacts where available
147
+ return certs.map((cert) => contactByKey.get(cert.subject) ?? IdentityClient.parseIdentity(cert));
148
+ }
149
+ catch (error) {
150
+ // Fallback to LookupResolver if no wallet is available
151
+ const errorMessage = error instanceof Error ? error.message : '';
152
+ if (errorMessage.includes('No wallet available')) {
153
+ const certificates = await this.resolveViaLookup({ attributes: args.attributes });
154
+ return certificates.map((cert) => IdentityClient.parseIdentity(cert));
155
+ }
156
+ throw error;
157
+ }
158
+ }
159
+ /**
160
+ * Fallback method to resolve identity certificates via LookupResolver when no wallet is available.
161
+ * Uses the ls_identity overlay with a default SocialCert certifier.
162
+ *
163
+ * @param query - Query parameters: either identityKey or attributes
164
+ * @returns {Promise<IdentityCertificate[]>} Array of identity certificates
165
+ */
166
+ async resolveViaLookup(query) {
167
+ const resolver = new index_js_6.LookupResolver({ networkPreset: 'mainnet' });
168
+ // Build the lookup query based on what was provided
169
+ const lookupQuery = {
170
+ certifiers: [DEFAULT_CERTIFIER]
171
+ };
172
+ if (query.identityKey !== undefined) {
173
+ lookupQuery.identityKey = query.identityKey;
174
+ }
175
+ else if (query.attributes !== undefined) {
176
+ // For attribute search, use the 'any' matcher for flexible matching
177
+ const attributeValues = Object.values(query.attributes);
178
+ if (attributeValues.length === 1) {
179
+ lookupQuery.attributes = { any: attributeValues[0] };
180
+ }
181
+ else {
182
+ lookupQuery.attributes = query.attributes;
183
+ }
184
+ }
185
+ const lookupResult = await resolver.query({
186
+ service: 'ls_identity',
187
+ query: lookupQuery
188
+ });
189
+ if (lookupResult.type !== 'output-list' || lookupResult.outputs.length === 0) {
190
+ return [];
191
+ }
192
+ const certificates = [];
193
+ const anyoneWallet = new ProtoWallet_js_1.default('anyone');
194
+ for (const output of lookupResult.outputs) {
195
+ try {
196
+ const tx = index_js_3.Transaction.fromBEEF(output.beef);
197
+ const decodedOutput = index_js_4.PushDrop.decode(tx.outputs[output.outputIndex].lockingScript);
198
+ const certData = JSON.parse(index_js_5.Utils.toUTF8(decodedOutput.fields[0]));
199
+ const verifiableCert = new VerifiableCertificate_js_1.VerifiableCertificate(certData.type, certData.serialNumber, certData.subject, certData.certifier, certData.revocationOutpoint, certData.fields, certData.keyring, certData.signature);
200
+ // Decrypt fields using 'anyone' wallet for publicly revealed certificates
201
+ const decryptedFields = await verifiableCert.decryptFields(anyoneWallet);
202
+ // Verify the certificate is valid
203
+ await verifiableCert.verify();
204
+ // Construct IdentityCertificate with default certifier info
205
+ const identityCert = {
206
+ type: certData.type,
207
+ serialNumber: certData.serialNumber,
208
+ subject: certData.subject,
209
+ certifier: certData.certifier,
210
+ revocationOutpoint: certData.revocationOutpoint,
211
+ fields: certData.fields,
212
+ signature: certData.signature,
213
+ certifierInfo: {
214
+ name: 'SocialCert',
215
+ iconUrl: 'https://socialcert.net/favicon.ico',
216
+ description: 'Social identity verification',
217
+ trust: 5
218
+ },
219
+ publiclyRevealedKeyring: certData.keyring,
220
+ decryptedFields
221
+ };
222
+ certificates.push(identityCert);
223
+ }
224
+ catch (e) {
225
+ // Skip invalid certificates and continue processing
226
+ continue;
227
+ }
228
+ }
229
+ return certificates;
126
230
  }
127
231
  /**
128
232
  * Remove public certificate revelation from overlay services by spending the identity token
@@ -1 +1 @@
1
- {"version":3,"file":"IdentityClient.js","sourceRoot":"","sources":["../../../../src/identity/IdentityClient.ts"],"names":[],"mappings":";;;;;;AAAA,+CAA8H;AAC9H,iDAW2B;AAC3B,sDAA0F;AAC1F,yFAA6D;AAC7D,iDAA6C;AAC7C,qDAA0D;AAC1D,wDAAmH;AACnH,6DAA+D;AAE/D;;GAEG;AACH,MAAa,cAAc;IAGzB,YACE,MAAwB,EACP,UAAU,0CAA+B,EACzC,UAAoD;QADpD,YAAO,GAAP,OAAO,CAAkC;QACzC,eAAU,GAAV,UAAU,CAA0C;QAErE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,uBAAY,EAAE,CAAA;QAC1C,IAAI,CAAC,eAAe,GAAG,IAAI,oCAAe,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;IAC1E,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,wBAAwB,CAC5B,WAA8B,EAC9B,cAAkD;QAElD,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAA;QACH,CAAC;QACD,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAA;QACH,CAAC;QACD,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,IAAI,wBAAW,CAChC,WAAW,CAAC,IAAI,EAChB,WAAW,CAAC,YAAY,EACxB,WAAW,CAAC,OAAO,EACnB,WAAW,CAAC,SAAS,EACrB,WAAW,CAAC,kBAAkB,EAC9B,WAAW,CAAC,MAAM,EAClB,WAAW,CAAC,SAAS,CACtB,CAAA;YACD,MAAM,UAAU,CAAC,MAAM,EAAE,CAAA;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAA;QAC3E,CAAC;QAED,+DAA+D;QAC/D,2EAA2E;QAC3E,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC/D;YACE,WAAW;YACX,cAAc;YACd,QAAQ,EAAE,IAAI,qBAAU,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;SACrD,EACD,IAAI,CAAC,UAAU,CAChB,CAAA;QAED,yFAAyF;QACzF,MAAM,aAAa,GAAG,MAAM,IAAI,mBAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CACzE;YACE,gBAAK,CAAC,OAAO,CACX,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,WAAW,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC,CAChE;SACF,EACD,IAAI,CAAC,OAAO,CAAC,UAAU,EACvB,IAAI,CAAC,OAAO,CAAC,KAAK,EAClB,QAAQ,EACR,IAAI,EACJ,IAAI,CACL,CAAA;QACD,uDAAuD;QACvD,yCAAyC;QAEzC,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAC3C;YACE,WAAW,EAAE,6BAA6B;YAC1C,OAAO,EAAE;gBACP;oBACE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;oBAClC,aAAa,EAAE,aAAa,CAAC,KAAK,EAAE;oBACpC,iBAAiB,EAAE,gBAAgB;iBACpC;aACF;YACD,OAAO,EAAE;gBACP,gBAAgB,EAAE,KAAK;aACxB;SACF,EACD,IAAI,CAAC,UAAU,CAChB,CAAA;QAED,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,uCAAuC;YACvC,MAAM,WAAW,GAAG,IAAI,2BAAgB,CAAC,CAAC,aAAa,CAAC,EAAE;gBACxD,aAAa,EAAE,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO;aAC1D,CAAC,CAAA;YACF,OAAO,MAAM,WAAW,CAAC,SAAS,CAAC,sBAAW,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAA;QACpE,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;IACnE,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,oBAAoB,CACxB,IAA+B,EAC/B,oBAAoB,GAAG,IAAI;QAE3B,IAAI,oBAAoB,EAAE,CAAC;YACzB,uDAAuD;YACvD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YACzE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,OAAO,QAAQ,CAAA;YACjB,CAAC;QACH,CAAC;QAED,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAC9D,IAAI,EACJ,IAAI,CAAC,UAAU,CAChB,CAAA;QACD,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC/B,OAAO,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;QAC3C,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,mBAAmB,CACvB,IAA8B,EAC9B,oBAAoB,GAAG,IAAI;QAE3B,sDAAsD;QACtD,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACvD,oBAAoB;gBAClB,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE;gBACpC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC;SACxD,CAAC,CAAA;QAEF,6BAA6B;QAC7B,MAAM,YAAY,GAAG,IAAI,GAAG,CAC1B,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAU,CAAC,CACnE,CAAA;QAED,wCAAwC;QACxC,MAAM,KAAK,GAAG,kBAAkB,EAAE,YAAY,IAAI,EAAE,CAAA;QAEpD,kEAAkE;QAClE,OAAO,KAAK,CAAC,GAAG,CACd,CAAC,IAAI,EAAE,EAAE,CACP,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CACvE,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,2BAA2B,CAC/B,YAA0B;QAE1B,wBAAwB;QACxB,MAAM,cAAc,GAAG,IAAI,yBAAc,CAAC;YACxC,aAAa,EAAE,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO;SAC1D,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,KAAK,CAAC;YACxC,OAAO,EAAE,aAAa;YACtB,KAAK,EAAE;gBACL,YAAY;aACb;SACF,CAAC,CAAA;QAEF,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YAAC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAAC,CAAC;QAErF,MAAM,gBAAgB,GAAG,IAAI,0BAAe,CAAC,CAAC,aAAa,CAAC,EAAE;YAC5D,aAAa,EAAE,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO;YACzD,0CAA0C,EAAE,EAAE;YAC9C,yCAAyC,EAAE,EAAE;YAC7C,+CAA+C,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;SACrE,CAAC,CAAA;QAEF,MAAM,IAAA,+BAAoB,EAAC,KAAK,IAAI,EAAE;YACpC,MAAM,EAAE,GAAG,sBAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YACvD,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;YAC9D,MAAM,aAAa,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,aAAa,CAAA;YAExE,IAAI,aAAa,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC1D,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;YACxE,CAAC;YAED,mBAAmB;YACnB,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAC5D;gBACE,WAAW,EAAE,oCAAoC;gBACjD,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;gBACjC,MAAM,EAAE;oBACN;wBACE,gBAAgB,EAAE,kBAAkB;wBACpC,QAAQ;wBACR,qBAAqB,EAAE,EAAE;qBAC1B;iBACF;gBACD,OAAO,EAAE;oBACP,gBAAgB,EAAE,KAAK;oBACvB,sBAAsB,EAAE,KAAK;oBAC7B,MAAM,EAAE,IAAI;iBACb;aACF,EACD,IAAI,CAAC,UAAU,CAChB,CAAA;YAED,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;YAC1D,CAAC;YAED,MAAM,SAAS,GAAG,sBAAW,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAA;YAE9D,MAAM,QAAQ,GAAG,IAAI,mBAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAChE,IAAI,CAAC,OAAO,CAAC,UAAU,EACvB,IAAI,CAAC,OAAO,CAAC,KAAK,EAClB,QAAQ,CACT,CAAA;YAED,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,IAAI,CACzC,SAAS,EACT,IAAI,CAAC,OAAO,CAAC,WAAW,CACzB,CAAA;YAED,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CACnD;gBACE,SAAS,EAAE,mBAAmB,CAAC,SAAS;gBACxC,MAAM,EAAE;oBACN,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;wBAC1B,eAAe,EAAE,eAAe,CAAC,KAAK,EAAE;qBACzC;iBACF;gBACD,OAAO,EAAE;oBACP,sBAAsB,EAAE,KAAK;oBAC7B,MAAM,EAAE,IAAI;iBACb;aACF,EACD,IAAI,CAAC,UAAU,CAChB,CAAA;YAED,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;YAC/C,CAAC;YAED,MAAM,gBAAgB,CAAC,SAAS,CAAC,sBAAW,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAA;QACxE,CAAC,EAAE,gBAAgB,CAAC,CAAA;IACtB,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,WAAW,CACtB,WAAuB,EACvB,YAAY,GAAG,KAAK,EACpB,KAAK,GAAG,IAAI;QAEZ,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAC3C,WAAW,EACX,YAAY,EACZ,KAAK,CACN,CAAA;IACH,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,WAAW,CACtB,OAA4B,EAC5B,QAA8B;QAE9B,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAClE,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,aAAa,CAAE,WAAsB;QAChD,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;IAC9D,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,aAAa,CAClB,eAAoC;QAEpC,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,eAAe,CAAA;QAChE,IAAI,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,CAAA;QAE5D,yGAAyG;QACzG,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,+BAAoB,CAAC,KAAK;gBAC7B,IAAI,GAAG,eAAe,CAAC,QAAQ,CAAA;gBAC/B,SAAS,GAAG,eAAe,CAAC,YAAY,CAAA;gBACxC,UAAU,GAAG,0BAA0B,aAAa,CAAC,IAAI,EAAE,CAAA;gBAC3D,YAAY,GAAG,aAAa,CAAC,OAAO,CAAA;gBACpC,aAAa,GAAG,wBAAwB,CAAA,CAAC,sCAAsC;gBAC/E,MAAK;YACP,KAAK,+BAAoB,CAAC,WAAW;gBACnC,IAAI,GAAG,eAAe,CAAC,QAAQ,CAAA;gBAC/B,SAAS,GAAG,eAAe,CAAC,YAAY,CAAA;gBACxC,UAAU,GAAG,gCAAgC,aAAa,CAAC,IAAI,EAAE,CAAA;gBACjE,YAAY,GAAG,aAAa,CAAC,OAAO,CAAA;gBACpC,aAAa,GAAG,wBAAwB,CAAA,CAAC,sCAAsC;gBAC/E,MAAK;YACP,KAAK,+BAAoB,CAAC,SAAS;gBACjC,IAAI,GAAG,eAAe,CAAC,KAAK,CAAA;gBAC5B,SAAS,GAAG,sDAAsD,CAAA;gBAClE,UAAU,GAAG,sBAAsB,aAAa,CAAC,IAAI,EAAE,CAAA;gBACvD,YAAY,GAAG,aAAa,CAAC,OAAO,CAAA;gBACpC,aAAa,GAAG,wBAAwB,CAAA,CAAC,sCAAsC;gBAC/E,MAAK;YACP,KAAK,+BAAoB,CAAC,SAAS;gBACjC,IAAI,GAAG,eAAe,CAAC,WAAW,CAAA;gBAClC,SAAS,GAAG,sDAAsD,CAAA;gBAClE,UAAU,GAAG,sBAAsB,aAAa,CAAC,IAAI,EAAE,CAAA;gBACvD,YAAY,GAAG,aAAa,CAAC,OAAO,CAAA;gBACpC,aAAa,GAAG,wBAAwB,CAAA,CAAC,sCAAsC;gBAC/E,MAAK;YACP,KAAK,+BAAoB,CAAC,UAAU;gBAClC,IAAI,GAAG,GAAG,eAAe,CAAC,SAAS,IAAI,eAAe,CAAC,QAAQ,EAAE,CAAA;gBACjE,SAAS,GAAG,eAAe,CAAC,YAAY,CAAA;gBACxC,UAAU,GAAG,8BAA8B,aAAa,CAAC,IAAI,EAAE,CAAA;gBAC/D,YAAY,GAAG,aAAa,CAAC,OAAO,CAAA;gBACpC,aAAa,GAAG,uBAAuB,CAAA,CAAC,sCAAsC;gBAC9E,MAAK;YACP,KAAK,+BAAoB,CAAC,UAAU;gBAClC,IAAI,GAAG,eAAe,CAAC,IAAI,CAAA;gBAC3B,SAAS,GAAG,eAAe,CAAC,IAAI,CAAA;gBAChC,UAAU,GAAG,uBAAuB,aAAa,CAAC,IAAI,EAAE,CAAA;gBACxD,YAAY,GAAG,aAAa,CAAC,OAAO,CAAA;gBACpC,aAAa,GAAG,4CAA4C,CAAA,CAAC,iCAAiC;gBAC9F,MAAK;YACP,KAAK,+BAAoB,CAAC,QAAQ;gBAChC,IAAI,GAAG,eAAe,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,CAAA;gBACrE,MAAK;YACP,KAAK,+BAAoB,CAAC,MAAM;gBAC9B,IAAI,GAAG,QAAQ,CAAA;gBACf,SAAS,GAAG,sDAAsD,CAAA;gBAClE,UAAU;oBACR,+DAA+D,CAAA;gBACjE,YAAY,GAAG,sDAAsD,CAAA;gBACrE,aAAa,GAAG,iDAAiD,CAAA,CAAC,iCAAiC;gBACnG,MAAK;YACP,KAAK,+BAAoB,CAAC,IAAI;gBAC5B,IAAI,GAAG,KAAK,CAAA;gBACZ,SAAS,GAAG,sDAAsD,CAAA;gBAClE,UAAU,GAAG,qDAAqD,CAAA;gBAClE,YAAY,GAAG,sDAAsD,CAAA;gBACrE,aAAa,GAAG,+CAA+C,CAAA,CAAC,iCAAiC;gBACjG,MAAK;YACP,OAAO,CAAC,CAAC,CAAC;gBACR,MAAM,MAAM,GAAG,cAAc,CAAC,yBAAyB,CACrD,IAAI,EACJ,eAAe,EACf,aAAa,CACd,CAAA;gBACD,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;gBAClB,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;gBAC5B,UAAU,GAAG,MAAM,CAAC,UAAU,CAAA;gBAC9B,YAAY,GAAG,MAAM,CAAC,YAAY,CAAA;gBAClC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAA;gBACpC,MAAK;YACP,CAAC;QACH,CAAC;QAED,OAAO;YACL,IAAI;YACJ,SAAS;YACT,cAAc,EACZ,eAAe,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gBAChC,CAAC,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;gBAClD,CAAC,CAAC,EAAE;YACR,WAAW,EAAE,eAAe,CAAC,OAAO;YACpC,YAAY;YACZ,UAAU;YACV,aAAa;SACd,CAAA;IACH,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,QAAQ,CAAE,KAAU;QACjC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,CAAA;IAC9D,CAAC;IAED;;;OAGG;IACK,MAAM,CAAC,yBAAyB,CACtC,IAAY,EACZ,eAAoC,EACpC,aAAkB;QAQlB,qDAAqD;QACrD,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,CAAA;QAC3C,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAA;QACzC,MAAM,QAAQ,GACZ,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACrE,CAAC,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE;YAC5B,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAClC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBACjC,CAAC,CAAC,QAAQ;oBACV,CAAC,CAAC,SAAS,CAAA;QAEnB,MAAM,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC;YACxD,CAAC,CAAC,eAAe,CAAC,IAAI;YACtB,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC;gBACjD,CAAC,CAAC,eAAe,CAAC,QAAQ;gBAC1B,CAAC,CAAC,CAAC,QAAQ;oBACT,CAAC,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC;wBAC7C,CAAC,CAAC,eAAe,CAAC,KAAK;wBACvB,CAAC,CAAC,0BAAe,CAAC,IAAI,CAAC,CAAC,CAAA;QAEhC,sDAAsD;QACtD,MAAM,SAAS,GAAG,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,YAAY,CAAC;YACrE,CAAC,CAAC,eAAe,CAAC,YAAY;YAC9B,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC;gBAC/C,CAAC,CAAC,eAAe,CAAC,MAAM;gBACxB,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC;oBAC7C,CAAC,CAAC,eAAe,CAAC,IAAI;oBACtB,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC;wBAC9C,CAAC,CAAC,eAAe,CAAC,KAAK;wBACvB,CAAC,CAAC,0BAAe,CAAC,SAAS,CAAA;QAEnC,6BAA6B;QAC7B,MAAM,UAAU,GAAG,cAAc,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC;YAC7D,CAAC,CAAC,GAAG,IAAI,iBAAiB,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;YACtD,CAAC,CAAC,0BAAe,CAAC,UAAU,CAAA;QAE9B,MAAM,YAAY,GAAG,cAAc,CAAC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;YAClE,CAAC,CAAC,aAAa,CAAC,OAAO;YACvB,CAAC,CAAC,0BAAe,CAAC,YAAY,CAAA;QAChC,MAAM,aAAa,GAAG,0BAAe,CAAC,aAAa,CAAA;QAEnD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,CAAA;IACrE,CAAC;CACF;AAzdD,wCAydC"}
1
+ {"version":3,"file":"IdentityClient.js","sourceRoot":"","sources":["../../../../src/identity/IdentityClient.ts"],"names":[],"mappings":";;;;;;AAAA,+CAA8H;AAC9H,iDAW2B;AAC3B,sDAA0F;AAC1F,yFAA6D;AAC7D,4FAAqF;AACrF,iDAA6C;AAC7C,qDAA0D;AAC1D,8EAAkD;AAClD,wDAAmH;AACnH,6DAA+D;AAE/D,mFAAmF;AACnF,MAAM,iBAAiB,GAAG,oEAAoE,CAAA;AAE9F;;GAEG;AACH,MAAa,cAAc;IAGzB,YACE,MAAwB,EACP,UAAU,0CAA+B,EACzC,UAAoD;QADpD,YAAO,GAAP,OAAO,CAAkC;QACzC,eAAU,GAAV,UAAU,CAA0C;QAErE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,uBAAY,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;QACjE,IAAI,CAAC,eAAe,GAAG,IAAI,oCAAe,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;IAC1E,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,wBAAwB,CAC5B,WAA8B,EAC9B,cAAkD;QAElD,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAA;QACH,CAAC;QACD,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAA;QACH,CAAC;QACD,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,IAAI,wBAAW,CAChC,WAAW,CAAC,IAAI,EAChB,WAAW,CAAC,YAAY,EACxB,WAAW,CAAC,OAAO,EACnB,WAAW,CAAC,SAAS,EACrB,WAAW,CAAC,kBAAkB,EAC9B,WAAW,CAAC,MAAM,EAClB,WAAW,CAAC,SAAS,CACtB,CAAA;YACD,MAAM,UAAU,CAAC,MAAM,EAAE,CAAA;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAA;QAC3E,CAAC;QAED,+DAA+D;QAC/D,2EAA2E;QAC3E,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC/D;YACE,WAAW;YACX,cAAc;YACd,QAAQ,EAAE,IAAI,qBAAU,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;SACrD,EACD,IAAI,CAAC,UAAU,CAChB,CAAA;QAED,yFAAyF;QACzF,MAAM,aAAa,GAAG,MAAM,IAAI,mBAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CACzE;YACE,gBAAK,CAAC,OAAO,CACX,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,WAAW,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC,CAChE;SACF,EACD,IAAI,CAAC,OAAO,CAAC,UAAU,EACvB,IAAI,CAAC,OAAO,CAAC,KAAK,EAClB,QAAQ,EACR,IAAI,EACJ,IAAI,CACL,CAAA;QACD,uDAAuD;QACvD,yCAAyC;QAEzC,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAC3C;YACE,WAAW,EAAE,6BAA6B;YAC1C,OAAO,EAAE;gBACP;oBACE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;oBAClC,aAAa,EAAE,aAAa,CAAC,KAAK,EAAE;oBACpC,iBAAiB,EAAE,gBAAgB;iBACpC;aACF;YACD,OAAO,EAAE;gBACP,gBAAgB,EAAE,KAAK;aACxB;SACF,EACD,IAAI,CAAC,UAAU,CAChB,CAAA;QAED,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,uCAAuC;YACvC,MAAM,WAAW,GAAG,IAAI,2BAAgB,CAAC,CAAC,aAAa,CAAC,EAAE;gBACxD,aAAa,EAAE,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO;aAC1D,CAAC,CAAA;YACF,OAAO,MAAM,WAAW,CAAC,SAAS,CAAC,sBAAW,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAA;QACpE,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;IACnE,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,oBAAoB,CACxB,IAA+B,EAC/B,oBAAoB,GAAG,IAAI;QAE3B,IAAI,oBAAoB,EAAE,CAAC;YACzB,uDAAuD;YACvD,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBACzE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxB,OAAO,QAAQ,CAAA;gBACjB,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,sDAAsD;YACxD,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAC9D,IAAI,EACJ,IAAI,CAAC,UAAU,CAChB,CAAA;YACD,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC/B,OAAO,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;YAC3C,CAAC,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,uDAAuD;YACvD,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAA;YAChE,IAAI,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;gBACjD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;gBACnF,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;YACvE,CAAC;YACD,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,mBAAmB,CACvB,IAA8B,EAC9B,oBAAoB,GAAG,IAAI;QAE3B,sDAAsD;QACtD,MAAM,eAAe,GAAG,oBAAoB;YAC1C,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAe,CAAC;YACjE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAe,CAAC,CAAA;QAEpC,IAAI,CAAC;YACH,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACvD,eAAe;gBACf,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC;aACxD,CAAC,CAAA;YAEF,6BAA6B;YAC7B,MAAM,YAAY,GAAG,IAAI,GAAG,CAC1B,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAU,CAAC,CACnE,CAAA;YAED,wCAAwC;YACxC,MAAM,KAAK,GAAG,kBAAkB,EAAE,YAAY,IAAI,EAAE,CAAA;YAEpD,kEAAkE;YAClE,OAAO,KAAK,CAAC,GAAG,CACd,CAAC,IAAI,EAAE,EAAE,CACP,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CACvE,CAAA;QACH,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,uDAAuD;YACvD,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAA;YAChE,IAAI,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;gBACjD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA;gBACjF,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;YACvE,CAAC;YACD,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,gBAAgB,CAC5B,KAAuE;QAEvE,MAAM,QAAQ,GAAG,IAAI,yBAAc,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAA;QAEjE,oDAAoD;QACpD,MAAM,WAAW,GAAwB;YACvC,UAAU,EAAE,CAAC,iBAAiB,CAAC;SAChC,CAAA;QAED,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACpC,WAAW,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAA;QAC7C,CAAC;aAAM,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAC1C,oEAAoE;YACpE,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;YACvD,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,WAAW,CAAC,UAAU,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAA;YACtD,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAA;YAC3C,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC;YACxC,OAAO,EAAE,aAAa;YACtB,KAAK,EAAE,WAAW;SACnB,CAAC,CAAA;QAEF,IAAI,YAAY,CAAC,IAAI,KAAK,aAAa,IAAI,YAAY,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7E,OAAO,EAAE,CAAA;QACX,CAAC;QAED,MAAM,YAAY,GAA0B,EAAE,CAAA;QAC9C,MAAM,YAAY,GAAG,IAAI,wBAAW,CAAC,QAAQ,CAAC,CAAA;QAE9C,KAAK,MAAM,MAAM,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YAC1C,IAAI,CAAC;gBACH,MAAM,EAAE,GAAG,sBAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBAC5C,MAAM,aAAa,GAAG,mBAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC,CAAA;gBACnF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAK,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBAElE,MAAM,cAAc,GAAG,IAAI,gDAAqB,CAC9C,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,YAAY,EACrB,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,kBAAkB,EAC3B,QAAQ,CAAC,MAAM,EACf,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,SAAS,CACnB,CAAA;gBAED,0EAA0E;gBAC1E,MAAM,eAAe,GAAG,MAAM,cAAc,CAAC,aAAa,CAAC,YAAY,CAAC,CAAA;gBAExE,kCAAkC;gBAClC,MAAM,cAAc,CAAC,MAAM,EAAE,CAAA;gBAE7B,4DAA4D;gBAC5D,MAAM,YAAY,GAAwB;oBACxC,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,YAAY,EAAE,QAAQ,CAAC,YAAY;oBACnC,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB;oBAC/C,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,aAAa,EAAE;wBACb,IAAI,EAAE,YAAY;wBAClB,OAAO,EAAE,oCAAoC;wBAC7C,WAAW,EAAE,8BAA8B;wBAC3C,KAAK,EAAE,CAAC;qBACT;oBACD,uBAAuB,EAAE,QAAQ,CAAC,OAAO;oBACzC,eAAe;iBAChB,CAAA;gBAED,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACjC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,oDAAoD;gBACpD,SAAQ;YACV,CAAC;QACH,CAAC;QAED,OAAO,YAAY,CAAA;IACrB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,2BAA2B,CAC/B,YAA0B;QAE1B,wBAAwB;QACxB,MAAM,cAAc,GAAG,IAAI,yBAAc,CAAC;YACxC,aAAa,EAAE,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO;SAC1D,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,KAAK,CAAC;YACxC,OAAO,EAAE,aAAa;YACtB,KAAK,EAAE;gBACL,YAAY;aACb;SACF,CAAC,CAAA;QAEF,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YAAC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAAC,CAAC;QAErF,MAAM,gBAAgB,GAAG,IAAI,0BAAe,CAAC,CAAC,aAAa,CAAC,EAAE;YAC5D,aAAa,EAAE,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO;YACzD,0CAA0C,EAAE,EAAE;YAC9C,yCAAyC,EAAE,EAAE;YAC7C,+CAA+C,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;SACrE,CAAC,CAAA;QAEF,MAAM,IAAA,+BAAoB,EAAC,KAAK,IAAI,EAAE;YACpC,MAAM,EAAE,GAAG,sBAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YACvD,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;YAC9D,MAAM,aAAa,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,aAAa,CAAA;YAExE,IAAI,aAAa,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC1D,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;YACxE,CAAC;YAED,mBAAmB;YACnB,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAC5D;gBACE,WAAW,EAAE,oCAAoC;gBACjD,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;gBACjC,MAAM,EAAE;oBACN;wBACE,gBAAgB,EAAE,kBAAkB;wBACpC,QAAQ;wBACR,qBAAqB,EAAE,EAAE;qBAC1B;iBACF;gBACD,OAAO,EAAE;oBACP,gBAAgB,EAAE,KAAK;oBACvB,sBAAsB,EAAE,KAAK;oBAC7B,MAAM,EAAE,IAAI;iBACb;aACF,EACD,IAAI,CAAC,UAAU,CAChB,CAAA;YAED,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;YAC1D,CAAC;YAED,MAAM,SAAS,GAAG,sBAAW,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAA;YAE9D,MAAM,QAAQ,GAAG,IAAI,mBAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAChE,IAAI,CAAC,OAAO,CAAC,UAAU,EACvB,IAAI,CAAC,OAAO,CAAC,KAAK,EAClB,QAAQ,CACT,CAAA;YAED,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,IAAI,CACzC,SAAS,EACT,IAAI,CAAC,OAAO,CAAC,WAAW,CACzB,CAAA;YAED,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CACnD;gBACE,SAAS,EAAE,mBAAmB,CAAC,SAAS;gBACxC,MAAM,EAAE;oBACN,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;wBAC1B,eAAe,EAAE,eAAe,CAAC,KAAK,EAAE;qBACzC;iBACF;gBACD,OAAO,EAAE;oBACP,sBAAsB,EAAE,KAAK;oBAC7B,MAAM,EAAE,IAAI;iBACb;aACF,EACD,IAAI,CAAC,UAAU,CAChB,CAAA;YAED,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;YAC/C,CAAC;YAED,MAAM,gBAAgB,CAAC,SAAS,CAAC,sBAAW,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAA;QACxE,CAAC,EAAE,gBAAgB,CAAC,CAAA;IACtB,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,WAAW,CACtB,WAAuB,EACvB,YAAY,GAAG,KAAK,EACpB,KAAK,GAAG,IAAI;QAEZ,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAC3C,WAAW,EACX,YAAY,EACZ,KAAK,CACN,CAAA;IACH,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,WAAW,CACtB,OAA4B,EAC5B,QAA8B;QAE9B,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAClE,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,aAAa,CAAE,WAAsB;QAChD,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;IAC9D,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,aAAa,CAClB,eAAoC;QAEpC,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,eAAe,CAAA;QAChE,IAAI,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,CAAA;QAE5D,yGAAyG;QACzG,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,+BAAoB,CAAC,KAAK;gBAC7B,IAAI,GAAG,eAAe,CAAC,QAAQ,CAAA;gBAC/B,SAAS,GAAG,eAAe,CAAC,YAAY,CAAA;gBACxC,UAAU,GAAG,0BAA0B,aAAa,CAAC,IAAI,EAAE,CAAA;gBAC3D,YAAY,GAAG,aAAa,CAAC,OAAO,CAAA;gBACpC,aAAa,GAAG,wBAAwB,CAAA,CAAC,sCAAsC;gBAC/E,MAAK;YACP,KAAK,+BAAoB,CAAC,WAAW;gBACnC,IAAI,GAAG,eAAe,CAAC,QAAQ,CAAA;gBAC/B,SAAS,GAAG,eAAe,CAAC,YAAY,CAAA;gBACxC,UAAU,GAAG,gCAAgC,aAAa,CAAC,IAAI,EAAE,CAAA;gBACjE,YAAY,GAAG,aAAa,CAAC,OAAO,CAAA;gBACpC,aAAa,GAAG,wBAAwB,CAAA,CAAC,sCAAsC;gBAC/E,MAAK;YACP,KAAK,+BAAoB,CAAC,SAAS;gBACjC,IAAI,GAAG,eAAe,CAAC,KAAK,CAAA;gBAC5B,SAAS,GAAG,sDAAsD,CAAA;gBAClE,UAAU,GAAG,sBAAsB,aAAa,CAAC,IAAI,EAAE,CAAA;gBACvD,YAAY,GAAG,aAAa,CAAC,OAAO,CAAA;gBACpC,aAAa,GAAG,wBAAwB,CAAA,CAAC,sCAAsC;gBAC/E,MAAK;YACP,KAAK,+BAAoB,CAAC,SAAS;gBACjC,IAAI,GAAG,eAAe,CAAC,WAAW,CAAA;gBAClC,SAAS,GAAG,sDAAsD,CAAA;gBAClE,UAAU,GAAG,sBAAsB,aAAa,CAAC,IAAI,EAAE,CAAA;gBACvD,YAAY,GAAG,aAAa,CAAC,OAAO,CAAA;gBACpC,aAAa,GAAG,wBAAwB,CAAA,CAAC,sCAAsC;gBAC/E,MAAK;YACP,KAAK,+BAAoB,CAAC,UAAU;gBAClC,IAAI,GAAG,GAAG,eAAe,CAAC,SAAS,IAAI,eAAe,CAAC,QAAQ,EAAE,CAAA;gBACjE,SAAS,GAAG,eAAe,CAAC,YAAY,CAAA;gBACxC,UAAU,GAAG,8BAA8B,aAAa,CAAC,IAAI,EAAE,CAAA;gBAC/D,YAAY,GAAG,aAAa,CAAC,OAAO,CAAA;gBACpC,aAAa,GAAG,uBAAuB,CAAA,CAAC,sCAAsC;gBAC9E,MAAK;YACP,KAAK,+BAAoB,CAAC,UAAU;gBAClC,IAAI,GAAG,eAAe,CAAC,IAAI,CAAA;gBAC3B,SAAS,GAAG,eAAe,CAAC,IAAI,CAAA;gBAChC,UAAU,GAAG,uBAAuB,aAAa,CAAC,IAAI,EAAE,CAAA;gBACxD,YAAY,GAAG,aAAa,CAAC,OAAO,CAAA;gBACpC,aAAa,GAAG,4CAA4C,CAAA,CAAC,iCAAiC;gBAC9F,MAAK;YACP,KAAK,+BAAoB,CAAC,QAAQ;gBAChC,IAAI,GAAG,eAAe,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,CAAA;gBACrE,MAAK;YACP,KAAK,+BAAoB,CAAC,MAAM;gBAC9B,IAAI,GAAG,QAAQ,CAAA;gBACf,SAAS,GAAG,sDAAsD,CAAA;gBAClE,UAAU;oBACR,+DAA+D,CAAA;gBACjE,YAAY,GAAG,sDAAsD,CAAA;gBACrE,aAAa,GAAG,iDAAiD,CAAA,CAAC,iCAAiC;gBACnG,MAAK;YACP,KAAK,+BAAoB,CAAC,IAAI;gBAC5B,IAAI,GAAG,KAAK,CAAA;gBACZ,SAAS,GAAG,sDAAsD,CAAA;gBAClE,UAAU,GAAG,qDAAqD,CAAA;gBAClE,YAAY,GAAG,sDAAsD,CAAA;gBACrE,aAAa,GAAG,+CAA+C,CAAA,CAAC,iCAAiC;gBACjG,MAAK;YACP,OAAO,CAAC,CAAC,CAAC;gBACR,MAAM,MAAM,GAAG,cAAc,CAAC,yBAAyB,CACrD,IAAI,EACJ,eAAe,EACf,aAAa,CACd,CAAA;gBACD,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;gBAClB,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;gBAC5B,UAAU,GAAG,MAAM,CAAC,UAAU,CAAA;gBAC9B,YAAY,GAAG,MAAM,CAAC,YAAY,CAAA;gBAClC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAA;gBACpC,MAAK;YACP,CAAC;QACH,CAAC;QAED,OAAO;YACL,IAAI;YACJ,SAAS;YACT,cAAc,EACZ,eAAe,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gBAChC,CAAC,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;gBAClD,CAAC,CAAC,EAAE;YACR,WAAW,EAAE,eAAe,CAAC,OAAO;YACpC,YAAY;YACZ,UAAU;YACV,aAAa;SACd,CAAA;IACH,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,QAAQ,CAAE,KAAU;QACjC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,CAAA;IAC9D,CAAC;IAED;;;OAGG;IACK,MAAM,CAAC,yBAAyB,CACtC,IAAY,EACZ,eAAoC,EACpC,aAAkB;QAQlB,qDAAqD;QACrD,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,CAAA;QAC3C,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAA;QACzC,MAAM,QAAQ,GACZ,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACrE,CAAC,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE;YAC5B,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAClC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBACjC,CAAC,CAAC,QAAQ;oBACV,CAAC,CAAC,SAAS,CAAA;QAEnB,MAAM,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC;YACxD,CAAC,CAAC,eAAe,CAAC,IAAI;YACtB,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC;gBACjD,CAAC,CAAC,eAAe,CAAC,QAAQ;gBAC1B,CAAC,CAAC,CAAC,QAAQ;oBACT,CAAC,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC;wBAC7C,CAAC,CAAC,eAAe,CAAC,KAAK;wBACvB,CAAC,CAAC,0BAAe,CAAC,IAAI,CAAC,CAAC,CAAA;QAEhC,sDAAsD;QACtD,MAAM,SAAS,GAAG,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,YAAY,CAAC;YACrE,CAAC,CAAC,eAAe,CAAC,YAAY;YAC9B,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC;gBAC/C,CAAC,CAAC,eAAe,CAAC,MAAM;gBACxB,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC;oBAC7C,CAAC,CAAC,eAAe,CAAC,IAAI;oBACtB,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC;wBAC9C,CAAC,CAAC,eAAe,CAAC,KAAK;wBACvB,CAAC,CAAC,0BAAe,CAAC,SAAS,CAAA;QAEnC,6BAA6B;QAC7B,MAAM,UAAU,GAAG,cAAc,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC;YAC7D,CAAC,CAAC,GAAG,IAAI,iBAAiB,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;YACtD,CAAC,CAAC,0BAAe,CAAC,UAAU,CAAA;QAE9B,MAAM,YAAY,GAAG,cAAc,CAAC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;YAClE,CAAC,CAAC,aAAa,CAAC,OAAO;YACvB,CAAC,CAAC,0BAAe,CAAC,YAAY,CAAA;QAChC,MAAM,aAAa,GAAG,0BAAe,CAAC,aAAa,CAAA;QAEnD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,CAAA;IACrE,CAAC;CACF;AAhlBD,wCAglBC"}