mindoodb 0.0.10 → 0.0.12

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 (56) hide show
  1. package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.d.ts +1 -0
  2. package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.d.ts.map +1 -1
  3. package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.js +10 -0
  4. package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.js.map +1 -1
  5. package/dist/appendonlystores/network/HttpTransport.d.ts +1 -0
  6. package/dist/appendonlystores/network/HttpTransport.d.ts.map +1 -1
  7. package/dist/appendonlystores/network/HttpTransport.js +4 -3
  8. package/dist/appendonlystores/network/HttpTransport.js.map +1 -1
  9. package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.d.ts +34 -0
  10. package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.d.ts.map +1 -1
  11. package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.js +194 -9
  12. package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.js.map +1 -1
  13. package/dist/browser/cache/IndexedDBLocalCacheStore.d.ts +22 -0
  14. package/dist/browser/cache/IndexedDBLocalCacheStore.d.ts.map +1 -1
  15. package/dist/browser/cache/IndexedDBLocalCacheStore.js +185 -24
  16. package/dist/browser/cache/IndexedDBLocalCacheStore.js.map +1 -1
  17. package/dist/browser/index.d.ts +2 -2
  18. package/dist/browser/index.d.ts.map +1 -1
  19. package/dist/browser/index.js +3 -1
  20. package/dist/browser/index.js.map +1 -1
  21. package/dist/browser/index.mjs +2 -0
  22. package/dist/core/BaseMindooDB.d.ts +30 -0
  23. package/dist/core/BaseMindooDB.d.ts.map +1 -1
  24. package/dist/core/BaseMindooDB.js +155 -38
  25. package/dist/core/BaseMindooDB.js.map +1 -1
  26. package/dist/core/BaseMindooTenant.d.ts +0 -1
  27. package/dist/core/BaseMindooTenant.d.ts.map +1 -1
  28. package/dist/core/BaseMindooTenant.js +3 -13
  29. package/dist/core/BaseMindooTenant.js.map +1 -1
  30. package/dist/core/BaseMindooTenantDirectory.d.ts +1 -0
  31. package/dist/core/BaseMindooTenantDirectory.d.ts.map +1 -1
  32. package/dist/core/BaseMindooTenantDirectory.js +24 -8
  33. package/dist/core/BaseMindooTenantDirectory.js.map +1 -1
  34. package/dist/core/appendonlystores/AttachmentReadPlanner.d.ts.map +1 -1
  35. package/dist/core/appendonlystores/AttachmentReadPlanner.js +1 -1
  36. package/dist/core/appendonlystores/AttachmentReadPlanner.js.map +1 -1
  37. package/dist/core/types.d.ts +17 -8
  38. package/dist/core/types.d.ts.map +1 -1
  39. package/dist/core/types.js.map +1 -1
  40. package/dist/node/server/MindooDBServer.d.ts +104 -0
  41. package/dist/node/server/MindooDBServer.d.ts.map +1 -1
  42. package/dist/node/server/MindooDBServer.js +192 -32
  43. package/dist/node/server/MindooDBServer.js.map +1 -1
  44. package/dist/node/server/TenantManager.d.ts +2 -0
  45. package/dist/node/server/TenantManager.d.ts.map +1 -1
  46. package/dist/node/server/TenantManager.js +21 -12
  47. package/dist/node/server/TenantManager.js.map +1 -1
  48. package/dist/node/server/config.d.ts.map +1 -1
  49. package/dist/node/server/config.js +4 -0
  50. package/dist/node/server/config.js.map +1 -1
  51. package/dist/node/server/server.js +2 -2
  52. package/dist/node/server/server.js.map +1 -1
  53. package/dist/node/server/types.d.ts +1 -0
  54. package/dist/node/server/types.d.ts.map +1 -1
  55. package/dist/node/server/types.js.map +1 -1
  56. package/package.json +2 -1
@@ -18,6 +18,7 @@
18
18
  */
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
20
  exports.IndexedDBContentAddressedStore = void 0;
21
+ exports.readContentAddressedStoreBytes = readContentAddressedStoreBytes;
21
22
  const types_1 = require("../../core/appendonlystores/types");
22
23
  const AttachmentReadPlanner_1 = require("../../core/appendonlystores/AttachmentReadPlanner");
23
24
  const MaterializationPlanner_1 = require("../../core/appendonlystores/MaterializationPlanner");
@@ -39,6 +40,8 @@ const IDX_CONTENT_HASH = "by_contentHash";
39
40
  // Bloom cache key
40
41
  const BLOOM_CACHE_KEY = "current";
41
42
  const RECEIPT_ORDER_COUNTER_KEY = "receiptOrderCounter";
43
+ const TOTAL_CONTENT_BYTES_KEY = "total_content_bytes";
44
+ const TOTAL_METADATA_BYTES_KEY = "total_metadata_bytes";
42
45
  function qualifyIndexedDbNamespace(namespace, storeKind) {
43
46
  const separatorIndex = namespace.indexOf("-");
44
47
  if (separatorIndex === -1) {
@@ -187,6 +190,57 @@ function txToPromise(tx) {
187
190
  tx.onabort = () => reject(tx.error ?? new Error("IndexedDB transaction aborted"));
188
191
  });
189
192
  }
193
+ /**
194
+ * Returns the serialized metadata size used for approximate payload-byte
195
+ * accounting. This excludes IndexedDB structural overhead such as keys,
196
+ * indexes, and B-tree pages.
197
+ */
198
+ function getMetadataPayloadBytes(metadata) {
199
+ return JSON.stringify(metadata).length;
200
+ }
201
+ async function readNumericMetaValue(store, key) {
202
+ const record = (await reqToPromise(store.get(key)));
203
+ return typeof record?.value === "number" ? record.value : null;
204
+ }
205
+ async function writeNumericMetaValue(store, key, value) {
206
+ await reqToPromise(store.put({ key, value }));
207
+ }
208
+ async function computeStoredBytes(entriesStore, contentStore) {
209
+ let contentBytes = 0;
210
+ let metadataBytes = 0;
211
+ await new Promise((resolve, reject) => {
212
+ const request = contentStore.openCursor();
213
+ request.onsuccess = () => {
214
+ const cursor = request.result;
215
+ if (!cursor) {
216
+ resolve();
217
+ return;
218
+ }
219
+ const record = cursor.value;
220
+ contentBytes += record.data.byteLength;
221
+ cursor.continue();
222
+ };
223
+ request.onerror = () => reject(request.error);
224
+ });
225
+ await new Promise((resolve, reject) => {
226
+ const request = entriesStore.openCursor();
227
+ request.onsuccess = () => {
228
+ const cursor = request.result;
229
+ if (!cursor) {
230
+ resolve();
231
+ return;
232
+ }
233
+ metadataBytes += getMetadataPayloadBytes(cursor.value);
234
+ cursor.continue();
235
+ };
236
+ request.onerror = () => reject(request.error);
237
+ });
238
+ return {
239
+ contentBytes,
240
+ metadataBytes,
241
+ totalBytes: contentBytes + metadataBytes,
242
+ };
243
+ }
190
244
  // ---------------------------------------------------------------------------
