@bsv/sdk 1.6.24 → 1.6.26

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 (29) hide show
  1. package/dist/cjs/package.json +1 -1
  2. package/dist/cjs/src/identity/ContactsManager.js +334 -0
  3. package/dist/cjs/src/identity/ContactsManager.js.map +1 -0
  4. package/dist/cjs/src/identity/IdentityClient.js +26 -0
  5. package/dist/cjs/src/identity/IdentityClient.js.map +1 -1
  6. package/dist/cjs/src/transaction/Transaction.js +3 -0
  7. package/dist/cjs/src/transaction/Transaction.js.map +1 -1
  8. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  9. package/dist/esm/src/identity/ContactsManager.js +329 -0
  10. package/dist/esm/src/identity/ContactsManager.js.map +1 -0
  11. package/dist/esm/src/identity/IdentityClient.js +27 -0
  12. package/dist/esm/src/identity/IdentityClient.js.map +1 -1
  13. package/dist/esm/src/transaction/Transaction.js +3 -0
  14. package/dist/esm/src/transaction/Transaction.js.map +1 -1
  15. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  16. package/dist/types/src/identity/ContactsManager.d.ts +30 -0
  17. package/dist/types/src/identity/ContactsManager.d.ts.map +1 -0
  18. package/dist/types/src/identity/IdentityClient.d.ts +21 -1
  19. package/dist/types/src/identity/IdentityClient.d.ts.map +1 -1
  20. package/dist/types/src/transaction/Transaction.d.ts.map +1 -1
  21. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  22. package/dist/umd/bundle.js +3 -3
  23. package/dist/umd/bundle.js.map +1 -1
  24. package/docs/reference/identity.md +144 -4
  25. package/package.json +1 -1
  26. package/src/identity/ContactsManager.ts +372 -0
  27. package/src/identity/IdentityClient.ts +31 -0
  28. package/src/identity/__tests/IdentityClient.test.ts +360 -2
  29. package/src/transaction/Transaction.ts +2 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bsv/sdk",
3
- "version": "1.6.24",
3
+ "version": "1.6.26",
4
4
  "type": "commonjs",
5
5
  "description": "BSV Blockchain Software Development Kit",
