@dereekb/firebase 12.1.9 → 12.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.cjs.js CHANGED
@@ -134,6 +134,16 @@ class AbstractFirestoreDocumentDataAccessorWrapper {
134
134
  increment(data, params) {
135
135
  return this.accessor.increment(data, params);
136
136
  }
137
+ /**
138
+ * Updates array fields in the document.
139
+ *
140
+ * @param data - The array update to apply
141
+ * @param params - Optional parameters for the update operation
142
+ * @returns A Promise that resolves when the update operation completes
143
+ */
144
+ arrayUpdate(data, params) {
145
+ return this.accessor.arrayUpdate(data, params);
146
+ }
137
147
  }
138
148
  /**
139
149
  * Creates a function that intercepts an accessor factory to wrap all created accessors.
@@ -387,6 +397,23 @@ function incrementUpdateWithAccessorFunction(accessor) {
387
397
  };
388
398
  }
389
399
 
400
+ /**
401
+ * https://cloud.google.com/firestore/docs/samples/firestore-data-set-array-operations-async
402
+ * https://firebase.google.com/docs/firestore/manage-data/add-data#update_elements_in_an_array
403
+ *
404
+ * @param accessor
405
+ * @returns
406
+ */
407
+ function arrayUpdateWithAccessorFunction(accessor) {
408
+ return async data => {
409
+ const updateData = util.filterFalsyAndEmptyValues(data);
410
+ // Only update
411
+ if (!util.objectHasNoKeys(updateData)) {
412
+ return accessor.arrayUpdate(updateData);
413
+ }
414
+ };
415
+ }
416
+
390
417
  /*eslint @typescript-eslint/no-explicit-any:"off"*/
391
418
  // any is used with intent here, as the recursive AbstractFirestoreDocument requires its use to terminate.
392
419
  /**
@@ -499,6 +526,14 @@ class AbstractFirestoreDocument {
499
526
  increment(data) {
500
527
  return incrementUpdateWithAccessorFunction(this.accessor)(data);
501
528
  }
529
+ /**
530
+ * Updates the document using the accessor's array field update functionality.
531
+ *
532
+ * @param data
533
+ */
534
+ arrayUpdate(data) {
535
+ return arrayUpdateWithAccessorFunction(this.accessor)(data);
536
+ }
502
537
  }
503
538
  function limitedFirestoreDocumentAccessorFactory(config) {
504
539
  const {
@@ -6484,6 +6519,35 @@ function firestoreClientIncrementUpdateToUpdateData(input) {
6484
6519
  });
6485
6520
  }
6486
6521
 
6522
+ /**
6523
+ * Creates UpdateData corresponding to the input array update.
6524
+ *
6525
+ * @param input
6526
+ * @returns
6527
+ */
6528
+ function firestoreClientArrayUpdateToUpdateData(input) {
6529
+ const union = input?.union;
6530
+ const remove = input?.remove;
6531
+ function createUpdatesWithArrayFunction(fieldUpdate, arrayUpdateFunction) {
6532
+ let result;
6533
+ if (fieldUpdate) {
6534
+ result = util.mapObjectMap(fieldUpdate, arrayUpdate => {
6535
+ let result;
6536
+ if (arrayUpdate) {
6537
+ result = arrayUpdateFunction(...arrayUpdate); // use spread operator to insert each value as an argument, as "nested arrays" are not allowed in the Firestore
6538
+ }
6539
+ return result;
6540
+ });
6541
+ }
6542
+ return result;
6543
+ }
6544
+ const updateData = {
6545
+ ...createUpdatesWithArrayFunction(union, firestore.arrayUnion),
6546
+ ...createUpdatesWithArrayFunction(remove, firestore.arrayRemove)
6547
+ };
6548
+ return updateData;
6549
+ }
6550
+
6487
6551
  // MARK: Accessor