191
245
  // Main class
192
246
  // ---------------------------------------------------------------------------
@@ -304,7 +358,14 @@ class IndexedDBContentAddressedStore {
304
358
  this.db = null;
305
359
  this.openPromise = null;
306
360
  };
307
- resolve(this.db);
361
+ void this.backfillStoredBytesIfNeeded(this.db)
362
+ .then(() => resolve(this.db))
363
+ .catch((error) => {
364
+ this.db?.close();
365
+ this.db = null;
366
+ this.openPromise = null;
367
+ reject(error);
368
+ });
308
369
  };
309
370
  request.onerror = () => {
310
371
  this.openPromise = null;
@@ -328,6 +389,28 @@ class IndexedDBContentAddressedStore {
328
389
  getCacheIdentity() {
329
390
  return `idb:${this.idbName}`;
330
391
  }
392
+ /**
393
+ * Returns approximate payload bytes currently stored in this browser-backed
394
+ * content-addressed store.
395
+ *
396
+ * `contentBytes` counts the encrypted payload blobs currently retained in the
397
+ * deduplicated content store. `metadataBytes` counts the serialized metadata
398
+ * entries. When multiple entries share the same `contentHash`, only the
399
+ * first retained payload contributes to `contentBytes`; later references only
400
+ * increase `refCount`.
401
+ */
402
+ async getStoredBytes() {
403
+ const db = await this.ensureOpen();
404
+ const tx = db.transaction(META_STORE, "readonly");
405
+ const metaOS = tx.objectStore(META_STORE);
406
+ const contentBytes = (await readNumericMetaValue(metaOS, TOTAL_CONTENT_BYTES_KEY)) ?? 0;
407
+ const metadataBytes = (await readNumericMetaValue(metaOS, TOTAL_METADATA_BYTES_KEY)) ?? 0;
408
+ return {
409
+ contentBytes,
410
+ metadataBytes,
411
+ totalBytes: contentBytes + metadataBytes,
412
+ };
413
+ }
331
414
  async putEntries(entries) {
332
415
  if (entries.length === 0)
333
416
  return;
@@ -338,8 +421,10 @@ class IndexedDBContentAddressedStore {
338
421
  const bloomOS = tx.objectStore(BLOOM_CACHE_STORE);
339
422
  const metaOS = tx.objectStore(META_STORE);
340
423
  const insertedIds = [];
341
- const counterRecord = await reqToPromise(metaOS.get(RECEIPT_ORDER_COUNTER_KEY));
424
+ const counterRecord = (await reqToPromise(metaOS.get(RECEIPT_ORDER_COUNTER_KEY)));
342
425
  let nextReceiptOrder = typeof counterRecord?.value === "number" ? counterRecord.value + 1 : 1;
426
+ let totalContentBytes = (await readNumericMetaValue(metaOS, TOTAL_CONTENT_BYTES_KEY)) ?? 0;
427
+ let totalMetadataBytes = (await readNumericMetaValue(metaOS, TOTAL_METADATA_BYTES_KEY)) ?? 0;
343
428
  for (const entry of entries) {
344
429
  // Check if entry already exists (skip duplicate)
345
430
  const existing = await reqToPromise(entriesOS.get(entry.id));
@@ -353,10 +438,11 @@ class IndexedDBContentAddressedStore {
353
438
  ...rest,
354
439
  receiptOrder: nextReceiptOrder++,
355
440
  };
441
+ totalMetadataBytes += getMetadataPayloadBytes(metadata);
356
442
  // Store metadata
357
443
  await reqToPromise(entriesOS.put(metadata));
358
444
  // Deduplicate content
359
- const existingContent = await reqToPromise(contentOS.get(entry.contentHash));
445
+ const existingContent = (await reqToPromise(contentOS.get(entry.contentHash)));
360
446
  if (existingContent) {
361
447
  existingContent.refCount += 1;
362
448
  await reqToPromise(contentOS.put(existingContent));
@@ -368,16 +454,16 @@ class IndexedDBContentAddressedStore {
368
454
  data: encryptedData,
369
455
  refCount: 1,
370
456
  }));
457
+ totalContentBytes += encryptedData.byteLength;
371
458
  this.logger.debug(`Stored content for hash ${entry.contentHash.substring(0, 8)}...`);
372
459
  }
373
460
  insertedIds.push(entry.id);
374
461
  this.logger.debug(`Stored entry ${entry.id} for doc ${entry.docId}`);
375
462
  }
376
463
  if (insertedIds.length > 0) {
377
- await reqToPromise(metaOS.put({
378
- key: RECEIPT_ORDER_COUNTER_KEY,
379
- value: nextReceiptOrder - 1,
380
- }));
464
+ await writeNumericMetaValue(metaOS, RECEIPT_ORDER_COUNTER_KEY, nextReceiptOrder - 1);
465
+ await writeNumericMetaValue(metaOS, TOTAL_CONTENT_BYTES_KEY, totalContentBytes);
466
+ await writeNumericMetaValue(metaOS, TOTAL_METADATA_BYTES_KEY, totalMetadataBytes);
381
467
  }
382
468
  // Incrementally update bloom cache with newly inserted IDs
383
469
  if (insertedIds.length > 0) {
@@ -693,11 +779,14 @@ class IndexedDBContentAddressedStore {
693
779
  async purgeDocHistory(docId) {
694
780
  this.logger.info(`Purging entry history for document: ${docId}`);
695
781
  const db = await this.ensureOpen();
696
- const tx = db.transaction([ENTRIES_STORE, CONTENT_STORE, BLOOM_CACHE_STORE], "readwrite");
782
+ const tx = db.transaction([ENTRIES_STORE, CONTENT_STORE, BLOOM_CACHE_STORE, META_STORE], "readwrite");
697
783
  const entriesOS = tx.objectStore(ENTRIES_STORE);
698
784
  const contentOS = tx.objectStore(CONTENT_STORE);
699
785
  const bloomOS = tx.objectStore(BLOOM_CACHE_STORE);
786
+ const metaOS = tx.objectStore(META_STORE);
700
787
  const docIndex = entriesOS.index(IDX_DOC_ID);
788
+ let totalContentBytes = (await readNumericMetaValue(metaOS, TOTAL_CONTENT_BYTES_KEY)) ?? 0;
789
+ let totalMetadataBytes = (await readNumericMetaValue(metaOS, TOTAL_METADATA_BYTES_KEY)) ?? 0;
701
790
  // Collect all entries for this docId
702
791
  const entriesToPurge = [];
703
792
  await new Promise((resolve, reject) => {
@@ -720,11 +809,13 @@ class IndexedDBContentAddressedStore {
720
809
  // Delete entries and decrement content ref counts
721
810
  for (const entry of entriesToPurge) {
722
811
  await reqToPromise(entriesOS.delete(entry.id));
723
- const contentRecord = await reqToPromise(contentOS.get(entry.contentHash));
812
+ totalMetadataBytes -= getMetadataPayloadBytes(entry);
813
+ const contentRecord = (await reqToPromise(contentOS.get(entry.contentHash)));
724
814
  if (contentRecord) {
725
815
  const newCount = contentRecord.refCount - 1;
726
816
  if (newCount <= 0) {
727
817
  await reqToPromise(contentOS.delete(entry.contentHash));
818
+ totalContentBytes -= contentRecord.data.byteLength;
728
819
  this.logger.debug(`Cleaned up orphaned content ${entry.contentHash.substring(0, 8)}...`);
729
820
  }
730
821
  else {
@@ -735,6 +826,8 @@ class IndexedDBContentAddressedStore {
735
826
  }
736
827
  // Invalidate bloom cache
737
828
  await reqToPromise(bloomOS.put({ key: BLOOM_CACHE_KEY, summary: null, dirty: true }));
829
+ await writeNumericMetaValue(metaOS, TOTAL_CONTENT_BYTES_KEY, Math.max(0, totalContentBytes));
830
+ await writeNumericMetaValue(metaOS, TOTAL_METADATA_BYTES_KEY, Math.max(0, totalMetadataBytes));
738
831
  await txToPromise(tx);
739
832
  this.logger.info(`Purged ${entriesToPurge.length} entries for document ${docId}`);
740
833
  }
@@ -817,6 +910,98 @@ class IndexedDBContentAddressedStore {
817
910
  cursorReq.onerror = () => reject(cursorReq.error);
818
911
  });
819
912
  }
913
+ /**
914
+ * Backfills the byte counters the first time an existing database is opened
915
+ * after payload accounting is introduced. The backfill persists both totals
916
+ * within one transaction so later writes start from a consistent baseline.
917
+ */
918
+ async backfillStoredBytesIfNeeded(db) {
919
+ const readTx = db.transaction(META_STORE, "readonly");
920
+ const readMetaOS = readTx.objectStore(META_STORE);
921
+ const contentBytes = await readNumericMetaValue(readMetaOS, TOTAL_CONTENT_BYTES_KEY);
922
+ const metadataBytes = await readNumericMetaValue(readMetaOS, TOTAL_METADATA_BYTES_KEY);
923
+ if (contentBytes !== null && metadataBytes !== null) {
924
+ return;
925
+ }
926
+ const writeTx = db.transaction([ENTRIES_STORE, CONTENT_STORE, META_STORE], "readwrite");
927
+ const totals = await computeStoredBytes(writeTx.objectStore(ENTRIES_STORE), writeTx.objectStore(CONTENT_STORE));
928
+ const writeMetaOS = writeTx.objectStore(META_STORE);
929
+ await writeNumericMetaValue(writeMetaOS, TOTAL_CONTENT_BYTES_KEY, totals.contentBytes);
930
+ await writeNumericMetaValue(writeMetaOS, TOTAL_METADATA_BYTES_KEY, totals.metadataBytes);
931
+ await txToPromise(writeTx);
932
+ }
820
933
  }
821
934
  exports.IndexedDBContentAddressedStore = IndexedDBContentAddressedStore;
935
+ /**
936
+ * Reads content-addressed payload counters from an existing IndexedDB database
937
+ * without opening the higher-level store abstraction or triggering a backfill.
938
+ *
939
+ * The returned byte counts reflect encrypted content payload bytes plus
940
+ * serialized metadata payload bytes already persisted by the store. For older
941
+ * browser databases that predate the byte counters, the helper falls back to a
942
+ * read-only scan of the legacy stores instead of writing the missing totals.
943
+ * When the database does not exist, the function returns `null`.
944
+ */
945
+ async function readContentAddressedStoreBytes(idbName) {
946
+ return new Promise((resolve, reject) => {
947
+ let createdDuringProbe = false;
948
+ const request = indexedDB.open(idbName);
949
+ request.onupgradeneeded = (event) => {
950
+ if (event.oldVersion === 0) {
951
+ createdDuringProbe = true;
952
+ request.transaction?.abort();
953
+ }
954
+ };
955
+ request.onsuccess = async () => {
956
+ const db = request.result;
957
+ try {
958
+ let contentBytes = null;
959
+ let metadataBytes = null;
960
+ if (db.objectStoreNames.contains(META_STORE)) {
961
+ const tx = db.transaction(META_STORE, "readonly");
962
+ const metaOS = tx.objectStore(META_STORE);
963
+ contentBytes = await readNumericMetaValue(metaOS, TOTAL_CONTENT_BYTES_KEY);
964
+ metadataBytes = await readNumericMetaValue(metaOS, TOTAL_METADATA_BYTES_KEY);
965
+ }
966
+ if (contentBytes === null || metadataBytes === null) {
967
+ if (!db.objectStoreNames.contains(ENTRIES_STORE) ||
968
+ !db.objectStoreNames.contains(CONTENT_STORE)) {
969
+ db.close();
970
+ resolve(null);
971
+ return;
972
+ }
973
+ const scanTx = db.transaction([ENTRIES_STORE, CONTENT_STORE], "readonly");
974
+ const totals = await computeStoredBytes(scanTx.objectStore(ENTRIES_STORE), scanTx.objectStore(CONTENT_STORE));
975
+ await txToPromise(scanTx);
976
+ contentBytes = totals.contentBytes;
977
+ metadataBytes = totals.metadataBytes;
978
+ }
979
+ db.close();
980
+ resolve({ contentBytes, metadataBytes });
981
+ }
982
+ catch (error) {
983
+ db.close();
984
+ reject(error);
985
+ }
986
+ };
987
+ request.onerror = async () => {
988
+ if (createdDuringProbe || request.error?.name === "AbortError") {
989
+ try {
990
+ await new Promise((cleanupResolve) => {
991
+ const cleanupRequest = indexedDB.deleteDatabase(idbName);
992
+ cleanupRequest.onsuccess = () => cleanupResolve();
993
+ cleanupRequest.onerror = () => cleanupResolve();
994
+ cleanupRequest.onblocked = () => cleanupResolve();
995
+ });
996
+ }
997
+ finally {
998
+ resolve(null);
999
+ }
1000
+ return;
1001
+ }
1002
+ reject(request.error ??
1003
+ new Error(`Could not open IndexedDB database "${idbName}".`));
1004
+ };
1005
+ });
1006
+ }
822
1007
  //# sourceMappingURL=IndexedDBContentAddressedStore.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IndexedDBContentAddressedStore.js","sourceRoot":"","sources":["../../../src/browser/appendonlystores/IndexedDBContentAddressedStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IndexedDBContentAddressedStore.js","sourceRoot":"","sources":["../../../src/browser/appendonlystores/IndexedDBContentAddressedStore.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AA+xCH,wEAqFC;AAl3CD,6DAE2C;AAgB3C,6FAAwG;AACxG,+FAAyI;AAMzI,gDAA8E;AAE9E,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,MAAM,WAAW,GAAG,CAAC,CAAC;AACtB,MAAM,aAAa,GAAG,SAAS,CAAC;AAChC,MAAM,aAAa,GAAG,SAAS,CAAC;AAChC,MAAM,iBAAiB,GAAG,aAAa,CAAC;AACxC,MAAM,UAAU,GAAG,YAAY,CAAC;AAEhC,cAAc;AACd,MAAM,UAAU,GAAG,UAAU,CAAC;AAC9B,MAAM,yBAAyB,GAAG,wBAAwB,CAAC;AAC3D,MAAM,iBAAiB,GAAG,iBAAiB,CAAC;AAC5C,MAAM,oBAAoB,GAAG,oBAAoB,CAAC;AAClD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC;AAE1C,kBAAkB;AAClB,MAAM,eAAe,GAAG,SAAS,CAAC;AAClC,MAAM,yBAAyB,GAAG,qBAAqB,CAAC;AACxD,MAAM,uBAAuB,GAAG,qBAAqB,CAAC;AACtD,MAAM,wBAAwB,GAAG,sBAAsB,CAAC;AAmBxD,SAAS,yBAAyB,CAAC,SAAiB,EAAE,SAAoB;IACxE,MAAM,cAAc,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAI,cAAc,KAAK,CAAC,CAAC,EAAE,CAAC;QAC1B,OAAO,GAAG,SAAS,IAAI,SAAS,EAAE,CAAC;IACrC,CAAC;IACD,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,IAAI,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC;AAChG,CAAC;AAED,8EAA8E;AAC9E,iEAAiE;AACjE,8EAA8E;AAE9E,MAAM,2BAA2B,GAAG,IAAI,CAAC;AACzC,MAAM,YAAY,GAAG,mBAAmB,CAAC;AAEzC,SAAS,OAAO,CAAC,KAAa;IAC5B,IAAI,IAAI,GAAG,UAAU,CAAC;IACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,IAAI,KAAK,CAAC,CAAC;AACpB,CAAC;AAED,SAAS,OAAO,CAAC,KAAa;IAC5B,IAAI,IAAI,GAAG,IAAI,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,IAAI,KAAK,CAAC,CAAC;AACpB,CAAC;AAED,SAAS,iBAAiB,CACxB,SAAiB,EACjB,iBAAyB;IAEzB,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QACnB,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IACxC,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CACvB,EAAE,EACF,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CACpE,CAAC;IACF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,SAAS,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IACxE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;AACjC,CAAC;AAED,SAAS,YAAY,CACnB,EAAU,EACV,QAAgB,EAChB,SAAiB,EACjB,IAAY;IAEZ,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;IACpC,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAiB;IAC3C,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAc;IACxC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,SAAS,2BAA2B,CAClC,GAAa,EACb,oBAA4B,2BAA2B;IAEvD,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAC/C,GAAG,CAAC,MAAM,EACV,iBAAiB,CAClB,CAAC;IACF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC;IAEvD,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,MAAM,IAAI,GAAG,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;QACjE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YACtC,MAAM,SAAS,GAAG,GAAG,GAAG,CAAC,CAAC;YAC1B,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC;QACtC,CAAC;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE,UAAU;QACnB,QAAQ,EAAE,GAAG,CAAC,MAAM;QACpB,QAAQ;QACR,SAAS;QACT,IAAI,EAAE,YAAY;QAClB,YAAY,EAAE,kBAAkB,CAAC,MAAM,CAAC;KACzC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAE/B;;;;;;;;;GASG;AACH,SAAS,sBAAsB,CAC7B,OAA4B,EAC5B,MAAgB;IAEhB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IAExC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;IAElD,uEAAuE;IACvE,wEAAwE;IACxE,kEAAkE;IAClE,2EAA2E;IAC3E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAC/B,CAAC,EACD,IAAI,CAAC,KAAK,CACR,CAAC,CAAC,OAAO,CAAC,QAAQ,GAAG,GAAG,GAAG,GAAG,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC,2BAA2B,CAAC,CACxC,CACF,CAAC;IAEF,IAAI,QAAQ,GAAG,gBAAgB,GAAG,oBAAoB,EAAE,CAAC;QACvD,mEAAmE;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAExD,KAAK,MAAM,EAAE,IAAI,MAAM,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,YAAY,CACvB,EAAE,EACF,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,IAAI,CACb,CAAC;QACF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YACtC,MAAM,SAAS,GAAG,GAAG,GAAG,CAAC,CAAC;YAC1B,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC;QACtC,CAAC;IACH,CAAC;IAED,OAAO;QACL,GAAG,OAAO;QACV,QAAQ,EAAE,QAAQ;QAClB,YAAY,EAAE,kBAAkB,CAAC,MAAM,CAAC;KACzC,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E,uCAAuC;AACvC,SAAS,YAAY,CAAI,OAAsB;IAC7C,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACxC,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAClD,OAAO,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;AACL,CAAC;AAED,sDAAsD;AACtD,SAAS,WAAW,CAAC,EAAkB;IACrC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,EAAE,CAAC,UAAU,GAAG,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QAChC,EAAE,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;QACpC,EAAE,CAAC,OAAO,GAAG,GAAG,EAAE,CAChB,MAAM,CAAC,EAAE,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,uBAAuB,CAAC,QAA4B;IAC3D,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;AACzC,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,KAAqB,EACrB,GAAW;IAEX,MAAM,MAAM,GAAG,CAAC,MAAM,YAAY,CAChC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CACf,CAAgC,CAAC;IAClC,OAAO,OAAO,MAAM,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACjE,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,KAAqB,EACrB,GAAW,EACX,KAAa;IAEb,MAAM,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK,EAA4B,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,YAA4B,EAC5B,YAA4B;IAE5B,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,aAAa,GAAG,CAAC,CAAC;IAEtB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,EAAE,CAAC;QAC1C,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE;YACvB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9B,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,CAAC,KAAsB,CAAC;YAC7C,YAAY,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;YACvC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,CAAC,CAAC;QACF,OAAO,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,EAAE,CAAC;QAC1C,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE;YACvB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9B,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YAED,aAAa,IAAI,uBAAuB,CACtC,MAAM,CAAC,KAA2B,CACnC,CAAC;YACF,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,CAAC,CAAC;QACF,OAAO,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,YAAY;QACZ,aAAa;QACb,UAAU,EAAE,YAAY,GAAG,aAAa;KACzC,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E;;;;;;;;;;;;;;GAcG;AACH,MAAa,8BAA8B;IASzC,YACE,OAAe,EACf,YAAuB,iBAAS,CAAC,IAAI,EACrC,MAAe,EACf,OAA0B;QAPpB,OAAE,GAAuB,IAAI,CAAC;QAC9B,gBAAW,GAAgC,IAAI,CAAC;QAQtD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,MAAM;YACT,MAAM;gBACN,IAAI,sBAAY,CACd,IAAA,4BAAkB,GAAE,EACpB,kBAAkB,OAAO,IAAI,SAAS,EAAE,EACxC,IAAI,CACL,CAAC;QAEJ,MAAM,MAAM,GAAI,OAAO,EAAE,QAAmB,IAAI,SAAS,CAAC;QAC1D,IAAI,CAAC,OAAO,GAAG,YAAY,yBAAyB,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,OAAO,EAAE,CAAC;IACvF,CAAC;IAED,4EAA4E;IAC5E,gBAAgB;IAChB,4EAA4E;IAE5E,4EAA4E;IACpE,UAAU;QAChB,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,IAAI,OAAO,CAAc,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC9D,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YAE1D,OAAO,CAAC,eAAe,GAAG,CAAC,KAAK,EAAE,EAAE;gBAClC,MAAM,EAAE,GAAI,KAAK,CAAC,MAA2B,CAAC,MAAM,CAAC;gBACrD,MAAM,WAAW,GAAI,KAAK,CAAC,MAA2B,CAAC,WAAY,CAAC;gBAEpE,gBAAgB;gBAChB,IAAI,YAA4B,CAAC;gBACjC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;oBACjD,YAAY,GAAG,EAAE,CAAC,iBAAiB,CAAC,aAAa,EAAE;wBACjD,OAAO,EAAE,IAAI;qBACd,CAAC,CAAC;oBACH,YAAY,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;oBACjE,YAAY,CAAC,WAAW,CACtB,yBAAyB,EACzB,CAAC,WAAW,EAAE,WAAW,CAAC,EAC1B,EAAE,MAAM,EAAE,KAAK,EAAE,CAClB,CAAC;oBACF,YAAY,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE;wBAC/D,MAAM,EAAE,IAAI;qBACb,CAAC,CAAC;oBACH,YAAY,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,EAAE;wBACrE,MAAM,EAAE,IAAI;qBACb,CAAC,CAAC;oBACH,YAAY,CAAC,WAAW,CAAC,gBAAgB,EAAE,aAAa,EAAE;wBACxD,MAAM,EAAE,KAAK;qBACd,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;oBACtD,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;wBAC5D,YAAY,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,EAAE;4BACrE,MAAM,EAAE,IAAI;yBACb,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBAED,gBAAgB;gBAChB,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;oBACjD,EAAE,CAAC,iBAAiB,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;gBAClE,CAAC;gBAED,oBAAoB;gBACpB,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;oBACrD,EAAE,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC9D,CAAC;gBAED,aAAa;gBACb,IAAI,SAAyB,CAAC;gBAC9B,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC9C,SAAS,GAAG,EAAE,CAAC,iBAAiB,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;gBACnE,CAAC;qBAAM,CAAC;oBACN,SAAS,GAAG,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;gBAClD,CAAC;gBAED,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;oBAChC,IAAI,gBAAgB,GAAG,CAAC,CAAC;oBACzB,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,UAAU,EAAE,CAAC;oBACrE,SAAS,CAAC,SAAS,GAAG,GAAG,EAAE;wBACzB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;wBAChC,IAAI,CAAC,MAAM,EAAE,CAAC;4BACZ,SAAS,CAAC,GAAG,CAAC;gCACZ,GAAG,EAAE,yBAAyB;gCAC9B,KAAK,EAAE,gBAAgB,GAAG,CAAC;6BAC5B,CAAC,CAAC;4BACH,OAAO;wBACT,CAAC;wBACD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAA2B,CAAC;wBACpD,MAAM,CAAC,MAAM,CAAC;4BACZ,GAAG,QAAQ;4BACX,YAAY,EAAE,gBAAgB,EAAE;yBACjC,CAAC,CAAC;wBACH,MAAM,CAAC,QAAQ,EAAE,CAAC;oBACpB,CAAC,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC;YAEF,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE;gBACvB,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;gBACzB,IAAI,CAAC,EAAE,CAAC,eAAe,GAAG,GAAG,EAAE;oBAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,uDAAuD,CACxD,CAAC;oBACF,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC;oBACjB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;oBACf,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC1B,CAAC,CAAC;gBACF,KAAK,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,EAAE,CAAC;qBAC3C,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;qBAC7B,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBACf,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC;oBACjB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;oBACf,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;oBACxB,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC,CAAC,CAAC;YACP,CAAC,CAAC;YAEF,OAAO,CAAC,OAAO,GAAG,GAAG,EAAE;gBACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC,CAAC;YAEF,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE;gBACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,8BAA8B,IAAI,CAAC,OAAO,sBAAsB,CACjE,CAAC;YACJ,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,4EAA4E;IAC5E,kCAAkC;IAClC,4EAA4E;IAE5E,KAAK;QACH,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,gBAAgB;QACd,OAAO,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IAC/B,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,cAAc;QAClB,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,YAAY,GAChB,CAAC,MAAM,oBAAoB,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC,IAAI,CAAC,CAAC;QACrE,MAAM,aAAa,GACjB,CAAC,MAAM,oBAAoB,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC,IAAI,CAAC,CAAC;QACtE,OAAO;YACL,YAAY;YACZ,aAAa;YACb,UAAU,EAAE,YAAY,GAAG,aAAa;SACzC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAqB;QACpC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAEjC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CACvB,CAAC,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,UAAU,CAAC,EAC7D,WAAW,CACZ,CAAC;QACF,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAE1C,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,MAAM,aAAa,GAAG,CAAC,MAAM,YAAY,CACvC,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CACtC,CAAgC,CAAC;QAClC,IAAI,gBAAgB,GAClB,OAAO,aAAa,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,IAAI,iBAAiB,GACnB,CAAC,MAAM,oBAAoB,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC,IAAI,CAAC,CAAC;QACrE,IAAI,kBAAkB,GACpB,CAAC,MAAM,oBAAoB,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC,IAAI,CAAC,CAAC;QAEtE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,iDAAiD;YACjD,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAC7D,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,KAAK,CAAC,EAAE,2BAA2B,CAAC,CAAC;gBAChE,SAAS;YACX,CAAC;YAED,wCAAwC;YACxC,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,oBAAoB,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;YAC7E,MAAM,QAAQ,GAAuB;gBACnC,GAAG,IAAI;gBACP,YAAY,EAAE,gBAAgB,EAAE;aACjC,CAAC;YACF,kBAAkB,IAAI,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YAExD,iBAAiB;YACjB,MAAM,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;YAE5C,sBAAsB;YACtB,MAAM,eAAe,GAAG,CAAC,MAAM,YAAY,CACzC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CACjC,CAA8B,CAAC;YAChC,IAAI,eAAe,EAAE,CAAC;gBACpB,eAAe,CAAC,QAAQ,IAAI,CAAC,CAAC;gBAC9B,MAAM,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;gBACnD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,WAAW,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,mCAAmC,CAChF,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,YAAY,CAChB,SAAS,CAAC,GAAG,CAAC;oBACZ,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,IAAI,EAAE,aAAa;oBACnB,QAAQ,EAAE,CAAC;iBACY,CAAC,CAC3B,CAAC;gBACF,iBAAiB,IAAI,aAAa,CAAC,UAAU,CAAC;gBAC9C,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,2BAA2B,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAClE,CAAC;YACJ,CAAC;YAED,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,KAAK,CAAC,EAAE,YAAY,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,qBAAqB,CACzB,MAAM,EACN,yBAAyB,EACzB,gBAAgB,GAAG,CAAC,CACrB,CAAC;YACF,MAAM,qBAAqB,CACzB,MAAM,EACN,uBAAuB,EACvB,iBAAiB,CAClB,CAAC;YACF,MAAM,qBAAqB,CACzB,MAAM,EACN,wBAAwB,EACxB,kBAAkB,CACnB,CAAC;QACJ,CAAC;QAED,2DAA2D;QAC3D,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;YAEhE,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC9C,6DAA6D;gBAC7D,MAAM,OAAO,GAAG,sBAAsB,CACpC,MAAM,CAAC,OAA8B,EACrC,WAAW,CACZ,CAAC;gBACF,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,YAAY,CAChB,OAAO,CAAC,GAAG,CAAC;wBACV,GAAG,EAAE,eAAe;wBACpB,OAAO,EAAE,OAAO;wBAChB,KAAK,EAAE,KAAK;qBACb,CAAC,CACH,CAAC;oBACF,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,uCAAuC,WAAW,CAAC,MAAM,eAAe,OAAO,CAAC,QAAQ,GAAG,CAC5F,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,yEAAyE;oBACzE,MAAM,YAAY,CAChB,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAClE,CAAC;oBACF,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,sDAAsD,CACvD,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,yEAAyE;gBACzE,MAAM,YAAY,CAChB,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAClE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,WAAW,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,GAAa;QAC5B,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAEhC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,aAAa,EAAE,aAAa,CAAC,EAAE,UAAU,CAAC,CAAC;QACtE,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAEhD,MAAM,MAAM,GAAiB,EAAE,CAAC;QAEhC,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAG,CAAC,MAAM,YAAY,CAClC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAClB,CAAmC,CAAC;YACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;gBAC1C,SAAS;YACX,CAAC;YACD,MAAM,aAAa,GAAG,MAAM,YAAY,CACtC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CACpC,CAAC;YACF,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,WAAW,QAAQ,CAAC,WAAW,wBAAwB,EAAE,EAAE,CAC5D,CAAC;gBACF,SAAS;YACX,CAAC;YACD,MAAM,CAAC,IAAI,CAAC;gBACV,GAAG,QAAQ;gBACX,aAAa,EAAE,IAAI,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC;aAClD,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,aAAa,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAM,YAAY,CACpE,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,EAAU;QAC/B,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,CAAC,MAAM,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAmC,CAAC;QAC3F,OAAO,QAAQ,IAAI,IAAI,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,mCAAmC,CACvC,WAAmB,EACnB,cAAsB,EACtB,OAAkC;QAElC,OAAO,IAAA,2DAAmC,EAAC,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IACzF,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,GAAa;QAC5B,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAEhC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YACrD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,SAAS,QAAQ,CAAC,MAAM,4BAA4B,GAAG,CAAC,MAAM,UAAU,CACzE,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,QAAkB;QACrC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;QACnC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAEhD,MAAM,UAAU,GAAyB,EAAE,CAAC;QAE5C,OAAO,IAAI,OAAO,CAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3D,MAAM,SAAS,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC;YACzC,SAAS,CAAC,SAAS,GAAG,GAAG,EAAE;gBACzB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;gBAChC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,SAAS,UAAU,CAAC,MAAM,2BAA2B,CACtD,CAAC;oBACF,OAAO,CAAC,UAAU,CAAC,CAAC;oBACpB,OAAO;gBACT,CAAC;gBACD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAA2B,CAAC;gBACpD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC/B,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC5B,CAAC;gBACD,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,CAAC,CAAC;YACF,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,QAAkB,EAClB,KAAa;QAEb,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;QACnC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAE1C,MAAM,UAAU,GAAyB,EAAE,CAAC;QAE5C,OAAO,IAAI,OAAO,CAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3D,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5D,SAAS,CAAC,SAAS,GAAG,GAAG,EAAE;gBACzB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;gBAChC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,SAAS,UAAU,CAAC,MAAM,wBAAwB,KAAK,EAAE,CAC1D,CAAC;oBACF,OAAO,CAAC,UAAU,CAAC,CAAC;oBACpB,OAAO;gBACT,CAAC;gBACD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAA2B,CAAC;gBACpD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC/B,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC5B,CAAC;gBACD,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,CAAC,CAAC;YACF,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CACf,IAAoB,EACpB,gBAA+B,EAC/B,iBAAgC;QAEhC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAEzD,4CAA4C;QAC5C,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,gBAAgB,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,iBAAiB,IAAI,QAAQ,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAC7B,KAAK,EACL,KAAK,EACL,KAAK,EAAE,uBAAuB;QAC9B,iBAAiB,KAAK,IAAI,CAAC,qDAAqD;SACjF,CAAC;QAEF,MAAM,OAAO,GAAyB,EAAE,CAAC;QAEzC,OAAO,IAAI,OAAO,CAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3D,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAC1C,SAAS,CAAC,SAAS,GAAG,GAAG,EAAE;gBACzB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;gBAChC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,SAAS,OAAO,CAAC,MAAM,oBAAoB,IAAI,gBAAgB,CAChE,CAAC;oBACF,OAAO,CAAC,OAAO,CAAC,CAAC;oBACjB,OAAO;gBACT,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAA2B,CAAC,CAAC;gBACjD,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,CAAC,CAAC;YACF,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,SAAS;QACb,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAChD,MAAM,IAAI,GAAa,EAAE,CAAC;QAE1B,OAAO,IAAI,OAAO,CAAW,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC/C,MAAM,SAAS,GAAG,SAAS,CAAC,aAAa,EAAE,CAAC;YAC5C,SAAS,CAAC,SAAS,GAAG,GAAG,EAAE;gBACzB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;gBAChC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,MAAM,YAAY,CAAC,CAAC;oBACxD,OAAO,CAAC,IAAI,CAAC,CAAC;oBACd,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;gBACrC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,CAAC,CAAC;YACF,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,MAA8B,EAC9B,QAAgB,MAAM,CAAC,gBAAgB,EACvC,OAA0B;QAE1B,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAEpD,gCAAgC;QAChC,IAAI,KAAK,GAAuB,IAAI,CAAC;QACrC,IAAI,MAAM,EAAE,CAAC;YACX,KAAK,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QACzE,CAAC;QAED,MAAM,IAAI,GAAyB,EAAE,CAAC;QAEtC,OAAO,IAAI,OAAO,CAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtD,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,OAAO,GAAG,KAAK,CAAC;YAEpB,SAAS,CAAC,SAAS,GAAG,GAAG,EAAE;gBACzB,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC;gBACnC,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBAC5D,OAAO,CAAC;wBACN,OAAO,EAAE,IAAI;wBACb,UAAU,EAAE,IAAI;4BACd,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;4BACvD,CAAC,CAAC,MAAM;wBACV,OAAO;qBACR,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;gBAED,MAAM,IAAI,GAAG,SAAS,CAAC,KAA2B,CAAC;gBAEnD,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;oBACzB,oEAAoE;oBACpE,wBAAwB;oBACxB,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;wBAC3C,OAAO,GAAG,IAAI,CAAC;oBACjB,CAAC;oBACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBACnC,OAAO,CAAC;wBACN,OAAO,EAAE,IAAI;wBACb,UAAU,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;wBACjE,OAAO,EAAE,IAAI;qBACd,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;gBAED,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;oBAC3C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClB,CAAC;gBAED,SAAS,CAAC,QAAQ,EAAE,CAAC;YACvB,CAAC,CAAC;YAEF,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAEnC,+BAA+B;QAC/B,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;QAC7D,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;QAEhE,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpD,OAAO,MAAM,CAAC,OAA8B,CAAC;QAC/C,CAAC;QAED,0BAA0B;QAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,2BAA2B,CAAC,GAAG,CAAC,CAAC;QAEjD,mBAAmB;QACnB,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;QAC/D,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;QAC5D,MAAM,YAAY,CAChB,YAAY,CAAC,GAAG,CAAC;YACf,GAAG,EAAE,eAAe;YACpB,OAAO;YACP,KAAK,EAAE,KAAK;SACb,CAAC,CACH,CAAC;QACF,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;QAE3B,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,2BAA2B,CAC/B,KAAa,EACb,OAAoC;QAEpC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACpD,OAAO,IAAA,2DAAkC,EAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,gCAAgC,CACpC,MAAgB,EAChB,OAAoC;QAEpC,MAAM,GAAG,GAAyB,EAAE,CAAC;QACrC,yEAAyE;QACzE,uEAAuE;QACvE,MAAM,WAAW,GAAG,EAAE,CAAC;QACvB,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,WAAW,EAAE,CAAC;YACnE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC;YACzD,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CACpC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CACpD,CAAC;YACF,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;gBACnC,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;QACD,OAAO,IAAA,wDAA+B,EAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,OAAe,EACf,OAAiC;QAEjC,MAAM,eAAe,GAAG,OAAO,EAAE,eAAqC,CAAC;QACvE,MAAM,QAAQ,GAAG,OAAO,EAAE,QAA8B,CAAC;QACzD,MAAM,YAAY,GAAG,OAAO,EAAE,YAAY,KAAK,KAAK,CAAC;QAErD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAEhD,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,MAAM,KAAK,GAAyC;YAClD,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE;SAC1B,CAAC;QACF,IAAI,QAAQ,GAAG,CAAC,CAAC;QAEjB,OAAO,QAAQ,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YAC/B,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAExC,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,SAAS;YAC9B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAEhB,IAAI,QAAQ,KAAK,SAAS,IAAI,KAAK,GAAG,QAAQ;gBAAE,SAAS;YAEzD,MAAM,KAAK,GAAG,CAAC,MAAM,YAAY,CAC/B,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAClB,CAAmC,CAAC;YACrC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,SAAS,EAAE,yCAAyC,CACrD,CAAC;gBACF,SAAS;YACX,CAAC;YAED,IAAI,eAAe,IAAI,KAAK,CAAC,SAAS,KAAK,eAAe,IAAI,EAAE,KAAK,OAAO,EAAE,CAAC;gBAC7E,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAChB,SAAS;YACX,CAAC;YAED,IAAI,EAAE,KAAK,OAAO,IAAI,YAAY,EAAE,CAAC;gBACnC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAClB,CAAC;YAED,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;gBACxC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;oBACxB,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC9C,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,MAAM,CAAC,MAAM,qBAAqB,OAAO,EAAE,CAAC,CAAC;QAC3E,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,KAAa;QACjC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uCAAuC,KAAK,EAAE,CAAC,CAAC;QAEjE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CACvB,CAAC,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,UAAU,CAAC,EAC7D,WAAW,CACZ,CAAC;QACF,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,iBAAiB,GACnB,CAAC,MAAM,oBAAoB,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC,IAAI,CAAC,CAAC;QACrE,IAAI,kBAAkB,GACpB,CAAC,MAAM,oBAAoB,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC,IAAI,CAAC,CAAC;QAEtE,qCAAqC;QACrC,MAAM,cAAc,GAAyB,EAAE,CAAC;QAChD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/D,SAAS,CAAC,SAAS,GAAG,GAAG,EAAE;gBACzB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;gBAChC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;oBACV,OAAO;gBACT,CAAC;gBACD,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,KAA2B,CAAC,CAAC;gBACxD,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,CAAC,CAAC;YACF,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QAEH,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,iCAAiC,KAAK,oBAAoB,CAC3D,CAAC;YACF,OAAO;QACT,CAAC;QAED,kDAAkD;QAClD,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;YACnC,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/C,kBAAkB,IAAI,uBAAuB,CAAC,KAAK,CAAC,CAAC;YAErD,MAAM,aAAa,GAAG,CAAC,MAAM,YAAY,CACvC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CACjC,CAA8B,CAAC;YAChC,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,GAAG,CAAC,CAAC;gBAC5C,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;oBAClB,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;oBACxD,iBAAiB,IAAI,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC;oBACnD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,+BAA+B,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CACtE,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,aAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC;oBAClC,MAAM,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;gBACnD,CAAC;YACH,CAAC;QACH,CAAC;QAED,yBAAyB;QACzB,MAAM,YAAY,CAChB,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAClE,CAAC;QACF,MAAM,qBAAqB,CACzB,MAAM,EACN,uBAAuB,EACvB,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAC/B,CAAC;QACF,MAAM,qBAAqB,CACzB,MAAM,EACN,wBAAwB,EACxB,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAChC,CAAC;QAEF,MAAM,WAAW,CAAC,EAAE,CAAC,CAAC;QACtB,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,UAAU,cAAc,CAAC,MAAM,yBAAyB,KAAK,EAAE,CAChE,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qCAAqC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAEtE,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;YACf,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAC1B,CAAC;QAED,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,MAAM,OAAO,GAAG,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvD,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE;gBACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC/D,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC;YACF,OAAO,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC9C,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE;gBACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,gCAAgC,IAAI,CAAC,OAAO,sBAAsB,CACnE,CAAC;YACJ,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,QAAiC;QAEjC,OAAO;YACL,KAAK,EAAE,OAAO;YACd,eAAe,EAAE,IAAI;YACrB,UAAU,EAAE,CAAC;SACd,CAAC;IACJ,CAAC;IAED,mBAAmB;QACjB,OAAO;YACL,KAAK,EAAE,OAAO;YACd,eAAe,EAAE,IAAI;YACrB,UAAU,EAAE,CAAC;SACd,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,kBAAkB;IAClB,4EAA4E;IAEpE,kBAAkB,CACxB,IAAwB,EACxB,OAA0B;QAE1B,IAAI,OAAO,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC;YACnD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IACE,OAAO,EAAE,UAAU;YACnB,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;YAC7B,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAC5C,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IACE,OAAO,EAAE,gBAAgB,KAAK,SAAS;YACvC,OAAO,CAAC,gBAAgB,KAAK,IAAI;YACjC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,gBAAgB,EACzC,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IACE,OAAO,EAAE,iBAAiB,KAAK,SAAS;YACxC,OAAO,CAAC,iBAAiB,KAAK,IAAI;YAClC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,iBAAiB,EAC3C,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,KAAa;QAC3C,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAyB,EAAE,CAAC;QAEzC,wEAAwE;QACxE,qEAAqE;QACrE,OAAO,IAAI,OAAO,CAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3D,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5D,SAAS,CAAC,SAAS,GAAG,GAAG,EAAE;gBACzB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;gBAChC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO,CAAC,OAAO,CAAC,CAAC;oBACjB,OAAO;gBACT,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAA2B,CAAC,CAAC;gBACjD,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,CAAC,CAAC;YACF,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,2BAA2B,CAAC,EAAe;QACvD,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QACtD,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,YAAY,GAAG,MAAM,oBAAoB,CAC7C,UAAU,EACV,uBAAuB,CACxB,CAAC;QACF,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAC9C,UAAU,EACV,wBAAwB,CACzB,CAAC;QAEF,IAAI,YAAY,KAAK,IAAI,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;YACpD,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAC5B,CAAC,aAAa,EAAE,aAAa,EAAE,UAAU,CAAC,EAC1C,WAAW,CACZ,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,kBAAkB,CACrC,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,EAClC,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,CACnC,CAAC;QACF,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACpD,MAAM,qBAAqB,CACzB,WAAW,EACX,uBAAuB,EACvB,MAAM,CAAC,YAAY,CACpB,CAAC;QACF,MAAM,qBAAqB,CACzB,WAAW,EACX,wBAAwB,EACxB,MAAM,CAAC,aAAa,CACrB,CAAC;QACF,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;CACF;AAx6BD,wEAw6BC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,8BAA8B,CAClD,OAAe;IAEf,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,kBAAkB,GAAG,KAAK,CAAC;QAC/B,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAExC,OAAO,CAAC,eAAe,GAAG,CAAC,KAAK,EAAE,EAAE;YAClC,IAAI,KAAK,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;gBAC3B,kBAAkB,GAAG,IAAI,CAAC;gBAC1B,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC;YAC/B,CAAC;QACH,CAAC,CAAC;QAEF,OAAO,CAAC,SAAS,GAAG,KAAK,IAAI,EAAE;YAC7B,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;YAC1B,IAAI,CAAC;gBACH,IAAI,YAAY,GAAkB,IAAI,CAAC;gBACvC,IAAI,aAAa,GAAkB,IAAI,CAAC;gBAExC,IAAI,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC7C,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;oBAClD,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;oBAC1C,YAAY,GAAG,MAAM,oBAAoB,CACvC,MAAM,EACN,uBAAuB,CACxB,CAAC;oBACF,aAAa,GAAG,MAAM,oBAAoB,CACxC,MAAM,EACN,wBAAwB,CACzB,CAAC;gBACJ,CAAC;gBAED,IAAI,YAAY,KAAK,IAAI,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;oBACpD,IACE,CAAC,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,aAAa,CAAC;wBAC5C,CAAC,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,aAAa,CAAC,EAC5C,CAAC;wBACD,EAAE,CAAC,KAAK,EAAE,CAAC;wBACX,OAAO,CAAC,IAAI,CAAC,CAAC;wBACd,OAAO;oBACT,CAAC;oBAED,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAC3B,CAAC,aAAa,EAAE,aAAa,CAAC,EAC9B,UAAU,CACX,CAAC;oBACF,MAAM,MAAM,GAAG,MAAM,kBAAkB,CACrC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,EACjC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,CAClC,CAAC;oBACF,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;oBAC1B,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;oBACnC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;gBACvC,CAAC;gBAED,EAAE,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,CAAC,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,CAAC;YAC3C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,EAAE,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC;QACH,CAAC,CAAC;QAEF,OAAO,CAAC,OAAO,GAAG,KAAK,IAAI,EAAE;YAC3B,IAAI,kBAAkB,IAAI,OAAO,CAAC,KAAK,EAAE,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC/D,IAAI,CAAC;oBACH,MAAM,IAAI,OAAO,CAAO,CAAC,cAAc,EAAE,EAAE;wBACzC,MAAM,cAAc,GAAG,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;wBACzD,cAAc,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC,cAAc,EAAE,CAAC;wBAClD,cAAc,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,cAAc,EAAE,CAAC;wBAChD,cAAc,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC,cAAc,EAAE,CAAC;oBACpD,CAAC,CAAC,CAAC;gBACL,CAAC;wBAAS,CAAC;oBACT,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChB,CAAC;gBACD,OAAO;YACT,CAAC;YAED,MAAM,CACJ,OAAO,CAAC,KAAK;gBACX,IAAI,KAAK,CAAC,sCAAsC,OAAO,IAAI,CAAC,CAC/D,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -12,10 +12,32 @@ export declare class IndexedDBLocalCacheStore implements LocalCacheStore {
12
12
  constructor(dbName?: string);
13
13
  private getDb;
14
14
  private toKey;
15
+ /**
16
+ * Returns the approximate payload bytes stored in this IndexedDB cache.
17
+ *
18
+ * The total reflects the raw `ArrayBuffer.byteLength` of cached values and
19
+ * excludes IndexedDB structural overhead.
20
+ */
21
+ getStoredBytes(): Promise<number>;
15
22
  get(type: string, id: string): Promise<Uint8Array | null>;
16
23
  put(type: string, id: string, value: Uint8Array): Promise<void>;
17
24
  delete(type: string, id: string): Promise<void>;
18
25
  list(type: string): Promise<string[]>;
19
26
  clear(): Promise<void>;
27
+ /**
28
+ * Backfills the cache byte counter after upgrading an existing database.
29
+ * Values are summed from the raw `ArrayBuffer.byteLength` of the `kv` store
30
+ * and then persisted before callers observe the opened database.
31
+ */
32
+ private backfillStoredBytesIfNeeded;
20
33
  }
34
+ /**
35
+ * Reads the cache byte counter from an existing IndexedDB database without
36
+ * constructing the higher-level cache abstraction or triggering a backfill.
37
+ *
38
+ * For older browser databases that predate the size counter, the helper falls
39
+ * back to a read-only scan of the `kv` store instead of writing migration
40
+ * metadata. The function returns `null` only when the database does not exist.
41
+ */
42
+ export declare function readLocalCacheStoreBytes(idbName: string): Promise<number | null>;
21
43
  //# sourceMappingURL=IndexedDBLocalCacheStore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IndexedDBLocalCacheStore.d.ts","sourceRoot":"","sources":["../../../src/browser/cache/IndexedDBLocalCacheStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAIxE;;;;;GAKG;AACH,qBAAa,wBAAyB,YAAW,eAAe;IAC9D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,EAAE,CAA4B;IACtC,OAAO,CAAC,WAAW,CAAqC;gBAE5C,MAAM,GAAE,MAAyB;YAI/B,KAAK;IAsBnB,OAAO,CAAC,KAAK;IAIP,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAkBzD,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAW/D,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW/C,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAiBrC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAU7B"}
1
+ {"version":3,"file":"IndexedDBLocalCacheStore.d.ts","sourceRoot":"","sources":["../../../src/browser/cache/IndexedDBLocalCacheStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAqExE;;;;;GAKG;AACH,qBAAa,wBAAyB,YAAW,eAAe;IAC9D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,EAAE,CAA4B;IACtC,OAAO,CAAC,WAAW,CAAqC;gBAE5C,MAAM,GAAE,MAAyB;YAI/B,KAAK;IAwCnB,OAAO,CAAC,KAAK;IAIb;;;;;OAKG;IACG,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IAOjC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAkBzD,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB/D,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB/C,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAiBrC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAU5B;;;;OAIG;YACW,2BAA2B;CAiB1C;AAED;;;;;;;GAOG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA8DxB"}