6
6
  "files": [
@@ -0,0 +1,334 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ContactsManager = void 0;
4
+ const index_js_1 = require("../wallet/index.js");
5
+ const index_js_2 = require("../primitives/index.js");
6
+ const index_js_3 = require("../script/index.js");
7
+ const index_js_4 = require("../transaction/index.js");
8
+ const CONTACT_PROTOCOL_ID = [2, 'contact'];
9
+ // In-memory cache for cross-platform compatibility
10
+ class MemoryCache {
11
+ constructor() {
12
+ this.cache = new Map();
13
+ }
14
+ getItem(key) {
15
+ return this.cache.get(key) ?? null;
16
+ }
17
+ setItem(key, value) {
18
+ this.cache.set(key, value);
19
+ }
20
+ removeItem(key) {
21
+ this.cache.delete(key);
22
+ }
23
+ clear() {
24
+ this.cache.clear();
25
+ }
26
+ }
27
+ class ContactsManager {
28
+ constructor(wallet) {
29
+ this.cache = new MemoryCache();
30
+ this.CONTACTS_CACHE_KEY = 'metanet-contacts';
31
+ this.wallet = wallet ?? new index_js_1.WalletClient();
32
+ }
33
+ /**
34
+ * Load all records from the contacts basket
35
+ * @param identityKey Optional specific identity key to fetch
36
+ * @param forceRefresh Whether to force a check for new contact data
37
+ * @returns A promise that resolves with an array of contacts
38
+ */
39
+ async getContacts(identityKey, forceRefresh = false) {
40
+ // Check in-memory cache first unless forcing refresh
41
+ if (!forceRefresh) {
42
+ const cached = this.cache.getItem(this.CONTACTS_CACHE_KEY);
43
+ if (cached != null && cached !== '') {
44
+ try {
45
+ const cachedContacts = JSON.parse(cached);
46
+ return identityKey != null
47
+ ? cachedContacts.filter(c => c.identityKey === identityKey)
48
+ : cachedContacts;
49
+ }
50
+ catch (e) {
51
+ console.warn('Invalid cached contacts JSON; will reload from chain', e);
52
+ }
53
+ }
54
+ }
55
+ const tags = [];
56
+ if (identityKey != null) {
57
+ // Hash the identity key to use as a tag for quick lookup
58
+ const { hmac: hashedIdentityKey } = await this.wallet.createHmac({
59
+ protocolID: CONTACT_PROTOCOL_ID,
60
+ keyID: identityKey,
61
+ counterparty: 'self',
62
+ data: index_js_2.Utils.toArray(identityKey, 'utf8')
63
+ });
64
+ tags.push(`identityKey ${index_js_2.Utils.toHex(hashedIdentityKey)}`);
65
+ }
66
+ // Get all contact outputs from the contacts basket
67
+ const outputs = await this.wallet.listOutputs({
68
+ basket: 'contacts',
69
+ include: 'entire transactions',
70
+ includeCustomInstructions: true,
71
+ tags
72
+ });
73
+ if (outputs.outputs == null || outputs.outputs.length === 0) {
74
+ this.cache.setItem(this.CONTACTS_CACHE_KEY, JSON.stringify([]));
75
+ return [];
76
+ }
77
+ const contacts = [];
78
+ // Process each contact output
79
+ for (const output of outputs.outputs) {
80
+ try {
81
+ const [txid, outputIndex] = output.outpoint.split('.');
82
+ const tx = index_js_4.Transaction.fromBEEF(outputs.BEEF, txid);
83
+ const lockingScript = tx.outputs[Number(outputIndex)].lockingScript;
84
+ // Decode the PushDrop data
85
+ const decoded = index_js_3.PushDrop.decode(lockingScript);
86
+ if (output.customInstructions == null)
87
+ continue;
88
+ const keyID = JSON.parse(output.customInstructions).keyID;
89
+ // Decrypt the contact data
90
+ const { plaintext } = await this.wallet.decrypt({
91
+ ciphertext: decoded.fields[0],
92
+ protocolID: CONTACT_PROTOCOL_ID,
93
+ keyID,
94
+ counterparty: 'self'
95
+ });
96
+ // Parse the contact data
97
+ const contactData = JSON.parse(index_js_2.Utils.toUTF8(plaintext));
98
+ contacts.push(contactData);
99
+ }
100
+ catch (error) {
101
+ console.warn('ContactsManager: Failed to decode contact output:', error);
102
+ // Skip this contact and continue with others
103
+ }
104
+ }
105
+ // Cache the loaded contacts
106
+ this.cache.setItem(this.CONTACTS_CACHE_KEY, JSON.stringify(contacts));
107
+ const filteredContacts = identityKey != null
108
+ ? contacts.filter(c => c.identityKey === identityKey)
109
+ : contacts;
110
+ return filteredContacts;
111
+ }
112
+ /**
113
+ * Save or update a Metanet contact
114
+ * @param contact The displayable identity information for the contact
115
+ * @param metadata Optional metadata to store with the contact (ex. notes, aliases, etc)
116
+ */
117
+ async saveContact(contact, metadata) {
118
+ // Get current contacts from cache or blockchain
119
+ const cached = this.cache.getItem(this.CONTACTS_CACHE_KEY);
120
+ let contacts;
121
+ if (cached != null && cached !== '') {
122
+ contacts = JSON.parse(cached);
123
+ }
124
+ else {
125
+ // If cache is empty, get current data from blockchain
126
+ contacts = await this.getContacts();
127
+ }
128
+ const existingIndex = contacts.findIndex(c => c.identityKey === contact.identityKey);
129
+ const contactToStore = {
130
+ ...contact,
131
+ metadata
132
+ };
133
+ if (existingIndex >= 0) {
134
+ contacts[existingIndex] = contactToStore;
135
+ }
136
+ else {
137
+ contacts.push(contactToStore);
138
+ }
139
+ const { hmac: hashedIdentityKey } = await this.wallet.createHmac({
140
+ protocolID: CONTACT_PROTOCOL_ID,
141
+ keyID: contact.identityKey,
142
+ counterparty: 'self',
143
+ data: index_js_2.Utils.toArray(contact.identityKey, 'utf8')
144
+ });
145
+ // Check if this contact already exists (to update it)
146
+ const outputs = await this.wallet.listOutputs({
147
+ basket: 'contacts',
148
+ include: 'entire transactions',
149
+ includeCustomInstructions: true,
150
+ tags: [`identityKey ${index_js_2.Utils.toHex(hashedIdentityKey)}`]
151
+ });
152
+ let existingOutput = null;
153
+ let keyID = index_js_2.Utils.toBase64((0, index_js_2.Random)(32));
154
+ if (outputs.outputs != null) {
155
+ // Find output by trying to decrypt and checking identityKey in payload
156
+ for (const output of outputs.outputs) {
157
+ try {
158
+ const [txid, outputIndex] = output.outpoint.split('.');
159
+ const tx = index_js_4.Transaction.fromBEEF(outputs.BEEF, txid);
160
+ const decoded = index_js_3.PushDrop.decode(tx.outputs[Number(outputIndex)].lockingScript);
161
+ if (output.customInstructions == null)
162
+ continue;
163
+ keyID = JSON.parse(output.customInstructions).keyID;
164
+ const { plaintext } = await this.wallet.decrypt({
165
+ ciphertext: decoded.fields[0],
166
+ protocolID: CONTACT_PROTOCOL_ID,
167
+ keyID,
168
+ counterparty: 'self'
169
+ });
170
+ const storedContact = JSON.parse(index_js_2.Utils.toUTF8(plaintext));
171
+ if (storedContact.identityKey === contact.identityKey) {
172
+ // Found the right output
173
+ existingOutput = output;
174
+ break;
175
+ }
176
+ }
177
+ catch (e) {
178
+ // Skip malformed or undecryptable outputs
179
+ }
180
+ }
181
+ }
182
+ // Encrypt the contact data directly
183
+ const contactWithMetadata = {
184
+ ...contact,
185
+ metadata
186
+ };
187
+ const { ciphertext } = await this.wallet.encrypt({
188
+ plaintext: index_js_2.Utils.toArray(JSON.stringify(contactWithMetadata), 'utf8'),
189
+ protocolID: CONTACT_PROTOCOL_ID,
190
+ keyID,
191
+ counterparty: 'self'
192
+ });
193
+ // Create locking script for the new contact token
194
+ const lockingScript = await new index_js_3.PushDrop(this.wallet).lock([ciphertext], CONTACT_PROTOCOL_ID, keyID, 'self');
195
+ if (existingOutput != null) {
196
+ // Update existing contact by spending its output
197
+ const [txid, outputIndex] = String(existingOutput.outpoint).split('.');
198
+ const prevOutpoint = `${txid}.${outputIndex}`;
199
+ const pushdrop = new index_js_3.PushDrop(this.wallet);
200
+ const { signableTransaction } = await this.wallet.createAction({
201
+ description: 'Update Contact',
202
+ inputBEEF: outputs.BEEF,
203
+ inputs: [{
204
+ outpoint: prevOutpoint,
205
+ unlockingScriptLength: 74,
206
+ inputDescription: 'Spend previous contact output'
207
+ }],
208
+ outputs: [{
209
+ basket: 'contacts',
210
+ satoshis: 1,
211
+ lockingScript: lockingScript.toHex(),
212
+ outputDescription: `Updated Contact: ${contact.name ?? contact.identityKey.slice(0, 10)}`,
213
+ tags: [`identityKey ${index_js_2.Utils.toHex(hashedIdentityKey)}`],
214
+ customInstructions: JSON.stringify({ keyID })
215
+ }],
216
+ options: { acceptDelayedBroadcast: false, randomizeOutputs: false } // TODO: Support custom config as needed.
217
+ });
218
+ if (signableTransaction == null)
219
+ throw new Error('Unable to update contact');
220
+ const unlocker = pushdrop.unlock(CONTACT_PROTOCOL_ID, keyID, 'self');
221
+ const unlockingScript = await unlocker.sign(index_js_4.Transaction.fromBEEF(signableTransaction.tx), 0);
222
+ const { tx } = await this.wallet.signAction({
223
+ reference: signableTransaction.reference,
224
+ spends: { 0: { unlockingScript: unlockingScript.toHex() } }
225
+ });
226
+ if (tx == null)
227
+ throw new Error('Failed to update contact output');
228
+ }
229
+ else {
230
+ // Create new contact output
231
+ const { tx } = await this.wallet.createAction({
232
+ description: 'Add Contact',
233
+ outputs: [{
234
+ basket: 'contacts',
235
+ satoshis: 1,
236
+ lockingScript: lockingScript.toHex(),
237
+ outputDescription: `Contact: ${contact.name ?? contact.identityKey.slice(0, 10)}`,
238
+ tags: [`identityKey ${index_js_2.Utils.toHex(hashedIdentityKey)}`],
239
+ customInstructions: JSON.stringify({ keyID })
240
+ }],
241
+ options: { acceptDelayedBroadcast: false, randomizeOutputs: false } // TODO: Support custom config as needed.
242
+ });
243
+ if (tx == null)
244
+ throw new Error('Failed to create contact output');
245
+ }
246
+ this.cache.setItem(this.CONTACTS_CACHE_KEY, JSON.stringify(contacts));
247
+ }
248
+ /**
249
+ * Remove a contact from the contacts basket
250
+ * @param identityKey The identity key of the contact to remove
251
+ */
252
+ async removeContact(identityKey) {
253
+ // Update in-memory cache
254
+ const cached = this.cache.getItem(this.CONTACTS_CACHE_KEY);
255
+ if (cached != null && cached !== '') {
256
+ try {
257
+ const contacts = JSON.parse(cached);
258
+ const filteredContacts = contacts.filter(c => c.identityKey !== identityKey);
259
+ this.cache.setItem(this.CONTACTS_CACHE_KEY, JSON.stringify(filteredContacts));
260
+ }
261
+ catch (e) {
262
+ console.warn('Failed to update cache after contact removal:', e);
263
+ }
264
+ }
265
+ // Hash the identity key to use as a tag for quick lookup
266
+ const tags = [];
267
+ const { hmac: hashedIdentityKey } = await this.wallet.createHmac({
268
+ protocolID: CONTACT_PROTOCOL_ID,
269
+ keyID: identityKey,
270
+ counterparty: 'self',
271
+ data: index_js_2.Utils.toArray(identityKey, 'utf8')
272
+ });
273
+ tags.push(`identityKey ${index_js_2.Utils.toHex(hashedIdentityKey)}`);
274
+ // Find and spend the contact's output
275
+ const outputs = await this.wallet.listOutputs({
276
+ basket: 'contacts',
277
+ include: 'entire transactions',
278
+ includeCustomInstructions: true,
279
+ tags
280
+ });
281
+ if (outputs.outputs == null)
282
+ return;
283
+ // Find the output for this specific contact by decrypting and checking identityKey
284
+ for (const output of outputs.outputs) {
285
+ try {
286
+ const [txid, outputIndex] = String(output.outpoint).split('.');
287
+ const tx = index_js_4.Transaction.fromBEEF(outputs.BEEF, txid);
288
+ const decoded = index_js_3.PushDrop.decode(tx.outputs[Number(outputIndex)].lockingScript);
289
+ if (output.customInstructions == null)
290
+ continue;
291
+ const keyID = JSON.parse(output.customInstructions).keyID;
292
+ const { plaintext } = await this.wallet.decrypt({
293
+ ciphertext: decoded.fields[0],
294
+ protocolID: CONTACT_PROTOCOL_ID,
295
+ keyID,
296
+ counterparty: 'self'
297
+ });
298
+ const storedContact = JSON.parse(index_js_2.Utils.toUTF8(plaintext));
299
+ if (storedContact.identityKey === identityKey) {
300
+ // Found the contact's output, spend it without creating a new one
301
+ const prevOutpoint = `${txid}.${outputIndex}`;
302
+ const pushdrop = new index_js_3.PushDrop(this.wallet);
303
+ const { signableTransaction } = await this.wallet.createAction({
304
+ description: 'Delete Contact',
305
+ inputBEEF: outputs.BEEF,
306
+ inputs: [{
307
+ outpoint: prevOutpoint,
308
+ unlockingScriptLength: 74,
309
+ inputDescription: 'Spend contact output to delete'
310
+ }],
311
+ outputs: [],
312
+ options: { acceptDelayedBroadcast: false, randomizeOutputs: false } // TODO: Support custom config as needed.
313
+ });
314
+ if (signableTransaction == null)
315
+ throw new Error('Unable to delete contact');
316
+ const unlocker = pushdrop.unlock(CONTACT_PROTOCOL_ID, keyID, 'self');
317
+ const unlockingScript = await unlocker.sign(index_js_4.Transaction.fromBEEF(signableTransaction.tx), 0);
318
+ const { tx: deleteTx } = await this.wallet.signAction({
319
+ reference: signableTransaction.reference,
320
+ spends: { 0: { unlockingScript: unlockingScript.toHex() } }
321
+ });
322
+ if (deleteTx == null)
323
+ throw new Error('Failed to delete contact output');
324
+ return;
325
+ }
326
+ }
327
+ catch (e) {
328
+ // Skip malformed or undecryptable outputs
329
+ }
330
+ }
331
+ }
332
+ }
333
+ exports.ContactsManager = ContactsManager;
334
+ //# sourceMappingURL=ContactsManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContactsManager.js","sourceRoot":"","sources":["../../../../src/identity/ContactsManager.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ const Certificate_js_1 = __importDefault(require("../auth/certificates/Certifica
12
12
  const index_js_5 = require("../script/index.js");
13
13
  const index_js_6 = require("../primitives/index.js");
14
14
  const index_js_7 = require("../overlay-tools/index.js");
15
+ const ContactsManager_js_1 = require("./ContactsManager.js");
15
16
  /**
16
17
  * IdentityClient lets you discover who others are, and let the world know who you are.
17
18
  */
@@ -21,6 +22,7 @@ class IdentityClient {
21
22
  this.originator = originator;
22
23
  this.wallet = wallet ?? new index_js_3.WalletClient();
23
24
  this.authClient = new index_js_1.AuthFetch(this.wallet);
25
+ this.contactsManager = new ContactsManager_js_1.ContactsManager(this.wallet);
24
26
  }
25
27
  /**
26
28
  * Publicly reveals selected fields from a given certificate by creating a publicly verifiable certificate.
@@ -166,6 +168,30 @@ class IdentityClient {
166
168
  // const broadcaster = new SHIPBroadcaster(['tm_identity'])
167
169
  // return await broadcaster.broadcast(Transaction.fromAtomicBEEF(signedTx as number[]))
168
170
  // }
171
+ /**
172
+ * Load all records from the contacts basket
173
+ * @param identityKey Optional specific identity key to fetch
174
+ * @param forceRefresh Whether to force a check for new contact data
175
+ * @returns A promise that resolves with an array of contacts
176
+ */
177
+ async getContacts(identityKey, forceRefresh = false) {
178
+ return await this.contactsManager.getContacts(identityKey, forceRefresh);
179
+ }
180
+ /**
181
+ * Save or update a Metanet contact
182
+ * @param contact The displayable identity information for the contact
183
+ * @param metadata Optional metadata to store with the contact (ex. notes, aliases, etc)
184
+ */
185
+ async saveContact(contact, metadata) {
186
+ return await this.contactsManager.saveContact(contact, metadata);
187
+ }
188
+ /**
189
+ * Remove a contact from the contacts basket
190
+ * @param identityKey The identity key of the contact to remove
191
+ */
192
+ async removeContact(identityKey) {
193
+ return await this.contactsManager.removeContact(identityKey);
194
+ }
169
195
  /**
170
196
  * Parse out identity and certifier attributes to display from an IdentityCertificate
171
197
  * @param identityToParse - The Identity Certificate to parse
@@ -1 +1 @@
1
- {"version":3,"file":"IdentityClient.js","sourceRoot":"","sources":["../../../../src/identity/IdentityClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IdentityClient.js","sourceRoot":"","sources":["../../../../src/identity/IdentityClient.ts"],"names":[],"mappings":"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"}
@@ -698,6 +698,9 @@ class Transaction {
698
698
  verifiedTxids.add(txid);
699
699
  continue;
700
700
  }
701
+ else {
702
+ throw new Error(`Invalid merkle path for transaction ${txid}`);
703
+ }
701
704
  }
702
705
  }
703
706
  // Verify fee if feeModel is provided
@@ -1 +1 @@
1
- {"version":3,"file":"Transaction.js","sourceRoot":"","sources":["../../../../src/transaction/Transaction.ts"],"names":[],"mappings":";;;;;AAGA,sFAA0D;AAC1D,kFAAsD;AACtD,qDAAuE;AACvE,mDAA+C;AAE/C,iGAAqE;AAGrE,kEAAsC;AAEtC,gFAAyE;AACzE,mFAA4E;AAC5E,uCAAyC;AACzC,4EAAgD;AAEhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAqB,WAAW;IAS9B,oEAAoE;IAC5D,MAAM,CAAC,eAAe,CAC5B,GAA4C,EAC5C,YAMC,EACD,KAAmB;QAEnB,IAAI,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,EAAE;YACrC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YACjC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gBAC5B,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;aAC5D;YACD,GAAG,CAAC,EAAE,CAAC,UAAU,GAAG,IAAI,CAAA;SACzB;aAAM;YACL,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE;gBACjC,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE;oBAClC,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;iBACjD;gBACD,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;gBAChD,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;oBACjC,MAAM,IAAI,KAAK,CACb,sCAAsC,KAAK,CAAC,UAAU,IAAI,WAAW,EAAE,CACxE,CAAA;iBACF;gBACD,KAAK,CAAC,iBAAiB,GAAG,SAAS,CAAC,EAAE,CAAA;gBACtC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,CAAC,CAAA;aACrD;SACF;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,QAAQ,CAAE,IAAc,EAAE,IAAa;QAC5C,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAClD,OAAO,EAAE,CAAA;IACX,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CAAE,IAAc;QACnC,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAC3D,IAAI,IAAI,KAAK,CAAC,CAAC,UAAU,EAAE;YACzB,IAAI,CAAC,CAAC,UAAU,IAAI,IAAI,EAAE;gBACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC,UAAU,0BAA0B,CAAC,CAAA;aACjF;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;aAClF;SACF;QACD,OAAO,EAAE,CAAA;IACX,CAAC;IAEO,MAAM,CAAC,WAAW,CAAE,IAAc,EAAE,IAAa;QACvD,MAAM,CAAC,GAAG,cAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAC/B,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;SAC/D;QACD,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAC9D,MAAM,EAAE,GAAG,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAA;QAC1C,IAAI,EAAE,IAAI,IAAI,EAAE;YACd,IAAI,IAAI,IAAI,IAAI,EAAE;gBAChB,MAAM,IAAI,KAAK,CAAC,yBAAyB,MAAM,0BAA0B,CAAC,CAAA;aAC3E;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;aACtE;SACF;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IACtC,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAAE,EAAY;QACzB,MAAM,EAAE,GAAG,IAAI,iBAAM,CAAC,EAAE,CAAC,CAAA;QACzB,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,EAAE,CAAA;QACjC,IAAI,IAAA,gBAAK,EAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,cAAc,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;SAAE;QAClF,MAAM,YAAY,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;QACvC,MAAM,MAAM,GAAuB,EAAE,CAAA;QACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE;YACrC,MAAM,UAAU,GAAG,IAAA,gBAAK,EAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;YAC5C,MAAM,iBAAiB,GAAG,EAAE,CAAC,YAAY,EAAE,CAAA;YAC3C,MAAM,YAAY,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;YACvC,MAAM,SAAS,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACvC,MAAM,eAAe,GAAG,4BAAe,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;YAC7D,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,EAAE,CAAA;YAClC,MAAM,QAAQ,GAAG,EAAE,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,CAAA;YAC/C,MAAM,mBAAmB,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;YAC9C,MAAM,gBAAgB,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;YACrD,MAAM,aAAa,GAAG,0BAAa,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAA;YAChE,MAAM,iBAAiB,GAAG,IAAI,WAAW,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;YACvE,iBAAiB,CAAC,OAAO,GAAG,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACnE,iBAAiB,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG;gBAC7C,QAAQ;gBACR,aAAa;aACd,CAAA;YACD,MAAM,CAAC,IAAI,CAAC;gBACV,iBAAiB;gBACjB,UAAU;gBACV,iBAAiB;gBACjB,eAAe;gBACf,QAAQ;aACT,CAAC,CAAA;SACH;QACD,MAAM,aAAa,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;QACxC,MAAM,OAAO,GAAwB,EAAE,CAAA;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,EAAE,CAAC,EAAE,EAAE;YACtC,MAAM,QAAQ,GAAG,EAAE,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,CAAA;YAC/C,MAAM,YAAY,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;YACvC,MAAM,SAAS,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACvC,MAAM,aAAa,GAAG,0BAAa,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;YACzD,OAAO,CAAC,IAAI,CAAC;gBACX,QAAQ;gBACR,aAAa;aACd,CAAC,CAAA;SACH;QACD,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,EAAE,CAAA;QAClC,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IAC5D,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,kBAAkB,CAAE,GAAa;QAItC,MAAM,EAAE,GAAG,IAAI,iBAAM,CAAC,GAAG,CAAC,CAAA;QAC1B,MAAM,MAAM,GAA2D,EAAE,CAAA;QACzE,MAAM,OAAO,GAA4D,EAAE,CAAA;QAE3E,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA,CAAC,UAAU;QACtB,MAAM,YAAY,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE;YACrC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAA,CAAC,gBAAgB;YAC7B,MAAM,YAAY,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;YACvC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAA;YAC7D,EAAE,CAAC,GAAG,IAAI,YAAY,GAAG,CAAC,CAAA,CAAC,sBAAsB;SAClD;QACD,MAAM,aAAa,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;QACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,EAAE,CAAC,EAAE,EAAE;YACtC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA,CAAC,WAAW;YACvB,MAAM,YAAY,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAA;YAC/D,EAAE,CAAC,GAAG,IAAI,YAAY,CAAA;SACvB;QACD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;IAC5B,CAAC;IAED,MAAM,CAAC,UAAU,CAAE,EAAU;QAC3B,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,EAAE,CAAA;QACjC,MAAM,YAAY,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;QACvC,MAAM,MAAM,GAAuB,EAAE,CAAA;QACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE;YACrC,MAAM,UAAU,GAAG,IAAA,gBAAK,EAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;YAC5C,MAAM,iBAAiB,GAAG,EAAE,CAAC,YAAY,EAAE,CAAA;YAC3C,MAAM,YAAY,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;YACvC,MAAM,SAAS,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACvC,MAAM,eAAe,GAAG,4BAAe,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;YAC7D,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,EAAE,CAAA;YAClC,MAAM,CAAC,IAAI,CAAC;gBACV,UAAU;gBACV,iBAAiB;gBACjB,eAAe;gBACf,QAAQ;aACT,CAAC,CAAA;SACH;QACD,MAAM,aAAa,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;QACxC,MAAM,OAAO,GAAwB,EAAE,CAAA;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,EAAE,CAAC,EAAE,EAAE;YACtC,MAAM,QAAQ,GAAG,EAAE,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,CAAA;YAC/C,MAAM,YAAY,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;YACvC,MAAM,SAAS,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACvC,MAAM,aAAa,GAAG,0BAAa,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;YACzD,OAAO,CAAC,IAAI,CAAC;gBACX,QAAQ;gBACR,aAAa;aACd,CAAC,CAAA;SACH;QACD,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,EAAE,CAAA;QAClC,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IAC5D,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,UAAU,CAAE,GAAa;QAC9B,MAAM,EAAE,GAAG,IAAI,iBAAM,CAAC,GAAG,CAAC,CAAA;QAC1B,OAAO,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IACnC,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,CAAE,GAAW;QACzB,OAAO,WAAW,CAAC,UAAU,CAAC,IAAA,kBAAO,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAA;IACpD,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CAAE,GAAW;QAC3B,OAAO,WAAW,CAAC,MAAM,CAAC,IAAA,kBAAO,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAA;IAChD,CAAC;IAED;;;;;;;;;;OAUG;IACH,MAAM,CAAC,WAAW,CAAE,GAAW,EAAE,IAAa;QAC5C,OAAO,WAAW,CAAC,QAAQ,CAAC,IAAA,kBAAO,EAAC,GAAG,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,CAAA;IACxD,CAAC;IAED,YACE,UAAkB,CAAC,EACnB,SAA6B,EAAE,EAC/B,UAA+B,EAAE,EACjC,WAAmB,CAAC,EACpB,WAAgC,IAAI,GAAG,EAAE,EACzC,UAAuB;QAEvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;IAC9B,CAAC;IAED;;;;;OAKG;IACH,QAAQ,CAAE,KAAuB;QAC/B,IACE,OAAO,KAAK,CAAC,UAAU,KAAK,WAAW;YACvC,OAAO,KAAK,CAAC,iBAAiB,KAAK,WAAW,EAC9C;YACA,MAAM,IAAI,KAAK,CACb,4IAA4I,CAC7I,CAAA;SACF;QACD,qFAAqF;QACrF,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,WAAW,EAAE;YACzC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAA;SAC5B;QACD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAA;QAC3B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAE,MAAyB;QAClC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAA;QAC3B,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE;YAC1B,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,WAAW,EAAE;gBAC1C,MAAM,IAAI,KAAK,CACb,+DAA+D,CAChE,CAAA;aACF;YACD,IAAI,MAAM,CAAC,QAAQ,GAAG,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;aAAE;SAC5F;QACD,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;QAClF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC3B,CAAC;IAED;;;;;;OAMG;IACH,cAAc,CAAE,OAA0B,EAAE,QAAiB;QAC3D,MAAM,aAAa,GAAG,IAAI,kBAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC/C,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;YACnC,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;SACvD;QACD,IAAI,CAAC,SAAS,CAAC;YACb,aAAa;YACb,QAAQ;SACT,CAAC,CAAA;IACJ,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAE,QAA6B;QAC3C,IAAI,CAAC,QAAQ,GAAG;YACd,GAAG,IAAI,CAAC,QAAQ;YAChB,GAAG,QAAQ;SACZ,CAAA;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,GAAG,CACP,aAAgC,IAAI,gCAAmB,CAAC,CAAC,CAAC,EAC1D,qBAAyC,OAAO;QAEhD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAA;QAC3B,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;YAClC,MAAM,IAAI,GAAG,UAAU,CAAA;YACvB,UAAU,GAAG;gBACX,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI;aAC7B,CAAA;SACF;QACD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;QACxC,IAAI,MAAM,IAAI,CAAC,EAAE;YACf,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,IAAI,CAAC,CAAA;YACtE,OAAM;SACP;QACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;IACnD,CAAC;IAEO,eAAe,CAAE,GAAW;QAClC,IAAI,MAAM,GAAG,CAAC,CAAA;QACd,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YAC/B,IAAI,OAAO,KAAK,CAAC,iBAAiB,KAAK,QAAQ,EAAE;gBAC/C,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAA;aACF;YACD,MAAM;gBACJ,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAA;SACzE;QACD,MAAM,IAAI,GAAG,CAAA;QACb,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE;YAC9B,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE;gBACvB,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE;oBAC9B,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAA;iBACvB;aACF;SACF;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAEO,gBAAgB,CACtB,MAAc,EACd,kBAAsC;QAEtC,IAAI,iBAAiB,GAAG,CAAC,CAAA;QACzB,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC9D,IAAI,kBAAkB,KAAK,QAAQ,EAAE;YACnC,iBAAiB,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;SACvE;aAAM,IAAI,kBAAkB,KAAK,OAAO,EAAE;YACzC,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;SACtE;QACD,IAAI,iBAAiB,GAAG,MAAM,EAAE;YAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;YACxD,IAAI,UAAU,CAAC,QAAQ,KAAK,SAAS,EAAE;gBACrC,UAAU,CAAC,QAAQ,IAAI,MAAM,GAAG,iBAAiB,CAAA;aAClD;iBAAM;gBACL,UAAU,CAAC,QAAQ,GAAG,MAAM,GAAG,iBAAiB,CAAA;aACjD;SACF;IACH,CAAC;IAEO,sBAAsB,CAC5B,MAAc,EACd,aAAkC;QAElC,IAAI,iBAAiB,GAAG,CAAC,CAAA;QACzB,IAAI,WAAW,GAAG,MAAM,CAAA;QACxB,MAAM,cAAc,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAC1D,WAAW,IAAI,aAAa,CAAC,MAAM,CAAA;QACnC,iBAAiB,IAAI,aAAa,CAAC,MAAM,CAAA;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YACjD,MAAM,OAAO,GAAW,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,WAAW,CAAC,CAAA;YAC1D,cAAc,CAAC,CAAC,CAAC,GAAI,cAAc,CAAC,CAAC,CAAY,GAAG,OAAO,CAAA;YAC3D,iBAAiB,IAAI,OAAO,CAAA;YAC5B,WAAW,IAAI,OAAO,CAAA;SACvB;QACD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YACjC,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI;gBAAE,MAAM,CAAC,QAAQ,GAAG,cAAc,CAAC,KAAK,EAAE,CAAA;SACrE;QACD,OAAO,iBAAiB,CAAA;IAC1B,CAAC;IAEO,qBAAqB,CAC3B,MAAc,EACd,aAAkC;QAElC,IAAI,iBAAiB,GAAG,CAAC,CAAA;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;QAC3D,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE;YAC/B,iBAAiB,IAAI,SAAS,CAAA;YAC9B,GAAG,CAAC,QAAQ,GAAG,SAAS,CAAA;SACzB;QACD,OAAO,iBAAiB,CAAA;IAC1B,CAAC;IAEO,aAAa,CAAE,GAAW,EAAE,GAAW;QAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;QAC3C,OAAO,IAAI,CAAC,KAAK,CACf,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAC7D,CAAA;IACH,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,IAAI,OAAO,GAAG,CAAC,CAAA;QACf,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YAC/B,IAAI,OAAO,KAAK,CAAC,iBAAiB,KAAK,QAAQ,EAAE;gBAC/C,MAAM,IAAI,KAAK,CACb,oFAAoF,CACrF,CAAA;aACF;YACD,OAAO;gBACL,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAA;SACzE;QACD,IAAI,QAAQ,GAAG,CAAC,CAAA;QAChB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YACjC,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAA;SACjC;QACD,OAAO,OAAO,GAAG,QAAQ,CAAA;IAC3B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,UAAU,GAAG,SAAS,CAAA;QAC3B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE;YAC9B,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,WAAW,EAAE;gBACvC,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI,EAAE;oBACvB,MAAM,IAAI,KAAK,CACb,mJAAmJ,CACpJ,CAAA;iBACF;qBAAM;oBACL,MAAM,IAAI,KAAK,CACb,8GAA8G,CAC/G,CAAA;iBACF;aACF;SACF;QACD,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,GAAG,CACxC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAwC,EAAE;YACnE,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,uBAAuB,KAAK,QAAQ,EAAE;gBAC9D,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,uBAAuB,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;aACpE;iBAAM;gBACL,OAAO,MAAM,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;aACxC;QACH,CAAC,CAAC,CACH,CAAA;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAClD,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,uBAAuB,KAAK,QAAQ,EAAE;gBAC9D,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,eAAe,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;aACrD;SACF;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CACb,cAA2B,IAAA,0CAAkB,GAAE;QAE/C,OAAO,MAAM,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC;IAED;;;;OAIG;IACH,QAAQ;QACN,MAAM,MAAM,GAAG,IAAI,iBAAM,EAAE,CAAA;QAC3B,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAClC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACzC,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE;YAC3B,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,WAAW,EAAE;gBACvC,IAAI,CAAC,CAAC,iBAAiB,IAAI,IAAI,EAAE;oBAC/B,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAc,CAAC,CAAA;iBACrD;qBAAM;oBACL,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;iBAClD;aACF;iBAAM;gBACL,MAAM,CAAC,YAAY,CAAC,IAAA,kBAAO,EAAC,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAA;aAClD;YACD,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAA;YACzC,IAAI,CAAC,CAAC,eAAe,IAAI,IAAI,EAAE;gBAC7B,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;aAChD;YACD,MAAM,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAA;YAC9C,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;YACvC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACvB,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAA;SACtC;QACD,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC1C,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE;YAC5B,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAA;YACrC,MAAM,SAAS,GAAG,CAAC,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAA;YAC5C,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;YACvC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;SACxB;QACD,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACnC,OAAO,MAAM,CAAC,OAAO,EAAE,CAAA;IACzB,CAAC;IAED;;;;OAIG;IACH,IAAI;QACF,MAAM,MAAM,GAAG,IAAI,iBAAM,EAAE,CAAA;QAC3B,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAClC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;QACnC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACzC,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE;YAC3B,IAAI,OAAO,CAAC,CAAC,iBAAiB,KAAK,WAAW,EAAE;gBAC9C,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAA;aACF;YACD,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,WAAW,EAAE;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAc,CAAC,CAAA;aACrD;iBAAM;gBACL,MAAM,CAAC,KAAK,CAAC,IAAA,kBAAO,EAAC,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,OAAO,EAAc,CAAC,CAAA;aACjE;YACD,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAA;YACzC,IAAI,CAAC,CAAC,eAAe,IAAI,IAAI,EAAE;gBAC7B,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;aAChD;YACD,MAAM,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAA;YAC9C,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;YACvC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACvB,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAA;YACrC,MAAM,CAAC,aAAa,CAClB,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,QAAQ,IAAI,CAAC,CAC/D,CAAA;YACD,MAAM,gBAAgB,GACpB,CAAC,CAAC,iBAAiB,CAAC,OAAO,CACzB,CAAC,CAAC,iBAAiB,CACpB,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAA;YAC5B,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;YAC9C,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;SAC/B;QACD,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC1C,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE;YAC5B,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAA;YACrC,MAAM,SAAS,GAAG,CAAC,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAA;YAC5C,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;YACvC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;SACxB;QACD,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACnC,OAAO,MAAM,CAAC,OAAO,EAAE,CAAA;IACzB,CAAC;IAED;;;;OAIG;IACH,OAAO;QACL,OAAO,IAAA,gBAAK,EAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IAC3B,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,OAAO,IAAA,gBAAK,EAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC/B,CAAC;IAED;;;;OAIG;IACH,SAAS;QACP,OAAO,IAAA,gBAAK,EAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;IAC7B,CAAC;IAED;;;;OAIG;IACH,eAAe;QACb,OAAO,IAAA,gBAAK,EAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAA;IACnC,CAAC;IAED;;;;;OAKG;IACH,IAAI,CAAE,GAAW;QACf,IAAI,IAAI,CAAA;QACR,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,EAAE;YAC3B,IAAI,GAAG,IAAI,CAAC,UAAU,CAAA;SACvB;aAAM;YACL,IAAI,GAAG,IAAA,iBAAO,EAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;YAC/B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;SACvB;QACD,IAAI,GAAG,KAAK,KAAK,EAAE;YACjB,OAAO,IAAA,gBAAK,EAAC,IAAI,CAAC,CAAA;SACnB;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAeD;;;;;OAKG;IACH,EAAE,CAAE,GAAW;QACb,MAAM,EAAE,GAAG,CAAC,GAAI,IAAI,CAAC,IAAI,EAAe,CAAC,CAAA;QACzC,EAAE,CAAC,OAAO,EAAE,CAAA;QACZ,IAAI,GAAG,KAAK,KAAK,EAAE;YACjB,OAAO,IAAA,gBAAK,EAAC,EAAE,CAAC,CAAA;SACjB;QACD,OAAO,EAAE,CAAA;IACX,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,MAAM,CACV,eAA8C,IAAA,4CAAmB,GAAE,EACnE,QAAmB,EACnB,WAAoB;QAEpB,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAA;QACvC,MAAM,OAAO,GAAkB,CAAC,IAAI,CAAC,CAAA;QAErC,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACzB,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,EAAE,CAAA;YAC1B,MAAM,IAAI,GAAG,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;YAChC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,EAAE,IAAI,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAC1D,SAAQ;aACT;YAED,wEAAwE;YACxE,IAAI,OAAO,EAAE,EAAE,UAAU,KAAK,QAAQ,EAAE;gBACtC,IAAI,YAAY,KAAK,cAAc,EAAE;oBACnC,IAAI,IAAI,IAAI,IAAI,EAAE;wBAChB,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;qBACxB;oBACD,SAAQ;iBACT;qBAAM;oBACL,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;oBACjE,mDAAmD;oBACnD,IAAI,UAAU,EAAE;wBACd,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;wBACvB,SAAQ;qBACT;iBACF;aACF;YAED,qCAAqC;YACrC,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;gBACnC,IAAI,EAAE,KAAK,SAAS,EAAE;oBACpB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;iBAC5C;gBACD,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAA;gBAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;gBAC/B,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAA;gBAC7B,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;gBACxB,IAAI,EAAE,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE;oBAC/B,MAAM,IAAI,KAAK,CACb,+CAA+C,IAAI,kDAAkD,CACtG,CAAA;iBACF;aACF;YAED,+DAA+D;YAC/D,qDAAqD;YACrD,IAAI,UAAU,GAAG,CAAC,CAAA;YAClB,IAAI,EAAE,KAAK,SAAS,EAAE;gBACpB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;aAC5C;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACzC,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;gBAC1B,IAAI,OAAO,KAAK,CAAC,iBAAiB,KAAK,QAAQ,EAAE;oBAC/C,MAAM,IAAI,KAAK,CACb,kDAAkD,CAAC,mBAAmB,IAAI,kMAAkM,CAC7Q,CAAA;iBACF;gBACD,IAAI,OAAO,KAAK,CAAC,eAAe,KAAK,QAAQ,EAAE;oBAC7C,MAAM,IAAI,KAAK,CACb,kDAAkD,CAAC,mBAAmB,IAAI,0KAA0K,CACrP,CAAA;iBACF;gBACD,MAAM,YAAY,GAChB,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;gBAC1D,UAAU,IAAI,YAAY,CAAC,QAAQ,IAAI,CAAC,CAAA;gBAExC,MAAM,UAAU,GAAG,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAA;gBACpD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;oBAClC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;iBACtC;gBAED,MAAM,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAA;gBAC3D,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,WAAW,EAAE;oBAC3C,KAAK,CAAC,UAAU,GAAG,UAAU,CAAA;iBAC9B;gBAED,MAAM,KAAK,GAAG,IAAI,kBAAK,CAAC;oBACtB,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;oBAC1C,aAAa,EAAE,YAAY,CAAC,aAAa;oBACzC,cAAc,EAAE,YAAY,CAAC,QAAQ,IAAI,CAAC;oBAC1C,kBAAkB,EAAE,EAAE,CAAC,OAAO;oBAC9B,WAAW;oBACX,eAAe,EAAE,KAAK,CAAC,eAAe;oBACtC,aAAa,EAAE,KAAK,CAAC,QAAQ,IAAI,CAAC;oBAClC,UAAU,EAAE,CAAC;oBACb,OAAO,EAAE,EAAE,CAAC,OAAO;oBACnB,QAAQ,EAAE,EAAE,CAAC,QAAQ;oBACrB,WAAW;iBACZ,CAAC,CAAA;gBACF,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;gBAEnC,IAAI,CAAC,UAAU,EAAE;oBACf,OAAO,KAAK,CAAA;iBACb;aACF;YAED,wEAAwE;YACxE,IAAI,WAAW,GAAG,CAAC,CAAA;YACnB,KAAK,MAAM,GAAG,IAAI,EAAE,CAAC,OAAO,EAAE;gBAC5B,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE;oBACpC,MAAM,IAAI,KAAK,CACb,0EAA0E,CAC3E,CAAA;iBACF;gBACD,WAAW,IAAI,GAAG,CAAC,QAAQ,CAAA;aAC5B;YAED,IAAI,WAAW,GAAG,UAAU,EAAE;gBAC5B,OAAO,KAAK,CAAA;aACb;YAED,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;SACxB;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAE,YAAsB;QAC5B,MAAM,MAAM,GAAG,IAAI,iBAAM,EAAE,CAAA;QAC3B,MAAM,CAAC,aAAa,CAAC,iBAAO,CAAC,CAAA;QAC7B,MAAM,KAAK,GAAiB,EAAE,CAAA;QAC9B,MAAM,GAAG,GAAmD,EAAE,CAAA;QAE9D,kEAAkE;QAClE,MAAM,iBAAiB,GAAG,CAAC,EAAe,EAAQ,EAAE;YAClD,MAAM,GAAG,GAA4C,EAAE,EAAE,EAAE,CAAA;YAC3D,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC,UAAU,KAAK,QAAQ,CAAA;YAClD,IAAI,QAAQ,EAAE;gBACZ,IAAI,KAAK,GAAG,KAAK,CAAA;gBACjB,gJAAgJ;gBAChJ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACrC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE;wBAC9B,qBAAqB;wBACrB,GAAG,CAAC,SAAS,GAAG,CAAC,CAAA;wBACjB,KAAK,GAAG,IAAI,CAAA;wBACZ,MAAK;qBACN;oBACD,IAAI,EAAE,CAAC,UAAU,KAAK,IAAI,IAAI,EAAE,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE;wBAC/G,uBAAuB;wBACvB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;wBACpC,MAAM,KAAK,GAAG,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,CAAA;wBACzC,IAAI,KAAK,KAAK,KAAK,EAAE;4BACnB,oDAAoD;4BACpD,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,CAAA;4BAC/B,GAAG,CAAC,SAAS,GAAG,CAAC,CAAA;4BACjB,KAAK,GAAG,IAAI,CAAA;4BACZ,MAAK;yBACN;qBACF;iBACF;gBACD,0DAA0D;gBAC1D,IAAI,CAAC,KAAK,EAAE;oBACV,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,CAAA;oBAC5B,IAAI,EAAE,CAAC,UAAU,KAAK,IAAI,IAAI,EAAE,CAAC,UAAU,KAAK,SAAS,EAAE;wBACzD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAA;qBAC1B;iBACF;aACF;YACD,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;YAClE,IAAI,CAAC,SAAS,EAAE;gBACd,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;aACjB;YACD,IAAI,CAAC,QAAQ,EAAE;gBACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACzC,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;oBAC1B,IAAI,OAAO,KAAK,CAAC,iBAAiB,KAAK,QAAQ,EAAE;wBAC/C,iBAAiB,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;qBAC3C;yBAAM,IAAI,YAAY,KAAK,KAAK,EAAE;wBACjC,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;qBAC7D;iBACF;aACF;QACH,CAAC,CAAA;QAED,iBAAiB,CAAC,IAAI,CAAC,CAAA;QAEvB,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QACnC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE;YACrB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;SAC3B;QACD,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACjC,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE;YACnB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAA;YAC7B,IAAI,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,EAAE;gBACnC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;gBACpB,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;aACnC;iBAAM;gBACL,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;aACrB;SACF;QACD,OAAO,MAAM,CAAC,OAAO,EAAE,CAAA;IACzB,CAAC;IAED;;;;;;;;;;OAUG;IACH,YAAY,CAAE,YAAsB;QAClC,MAAM,MAAM,GAAG,IAAI,iBAAM,EAAE,CAAA;QAC3B,+BAA+B;QAC/B,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QAChC,sCAAsC;QACtC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QACzB,uBAAuB;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QAC1C,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QACtB,OAAO,MAAM,CAAC,OAAO,EAAE,CAAA;IACzB,CAAC;CACF;AAz7BD,8BAy7BC"}
1
+ {"version":3,"file":"Transaction.js","sourceRoot":"","sources":["../../../../src/transaction/Transaction.ts"],"names":[],"mappings":"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"}