6488
6552
  class DefaultFirestoreDocumentDataAccessor {
6489
6553
  constructor(documentRef) {
@@ -6521,6 +6585,9 @@ class DefaultFirestoreDocumentDataAccessor {
6521
6585
  increment(data) {
6522
6586
  return this.update(firestoreClientIncrementUpdateToUpdateData(data));
6523
6587
  }
6588
+ arrayUpdate(data) {
6589
+ return this.update(firestoreClientArrayUpdateToUpdateData(data));
6590
+ }
6524
6591
  update(data) {
6525
6592
  assertFirestoreUpdateHasData(data);
6526
6593
  return firestore.updateDoc(this.documentRef, data);
@@ -6638,6 +6705,9 @@ class TransactionFirestoreDocumentDataAccessor {
6638
6705
  increment(data) {
6639
6706
  return this.update(firestoreClientIncrementUpdateToUpdateData(data));
6640
6707
  }
6708
+ arrayUpdate(data) {
6709
+ return this.update(firestoreClientArrayUpdateToUpdateData(data));
6710
+ }
6641
6711
  update(data) {
6642
6712
  assertFirestoreUpdateHasData(data);
6643
6713
  this.transaction.update(this.documentRef, data);
@@ -9792,6 +9862,7 @@ exports.allChildDocumentsUnderRelativePath = allChildDocumentsUnderRelativePath;
9792
9862
  exports.allowDocumentSnapshotWithPathOnceFilter = allowDocumentSnapshotWithPathOnceFilter;
9793
9863
  exports.allowedNotificationRecipients = allowedNotificationRecipients;
9794
9864
  exports.appNotificationTemplateTypeInfoRecordService = appNotificationTemplateTypeInfoRecordService;
9865
+ exports.arrayUpdateWithAccessorFunction = arrayUpdateWithAccessorFunction;
9795
9866
  exports.asTopLevelFieldPath = asTopLevelFieldPath;
9796
9867
  exports.asTopLevelFieldPaths = asTopLevelFieldPaths;
9797
9868
  exports.assertFirestoreUpdateHasData = assertFirestoreUpdateHasData;
@@ -9870,6 +9941,7 @@ exports.firestoreBitwiseSet = firestoreBitwiseSet;
9870
9941
  exports.firestoreBitwiseSetMap = firestoreBitwiseSetMap;
9871
9942
  exports.firestoreBoolean = firestoreBoolean;
9872
9943
  exports.firestoreClientAccessorDriver = firestoreClientAccessorDriver;
9944
+ exports.firestoreClientArrayUpdateToUpdateData = firestoreClientArrayUpdateToUpdateData;
9873
9945
  exports.firestoreClientIncrementUpdateToUpdateData = firestoreClientIncrementUpdateToUpdateData;
9874
9946
  exports.firestoreCollectionQueryFactory = firestoreCollectionQueryFactory;
9875
9947
  exports.firestoreContextFactory = firestoreContextFactory;
package/index.esm.js CHANGED
@@ -1,4 +1,4 @@
1
- import { increment, onSnapshot, getDoc, deleteDoc, setDoc, updateDoc, doc, collectionGroup, collection, runTransaction, writeBatch, limit as limit$1, limitToLast as limitToLast$1, orderBy as orderBy$1, documentId, where as where$1, startAt as startAt$1, startAfter as startAfter$1, endAt as endAt$1, endBefore as endBefore$1, getCountFromServer, getDocs, query } from 'firebase/firestore';
1
+ import { increment, arrayUnion, arrayRemove, onSnapshot, getDoc, deleteDoc, setDoc, updateDoc, doc, collectionGroup, collection, runTransaction, writeBatch, limit as limit$1, limitToLast as limitToLast$1, orderBy as orderBy$1, documentId, where as where$1, startAt as startAt$1, startAfter as startAfter$1, endAt as endAt$1, endBefore as endBefore$1, getCountFromServer, getDocs, query } from 'firebase/firestore';
2
2
  import { cachedGetter, mergeModifiers, asArray, filterUndefinedValues, objectHasNoKeys, filterFalsyAndEmptyValues, build, wrapUseAsyncFunction, makeWithFactory, performMakeLoop, runAsyncTasksForValues, filterMaybeArrayValues, useAsync, toModelFieldConversions, makeModelMapFunctions, modifyModelMapFunctions, assignValuesToPOJOFunction, KeyValueTypleValueFilter, asObjectCopyFactory, passThrough, isEqualToValueDecisionFunction, transformStringFunctionConfig, transformStringFunction, isDate, transformNumberFunction, sortValuesFunctionOrMapIdentityWithSortRef, unique, isMapIdentityFunction, chainMapSameFunctions, filterUniqueFunction, filterUniqueTransform, filterFromPOJOFunction, mapObjectMapFunction, copyObject, mapObjectMap, filterEmptyArrayValues, modelFieldMapFunctions, toModelMapFunctions, latLngStringFunction, DEFAULT_LAT_LNG_STRING_VALUE, sortAscendingIndexNumberRefFunction, bitwiseSetDencoder, MAP_IDENTITY, filterNullAndUndefinedValues, convertToArray, pushItemOrArrayItemsIntoArray, separateValues, UTF_8_START_CHARACTER, UTF_PRIVATE_USAGE_AREA_START, mergeArraysIntoArray, lastValue, flattenArrayOrValueArray, performAsyncTasks, batch, allowValueOnceFilter, asGetter, getValueFromGetter, mapIdentityFunction, performTasksFromFactoryInParallelFunction, flattenArray, calculateExpirationDate, groupValues, forEachInIterable, stringContains, arrayToObject, takeFront, isOddNumber, objectToMap, ServerErrorResponse, toReadableError, capitalizeFirstLetter, lowercaseFirstLetter, toRelativeSlashPathStartType, mappedUseFunction, iterableToArray, setContainsAllValues, usePromise, slashPathFactory, errorMessageContainsString, bitwiseObjectDencoder, updateMaybeValue, mergeObjects, mergeObjectsFunction, UNSET_INDEX_NUMBER, forEachKeyValue, ModelRelationUtility, filterKeysOnPOJOFunction, areEqualPOJOValuesUsingPojoFilter, filterOnlyUndefinedValues, makeModelMap, isThrottled, MS_IN_HOUR, multiValueMapBuilder } from '@dereekb/util';
3
3
  import { filterMaybe, lazyFrom, itemAccumulator, ItemPageIterator, mappedPageItemIteration } from '@dereekb/rxjs';
4
4
  import { from, map as map$1, combineLatest, shareReplay, of, exhaustMap, Observable, switchMap, timer, skip } from 'rxjs';
@@ -132,6 +132,16 @@ class AbstractFirestoreDocumentDataAccessorWrapper {
132
132
  increment(data, params) {
133
133
  return this.accessor.increment(data, params);
134
134
  }
135
+ /**
136
+ * Updates array fields in the document.
137
+ *
138
+ * @param data - The array update to apply
139
+ * @param params - Optional parameters for the update operation
140
+ * @returns A Promise that resolves when the update operation completes
141
+ */
142
+ arrayUpdate(data, params) {
143
+ return this.accessor.arrayUpdate(data, params);
144
+ }
135
145
  }
136
146
  /**
137
147
  * Creates a function that intercepts an accessor factory to wrap all created accessors.
@@ -385,6 +395,23 @@ function incrementUpdateWithAccessorFunction(accessor) {
385
395
  };
386
396
  }
387
397
 
398
+ /**
399
+ * https://cloud.google.com/firestore/docs/samples/firestore-data-set-array-operations-async
400
+ * https://firebase.google.com/docs/firestore/manage-data/add-data#update_elements_in_an_array
401
+ *
402
+ * @param accessor
403
+ * @returns
404
+ */
405
+ function arrayUpdateWithAccessorFunction(accessor) {
406
+ return async data => {
407
+ const updateData = filterFalsyAndEmptyValues(data);
408
+ // Only update
409
+ if (!objectHasNoKeys(updateData)) {
410
+ return accessor.arrayUpdate(updateData);
411
+ }
412
+ };
413
+ }
414
+
388
415
  /*eslint @typescript-eslint/no-explicit-any:"off"*/
389
416
  // any is used with intent here, as the recursive AbstractFirestoreDocument requires its use to terminate.
390
417
  /**
@@ -497,6 +524,14 @@ class AbstractFirestoreDocument {
497
524
  increment(data) {
498
525
  return incrementUpdateWithAccessorFunction(this.accessor)(data);
499
526
  }
527
+ /**
528
+ * Updates the document using the accessor's array field update functionality.
529
+ *
530
+ * @param data
531
+ */
532
+ arrayUpdate(data) {
533
+ return arrayUpdateWithAccessorFunction(this.accessor)(data);
534
+ }
500
535
  }
501
536
  function limitedFirestoreDocumentAccessorFactory(config) {
502
537
  const {
@@ -6482,6 +6517,35 @@ function firestoreClientIncrementUpdateToUpdateData(input) {
6482
6517
  });
6483
6518
  }
6484
6519
 
6520
+ /**
6521
+ * Creates UpdateData corresponding to the input array update.
6522
+ *
6523
+ * @param input
6524
+ * @returns
6525
+ */
6526
+ function firestoreClientArrayUpdateToUpdateData(input) {
6527
+ const union = input?.union;
6528
+ const remove = input?.remove;
6529
+ function createUpdatesWithArrayFunction(fieldUpdate, arrayUpdateFunction) {
6530
+ let result;
6531
+ if (fieldUpdate) {
6532
+ result = mapObjectMap(fieldUpdate, arrayUpdate => {
6533
+ let result;
6534
+ if (arrayUpdate) {
6535
+ result = arrayUpdateFunction(...arrayUpdate); // use spread operator to insert each value as an argument, as "nested arrays" are not allowed in the Firestore
6536
+ }
6537
+ return result;
6538
+ });
6539
+ }
6540
+ return result;
6541
+ }
6542
+ const updateData = {
6543
+ ...createUpdatesWithArrayFunction(union, arrayUnion),
6544
+ ...createUpdatesWithArrayFunction(remove, arrayRemove)
6545
+ };
6546
+ return updateData;
6547
+ }
6548
+
6485
6549
  // MARK: Accessor
6486
6550
  class DefaultFirestoreDocumentDataAccessor {
6487
6551
  constructor(documentRef) {
@@ -6519,6 +6583,9 @@ class DefaultFirestoreDocumentDataAccessor {
6519
6583
  increment(data) {
6520
6584
  return this.update(firestoreClientIncrementUpdateToUpdateData(data));
6521
6585
  }
6586
+ arrayUpdate(data) {
6587
+ return this.update(firestoreClientArrayUpdateToUpdateData(data));
6588
+ }
6522
6589
  update(data) {
6523
6590
  assertFirestoreUpdateHasData(data);
6524
6591
  return updateDoc(this.documentRef, data);
@@ -6636,6 +6703,9 @@ class TransactionFirestoreDocumentDataAccessor {
6636
6703
  increment(data) {
6637
6704
  return this.update(firestoreClientIncrementUpdateToUpdateData(data));
6638
6705
  }
6706
+ arrayUpdate(data) {
6707
+ return this.update(firestoreClientArrayUpdateToUpdateData(data));
6708
+ }
6639
6709
  update(data) {
6640
6710
  assertFirestoreUpdateHasData(data);
6641
6711
  this.transaction.update(this.documentRef, data);
@@ -9658,4 +9728,4 @@ function systemStateFirestoreCollection(firestoreContext, converters) {
9658
9728
  });
9659
9729
  }
9660
9730
 
9661
- export { AbstractFirestoreDocument, AbstractFirestoreDocumentDataAccessorWrapper, AbstractFirestoreDocumentWithParent, AbstractSubscribeOrUnsubscribeToNotificationBoxParams, AbstractSubscribeToNotificationBoxParams, AppNotificationTemplateTypeInfoRecordService, BASE_MODEL_STORAGE_FILE_PATH, CALL_MODEL_APP_FUNCTION_KEY, COPY_USER_RELATED_DATA_ACCESSOR_FACTORY_FUNCTION, CREATE_NOTIFICATION_ID_REQUIRED_ERROR_CODE, CleanupSentNotificationsParams, ContextGrantedModelRolesReaderInstance, CreateNotificationBoxParams, CreateNotificationSummaryParams, CreateNotificationUserParams, DEFAULT_DATE_CELL_RANGE_VALUE, DEFAULT_FIRESTORE_DATE_CELL_SCHEDULE_VALUE, DEFAULT_FIRESTORE_ITEM_PAGE_ITERATOR_ITEMS_PER_PAGE, DEFAULT_FIRESTORE_STRING_FIELD_VALUE, DEFAULT_FIRESTORE_UNITED_STATES_ADDRESS_VALUE, DEFAULT_FIRESTORE_WEBSITE_FILE_LINK_VALUE, DEFAULT_ITERATE_FIRESTORE_DOCUMENT_SNAPSHOT_BATCHES_BATCH_SIZE, DEFAULT_NOTIFICATION_TEMPLATE_TYPE, DEFAULT_QUERY_CHANGE_WATCHER_DELAY, DEFAULT_SINGLE_ITEM_FIRESTORE_COLLECTION_DOCUMENT_IDENTIFIER, DEFAULT_WEBSITE_LINK, FIREBASE_AUTH_NETWORK_REQUEST_ERROR, FIREBASE_AUTH_NETWORK_REQUEST_FAILED, FIREBASE_AUTH_PASSWORD_MAX_LENGTH, FIREBASE_AUTH_PASSWORD_MIN_LENGTH, FIREBASE_AUTH_USER_NOT_FOUND_ERROR, FIREBASE_AUTH_WRONG_PASSWORD, FIREBASE_DEVELOPMENT_FUNCTIONS_MAP_KEY, FIREBASE_SERVER_AUTH_CLAIMS_RESET_LAST_COM_DATE_KEY, FIREBASE_SERVER_AUTH_CLAIMS_RESET_PASSWORD_KEY, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_LAST_COM_DATE_KEY, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_PASSWORD_KEY, FIRESTORE_CLIENT_QUERY_CONSTRAINT_HANDLER_MAPPING, FIRESTORE_COLLECTION_NAME_SEPARATOR, FIRESTORE_DUMMY_MODEL_KEY, FIRESTORE_EMPTY_VALUE, FIRESTORE_END_AT_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_AT_VALUE_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_BEFORE_QUERY_CONSTRAINT_TYPE, FIRESTORE_ITEM_PAGE_ITERATOR, FIRESTORE_ITEM_PAGE_ITERATOR_DELEGATE, FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE, FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE, FIRESTORE_MAX_WHERE_IN_FILTER_ARGS_COUNT, FIRESTORE_MODEL_ID_REGEX, FIRESTORE_MODEL_KEY_REGEX, FIRESTORE_MODEL_KEY_REGEX_STRICT, FIRESTORE_OFFSET_QUERY_CONSTRAINT_TYPE, FIRESTORE_ORDER_BY_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, FIRESTORE_ORDER_BY_QUERY_CONSTRAINT_TYPE, FIRESTORE_PASSTHROUGH_FIELD, FIRESTORE_PERMISSION_DENIED_ERROR_CODE, FIRESTORE_START_AFTER_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AT_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AT_VALUE_QUERY_CONSTRAINT_TYPE, FIRESTORE_WHERE_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE, FirebaseDevelopmentFunctions, FirebaseModelPermissionServiceInstance, FirebaseServerError, FirestoreAccessorStreamMode, FirestoreDocumentContextType, InferredTargetModelIdParams, InferredTargetModelParams, InitializeAllApplicableNotificationBoxesParams, InitializeAllApplicableNotificationSummariesParams, InitializeNotificationModelParams, IsFirestoreModelId, IsFirestoreModelIdOrKey, IsFirestoreModelKey, MAX_FIRESTORE_MAP_ZOOM_LEVEL_VALUE, MIN_FIRESTORE_MAP_ZOOM_LEVEL_VALUE, MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_DEFAULT, MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_SPLITTER, MODEL_STORAGE_FILE_SLASH_PATH_FACTORY, ModifyBeforeSetFirestoreDocumentDataAccessorWrapper, NOTIFICATION_BOX_DOES_NOT_EXIST_ERROR_CODE, NOTIFICATION_BOX_EXISTS_FOR_MODEL_ERROR_CODE, NOTIFICATION_BOX_RECIPIENT_DOES_NOT_EXIST_ERROR_CODE, NOTIFICATION_MESSAGE_MAX_LENGTH, NOTIFICATION_MESSAGE_MIN_LENGTH, NOTIFICATION_MODEL_ALREADY_INITIALIZED_ERROR_CODE, NOTIFICATION_RECIPIENT_NAME_MAX_LENGTH, NOTIFICATION_RECIPIENT_NAME_MIN_LENGTH, NOTIFICATION_SUBJECT_MAX_LENGTH, NOTIFICATION_SUBJECT_MIN_LENGTH, NOTIFICATION_SUMMARY_EMBEDDED_NOTIFICATION_ITEM_MESSAGE_MAX_LENGTH, NOTIFICATION_SUMMARY_EMBEDDED_NOTIFICATION_ITEM_SUBJECT_MAX_LENGTH, NOTIFICATION_SUMMARY_ITEM_LIMIT, NOTIFICATION_USER_BLOCKED_FROM_BEING_ADD_TO_RECIPIENTS_ERROR_CODE, NOTIFICATION_USER_INVALID_UID_FOR_CREATE_ERROR_CODE, NOTIFICATION_USER_LOCKED_CONFIG_FROM_BEING_UPDATED_ERROR_CODE, NOTIFICATION_WEEK_NOTIFICATION_ITEM_LIMIT, NotificationBoxDocument, NotificationBoxRecipientFlag, NotificationBoxRecipientTemplateConfigArrayEntryParam, NotificationBoxRecipientTemplateConfigBoolean, NotificationDocument, NotificationFirestoreCollections, NotificationFunctions, NotificationMessageFlag, NotificationRecipientParams, NotificationRecipientSendFlag, NotificationSendState, NotificationSendType, NotificationSummaryDocument, NotificationType, NotificationUserDocument, NotificationWeekDocument, RUN_DEV_FUNCTION_APP_FUNCTION_KEY, ResyncAllNotificationUserParams, ResyncNotificationUserParams, SCHEDULED_FUNCTION_DEV_FUNCTION_SPECIFIER, ScheduledFunctionDevelopmentFirebaseFunctionListEntry, ScheduledFunctionDevelopmentFirebaseFunctionParams, ScheduledFunctionDevelopmentFunctionTypeEnum, SendNotificationParams, SendQueuedNotificationsParams, SystemStateDocument, SystemStateFirestoreCollections, TargetModelIdParams, TargetModelParams, UpdateNotificationBoxParams, UpdateNotificationBoxRecipientLikeParams, UpdateNotificationBoxRecipientParams, UpdateNotificationSummaryParams, UpdateNotificationUserDefaultNotificationBoxRecipientConfigParams, UpdateNotificationUserNotificationBoxRecipientParams, UpdateNotificationUserParams, addConstraintToBuilder, addOrReplaceLimitInConstraints, allChildDocumentsUnderParent, allChildDocumentsUnderParentPath, allChildDocumentsUnderRelativePath, allowDocumentSnapshotWithPathOnceFilter, allowedNotificationRecipients, appNotificationTemplateTypeInfoRecordService, asTopLevelFieldPath, asTopLevelFieldPaths, assertFirestoreUpdateHasData, assertStorageUploadOptionsStringFormat, assignDateCellRangeFunction, assignDateCellScheduleFunction, assignUnitedStatesAddressFunction, assignWebsiteFileLinkFunction, assignWebsiteLinkFunction, buildFirebaseCollectionTypeModelTypeMap, callModelFirebaseFunctionMapFactory, childFirestoreModelKey, childFirestoreModelKeyPath, childFirestoreModelKeys, clientFirebaseFirestoreContextFactory, clientFirebaseStorageContextFactory, contextGrantedModelRolesReader, contextGrantedModelRolesReaderDoesNotExistErrorMessage, contextGrantedModelRolesReaderPermissionErrorMessage, convertHttpsCallableErrorToReadableError, copyDocumentIdForUserRelatedModifierFunction, copyDocumentIdToFieldModifierFunction, copyUserRelatedDataAccessorFactoryFunction, copyUserRelatedDataModifierConfig, createNotificationDocument, createNotificationDocumentIfSending, createNotificationDocumentPair, createNotificationTemplate, dataFromDocumentSnapshots, dataFromSnapshotStream, developmentFirebaseFunctionMapFactory, directDataHttpsCallable, documentData, documentDataFunction, documentDataWithIdAndKey, documentReferenceFromDocument, documentReferencesFromDocuments, documentReferencesFromSnapshot, effectiveNotificationBoxRecipientConfig, effectiveNotificationBoxRecipientTemplateConfig, endAt, endAtValue, endBefore, extendFirestoreCollectionWithSingleDocumentAccessor, filterConstraintsOfType, filterDisallowedFirestoreItemPageIteratorInputConstraints, filterDisallowedFirestoreItemPageIteratorInputContraints, filterRepeatCheckpointSnapshots, filterWithDateRange, firebaseAuthErrorToReadableError, firebaseFirestoreClientDrivers, firebaseFirestoreQueryConstraintFunctionsDriver, firebaseFirestoreQueryDriver, firebaseFunctionMapFactory, firebaseModelLoader, firebaseModelPermissionService, firebaseModelService, firebaseModelServiceFactory, firebaseModelsService, firebaseQueryItemAccumulator, firebaseQuerySnapshotAccumulator, firebaseStorageBucketFolderPath, firebaseStorageClientAccessorDriver, firebaseStorageClientAccessorFile, firebaseStorageClientAccessorFolder, firebaseStorageClientDrivers, firebaseStorageClientListFilesResultFactory, firebaseStorageContextFactory, firebaseStorageFileExists, firebaseStorageFilePathFromStorageFilePath, firebaseStorageRefForStorageFilePath, firestoreArray, firestoreArrayMap, firestoreBitwiseObjectMap, firestoreBitwiseSet, firestoreBitwiseSetMap, firestoreBoolean, firestoreClientAccessorDriver, firestoreClientIncrementUpdateToUpdateData, firestoreCollectionQueryFactory, firestoreContextFactory, firestoreDate, firestoreDateCellRange, firestoreDateCellRangeArray, firestoreDateCellRangeAssignFn, firestoreDateCellSchedule, firestoreDateCellScheduleAssignFn, firestoreDencoderArray, firestoreDencoderMap, firestoreDencoderStringArray, firestoreDocumentAccessorContextExtension, firestoreDocumentAccessorFactory, firestoreDocumentLoader, firestoreDocumentSnapshotPairsLoader, firestoreDocumentSnapshotPairsLoaderInstance, firestoreDummyKey, firestoreEncodedArray, firestoreEncodedObjectMap, firestoreEnum, firestoreEnumArray, firestoreField, firestoreFieldConfigToModelMapFunctionsRef, firestoreIdBatchVerifierFactory, firestoreIdentityTypeArray, firestoreIdentityTypeArrayName, firestoreItemPageIteration, firestoreItemPageIterationFactory, firestoreLatLngString, firestoreMap, firestoreMapZoomLevel, firestoreModelId, firestoreModelIdArrayField, firestoreModelIdFromDocument, firestoreModelIdGrantedRoleArrayMap, firestoreModelIdGrantedRoleMap, firestoreModelIdString, firestoreModelIdentity, firestoreModelIdentityTypeMap, firestoreModelIdsFromDocuments, firestoreModelIdsFromKey, firestoreModelKey, firestoreModelKeyArrayField, firestoreModelKeyCollectionName, firestoreModelKeyCollectionType, firestoreModelKeyCollectionTypeArray, firestoreModelKeyCollectionTypeArrayName, firestoreModelKeyCollectionTypePair, firestoreModelKeyEncodedGrantedRoleMap, firestoreModelKeyFromDocument, firestoreModelKeyGrantedRoleArrayMap, firestoreModelKeyGrantedRoleMap, firestoreModelKeyPairObject, firestoreModelKeyParentKey, firestoreModelKeyParentKeyPartPairs, firestoreModelKeyPart, firestoreModelKeyPartPairs, firestoreModelKeyPartPairsKeyPath, firestoreModelKeyPartPairsPaths, firestoreModelKeyPath, firestoreModelKeyString, firestoreModelKeyTypePair, firestoreModelKeys, firestoreModelKeysFromDocuments, firestoreModelType, firestoreNotificationBoxRecipient, firestoreNotificationBoxRecipientTemplateConfigRecord, firestoreNotificationItem, firestoreNotificationRecipientWithConfig, firestoreNotificationUserDefaultNotificationBoxRecipientConfig, firestoreNotificationUserNotificationBoxRecipientConfig, firestoreNumber, firestoreObjectArray, firestorePassThroughField, firestoreQueryConstraint, firestoreQueryConstraintFactory, firestoreQueryDocumentSnapshotPairsLoader, firestoreQueryFactory, firestoreSingleDocumentAccessor, firestoreString, firestoreSubObject, firestoreTimezoneString, firestoreUID, firestoreUniqueArray, firestoreUniqueKeyedArray, firestoreUniqueNumberArray, firestoreUniqueStringArray, firestoreUnitedStatesAddress, firestoreUnitedStatesAddressAssignFn, firestoreUpdateWithNoDataError, firestoreWebsiteFileLink, firestoreWebsiteFileLinkAssignFn, firestoreWebsiteFileLinkEncodedArray, firestoreWebsiteFileLinkObjectArray, firestoreWebsiteLink, firestoreWebsiteLinkArray, firestoreWebsiteLinkAssignFn, flatFirestoreModelKey, getDataFromDocumentSnapshots, getDocumentSnapshotData, getDocumentSnapshotDataPair, getDocumentSnapshotDataPairs, getDocumentSnapshotDataPairsWithData, getDocumentSnapshotDataTuples, getDocumentSnapshotPair, getDocumentSnapshotPairs, getDocumentSnapshots, getDocumentSnapshotsData, grantFullAccessIfAdmin, grantFullAccessIfAuthUserRelated, grantModelRolesIfAdmin, grantModelRolesIfAdminFunction, grantModelRolesIfAuthUserRelatedModelFunction, grantModelRolesIfFunction, grantModelRolesIfHasAuthRolesFactory, grantModelRolesIfHasAuthRolesFunction, grantModelRolesOnlyIfFunction, inContextFirebaseModelServiceFactory, inContextFirebaseModelsServiceFactory, incrementUpdateWithAccessorFunction, inferKeyFromTwoWayFlatFirestoreModelKey, inferNotificationBoxRelatedModelKey, interceptAccessorFactoryFunction, isAdminInFirebaseModelContext, isClientFirebaseError, isCompleteNotificationSendState, isFirebaseStorageObjectNotFoundError, isFirestoreModelId, isFirestoreModelIdOrKey, isFirestoreModelKey, isOwnerOfUserRelatedModelInFirebaseModelContext, iterateFirestoreDocumentSnapshotBatches, iterateFirestoreDocumentSnapshotCheckpoints, iterateFirestoreDocumentSnapshotPairBatches, iterateFirestoreDocumentSnapshotPairs, iterateFirestoreDocumentSnapshots, iterationQueryDocChangeWatcher, iterationQueryDocChangeWatcherChangeTypeForGroup, latestDataFromDocuments, latestSnapshotsFromDocuments, lazyFirebaseFunctionsFactory, limit, limitToLast, limitedFirestoreDocumentAccessorFactory, loadAllFirestoreDocumentSnapshot, loadAllFirestoreDocumentSnapshotPairs, loadDocumentsForDocumentReferences, loadDocumentsForDocumentReferencesFromValues, loadDocumentsForIds, loadDocumentsForIdsFromValues, loadDocumentsForKeys, loadDocumentsForKeysFromValues, loadDocumentsForSnapshots, loadDocumentsForValues, loadNotificationBoxDocumentForReferencePair, makeDocuments, makeFirestoreCollection, makeFirestoreCollectionGroup, makeFirestoreCollectionWithParent, makeFirestoreItemPageIteratorDelegate, makeFirestoreQueryConstraintFunctionsDriver, makeRootSingleItemFirestoreCollection, makeSingleItemFirestoreCollection, mapDataFromSnapshot, mapHttpsCallable, mergeNotificationBoxRecipientTemplateConfigRecords, mergeNotificationBoxRecipientTemplateConfigs, mergeNotificationBoxRecipients, mergeNotificationSendMessagesResult, mergeNotificationUserDefaultNotificationBoxRecipientConfig, mergeNotificationUserNotificationBoxRecipientConfigs, modelStorageSlashPathFactory, modifyBeforeSetInterceptAccessorFactoryFunction, newDocuments, newNotificationBoxRecipientForUid, noContentNotificationMessageFunctionFactory, noStringFormatInStorageUploadOptionsError, notificationBoxCollectionReference, notificationBoxConverter, notificationBoxFirestoreCollection, notificationBoxIdForModel, notificationBoxIdentity, notificationBoxModelCrudFunctionsConfig, notificationBoxRecipientTemplateConfigArrayToRecord, notificationBoxRecipientTemplateConfigRecordToArray, notificationBoxesFlaggedForNeedsInitializationQuery, notificationBoxesFlaggedInvalidQuery, notificationCollectionReference, notificationCollectionReferenceFactory, notificationConverter, notificationFirestoreCollectionFactory, notificationFirestoreCollectionGroup, notificationFunctionMap, notificationFunctionTypeConfigMap, notificationIdentity, notificationMessageFunction, notificationSendFlagsImplyIsComplete, notificationSummariesFlaggedForNeedsInitializationQuery, notificationSummaryCollectionReference, notificationSummaryConverter, notificationSummaryFirestoreCollection, notificationSummaryIdForModel, notificationSummaryIdForUidFunctionForRootFirestoreModelIdentity, notificationSummaryIdentity, notificationTemplateTypeDetailsRecord, notificationTemplateTypeInfoRecord, notificationUserCollectionReference, notificationUserConverter, notificationUserFirestoreCollection, notificationUserIdentity, notificationUsersFlaggedForNeedsSyncQuery, notificationWeekCollectionReference, notificationWeekCollectionReferenceFactory, notificationWeekConverter, notificationWeekFirestoreCollectionFactory, notificationWeekFirestoreCollectionGroup, notificationWeekIdentity, notificationsPastSendAtTimeQuery, notificationsReadyForCleanupQuery, offset, onCallCreateModelParams, onCallCreateModelResult, onCallCreateModelResultWithDocs, onCallDeleteModelParams, onCallDevelopmentParams, onCallReadModelParams, onCallTypedModelParams, onCallTypedModelParamsFunction, onCallUpdateModelParams, optionalFirestoreArray, optionalFirestoreBoolean, optionalFirestoreDate, optionalFirestoreEnum, optionalFirestoreField, optionalFirestoreNumber, optionalFirestoreString, optionalFirestoreUID, optionalFirestoreUnitedStatesAddress, orderBy, orderByDocumentId, readFirestoreModelKey, readFirestoreModelKeyFromDocumentSnapshot, replaceConstraints, selectFromFirebaseModelsService, separateConstraints, setIdAndKeyFromKeyIdRefOnDocumentData, setIdAndKeyFromSnapshotOnDocumentData, shouldSaveNotificationToNotificationWeek, shouldSendCreatedNotificationInput, snapshotConverterFunctions, snapshotStreamDataForAccessor, snapshotStreamForAccessor, sortNotificationItemsFunction, startAfter, startAt, startAtValue, storageListFilesResultFactory, storageListFilesResultHasNoNextError, storagePathFactory, streamFromOnSnapshot, systemStateCollectionReference, systemStateConverter, systemStateFirestoreCollection, systemStateIdentity, twoWayFlatFirestoreModelKey, unreadNotificationItems, unsupportedFirestoreDriverFunctionError, updateNotificationBoxRecipientTemplateConfigRecord, updateNotificationRecipient, updateNotificationUserDefaultNotificationBoxRecipientConfig, updateNotificationUserNotificationBoxRecipientConfigIfChanged, updateNotificationUserNotificationBoxRecipientConfigs, updateWithAccessorUpdateAndConverterFunction, useContextAuth, useContextAuthUid, useDocumentSnapshot, useDocumentSnapshotData, useFirebaseModelsService, where, whereDateIsAfter, whereDateIsAfterWithSort, whereDateIsBefore, whereDateIsBeforeWithSort, whereDateIsBetween, whereDateIsInRange, whereDateIsOnOrAfter, whereDateIsOnOrAfterWithSort, whereDateIsOnOrBefore, whereDateIsOnOrBeforeWithSort, whereDocumentId, whereStringHasRootIdentityModelKey, whereStringValueHasPrefix };
9731
+ export { AbstractFirestoreDocument, AbstractFirestoreDocumentDataAccessorWrapper, AbstractFirestoreDocumentWithParent, AbstractSubscribeOrUnsubscribeToNotificationBoxParams, AbstractSubscribeToNotificationBoxParams, AppNotificationTemplateTypeInfoRecordService, BASE_MODEL_STORAGE_FILE_PATH, CALL_MODEL_APP_FUNCTION_KEY, COPY_USER_RELATED_DATA_ACCESSOR_FACTORY_FUNCTION, CREATE_NOTIFICATION_ID_REQUIRED_ERROR_CODE, CleanupSentNotificationsParams, ContextGrantedModelRolesReaderInstance, CreateNotificationBoxParams, CreateNotificationSummaryParams, CreateNotificationUserParams, DEFAULT_DATE_CELL_RANGE_VALUE, DEFAULT_FIRESTORE_DATE_CELL_SCHEDULE_VALUE, DEFAULT_FIRESTORE_ITEM_PAGE_ITERATOR_ITEMS_PER_PAGE, DEFAULT_FIRESTORE_STRING_FIELD_VALUE, DEFAULT_FIRESTORE_UNITED_STATES_ADDRESS_VALUE, DEFAULT_FIRESTORE_WEBSITE_FILE_LINK_VALUE, DEFAULT_ITERATE_FIRESTORE_DOCUMENT_SNAPSHOT_BATCHES_BATCH_SIZE, DEFAULT_NOTIFICATION_TEMPLATE_TYPE, DEFAULT_QUERY_CHANGE_WATCHER_DELAY, DEFAULT_SINGLE_ITEM_FIRESTORE_COLLECTION_DOCUMENT_IDENTIFIER, DEFAULT_WEBSITE_LINK, FIREBASE_AUTH_NETWORK_REQUEST_ERROR, FIREBASE_AUTH_NETWORK_REQUEST_FAILED, FIREBASE_AUTH_PASSWORD_MAX_LENGTH, FIREBASE_AUTH_PASSWORD_MIN_LENGTH, FIREBASE_AUTH_USER_NOT_FOUND_ERROR, FIREBASE_AUTH_WRONG_PASSWORD, FIREBASE_DEVELOPMENT_FUNCTIONS_MAP_KEY, FIREBASE_SERVER_AUTH_CLAIMS_RESET_LAST_COM_DATE_KEY, FIREBASE_SERVER_AUTH_CLAIMS_RESET_PASSWORD_KEY, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_LAST_COM_DATE_KEY, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_PASSWORD_KEY, FIRESTORE_CLIENT_QUERY_CONSTRAINT_HANDLER_MAPPING, FIRESTORE_COLLECTION_NAME_SEPARATOR, FIRESTORE_DUMMY_MODEL_KEY, FIRESTORE_EMPTY_VALUE, FIRESTORE_END_AT_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_AT_VALUE_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_BEFORE_QUERY_CONSTRAINT_TYPE, FIRESTORE_ITEM_PAGE_ITERATOR, FIRESTORE_ITEM_PAGE_ITERATOR_DELEGATE, FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE, FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE, FIRESTORE_MAX_WHERE_IN_FILTER_ARGS_COUNT, FIRESTORE_MODEL_ID_REGEX, FIRESTORE_MODEL_KEY_REGEX, FIRESTORE_MODEL_KEY_REGEX_STRICT, FIRESTORE_OFFSET_QUERY_CONSTRAINT_TYPE, FIRESTORE_ORDER_BY_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, FIRESTORE_ORDER_BY_QUERY_CONSTRAINT_TYPE, FIRESTORE_PASSTHROUGH_FIELD, FIRESTORE_PERMISSION_DENIED_ERROR_CODE, FIRESTORE_START_AFTER_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AT_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AT_VALUE_QUERY_CONSTRAINT_TYPE, FIRESTORE_WHERE_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE, FirebaseDevelopmentFunctions, FirebaseModelPermissionServiceInstance, FirebaseServerError, FirestoreAccessorStreamMode, FirestoreDocumentContextType, InferredTargetModelIdParams, InferredTargetModelParams, InitializeAllApplicableNotificationBoxesParams, InitializeAllApplicableNotificationSummariesParams, InitializeNotificationModelParams, IsFirestoreModelId, IsFirestoreModelIdOrKey, IsFirestoreModelKey, MAX_FIRESTORE_MAP_ZOOM_LEVEL_VALUE, MIN_FIRESTORE_MAP_ZOOM_LEVEL_VALUE, MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_DEFAULT, MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_SPLITTER, MODEL_STORAGE_FILE_SLASH_PATH_FACTORY, ModifyBeforeSetFirestoreDocumentDataAccessorWrapper, NOTIFICATION_BOX_DOES_NOT_EXIST_ERROR_CODE, NOTIFICATION_BOX_EXISTS_FOR_MODEL_ERROR_CODE, NOTIFICATION_BOX_RECIPIENT_DOES_NOT_EXIST_ERROR_CODE, NOTIFICATION_MESSAGE_MAX_LENGTH, NOTIFICATION_MESSAGE_MIN_LENGTH, NOTIFICATION_MODEL_ALREADY_INITIALIZED_ERROR_CODE, NOTIFICATION_RECIPIENT_NAME_MAX_LENGTH, NOTIFICATION_RECIPIENT_NAME_MIN_LENGTH, NOTIFICATION_SUBJECT_MAX_LENGTH, NOTIFICATION_SUBJECT_MIN_LENGTH, NOTIFICATION_SUMMARY_EMBEDDED_NOTIFICATION_ITEM_MESSAGE_MAX_LENGTH, NOTIFICATION_SUMMARY_EMBEDDED_NOTIFICATION_ITEM_SUBJECT_MAX_LENGTH, NOTIFICATION_SUMMARY_ITEM_LIMIT, NOTIFICATION_USER_BLOCKED_FROM_BEING_ADD_TO_RECIPIENTS_ERROR_CODE, NOTIFICATION_USER_INVALID_UID_FOR_CREATE_ERROR_CODE, NOTIFICATION_USER_LOCKED_CONFIG_FROM_BEING_UPDATED_ERROR_CODE, NOTIFICATION_WEEK_NOTIFICATION_ITEM_LIMIT, NotificationBoxDocument, NotificationBoxRecipientFlag, NotificationBoxRecipientTemplateConfigArrayEntryParam, NotificationBoxRecipientTemplateConfigBoolean, NotificationDocument, NotificationFirestoreCollections, NotificationFunctions, NotificationMessageFlag, NotificationRecipientParams, NotificationRecipientSendFlag, NotificationSendState, NotificationSendType, NotificationSummaryDocument, NotificationType, NotificationUserDocument, NotificationWeekDocument, RUN_DEV_FUNCTION_APP_FUNCTION_KEY, ResyncAllNotificationUserParams, ResyncNotificationUserParams, SCHEDULED_FUNCTION_DEV_FUNCTION_SPECIFIER, ScheduledFunctionDevelopmentFirebaseFunctionListEntry, ScheduledFunctionDevelopmentFirebaseFunctionParams, ScheduledFunctionDevelopmentFunctionTypeEnum, SendNotificationParams, SendQueuedNotificationsParams, SystemStateDocument, SystemStateFirestoreCollections, TargetModelIdParams, TargetModelParams, UpdateNotificationBoxParams, UpdateNotificationBoxRecipientLikeParams, UpdateNotificationBoxRecipientParams, UpdateNotificationSummaryParams, UpdateNotificationUserDefaultNotificationBoxRecipientConfigParams, UpdateNotificationUserNotificationBoxRecipientParams, UpdateNotificationUserParams, addConstraintToBuilder, addOrReplaceLimitInConstraints, allChildDocumentsUnderParent, allChildDocumentsUnderParentPath, allChildDocumentsUnderRelativePath, allowDocumentSnapshotWithPathOnceFilter, allowedNotificationRecipients, appNotificationTemplateTypeInfoRecordService, arrayUpdateWithAccessorFunction, asTopLevelFieldPath, asTopLevelFieldPaths, assertFirestoreUpdateHasData, assertStorageUploadOptionsStringFormat, assignDateCellRangeFunction, assignDateCellScheduleFunction, assignUnitedStatesAddressFunction, assignWebsiteFileLinkFunction, assignWebsiteLinkFunction, buildFirebaseCollectionTypeModelTypeMap, callModelFirebaseFunctionMapFactory, childFirestoreModelKey, childFirestoreModelKeyPath, childFirestoreModelKeys, clientFirebaseFirestoreContextFactory, clientFirebaseStorageContextFactory, contextGrantedModelRolesReader, contextGrantedModelRolesReaderDoesNotExistErrorMessage, contextGrantedModelRolesReaderPermissionErrorMessage, convertHttpsCallableErrorToReadableError, copyDocumentIdForUserRelatedModifierFunction, copyDocumentIdToFieldModifierFunction, copyUserRelatedDataAccessorFactoryFunction, copyUserRelatedDataModifierConfig, createNotificationDocument, createNotificationDocumentIfSending, createNotificationDocumentPair, createNotificationTemplate, dataFromDocumentSnapshots, dataFromSnapshotStream, developmentFirebaseFunctionMapFactory, directDataHttpsCallable, documentData, documentDataFunction, documentDataWithIdAndKey, documentReferenceFromDocument, documentReferencesFromDocuments, documentReferencesFromSnapshot, effectiveNotificationBoxRecipientConfig, effectiveNotificationBoxRecipientTemplateConfig, endAt, endAtValue, endBefore, extendFirestoreCollectionWithSingleDocumentAccessor, filterConstraintsOfType, filterDisallowedFirestoreItemPageIteratorInputConstraints, filterDisallowedFirestoreItemPageIteratorInputContraints, filterRepeatCheckpointSnapshots, filterWithDateRange, firebaseAuthErrorToReadableError, firebaseFirestoreClientDrivers, firebaseFirestoreQueryConstraintFunctionsDriver, firebaseFirestoreQueryDriver, firebaseFunctionMapFactory, firebaseModelLoader, firebaseModelPermissionService, firebaseModelService, firebaseModelServiceFactory, firebaseModelsService, firebaseQueryItemAccumulator, firebaseQuerySnapshotAccumulator, firebaseStorageBucketFolderPath, firebaseStorageClientAccessorDriver, firebaseStorageClientAccessorFile, firebaseStorageClientAccessorFolder, firebaseStorageClientDrivers, firebaseStorageClientListFilesResultFactory, firebaseStorageContextFactory, firebaseStorageFileExists, firebaseStorageFilePathFromStorageFilePath, firebaseStorageRefForStorageFilePath, firestoreArray, firestoreArrayMap, firestoreBitwiseObjectMap, firestoreBitwiseSet, firestoreBitwiseSetMap, firestoreBoolean, firestoreClientAccessorDriver, firestoreClientArrayUpdateToUpdateData, firestoreClientIncrementUpdateToUpdateData, firestoreCollectionQueryFactory, firestoreContextFactory, firestoreDate, firestoreDateCellRange, firestoreDateCellRangeArray, firestoreDateCellRangeAssignFn, firestoreDateCellSchedule, firestoreDateCellScheduleAssignFn, firestoreDencoderArray, firestoreDencoderMap, firestoreDencoderStringArray, firestoreDocumentAccessorContextExtension, firestoreDocumentAccessorFactory, firestoreDocumentLoader, firestoreDocumentSnapshotPairsLoader, firestoreDocumentSnapshotPairsLoaderInstance, firestoreDummyKey, firestoreEncodedArray, firestoreEncodedObjectMap, firestoreEnum, firestoreEnumArray, firestoreField, firestoreFieldConfigToModelMapFunctionsRef, firestoreIdBatchVerifierFactory, firestoreIdentityTypeArray, firestoreIdentityTypeArrayName, firestoreItemPageIteration, firestoreItemPageIterationFactory, firestoreLatLngString, firestoreMap, firestoreMapZoomLevel, firestoreModelId, firestoreModelIdArrayField, firestoreModelIdFromDocument, firestoreModelIdGrantedRoleArrayMap, firestoreModelIdGrantedRoleMap, firestoreModelIdString, firestoreModelIdentity, firestoreModelIdentityTypeMap, firestoreModelIdsFromDocuments, firestoreModelIdsFromKey, firestoreModelKey, firestoreModelKeyArrayField, firestoreModelKeyCollectionName, firestoreModelKeyCollectionType, firestoreModelKeyCollectionTypeArray, firestoreModelKeyCollectionTypeArrayName, firestoreModelKeyCollectionTypePair, firestoreModelKeyEncodedGrantedRoleMap, firestoreModelKeyFromDocument, firestoreModelKeyGrantedRoleArrayMap, firestoreModelKeyGrantedRoleMap, firestoreModelKeyPairObject, firestoreModelKeyParentKey, firestoreModelKeyParentKeyPartPairs, firestoreModelKeyPart, firestoreModelKeyPartPairs, firestoreModelKeyPartPairsKeyPath, firestoreModelKeyPartPairsPaths, firestoreModelKeyPath, firestoreModelKeyString, firestoreModelKeyTypePair, firestoreModelKeys, firestoreModelKeysFromDocuments, firestoreModelType, firestoreNotificationBoxRecipient, firestoreNotificationBoxRecipientTemplateConfigRecord, firestoreNotificationItem, firestoreNotificationRecipientWithConfig, firestoreNotificationUserDefaultNotificationBoxRecipientConfig, firestoreNotificationUserNotificationBoxRecipientConfig, firestoreNumber, firestoreObjectArray, firestorePassThroughField, firestoreQueryConstraint, firestoreQueryConstraintFactory, firestoreQueryDocumentSnapshotPairsLoader, firestoreQueryFactory, firestoreSingleDocumentAccessor, firestoreString, firestoreSubObject, firestoreTimezoneString, firestoreUID, firestoreUniqueArray, firestoreUniqueKeyedArray, firestoreUniqueNumberArray, firestoreUniqueStringArray, firestoreUnitedStatesAddress, firestoreUnitedStatesAddressAssignFn, firestoreUpdateWithNoDataError, firestoreWebsiteFileLink, firestoreWebsiteFileLinkAssignFn, firestoreWebsiteFileLinkEncodedArray, firestoreWebsiteFileLinkObjectArray, firestoreWebsiteLink, firestoreWebsiteLinkArray, firestoreWebsiteLinkAssignFn, flatFirestoreModelKey, getDataFromDocumentSnapshots, getDocumentSnapshotData, getDocumentSnapshotDataPair, getDocumentSnapshotDataPairs, getDocumentSnapshotDataPairsWithData, getDocumentSnapshotDataTuples, getDocumentSnapshotPair, getDocumentSnapshotPairs, getDocumentSnapshots, getDocumentSnapshotsData, grantFullAccessIfAdmin, grantFullAccessIfAuthUserRelated, grantModelRolesIfAdmin, grantModelRolesIfAdminFunction, grantModelRolesIfAuthUserRelatedModelFunction, grantModelRolesIfFunction, grantModelRolesIfHasAuthRolesFactory, grantModelRolesIfHasAuthRolesFunction, grantModelRolesOnlyIfFunction, inContextFirebaseModelServiceFactory, inContextFirebaseModelsServiceFactory, incrementUpdateWithAccessorFunction, inferKeyFromTwoWayFlatFirestoreModelKey, inferNotificationBoxRelatedModelKey, interceptAccessorFactoryFunction, isAdminInFirebaseModelContext, isClientFirebaseError, isCompleteNotificationSendState, isFirebaseStorageObjectNotFoundError, isFirestoreModelId, isFirestoreModelIdOrKey, isFirestoreModelKey, isOwnerOfUserRelatedModelInFirebaseModelContext, iterateFirestoreDocumentSnapshotBatches, iterateFirestoreDocumentSnapshotCheckpoints, iterateFirestoreDocumentSnapshotPairBatches, iterateFirestoreDocumentSnapshotPairs, iterateFirestoreDocumentSnapshots, iterationQueryDocChangeWatcher, iterationQueryDocChangeWatcherChangeTypeForGroup, latestDataFromDocuments, latestSnapshotsFromDocuments, lazyFirebaseFunctionsFactory, limit, limitToLast, limitedFirestoreDocumentAccessorFactory, loadAllFirestoreDocumentSnapshot, loadAllFirestoreDocumentSnapshotPairs, loadDocumentsForDocumentReferences, loadDocumentsForDocumentReferencesFromValues, loadDocumentsForIds, loadDocumentsForIdsFromValues, loadDocumentsForKeys, loadDocumentsForKeysFromValues, loadDocumentsForSnapshots, loadDocumentsForValues, loadNotificationBoxDocumentForReferencePair, makeDocuments, makeFirestoreCollection, makeFirestoreCollectionGroup, makeFirestoreCollectionWithParent, makeFirestoreItemPageIteratorDelegate, makeFirestoreQueryConstraintFunctionsDriver, makeRootSingleItemFirestoreCollection, makeSingleItemFirestoreCollection, mapDataFromSnapshot, mapHttpsCallable, mergeNotificationBoxRecipientTemplateConfigRecords, mergeNotificationBoxRecipientTemplateConfigs, mergeNotificationBoxRecipients, mergeNotificationSendMessagesResult, mergeNotificationUserDefaultNotificationBoxRecipientConfig, mergeNotificationUserNotificationBoxRecipientConfigs, modelStorageSlashPathFactory, modifyBeforeSetInterceptAccessorFactoryFunction, newDocuments, newNotificationBoxRecipientForUid, noContentNotificationMessageFunctionFactory, noStringFormatInStorageUploadOptionsError, notificationBoxCollectionReference, notificationBoxConverter, notificationBoxFirestoreCollection, notificationBoxIdForModel, notificationBoxIdentity, notificationBoxModelCrudFunctionsConfig, notificationBoxRecipientTemplateConfigArrayToRecord, notificationBoxRecipientTemplateConfigRecordToArray, notificationBoxesFlaggedForNeedsInitializationQuery, notificationBoxesFlaggedInvalidQuery, notificationCollectionReference, notificationCollectionReferenceFactory, notificationConverter, notificationFirestoreCollectionFactory, notificationFirestoreCollectionGroup, notificationFunctionMap, notificationFunctionTypeConfigMap, notificationIdentity, notificationMessageFunction, notificationSendFlagsImplyIsComplete, notificationSummariesFlaggedForNeedsInitializationQuery, notificationSummaryCollectionReference, notificationSummaryConverter, notificationSummaryFirestoreCollection, notificationSummaryIdForModel, notificationSummaryIdForUidFunctionForRootFirestoreModelIdentity, notificationSummaryIdentity, notificationTemplateTypeDetailsRecord, notificationTemplateTypeInfoRecord, notificationUserCollectionReference, notificationUserConverter, notificationUserFirestoreCollection, notificationUserIdentity, notificationUsersFlaggedForNeedsSyncQuery, notificationWeekCollectionReference, notificationWeekCollectionReferenceFactory, notificationWeekConverter, notificationWeekFirestoreCollectionFactory, notificationWeekFirestoreCollectionGroup, notificationWeekIdentity, notificationsPastSendAtTimeQuery, notificationsReadyForCleanupQuery, offset, onCallCreateModelParams, onCallCreateModelResult, onCallCreateModelResultWithDocs, onCallDeleteModelParams, onCallDevelopmentParams, onCallReadModelParams, onCallTypedModelParams, onCallTypedModelParamsFunction, onCallUpdateModelParams, optionalFirestoreArray, optionalFirestoreBoolean, optionalFirestoreDate, optionalFirestoreEnum, optionalFirestoreField, optionalFirestoreNumber, optionalFirestoreString, optionalFirestoreUID, optionalFirestoreUnitedStatesAddress, orderBy, orderByDocumentId, readFirestoreModelKey, readFirestoreModelKeyFromDocumentSnapshot, replaceConstraints, selectFromFirebaseModelsService, separateConstraints, setIdAndKeyFromKeyIdRefOnDocumentData, setIdAndKeyFromSnapshotOnDocumentData, shouldSaveNotificationToNotificationWeek, shouldSendCreatedNotificationInput, snapshotConverterFunctions, snapshotStreamDataForAccessor, snapshotStreamForAccessor, sortNotificationItemsFunction, startAfter, startAt, startAtValue, storageListFilesResultFactory, storageListFilesResultHasNoNextError, storagePathFactory, streamFromOnSnapshot, systemStateCollectionReference, systemStateConverter, systemStateFirestoreCollection, systemStateIdentity, twoWayFlatFirestoreModelKey, unreadNotificationItems, unsupportedFirestoreDriverFunctionError, updateNotificationBoxRecipientTemplateConfigRecord, updateNotificationRecipient, updateNotificationUserDefaultNotificationBoxRecipientConfig, updateNotificationUserNotificationBoxRecipientConfigIfChanged, updateNotificationUserNotificationBoxRecipientConfigs, updateWithAccessorUpdateAndConverterFunction, useContextAuth, useContextAuthUid, useDocumentSnapshot, useDocumentSnapshotData, useFirebaseModelsService, where, whereDateIsAfter, whereDateIsAfterWithSort, whereDateIsBefore, whereDateIsBeforeWithSort, whereDateIsBetween, whereDateIsInRange, whereDateIsOnOrAfter, whereDateIsOnOrAfterWithSort, whereDateIsOnOrBefore, whereDateIsOnOrBeforeWithSort, whereDocumentId, whereStringHasRootIdentityModelKey, whereStringValueHasPrefix };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dereekb/firebase",
3
- "version": "12.1.9",
3
+ "version": "12.1.10",
4
4
  "exports": {
5
5
  ".": {
6
6
  "types": "./src/index.d.ts",
@@ -0,0 +1,9 @@
1
+ import { type FirestoreAccessorArrayUpdate } from '../../common/firestore/accessor/accessor';
2
+ import { type UpdateData } from '../../common/firestore/types';
3
+ /**
4
+ * Creates UpdateData corresponding to the input array update.
5
+ *
6
+ * @param input
7
+ * @returns
8
+ */
9
+ export declare function firestoreClientArrayUpdateToUpdateData<T extends object>(input: FirestoreAccessorArrayUpdate<T>): UpdateData<T>;
@@ -1,6 +1,6 @@
1
1
  import { type DocumentReference, type DocumentSnapshot, type UpdateData, type WithFieldValue } from 'firebase/firestore';
2
2
  import { type Observable } from 'rxjs';
3
- import { type DocumentData, type FirestoreAccessorIncrementUpdate, type FirestoreDataConverter, type FirestoreDocumentContext, type FirestoreDocumentDataAccessor, type FirestoreDocumentDataAccessorFactory, type SetOptions, type WriteResult } from '../../common/firestore';
3
+ import { type DocumentData, FirestoreAccessorArrayUpdate, type FirestoreAccessorIncrementUpdate, type FirestoreDataConverter, type FirestoreDocumentContext, type FirestoreDocumentDataAccessor, type FirestoreDocumentDataAccessorFactory, type SetOptions, type WriteResult } from '../../common/firestore';
4
4
  export declare class DefaultFirestoreDocumentDataAccessor<T> implements FirestoreDocumentDataAccessor<T> {
5
5
  private readonly _documentRef;
6
6
  constructor(documentRef: DocumentReference<T>);
@@ -13,6 +13,7 @@ export declare class DefaultFirestoreDocumentDataAccessor<T> implements Firestor
13
13
  delete(): Promise<void>;
14
14
  set(data: WithFieldValue<T>, options?: SetOptions): Promise<void>;
15
15
  increment(data: FirestoreAccessorIncrementUpdate<T>): Promise<void | WriteResult>;
16
+ arrayUpdate(data: FirestoreAccessorArrayUpdate<T>): Promise<void | WriteResult>;
16
17
  update(data: UpdateData<object>): Promise<void>;
17
18
  }
18
19
  export declare function defaultFirestoreAccessorFactory<T>(): FirestoreDocumentDataAccessorFactory<T>;
@@ -1,6 +1,6 @@
1
1
  import { type DocumentReference, type DocumentSnapshot, type Transaction as FirebaseFirestoreTransaction, type UpdateData, type WithFieldValue } from 'firebase/firestore';
2
2
  import { type Observable } from 'rxjs';
3
- import { type FirestoreDocumentDataAccessor, type FirestoreDocumentDataAccessorFactory, type FirestoreDocumentContext, FirestoreDocumentContextType, type SetOptions, type DocumentData, type FirestoreDataConverter, type WriteResult, type FirestoreAccessorIncrementUpdate } from '../../common/firestore';
3
+ import { type FirestoreDocumentDataAccessor, type FirestoreDocumentDataAccessorFactory, type FirestoreDocumentContext, FirestoreDocumentContextType, type SetOptions, type DocumentData, type FirestoreDataConverter, type WriteResult, type FirestoreAccessorIncrementUpdate, FirestoreAccessorArrayUpdate } from '../../common/firestore';
4
4
  /**
5
5
  * FirestoreDocumentDataAccessor implementation for a transaction.
6
6
  */
@@ -18,6 +18,7 @@ export declare class TransactionFirestoreDocumentDataAccessor<T> implements Fire
18
18
  delete(): Promise<void>;
19
19
  set(data: WithFieldValue<T>, options?: SetOptions): Promise<void>;
20
20
  increment(data: FirestoreAccessorIncrementUpdate<T>): Promise<void | WriteResult>;
21
+ arrayUpdate(data: FirestoreAccessorArrayUpdate<T>): Promise<void | WriteResult>;
21
22
  update(data: UpdateData<object>): Promise<void>;
22
23
  }
23
24
  /**
@@ -4,3 +4,4 @@ export * from './driver.query';
4
4
  export * from './error';
5
5
  export * from './firestore';
6
6
  export * from './increment';
7
+ export * from './array';
@@ -32,6 +32,30 @@ export interface FirestoreDocumentUpdateParams {
32
32
  * @template T - The document type containing numeric fields to increment
33
33
  */
34
34
  export type FirestoreAccessorIncrementUpdate<T> = Partial<KeyValueTransformMap<PickProperties<T, Maybe<number> | number>, number>>;
35
+ /**
36
+ * Type of change to perform on an array field.
37
+ */
38
+ export type FirestoreAccessorArrayFieldUpdateChangeType = 'union' | 'remove';
39
+ /**
40
+ * Used for performing array operations on array fields.
41
+ *
42
+ * Do not provide both a union and remove for the same field. If both a union and remove are provided for a field, only one update (union or remove) will be used. The behavior is not defined.
43
+ *
44
+ * Represents a partial object where keys correspond to array fields in the document
45
+ * and values represent the amount to increment each field by.
46
+ *
47
+ * @template T - The document type containing array field to update
48
+ */
49
+ export type FirestoreAccessorArrayUpdate<T> = Partial<Record<FirestoreAccessorArrayFieldUpdateChangeType, FirestoreAccessorArrayFieldUpdate<T>>>;
50
+ /**
51
+ * Used for performing array operations on array fields.
52
+ *
53
+ * Represents a partial object where keys correspond to array fields in the document
54
+ * and values represent the amount to increment each field by.
55
+ *
56
+ * @template T - The document type containing array field to update
57
+ */
58
+ export type FirestoreAccessorArrayFieldUpdate<T> = Partial<KeyValueTransformMap<PickProperties<T, Maybe<Array<string>> | Array<string>>, Array<string>>> | Partial<KeyValueTransformMap<PickProperties<T, Maybe<Array<number>> | Array<number>>, Array<number>>>;
35
59
  /**
36
60
  * Interface for accessing and modifying a Firestore document.
37
61
  *
@@ -82,7 +106,9 @@ export interface FirestoreDocumentDataAccessor<T, D = DocumentData> extends Docu
82
106
  * If the input data is undefined or an empty object, it will fail.
83
107
  * If the document doesn't exist, it will fail.
84
108
  *
85
- * @param data
109
+ * @param data - The update data to apply
110
+ * @param params - Optional parameters for the update operation
111
+ * @returns A Promise that resolves when the update operation completes
86
112
  */
87
113
  update(data: UpdateData<D>, params?: FirestoreDocumentUpdateParams): Promise<WriteResult | void>;
88
114
  /**
@@ -91,9 +117,19 @@ export interface FirestoreDocumentDataAccessor<T, D = DocumentData> extends Docu
91
117
  * If the input data is undefined or an empty object, it will fail.
92
118
  * If the document doesn't exist, it will fail.
93
119
  *
94
- * @param data
120
+ * @param data - The increment update to apply
121
+ * @param params - Optional parameters for the update operation
122
+ * @returns A Promise that resolves when the update operation completes
95
123
  */
96
124
  increment(data: FirestoreAccessorIncrementUpdate<T>, params?: FirestoreDocumentUpdateParams): Promise<WriteResult | void>;
125
+ /**
126
+ * Updates an array field in the document.
127
+ *
128
+ * @param data - The array update to apply
129
+ * @param params - Optional parameters for the update operation
130
+ * @returns A Promise that resolves when the update operation completes
131
+ */
132
+ arrayUpdate(data: FirestoreAccessorArrayUpdate<T>, params?: FirestoreDocumentUpdateParams): Promise<WriteResult | void>;
97
133
  }
98
134
  /**
99
135
  * Function signature for creating a document.
@@ -1,6 +1,6 @@
1
1
  import { type Observable } from 'rxjs';
2
2
  import { type DocumentData, type DocumentReference, type DocumentSnapshot, type FirestoreDataConverter, type PartialWithFieldValue, type SetOptions, type UpdateData, type WithFieldValue, type WriteResult } from '../types';
3
- import { type FirestoreAccessorIncrementUpdate, type FirestoreDocumentDataAccessor, type FirestoreDocumentDataAccessorFactory, type FirestoreDocumentDeleteParams, type FirestoreDocumentUpdateParams } from './accessor';
3
+ import { FirestoreAccessorArrayUpdate, type FirestoreAccessorIncrementUpdate, type FirestoreDocumentDataAccessor, type FirestoreDocumentDataAccessorFactory, type FirestoreDocumentDeleteParams, type FirestoreDocumentUpdateParams } from './accessor';
4
4
  /**
5
5
  * Abstract wrapper for a FirestoreDocumentDataAccessor that delegates operations.
6
6
  *
@@ -102,6 +102,14 @@ export declare abstract class AbstractFirestoreDocumentDataAccessorWrapper<T, D
102
102
  * @returns A Promise that resolves when the increment operation completes
103
103
  */
104
104
  increment(data: FirestoreAccessorIncrementUpdate<T>, params?: FirestoreDocumentUpdateParams): Promise<WriteResult | void>;
105
+ /**
106
+ * Updates array fields in the document.
107
+ *
108
+ * @param data - The array update to apply
109
+ * @param params - Optional parameters for the update operation
110
+ * @returns A Promise that resolves when the update operation completes
111
+ */
112
+ arrayUpdate(data: FirestoreAccessorArrayUpdate<T>, params?: FirestoreDocumentUpdateParams): Promise<WriteResult | void>;
105
113
  }
106
114
  /**
107
115
  * Function type for wrapping a document accessor with additional functionality.
@@ -0,0 +1,11 @@
1
+ import { type WriteResult } from '../types';
2
+ import { FirestoreAccessorArrayUpdate, type FirestoreDocumentDataAccessor } from './accessor';
3
+ export type ArrayFieldUpdateWithAccessorFunction<T> = (data: FirestoreAccessorArrayUpdate<T>) => Promise<WriteResult | void>;
4
+ /**
5
+ * https://cloud.google.com/firestore/docs/samples/firestore-data-set-array-operations-async
6
+ * https://firebase.google.com/docs/firestore/manage-data/add-data#update_elements_in_an_array
7
+ *
8
+ * @param accessor
9
+ * @returns
10
+ */
11
+ export declare function arrayUpdateWithAccessorFunction<T>(accessor: FirestoreDocumentDataAccessor<T>): ArrayFieldUpdateWithAccessorFunction<T>;
@@ -2,7 +2,7 @@ import { type Observable } from 'rxjs';
2
2
  import { type FirestoreAccessorDriverRef } from '../driver/accessor';
3
3
  import { type FirestoreCollectionNameRef, type FirestoreModelId, type FirestoreModelIdentityCollectionName, type FirestoreModelIdentityModelType, type FirestoreModelIdentityRef, type FirestoreModelIdRef, type FirestoreModelKey, type FirestoreModelKeyRef, type FirestoreModelTypeRef, type FirestoreModelIdentity, type FirestoreModelTypeModelIdentityRef } from './../collection/collection';
4
4
  import { type DocumentReference, type CollectionReference, type Transaction, type WriteBatch, type DocumentSnapshot, type SnapshotOptions, type WriteResult, type FirestoreDataConverter } from '../types';
5
- import { type FirestoreAccessorIncrementUpdate, type FirestoreDocumentDataAccessor, type FirestoreDocumentUpdateParams, type FirestoreAccessorStreamMode } from './accessor';
5
+ import { type FirestoreAccessorIncrementUpdate, type FirestoreDocumentDataAccessor, type FirestoreDocumentUpdateParams, type FirestoreAccessorStreamMode, FirestoreAccessorArrayUpdate } from './accessor';
6
6
  import { type CollectionReferenceRef, type DocumentReferenceRef, type FirestoreContextReference, type FirestoreDataConverterRef } from '../reference';
7
7
  import { type FirestoreDocumentContext } from './context';
8
8
  import { type Building, type Maybe } from '@dereekb/util';
@@ -19,6 +19,7 @@ export interface FirestoreDocument<T, I extends FirestoreModelIdentity = Firesto
19
19
  create(data: T): Promise<WriteResult | void>;
20
20
  update(data: Partial<T>): Promise<WriteResult | void>;
21
21
  increment(data: FirestoreAccessorIncrementUpdate<T>): Promise<WriteResult | void>;
22
+ arrayUpdate(data: FirestoreAccessorArrayUpdate<T>): Promise<WriteResult | void>;
22
23
  }
23
24
  /**
24
25
  * Refers to the FirestoreDocument's data type using only the FirestoreDocument
@@ -98,6 +99,12 @@ export declare abstract class AbstractFirestoreDocument<T, D extends AbstractFir
98
99
  * @param data
99
100
  */
100
101
  increment(data: FirestoreAccessorIncrementUpdate<T>): Promise<WriteResult | void>;
102
+ /**
103
+ * Updates the document using the accessor's array field update functionality.
104
+ *
105
+ * @param data
106
+ */
107
+ arrayUpdate(data: FirestoreAccessorArrayUpdate<T>): Promise<WriteResult | void>;
101
108
  }
102
109
  export interface LimitedFirestoreDocumentAccessorRef<T, D extends FirestoreDocument<T> = FirestoreDocument<T>, A extends LimitedFirestoreDocumentAccessor<T, D> = LimitedFirestoreDocumentAccessor<T, D>> {
103
110
  readonly documentAccessor: A;
@@ -13,3 +13,4 @@ export * from './document';
13
13
  export * from './document.utility';
14
14
  export * from './document.rxjs';
15
15
  export * from './increment';
16
+ export * from './array';
package/test/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [12.1.10](https://github.com/dereekb/dbx-components/compare/v12.1.9...v12.1.10) (2025-06-13)
6
+
7
+
8
+
5
9
  ## [12.1.9](https://github.com/dereekb/dbx-components/compare/v12.1.8...v12.1.9) (2025-06-09)
6
10
 
7
11
 
package/test/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dereekb/firebase/test",
3
- "version": "12.1.9",
3
+ "version": "12.1.10",
4
4
  "type": "commonjs",
5
5
  "peerDependencies": {
6
6
  "@dereekb/util": "*",
@@ -108,6 +108,36 @@ function describeFirestoreAccessorDriverTests(f) {
108
108
  });
109
109
  });
110
110
  });
111
+ describe('arrayUpdate()', () => {
112
+ describe('union', () => {
113
+ it('should add to the array', async () => {
114
+ await itemDocument.accessor.update({
115
+ tags: ['a']
116
+ });
117
+ await itemDocument.arrayUpdate({
118
+ union: {
119
+ tags: ['b', 'c']
120
+ }
121
+ });
122
+ const result = await itemDocument.snapshotData();
123
+ expect(result?.tags).toEqual(['a', 'b', 'c']);
124
+ });
125
+ });
126
+ describe('remove', () => {
127
+ it('should remove from the array', async () => {
128
+ await itemDocument.accessor.update({
129
+ tags: ['a', 'b', 'c']
130
+ });
131
+ await itemDocument.arrayUpdate({
132
+ remove: {
133
+ tags: ['a', 'b']
134
+ }
135
+ });
136
+ const result = await itemDocument.snapshotData();
137
+ expect(result?.tags).toEqual(['c']);
138
+ });
139
+ });
140
+ });
111
141
  });
112
142
  describe('Subcollections', () => {
113
143
  describe('singleItemFirestoreCollection (MockItemUser)', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"test.driver.accessor.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/test/src/lib/common/firestore/test.driver.accessor.ts"],"names":[],"mappings":";;AAYA,oFAucC;AAaD,wFAwcC;AAx6BD,6CAA8D;AAC9D,+BAAsC;AACtC,wCAAmD;AACnD,gDAA0a;AAC1a,kCAA8a;AAG9a;;;;GAIG;AACH,SAAgB,oCAAoC,CAAC,CAA4B;IAC/E,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,MAAM,iBAAiB,GAAG,CAAC,CAAC;QAE5B,IAAI,iCAAwF,CAAC;QAC7F,IAAI,KAAyB,CAAC;QAE9B,UAAU,CAAC,KAAK,IAAI,EAAE;YACpB,iCAAiC,GAAG,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,CAAC;YACtF,KAAK,GAAG,MAAM,IAAA,wBAAa,EAAC,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,EAAE;gBAC7E,KAAK,EAAE,iBAAiB;gBACxB,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;oBACV,OAAO;wBACL,KAAK,EAAE,GAAG,CAAC,EAAE;wBACb,IAAI,EAAE,IAAI;wBACV,MAAM,EAAE,EAAE;qBACX,CAAC;gBACJ,CAAC;aACF,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,IAAI,YAA8B,CAAC;YACnC,IAAI,QAAiD,CAAC;YAEtD,UAAU,CAAC,GAAG,EAAE;gBACd,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACxB,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC;YACnC,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;gBACzB,sCAAsC,CAAW,GAAG,EAAE,CAAC,CAAC;oBACtD,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB;oBAClC,iBAAiB,EAAE,GAAG,EAAE,CAAC,YAAY;oBACrC,wBAAwB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC7D,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;oBACtC,oCAAoC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG;oBACtG,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK;oBAChD,0BAA0B,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,GAAI,CAAC;oBAC/I,yBAAyB,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,GAAI,CAAC;iBAC5I,CAAC,CAAC,CAAC;gBAEJ,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;oBAC3B,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;wBAChD,IAAI,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBAE7C,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAErC,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;wBAC7B,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;wBAErC,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBACzC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAEzC,kBAAkB;wBAClB,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;wBAErC,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBACzC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAC/C,CAAC,CAAC,CAAC;oBAEH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;wBAChD,IAAI,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBAE7C,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAErC,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC;wBAC9B,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;wBAErC,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBACzC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAEzC,kBAAkB;wBAClB,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;wBAErC,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBACzC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAC/C,CAAC,CAAC,CAAC;oBAEH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;wBAC7D,IAAI,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBAE7C,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAErC,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;wBAC7B,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;wBAErC,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC;wBAC/B,MAAM,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;wBAEtC,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBACzC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;oBAC5D,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;wBAC9B,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;4BAChD,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;4BAE7B,MAAM,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;gCACnE,MAAM,yBAAyB,GAAG,MAAM,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;gCACtJ,MAAM,IAAI,GAAG,MAAM,yBAAyB,CAAC,YAAY,EAAE,CAAC;gCAE5D,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gCAErC,MAAM,yBAAyB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;4BACpD,CAAC,CAAC,CAAC;4BAEH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;4BACjD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAC7C,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;wBAC9B,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;4BAChD,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;4BAE7B,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;4BAErD,MAAM,yBAAyB,GAAG,MAAM,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;4BACpJ,MAAM,yBAAyB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;4BAClD,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;4BAE1B,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;4BACjD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAC7C,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;gBAC9B,QAAQ,CAAC,8CAA8C,EAAE,GAAG,EAAE;oBAC5D,IAAI,UAA8B,CAAC;oBACnC,IAAI,+BAAgE,CAAC;oBACrE,IAAI,oBAA0C,CAAC;oBAC/C,IAAI,gBAA6D,CAAC;oBAElE,UAAU,CAAC,GAAG,EAAE;wBACd,UAAU,GAAG,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC;wBAC1D,+BAA+B,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,6BAA6B,CAAC,YAAY,CAAC,CAAC;wBACrG,oBAAoB,GAAG,+BAA+B,CAAC,gBAAgB,EAAE,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;wBACxG,gBAAgB,GAAG,oBAAoB,CAAC,QAAQ,CAAC;oBACnD,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;wBACxB,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;4BACjD,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;gCAChF,MAAM,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC;oCACzC,GAAG,EAAE,EAAE,EAAE,4FAA4F;oCACrG,IAAI,EAAE,OAAO;iCACd,CAAC,CAAC;gCAEH,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;gCAC3D,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;4BAChD,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;wBACrB,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;4BACjD,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;gCAC7E,MAAM,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC;oCACtC,GAAG,EAAE,EAAE,EAAE,4FAA4F;oCACrG,IAAI,EAAE,OAAO;iCACd,CAAC,CAAC;gCAEH,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;gCAC3D,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;4BAChD,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,iDAAiD,EAAE,GAAG,EAAE;oBAC/D,IAAI,kCAAsE,CAAC;oBAC3E,IAAI,uBAAgD,CAAC;oBACrD,IAAI,mBAAmE,CAAC;oBACxE,IAAI,UAA8B,CAAC;oBAEnC,UAAU,CAAC,GAAG,EAAE;wBACd,kCAAkC,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,gCAAgC,CAAC,YAAY,CAAC,CAAC;wBAC3G,uBAAuB,GAAG,kCAAkC,CAAC,YAAY,EAAE,CAAC;wBAC5E,mBAAmB,GAAG,uBAAuB,CAAC,QAAQ,CAAC;wBACvD,UAAU,GAAG,IAAI,yBAAkB,EAAE,CAAC;oBACxC,CAAC,CAAC,CAAC;oBAEH,SAAS,CAAC,GAAG,EAAE;wBACb,UAAU,CAAC,OAAO,EAAE,CAAC;oBACvB,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,wCAAwC,EAAE,GAAG,EAAE;wBACtD,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;4BAC1D,MAAM,CAAC,kCAAkC,CAAC,oBAAoB,CAAC,CAAC,WAAW,EAAE,CAAC;4BAC9E,MAAM,CAAC,kCAAkC,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;4BACrE,MAAM,CAAC,kCAAkC,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;4BACtE,MAAM,CAAC,kCAAkC,CAAC,0BAA0B,CAAC,CAAC,WAAW,EAAE,CAAC;4BACpF,MAAM,CAAC,kCAAkC,CAAC,yBAAyB,CAAC,CAAC,WAAW,EAAE,CAAC;wBACrF,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;wBACrB,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;4BACpE,MAAM,uBAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAS,CAAC,CAAC;4BACpE,MAAM,oBAAoB,GAAQ,CAAC,MAAM,uBAAuB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;4BAEzG,MAAM,CAAC,oBAAoB,CAAC,CAAC,WAAW,EAAE,CAAC;4BAC3C,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;4BAE/C,4CAA4C;4BAC5C,MAAM,CAAE,uBAAuB,CAAC,WAAmB,CAAC,SAAS,IAAK,uBAAuB,CAAC,WAAmB,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;4BAExI,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,YAAY,EAAE,CAAC;4BAC1D,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;4BACnC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,0DAA0D;wBACjG,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;wBAClC,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;4BAC/D,MAAM,uBAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAS,CAAC,CAAC;4BAEpE,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,YAAY,EAAE,CAAC;4BAC1D,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;4BAEnC,MAAM,oBAAoB,GAAQ,CAAC,MAAM,uBAAuB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;4BAEzG,MAAM,CAAC,oBAAoB,CAAC,CAAC,WAAW,EAAE,CAAC;4BAC3C,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;wBACjD,CAAC,CAAC,CAAC;wBAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;4BAC3E,MAAM,uBAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAS,CAAC,CAAC;4BAEpE,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,YAAY,EAAE,CAAC;4BAC1D,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;4BAEnC,MAAM,SAAS,GAAqC,wBAAiB,CAAC;4BACtE,MAAM,oBAAoB,GAA+B,MAAM,uBAAuB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;4BAE5H,MAAM,CAAC,oBAAoB,CAAC,CAAC,WAAW,EAAE,CAAC;wBAC7C,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;wBACxB,IAAA,mBAAY,EAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;4BACpD,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;4BAC/D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BAC3B,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;wBACpF,CAAC,CAAC,CAAC;wBAEH,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;4BAClD,MAAM,uBAAuB,CAAC,MAAM,CAAC;gCACnC,SAAS,EAAE,IAAI,IAAI,EAAE;gCACrB,GAAG,EAAE,CAAC;gCACN,MAAM,EAAE,EAAE;gCACV,QAAQ,EAAE;oCACR,IAAI,EAAE;wCACJ,KAAK,EAAE,IAAI;wCACX,KAAK,EAAE,IAAI;qCACZ;iCACF;6BACF,CAAC,CAAC;4BAEH,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;4BAE5B,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;4BAC/D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BAE1B,MAAM,uBAAuB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;4BAE7D,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,YAAY,EAAE,CAAC;4BAC1D,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;4BAE1D,yBAAyB;4BACzB,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BAChD,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BAChD,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC;4BACpD,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC;wBACtD,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;wBACrB,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;4BACtC,IAAI,MAAM,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,CAAC;4BAChD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BAE3B,MAAM,mBAAmB,CAAC,GAAG,CAAC;gCAC5B,MAAM,EAAE,EAAE;gCACV,GAAG,EAAE,CAAC;gCACN,SAAS,EAAE,IAAI,IAAI,EAAE;gCACrB,QAAQ,EAAE;oCACR,IAAI,EAAE;wCACJ,KAAK,EAAE,IAAI;qCACZ;iCACF;6BACF,CAAC,CAAC;4BAEH,MAAM,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,CAAC;4BAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC5B,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;wBACzB,UAAU,CAAC,KAAK,IAAI,EAAE;4BACpB,MAAM,mBAAmB,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;wBAC7F,CAAC,CAAC,CAAC;wBAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;4BAC3B,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;gCAChD,IAAI,IAAI,GAAG,MAAM,uBAAuB,CAAC,YAAY,EAAE,CAAC;gCACxD,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gCAE1B,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;gCAC1B,MAAM,uBAAuB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gCAEhD,IAAI,GAAG,MAAM,uBAAuB,CAAC,YAAY,EAAE,CAAC;gCACpD,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;4BACrC,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;wBAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;4BACzB,MAAM,aAAa,GAAG,MAAM,CAAC;4BAE7B,sCAAsC,CAAkB,GAAG,EAAE,CAAC,CAAC;gCAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB;gCAClC,iBAAiB,EAAE,GAAG,EAAE,CAAC,uBAAuB;gCAChD,wBAAwB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;gCAClF,oCAAoC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG;gCAChG,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;gCAClD,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,aAAa;gCAC5D,0BAA0B,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,CAAC,kCAAkC,CAAC,0BAA0B,CAAC,WAAW,CAAC;gCAC5H,yBAAyB,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC,kCAAkC,CAAC,yBAAyB,CAAC,UAAU,CAAC;6BACzH,CAAC,CAAC,CAAC;wBACN,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;oBAC/B,IAAI,eAAwC,CAAC;oBAE7C,UAAU,CAAC,KAAK,IAAI,EAAE;wBACpB,eAAe,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,gCAAgC,CAAC,YAAY,CAAC,CAAC,gBAAgB,EAAE,CAAC,WAAW,EAAE,CAAC;wBACzH,MAAM,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;oBACnD,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,iDAAiD,EAAE,GAAG,EAAE;wBAC/D,IAAI,kCAAsE,CAAC;wBAE3E,UAAU,CAAC,GAAG,EAAE;4BACd,kCAAkC,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,gCAAgC,CAAC,YAAY,CAAC,CAAC;wBAC7G,CAAC,CAAC,CAAC;wBAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;4BACzB,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;gCACzB,MAAM,UAAU,GAAG,IAAI,CAAC;gCAExB,sCAAsC,CAAkB,GAAG,EAAE,CAAC,CAAC;oCAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB;oCAClC,iBAAiB,EAAE,GAAG,EAAE,CAAC,eAAe;oCACxC,wBAAwB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC;oCAC5D,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;oCAC5C,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,UAAU;oCACtD,0BAA0B,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,CAAC,kCAAkC,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,GAAI,CAAC;oCACnJ,yBAAyB,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC,kCAAkC,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,GAAI,CAAC;iCAChJ,CAAC,CAAC,CAAC;4BACN,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,4CAA4C,EAAE,GAAG,EAAE;wBAC1D,IAAI,uCAAgF,CAAC;wBAErF,UAAU,CAAC,GAAG,EAAE;4BACd,uCAAuC,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,8BAA8B,CAAC;wBAClG,CAAC,CAAC,CAAC;wBAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;4BACzB,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;gCACzB,MAAM,UAAU,GAAG,IAAI,CAAC;gCAExB,sCAAsC,CAAkB,GAAG,EAAE,CAAC,CAAC;oCAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB;oCAClC,iBAAiB,EAAE,GAAG,EAAE,CAAC,eAAe;oCACxC,wBAAwB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC;oCAC5D,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;oCAC5C,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,UAAU;oCACtD,0BAA0B,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,CAAC,uCAAuC,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,GAAI,CAAC;oCACxJ,yBAAyB,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC,uCAAuC,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,GAAI,CAAC;iCACrJ,CAAC,CAAC,CAAC;4BACN,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;YAClC,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;gBACpC,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;oBAC/D,MAAM,QAAQ,GAAG,iCAAiC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBACpF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;oBAEhD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,+CAA+C,EAAE,GAAG,EAAE;oBACjE,IAAA,iBAAU,EAAC,GAAG,EAAE;wBACd,iCAAiC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;oBAC/D,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,mDAAmD,EAAE,GAAG,EAAE;oBACrE,IAAA,iBAAU,EAAC,GAAG,EAAE;wBACd,iCAAiC,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;oBAClE,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,uBAAuB,EAAE,GAAG,EAAE;oBACzC,IAAA,iBAAU,EAAC,GAAG,EAAE;wBACd,iCAAiC,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;oBAC3D,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,2BAA2B,EAAE,GAAG,EAAE;oBAC7C,IAAA,iBAAU,EAAC,GAAG,EAAE;wBACd,iCAAiC,CAAC,kBAAkB,CAAC,SAAgB,CAAC,CAAC;oBACzE,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,sBAAsB,EAAE,GAAG,EAAE;oBACxC,IAAA,iBAAU,EAAC,GAAG,EAAE;wBACd,iCAAiC,CAAC,kBAAkB,CAAC,IAAW,CAAC,CAAC;oBACpE,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;gBACnC,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;oBACrD,MAAM,QAAQ,GAAG,iCAAiC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;oBAC3E,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;gBACjC,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,qBAAqB,EAAE,GAAG,EAAE;oBACvC,IAAA,iBAAU,EAAC,GAAG,EAAE;wBACd,iCAAiC,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;oBAC1D,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,yBAAyB,EAAE,GAAG,EAAE;oBAC3C,IAAA,iBAAU,EAAC,GAAG,EAAE;wBACd,iCAAiC,CAAC,iBAAiB,CAAC,SAAgB,CAAC,CAAC;oBACxE,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAaD,SAAgB,sCAAsC,CAAI,IAAoC;IAC5F,IAAI,CAA2B,CAAC;IAChC,IAAI,GAAuB,CAAC;IAC5B,IAAI,iBAAuC,CAAC;IAC5C,IAAI,QAA0C,CAAC;IAE/C,UAAU,CAAC,GAAG,EAAE;QACd,GAAG,GAAG,IAAI,yBAAkB,EAAE,CAAC;QAC/B,CAAC,GAAG,IAAI,EAAE,CAAC;QACX,iBAAiB,GAAG,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAC1C,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,GAAG,CAAC,OAAO,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;QACzB,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;YAC1C,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;gBAC5E,MAAM,KAAK,GAAG,MAAM,IAAA,mCAAwB,EAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBAElE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC7B,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC/B,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBAClD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YACjD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;YACrC,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;gBAChE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAChD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAE1B,IAAI,YAAY,GAAG,KAAK,CAAC;gBAEzB,MAAM,IAAA,8BAAmB,EAAC,iBAAiB,EAAE,CAAC,QAAQ,EAAE,EAAE;oBACxD,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;oBAC/B,YAAY,GAAG,IAAI,CAAC;gBACtB,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;gBACxD,IAAI,YAAY,GAAG,KAAK,CAAC;gBAEzB,MAAM,IAAA,8BAAmB,EAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE;oBAChD,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;oBAC/B,YAAY,GAAG,IAAI,CAAC;gBACtB,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACzC,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;gBAC1E,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAChD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAE1B,IAAI,YAAY,GAAG,KAAK,CAAC;gBAEzB,MAAM,IAAA,kCAAuB,EAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE;oBACxD,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;oBAC3B,YAAY,GAAG,IAAI,CAAC;gBACtB,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;YAC1B,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;gBAC3C,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;gBACpD,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;YACjC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;YAC9B,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;gBACpE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAChD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAE1B,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,YAAY,EAAE,CAAC;gBACpD,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;YAC7B,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;gBACxE,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAExB,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAChD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE3B,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,YAAY,EAAE,CAAC;gBACpD,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC;YAC/B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;gBAChE,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;gBAEpD,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAExB,IAAI,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAC9C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE3B,MAAM,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC;gBAErD,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAC1C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;YAEH,IAAA,mBAAY,EAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;gBACjD,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;gBAEpD,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAChD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAE1B,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC;YACzE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;gBAC9D,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;gBAC/B,MAAM,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAErC,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;gBACpD,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;YAEH,IAAA,mBAAY,EAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;gBACzD,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAExB,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;gBACpD,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAExC,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAChD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE3B,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YACtE,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;gBAC5E,MAAM,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACrC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;YAC3B,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;gBACvB,EAAE,CAAC,8FAA8F,EAAE,KAAK,IAAI,EAAE;oBAC5G,MAAM,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;wBACnD,MAAM,mBAAmB,GAAG,MAAM,CAAC,CAAC,0BAA0B,CAAC,WAAW,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;wBAE3G,MAAM,WAAW,GAAG,MAAM,mBAAmB,CAAC,YAAY,EAAE,CAAC;wBAC7D,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;wBAElC,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;wBAC/B,MAAM,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wBAEvC,gEAAgE;wBAChE,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,0BAA0B,CAAC,WAAW,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;wBACrG,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;oBACtC,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;oBAC7F,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CACpB,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;wBAC7C,MAAM,mBAAmB,GAAG,MAAM,CAAC,CAAC,0BAA0B,CAAC,WAAW,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;wBAE3G,MAAM,WAAW,GAAG,MAAM,mBAAmB,CAAC,YAAY,EAAE,CAAC;wBAC7D,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;wBAElC,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;wBAC/B,MAAM,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wBAEvC,2DAA2D;wBAC3D,MAAM,IAAA,qBAAc,EAAC,CAAC,CAAC,0BAA0B,CAAC,WAAW,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC;oBACzG,CAAC,CAAC,CACH,CAAC;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;gBACxB,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;oBAC9D,MAAM,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;wBACnD,MAAM,mBAAmB,GAAG,MAAM,CAAC,CAAC,0BAA0B,CAAC,WAAW,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;wBAE3G,MAAM,WAAW,GAAG,MAAM,mBAAmB,CAAC,YAAY,EAAE,CAAC;wBAC7D,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;wBAElC,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;wBAC/B,MAAM,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACzC,CAAC,CAAC,CAAC;oBAEH,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;oBACpD,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/D,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;oBAChC,EAAE,CAAC,uHAAuH,EAAE,KAAK,IAAI,EAAE;wBACrI,MAAM,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;4BACnD,MAAM,mBAAmB,GAAG,MAAM,CAAC,CAAC,0BAA0B,CAAC,WAAW,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;4BAE3G,MAAM,WAAW,GAAG,MAAM,mBAAmB,CAAC,YAAY,EAAE,CAAC;4BAC7D,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;4BAElC,MAAM,SAAS,GAAG,CAAC,CAAC,wBAAwB,EAAE,CAAC;4BAC/C,MAAM,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;4BAE5C,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;4BAC/B,MAAM,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wBACzC,CAAC,CAAC,CAAC;wBAEH,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;wBACpD,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAE7D,IAAI,CAAC,CAAC,oCAAoC,IAAI,IAAI,EAAE,CAAC;4BACnD,MAAM,CAAC,CAAC,CAAC,oCAAoC,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAClF,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;YAC3B,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;gBACxB,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;oBAC9D,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;oBAChC,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,yBAAyB,CAAC,KAAK,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;oBAE9F,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;oBAC/B,MAAM,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAEjC,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC;oBAErB,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;oBACpD,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/D,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACxB,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;gBAC/C,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;YAC/B,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,oDAAoD,EAAE,CAAC,IAAI,EAAE,EAAE;gBAChE,IAAI,KAAK,GAAG,CAAC,CAAC;gBAEd,GAAG,CAAC,YAAY,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;oBACtD,KAAK,IAAI,CAAC,CAAC;oBAEX,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;wBAChB,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC5D,CAAC;yBAAM,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;wBACvB,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACzD,IAAI,EAAE,CAAC;oBACT,CAAC;gBACH,CAAC,CAAC,CAAC;gBAEH,UAAU,CAAC,GAAG,EAAE;oBACd,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;gBACrC,CAAC,EAAE,GAAG,CAAC,CAAC;YACV,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;gBACrC,IAAI,cAA8B,CAAC;gBAEnC,UAAU,CAAC,GAAG,EAAE;oBACd,cAAc,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;gBAC5C,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;oBACxF,MAAM,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;wBACzC,MAAM,uBAAuB,GAAG,CAAC,CAAC,0BAA0B,CAAC,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;wBAEhG,iBAAiB;wBACjB,MAAM,KAAK,GAAG,MAAM,IAAA,qBAAc,EAAC,uBAAuB,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;wBAE9E,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;wBAE5B,oCAAoC;wBACpC,MAAM,uBAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;wBAEjF,OAAO,KAAK,CAAC;oBACf,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;gBAChC,EAAE,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;oBACxF,MAAM,UAAU,GAAe,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;oBACjD,MAAM,iBAAiB,GAAG,CAAC,CAAC,yBAAyB,CAAC,UAAU,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;oBAExF,iBAAiB;oBACjB,MAAM,KAAK,GAAG,MAAM,IAAA,qBAAc,EAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;oBAExE,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;oBAE5B,sCAAsC;oBACtC,MAAM,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;oBAE3E,qBAAqB;oBACrB,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;gBAC5B,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;gBAChE,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBAEtC,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAExB,IAAI,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACrC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE3B,MAAM,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC;gBAE5C,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACjC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;YAEH,IAAA,mBAAY,EAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;gBACjD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBAEtC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAE1B,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC;YAChE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;YACrB,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;gBACxC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACpC,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YAClC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;gBACzD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;gBAClE,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACxB,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;gBAC9D,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;gBAC/B,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAE5B,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACtC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;YAEH,IAAA,mBAAY,EAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;gBACzD,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAExB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACtC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAExC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE3B,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;YAEH,IAAA,mBAAY,EAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;gBAC1D,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;YAEH,gFAAgF;QAClF,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;YACrB,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;gBAC9D,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAExB,IAAI,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACrC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE3B,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;gBAC/B,MAAM,QAAQ,CAAC,GAAG,CAAC,IAAS,CAAC,CAAC;gBAE9B,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACjC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAE1B,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACtC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;gBACzF,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;gBAC/B,MAAM,QAAQ,CAAC,GAAG,CAAC,IAAS,CAAC,CAAC;gBAC9B,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACtC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;gBAC1B,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;oBAC9D,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;oBAC/B,MAAM,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;oBAE1C,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACtC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/D,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;oBAC9D,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;oBAExB,IAAI,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACpC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAExC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAE3B,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;oBAEvD,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;oBAChC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/D,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,qEAAqE;QACvE,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;gBAC3C,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAExB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACtC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAExC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"test.driver.accessor.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/test/src/lib/common/firestore/test.driver.accessor.ts"],"names":[],"mappings":";;AAYA,oFA2eC;AAaD,wFAwcC;AA58BD,6CAA8D;AAC9D,+BAAsC;AACtC,wCAAmD;AACnD,gDAA0a;AAC1a,kCAA8a;AAG9a;;;;GAIG;AACH,SAAgB,oCAAoC,CAAC,CAA4B;IAC/E,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,MAAM,iBAAiB,GAAG,CAAC,CAAC;QAE5B,IAAI,iCAAwF,CAAC;QAC7F,IAAI,KAAyB,CAAC;QAE9B,UAAU,CAAC,KAAK,IAAI,EAAE;YACpB,iCAAiC,GAAG,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,CAAC;YACtF,KAAK,GAAG,MAAM,IAAA,wBAAa,EAAC,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,EAAE;gBAC7E,KAAK,EAAE,iBAAiB;gBACxB,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;oBACV,OAAO;wBACL,KAAK,EAAE,GAAG,CAAC,EAAE;wBACb,IAAI,EAAE,IAAI;wBACV,MAAM,EAAE,EAAE;qBACX,CAAC;gBACJ,CAAC;aACF,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,IAAI,YAA8B,CAAC;YACnC,IAAI,QAAiD,CAAC;YAEtD,UAAU,CAAC,GAAG,EAAE;gBACd,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACxB,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC;YACnC,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;gBACzB,sCAAsC,CAAW,GAAG,EAAE,CAAC,CAAC;oBACtD,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB;oBAClC,iBAAiB,EAAE,GAAG,EAAE,CAAC,YAAY;oBACrC,wBAAwB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC7D,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;oBACtC,oCAAoC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG;oBACtG,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK;oBAChD,0BAA0B,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,GAAI,CAAC;oBAC/I,yBAAyB,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,GAAI,CAAC;iBAC5I,CAAC,CAAC,CAAC;gBAEJ,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;oBAC3B,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;wBAChD,IAAI,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBAE7C,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAErC,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;wBAC7B,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;wBAErC,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBACzC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAEzC,kBAAkB;wBAClB,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;wBAErC,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBACzC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAC/C,CAAC,CAAC,CAAC;oBAEH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;wBAChD,IAAI,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBAE7C,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAErC,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC;wBAC9B,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;wBAErC,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBACzC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAEzC,kBAAkB;wBAClB,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;wBAErC,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBACzC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAC/C,CAAC,CAAC,CAAC;oBAEH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;wBAC7D,IAAI,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBAE7C,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAErC,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;wBAC7B,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;wBAErC,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC;wBAC/B,MAAM,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;wBAEtC,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;wBACzC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;oBAC5D,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;wBAC9B,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;4BAChD,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;4BAE7B,MAAM,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;gCACnE,MAAM,yBAAyB,GAAG,MAAM,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;gCACtJ,MAAM,IAAI,GAAG,MAAM,yBAAyB,CAAC,YAAY,EAAE,CAAC;gCAE5D,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gCAErC,MAAM,yBAAyB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;4BACpD,CAAC,CAAC,CAAC;4BAEH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;4BACjD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAC7C,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;wBAC9B,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;4BAChD,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;4BAE7B,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;4BAErD,MAAM,yBAAyB,GAAG,MAAM,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;4BACpJ,MAAM,yBAAyB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;4BAClD,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;4BAE1B,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;4BACjD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAC7C,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;oBAC7B,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;wBACrB,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;4BACvC,MAAM,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC;gCACjC,IAAI,EAAE,CAAC,GAAG,CAAC;6BACZ,CAAC,CAAC;4BAEH,MAAM,YAAY,CAAC,WAAW,CAAC;gCAC7B,KAAK,EAAE;oCACL,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;iCACjB;6BACF,CAAC,CAAC;4BAEH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;4BACjD,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;wBAChD,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;wBACtB,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;4BAC5C,MAAM,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC;gCACjC,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;6BACtB,CAAC,CAAC;4BAEH,MAAM,YAAY,CAAC,WAAW,CAAC;gCAC7B,MAAM,EAAE;oCACN,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;iCACjB;6BACF,CAAC,CAAC;4BAEH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;4BACjD,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBACtC,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;gBAC9B,QAAQ,CAAC,8CAA8C,EAAE,GAAG,EAAE;oBAC5D,IAAI,UAA8B,CAAC;oBACnC,IAAI,+BAAgE,CAAC;oBACrE,IAAI,oBAA0C,CAAC;oBAC/C,IAAI,gBAA6D,CAAC;oBAElE,UAAU,CAAC,GAAG,EAAE;wBACd,UAAU,GAAG,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC;wBAC1D,+BAA+B,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,6BAA6B,CAAC,YAAY,CAAC,CAAC;wBACrG,oBAAoB,GAAG,+BAA+B,CAAC,gBAAgB,EAAE,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;wBACxG,gBAAgB,GAAG,oBAAoB,CAAC,QAAQ,CAAC;oBACnD,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;wBACxB,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;4BACjD,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;gCAChF,MAAM,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC;oCACzC,GAAG,EAAE,EAAE,EAAE,4FAA4F;oCACrG,IAAI,EAAE,OAAO;iCACd,CAAC,CAAC;gCAEH,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;gCAC3D,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;4BAChD,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;wBACrB,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;4BACjD,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;gCAC7E,MAAM,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC;oCACtC,GAAG,EAAE,EAAE,EAAE,4FAA4F;oCACrG,IAAI,EAAE,OAAO;iCACd,CAAC,CAAC;gCAEH,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;gCAC3D,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;4BAChD,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,iDAAiD,EAAE,GAAG,EAAE;oBAC/D,IAAI,kCAAsE,CAAC;oBAC3E,IAAI,uBAAgD,CAAC;oBACrD,IAAI,mBAAmE,CAAC;oBACxE,IAAI,UAA8B,CAAC;oBAEnC,UAAU,CAAC,GAAG,EAAE;wBACd,kCAAkC,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,gCAAgC,CAAC,YAAY,CAAC,CAAC;wBAC3G,uBAAuB,GAAG,kCAAkC,CAAC,YAAY,EAAE,CAAC;wBAC5E,mBAAmB,GAAG,uBAAuB,CAAC,QAAQ,CAAC;wBACvD,UAAU,GAAG,IAAI,yBAAkB,EAAE,CAAC;oBACxC,CAAC,CAAC,CAAC;oBAEH,SAAS,CAAC,GAAG,EAAE;wBACb,UAAU,CAAC,OAAO,EAAE,CAAC;oBACvB,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,wCAAwC,EAAE,GAAG,EAAE;wBACtD,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;4BAC1D,MAAM,CAAC,kCAAkC,CAAC,oBAAoB,CAAC,CAAC,WAAW,EAAE,CAAC;4BAC9E,MAAM,CAAC,kCAAkC,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;4BACrE,MAAM,CAAC,kCAAkC,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;4BACtE,MAAM,CAAC,kCAAkC,CAAC,0BAA0B,CAAC,CAAC,WAAW,EAAE,CAAC;4BACpF,MAAM,CAAC,kCAAkC,CAAC,yBAAyB,CAAC,CAAC,WAAW,EAAE,CAAC;wBACrF,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;wBACrB,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;4BACpE,MAAM,uBAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAS,CAAC,CAAC;4BACpE,MAAM,oBAAoB,GAAQ,CAAC,MAAM,uBAAuB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;4BAEzG,MAAM,CAAC,oBAAoB,CAAC,CAAC,WAAW,EAAE,CAAC;4BAC3C,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;4BAE/C,4CAA4C;4BAC5C,MAAM,CAAE,uBAAuB,CAAC,WAAmB,CAAC,SAAS,IAAK,uBAAuB,CAAC,WAAmB,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;4BAExI,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,YAAY,EAAE,CAAC;4BAC1D,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;4BACnC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,0DAA0D;wBACjG,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;wBAClC,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;4BAC/D,MAAM,uBAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAS,CAAC,CAAC;4BAEpE,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,YAAY,EAAE,CAAC;4BAC1D,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;4BAEnC,MAAM,oBAAoB,GAAQ,CAAC,MAAM,uBAAuB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;4BAEzG,MAAM,CAAC,oBAAoB,CAAC,CAAC,WAAW,EAAE,CAAC;4BAC3C,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;wBACjD,CAAC,CAAC,CAAC;wBAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;4BAC3E,MAAM,uBAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAS,CAAC,CAAC;4BAEpE,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,YAAY,EAAE,CAAC;4BAC1D,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;4BAEnC,MAAM,SAAS,GAAqC,wBAAiB,CAAC;4BACtE,MAAM,oBAAoB,GAA+B,MAAM,uBAAuB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;4BAE5H,MAAM,CAAC,oBAAoB,CAAC,CAAC,WAAW,EAAE,CAAC;wBAC7C,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;wBACxB,IAAA,mBAAY,EAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;4BACpD,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;4BAC/D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BAC3B,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;wBACpF,CAAC,CAAC,CAAC;wBAEH,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;4BAClD,MAAM,uBAAuB,CAAC,MAAM,CAAC;gCACnC,SAAS,EAAE,IAAI,IAAI,EAAE;gCACrB,GAAG,EAAE,CAAC;gCACN,MAAM,EAAE,EAAE;gCACV,QAAQ,EAAE;oCACR,IAAI,EAAE;wCACJ,KAAK,EAAE,IAAI;wCACX,KAAK,EAAE,IAAI;qCACZ;iCACF;6BACF,CAAC,CAAC;4BAEH,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;4BAE5B,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;4BAC/D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BAE1B,MAAM,uBAAuB,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;4BAE7D,MAAM,IAAI,GAAG,MAAM,uBAAuB,CAAC,YAAY,EAAE,CAAC;4BAC1D,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;4BAE1D,yBAAyB;4BACzB,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BAChD,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BAChD,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC;4BACpD,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC;wBACtD,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;wBACrB,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;4BACtC,IAAI,MAAM,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,CAAC;4BAChD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BAE3B,MAAM,mBAAmB,CAAC,GAAG,CAAC;gCAC5B,MAAM,EAAE,EAAE;gCACV,GAAG,EAAE,CAAC;gCACN,SAAS,EAAE,IAAI,IAAI,EAAE;gCACrB,QAAQ,EAAE;oCACR,IAAI,EAAE;wCACJ,KAAK,EAAE,IAAI;qCACZ;iCACF;6BACF,CAAC,CAAC;4BAEH,MAAM,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,CAAC;4BAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC5B,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;wBACzB,UAAU,CAAC,KAAK,IAAI,EAAE;4BACpB,MAAM,mBAAmB,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;wBAC7F,CAAC,CAAC,CAAC;wBAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;4BAC3B,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;gCAChD,IAAI,IAAI,GAAG,MAAM,uBAAuB,CAAC,YAAY,EAAE,CAAC;gCACxD,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gCAE1B,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;gCAC1B,MAAM,uBAAuB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gCAEhD,IAAI,GAAG,MAAM,uBAAuB,CAAC,YAAY,EAAE,CAAC;gCACpD,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;4BACrC,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;wBAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;4BACzB,MAAM,aAAa,GAAG,MAAM,CAAC;4BAE7B,sCAAsC,CAAkB,GAAG,EAAE,CAAC,CAAC;gCAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB;gCAClC,iBAAiB,EAAE,GAAG,EAAE,CAAC,uBAAuB;gCAChD,wBAAwB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;gCAClF,oCAAoC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG;gCAChG,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;gCAClD,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,aAAa;gCAC5D,0BAA0B,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,CAAC,kCAAkC,CAAC,0BAA0B,CAAC,WAAW,CAAC;gCAC5H,yBAAyB,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC,kCAAkC,CAAC,yBAAyB,CAAC,UAAU,CAAC;6BACzH,CAAC,CAAC,CAAC;wBACN,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;oBAC/B,IAAI,eAAwC,CAAC;oBAE7C,UAAU,CAAC,KAAK,IAAI,EAAE;wBACpB,eAAe,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,gCAAgC,CAAC,YAAY,CAAC,CAAC,gBAAgB,EAAE,CAAC,WAAW,EAAE,CAAC;wBACzH,MAAM,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;oBACnD,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,iDAAiD,EAAE,GAAG,EAAE;wBAC/D,IAAI,kCAAsE,CAAC;wBAE3E,UAAU,CAAC,GAAG,EAAE;4BACd,kCAAkC,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,gCAAgC,CAAC,YAAY,CAAC,CAAC;wBAC7G,CAAC,CAAC,CAAC;wBAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;4BACzB,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;gCACzB,MAAM,UAAU,GAAG,IAAI,CAAC;gCAExB,sCAAsC,CAAkB,GAAG,EAAE,CAAC,CAAC;oCAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB;oCAClC,iBAAiB,EAAE,GAAG,EAAE,CAAC,eAAe;oCACxC,wBAAwB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC;oCAC5D,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;oCAC5C,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,UAAU;oCACtD,0BAA0B,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,CAAC,kCAAkC,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,GAAI,CAAC;oCACnJ,yBAAyB,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC,kCAAkC,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,GAAI,CAAC;iCAChJ,CAAC,CAAC,CAAC;4BACN,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,QAAQ,CAAC,4CAA4C,EAAE,GAAG,EAAE;wBAC1D,IAAI,uCAAgF,CAAC;wBAErF,UAAU,CAAC,GAAG,EAAE;4BACd,uCAAuC,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,8BAA8B,CAAC;wBAClG,CAAC,CAAC,CAAC;wBAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;4BACzB,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;gCACzB,MAAM,UAAU,GAAG,IAAI,CAAC;gCAExB,sCAAsC,CAAkB,GAAG,EAAE,CAAC,CAAC;oCAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB;oCAClC,iBAAiB,EAAE,GAAG,EAAE,CAAC,eAAe;oCACxC,wBAAwB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC;oCAC5D,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;oCAC5C,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,UAAU;oCACtD,0BAA0B,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,CAAC,uCAAuC,CAAC,8BAA8B,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,GAAI,CAAC;oCACxJ,yBAAyB,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC,uCAAuC,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,GAAI,CAAC;iCACrJ,CAAC,CAAC,CAAC;4BACN,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;YAClC,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;gBACpC,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;oBAC/D,MAAM,QAAQ,GAAG,iCAAiC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBACpF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;oBAEhD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,+CAA+C,EAAE,GAAG,EAAE;oBACjE,IAAA,iBAAU,EAAC,GAAG,EAAE;wBACd,iCAAiC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;oBAC/D,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,mDAAmD,EAAE,GAAG,EAAE;oBACrE,IAAA,iBAAU,EAAC,GAAG,EAAE;wBACd,iCAAiC,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;oBAClE,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,uBAAuB,EAAE,GAAG,EAAE;oBACzC,IAAA,iBAAU,EAAC,GAAG,EAAE;wBACd,iCAAiC,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;oBAC3D,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,2BAA2B,EAAE,GAAG,EAAE;oBAC7C,IAAA,iBAAU,EAAC,GAAG,EAAE;wBACd,iCAAiC,CAAC,kBAAkB,CAAC,SAAgB,CAAC,CAAC;oBACzE,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,sBAAsB,EAAE,GAAG,EAAE;oBACxC,IAAA,iBAAU,EAAC,GAAG,EAAE;wBACd,iCAAiC,CAAC,kBAAkB,CAAC,IAAW,CAAC,CAAC;oBACpE,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;gBACnC,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;oBACrD,MAAM,QAAQ,GAAG,iCAAiC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;oBAC3E,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;gBACjC,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,qBAAqB,EAAE,GAAG,EAAE;oBACvC,IAAA,iBAAU,EAAC,GAAG,EAAE;wBACd,iCAAiC,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;oBAC1D,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,yBAAyB,EAAE,GAAG,EAAE;oBAC3C,IAAA,iBAAU,EAAC,GAAG,EAAE;wBACd,iCAAiC,CAAC,iBAAiB,CAAC,SAAgB,CAAC,CAAC;oBACxE,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAaD,SAAgB,sCAAsC,CAAI,IAAoC;IAC5F,IAAI,CAA2B,CAAC;IAChC,IAAI,GAAuB,CAAC;IAC5B,IAAI,iBAAuC,CAAC;IAC5C,IAAI,QAA0C,CAAC;IAE/C,UAAU,CAAC,GAAG,EAAE;QACd,GAAG,GAAG,IAAI,yBAAkB,EAAE,CAAC;QAC/B,CAAC,GAAG,IAAI,EAAE,CAAC;QACX,iBAAiB,GAAG,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAC1C,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,GAAG,CAAC,OAAO,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;QACzB,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;YAC1C,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;gBAC5E,MAAM,KAAK,GAAG,MAAM,IAAA,mCAAwB,EAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBAElE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC7B,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC/B,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBAClD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YACjD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;YACrC,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;gBAChE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAChD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAE1B,IAAI,YAAY,GAAG,KAAK,CAAC;gBAEzB,MAAM,IAAA,8BAAmB,EAAC,iBAAiB,EAAE,CAAC,QAAQ,EAAE,EAAE;oBACxD,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;oBAC/B,YAAY,GAAG,IAAI,CAAC;gBACtB,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;gBACxD,IAAI,YAAY,GAAG,KAAK,CAAC;gBAEzB,MAAM,IAAA,8BAAmB,EAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE;oBAChD,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;oBAC/B,YAAY,GAAG,IAAI,CAAC;gBACtB,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACzC,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;gBAC1E,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAChD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAE1B,IAAI,YAAY,GAAG,KAAK,CAAC;gBAEzB,MAAM,IAAA,kCAAuB,EAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE;oBACxD,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;oBAC3B,YAAY,GAAG,IAAI,CAAC;gBACtB,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;YAC1B,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;gBAC3C,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;gBACpD,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;YACjC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;YAC9B,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;gBACpE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAChD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAE1B,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,YAAY,EAAE,CAAC;gBACpD,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;YAC7B,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;gBACxE,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAExB,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAChD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE3B,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,YAAY,EAAE,CAAC;gBACpD,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC;YAC/B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;gBAChE,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;gBAEpD,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAExB,IAAI,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAC9C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE3B,MAAM,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC;gBAErD,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAC1C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;YAEH,IAAA,mBAAY,EAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;gBACjD,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;gBAEpD,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAChD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAE1B,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC;YACzE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;gBAC9D,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;gBAC/B,MAAM,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAErC,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;gBACpD,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;YAEH,IAAA,mBAAY,EAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;gBACzD,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAExB,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;gBACpD,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAExC,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAChD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE3B,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YACtE,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;gBAC5E,MAAM,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACrC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;YAC3B,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;gBACvB,EAAE,CAAC,8FAA8F,EAAE,KAAK,IAAI,EAAE;oBAC5G,MAAM,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;wBACnD,MAAM,mBAAmB,GAAG,MAAM,CAAC,CAAC,0BAA0B,CAAC,WAAW,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;wBAE3G,MAAM,WAAW,GAAG,MAAM,mBAAmB,CAAC,YAAY,EAAE,CAAC;wBAC7D,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;wBAElC,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;wBAC/B,MAAM,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wBAEvC,gEAAgE;wBAChE,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,0BAA0B,CAAC,WAAW,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;wBACrG,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;oBACtC,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,IAAA,mBAAY,EAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;oBAC7F,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CACpB,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;wBAC7C,MAAM,mBAAmB,GAAG,MAAM,CAAC,CAAC,0BAA0B,CAAC,WAAW,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;wBAE3G,MAAM,WAAW,GAAG,MAAM,mBAAmB,CAAC,YAAY,EAAE,CAAC;wBAC7D,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;wBAElC,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;wBAC/B,MAAM,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wBAEvC,2DAA2D;wBAC3D,MAAM,IAAA,qBAAc,EAAC,CAAC,CAAC,0BAA0B,CAAC,WAAW,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC;oBACzG,CAAC,CAAC,CACH,CAAC;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;gBACxB,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;oBAC9D,MAAM,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;wBACnD,MAAM,mBAAmB,GAAG,MAAM,CAAC,CAAC,0BAA0B,CAAC,WAAW,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;wBAE3G,MAAM,WAAW,GAAG,MAAM,mBAAmB,CAAC,YAAY,EAAE,CAAC;wBAC7D,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;wBAElC,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;wBAC/B,MAAM,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACzC,CAAC,CAAC,CAAC;oBAEH,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;oBACpD,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/D,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;oBAChC,EAAE,CAAC,uHAAuH,EAAE,KAAK,IAAI,EAAE;wBACrI,MAAM,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;4BACnD,MAAM,mBAAmB,GAAG,MAAM,CAAC,CAAC,0BAA0B,CAAC,WAAW,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;4BAE3G,MAAM,WAAW,GAAG,MAAM,mBAAmB,CAAC,YAAY,EAAE,CAAC;4BAC7D,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;4BAElC,MAAM,SAAS,GAAG,CAAC,CAAC,wBAAwB,EAAE,CAAC;4BAC/C,MAAM,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;4BAE5C,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;4BAC/B,MAAM,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wBACzC,CAAC,CAAC,CAAC;wBAEH,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;wBACpD,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAE7D,IAAI,CAAC,CAAC,oCAAoC,IAAI,IAAI,EAAE,CAAC;4BACnD,MAAM,CAAC,CAAC,CAAC,oCAAoC,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAClF,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;YAC3B,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;gBACxB,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;oBAC9D,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;oBAChC,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,yBAAyB,CAAC,KAAK,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;oBAE9F,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;oBAC/B,MAAM,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAEjC,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC;oBAErB,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,CAAC;oBACpD,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/D,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACxB,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;gBAC/C,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;YAC/B,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,oDAAoD,EAAE,CAAC,IAAI,EAAE,EAAE;gBAChE,IAAI,KAAK,GAAG,CAAC,CAAC;gBAEd,GAAG,CAAC,YAAY,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;oBACtD,KAAK,IAAI,CAAC,CAAC;oBAEX,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;wBAChB,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC5D,CAAC;yBAAM,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;wBACvB,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACzD,IAAI,EAAE,CAAC;oBACT,CAAC;gBACH,CAAC,CAAC,CAAC;gBAEH,UAAU,CAAC,GAAG,EAAE;oBACd,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;gBACrC,CAAC,EAAE,GAAG,CAAC,CAAC;YACV,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;gBACrC,IAAI,cAA8B,CAAC;gBAEnC,UAAU,CAAC,GAAG,EAAE;oBACd,cAAc,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;gBAC5C,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;oBACxF,MAAM,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;wBACzC,MAAM,uBAAuB,GAAG,CAAC,CAAC,0BAA0B,CAAC,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;wBAEhG,iBAAiB;wBACjB,MAAM,KAAK,GAAG,MAAM,IAAA,qBAAc,EAAC,uBAAuB,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;wBAE9E,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;wBAE5B,oCAAoC;wBACpC,MAAM,uBAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;wBAEjF,OAAO,KAAK,CAAC;oBACf,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;gBAChC,EAAE,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;oBACxF,MAAM,UAAU,GAAe,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;oBACjD,MAAM,iBAAiB,GAAG,CAAC,CAAC,yBAAyB,CAAC,UAAU,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;oBAExF,iBAAiB;oBACjB,MAAM,KAAK,GAAG,MAAM,IAAA,qBAAc,EAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;oBAExE,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;oBAE5B,sCAAsC;oBACtC,MAAM,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;oBAE3E,qBAAqB;oBACrB,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;gBAC5B,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;gBAChE,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBAEtC,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAExB,IAAI,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACrC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE3B,MAAM,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC;gBAE5C,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACjC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;YAEH,IAAA,mBAAY,EAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;gBACjD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBAEtC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAE1B,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC;YAChE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;YACrB,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;gBACxC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACpC,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YAClC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;gBACzD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;gBAClE,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACxB,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;gBAC9D,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;gBAC/B,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAE5B,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACtC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;YAEH,IAAA,mBAAY,EAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;gBACzD,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAExB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACtC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAExC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE3B,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;YAEH,IAAA,mBAAY,EAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;gBAC1D,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;YAEH,gFAAgF;QAClF,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;YACrB,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;gBAC9D,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAExB,IAAI,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACrC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE3B,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;gBAC/B,MAAM,QAAQ,CAAC,GAAG,CAAC,IAAS,CAAC,CAAC;gBAE9B,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACjC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAE1B,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACtC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;gBACzF,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;gBAC/B,MAAM,QAAQ,CAAC,GAAG,CAAC,IAAS,CAAC,CAAC;gBAC9B,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACtC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;gBAC1B,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;oBAC9D,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;oBAC/B,MAAM,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;oBAE1C,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACtC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/D,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;oBAC9D,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;oBAExB,IAAI,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACpC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAExC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAE3B,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;oBAEvD,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;oBAChC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/D,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,qEAAqE;QACvE,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;gBAC3C,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAExB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACtC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAExC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}