@haus-tech/product-import-export-plugin 3.6.13 → 3.6.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +45 -2
  3. package/package.json +1 -1
  4. package/src/dashboard/export-configuration-panel.tsx +1 -0
  5. package/src/dashboard/utils.ts +1 -0
  6. package/src/helpers/find-text-column.d.ts +8 -0
  7. package/src/helpers/find-text-column.js +32 -0
  8. package/src/helpers/find-text-column.js.map +1 -0
  9. package/src/product-import-export.plugin.js +3 -1
  10. package/src/product-import-export.plugin.js.map +1 -1
  11. package/src/providers/import-providers/import-parser.d.ts +5 -0
  12. package/src/providers/import-providers/import-parser.js +10 -1
  13. package/src/providers/import-providers/import-parser.js.map +1 -1
  14. package/src/providers/import-providers/product-importer.d.ts +20 -5
  15. package/src/providers/import-providers/product-importer.js +79 -44
  16. package/src/providers/import-providers/product-importer.js.map +1 -1
  17. package/src/services/channel-column-resolver.d.ts +24 -0
  18. package/src/services/channel-column-resolver.js +79 -0
  19. package/src/services/channel-column-resolver.js.map +1 -0
  20. package/src/services/export-relation-lookups.d.ts +26 -0
  21. package/src/services/export-relation-lookups.js +56 -0
  22. package/src/services/export-relation-lookups.js.map +1 -0
  23. package/src/services/extended-fast-importer.service.d.ts +16 -0
  24. package/src/services/extended-fast-importer.service.js +46 -21
  25. package/src/services/extended-fast-importer.service.js.map +1 -1
  26. package/src/services/product-export.service.d.ts +9 -3
  27. package/src/services/product-export.service.js +57 -10
  28. package/src/services/product-export.service.js.map +1 -1
  29. package/src/services/relation-lookup-resolver.d.ts +0 -5
  30. package/src/services/relation-lookup-resolver.js +2 -29
  31. package/src/services/relation-lookup-resolver.js.map +1 -1
  32. package/src/services/self-relation-custom-fields.d.ts +7 -0
  33. package/src/services/self-relation-custom-fields.js +24 -0
  34. package/src/services/self-relation-custom-fields.js.map +1 -1
  35. package/src/types.d.ts +13 -1
  36. package/src/ui/components/export-dialog.component.ts +2 -0
  37. package/src/ui/components/product-import.component.ts +1 -0
@@ -34,6 +34,7 @@ const remove_update_at_fields_1 = require("../../helpers/remove-update-at-fields
34
34
  const relation_lookup_resolver_1 = require("../../services/relation-lookup-resolver");
35
35
  const import_row_validation_strategy_1 = require("../../strategies/import-row-validation-strategy");
36
36
  const import_row_groups_1 = require("../../services/import-row-groups");
37
+ const channel_column_resolver_1 = require("../../services/channel-column-resolver");
37
38
  const import_csv_lines_1 = require("../../helpers/import-csv-lines");
38
39
  const NO_RELATION_LOOKUPS = { fields: new Map(), idsByLookup: new Map() };
39
40
  /** The row an error names (`Row 12: ...`), 0 for an error about the whole file. */
@@ -73,16 +74,18 @@ let ProductImporter = class ProductImporter {
73
74
  pluginOptions;
74
75
  relationLookupResolver;
75
76
  rowValidationStrategy;
77
+ channelColumnResolver;
76
78
  taxCategoryMatches = {};
77
79
  facetMap = new Map();
78
80
  facetValueMap = new Map();
79
81
  customFieldTypes = {};
80
82
  allAssets = [];
81
83
  allAssetsById = new Map();
84
+ allAssetsBySource = new Map();
82
85
  facetIdCache = new Map();
83
86
  facetValueIdCache = new Map();
84
87
  slugStrategy;
85
- constructor(connection, configService, importParser, assetImporter, fastImporter, translatableSaver, productService, channelService, facetService, facetValueService, taxCategoryService, assetService, optionGroupService, pluginOptions, relationLookupResolver, rowValidationStrategy) {
88
+ constructor(connection, configService, importParser, assetImporter, fastImporter, translatableSaver, productService, channelService, facetService, facetValueService, taxCategoryService, assetService, optionGroupService, pluginOptions, relationLookupResolver, rowValidationStrategy, channelColumnResolver) {
86
89
  this.connection = connection;
87
90
  this.configService = configService;
88
91
  this.importParser = importParser;
@@ -99,6 +102,7 @@ let ProductImporter = class ProductImporter {
99
102
  this.pluginOptions = pluginOptions;
100
103
  this.relationLookupResolver = relationLookupResolver;
101
104
  this.rowValidationStrategy = rowValidationStrategy;
105
+ this.channelColumnResolver = channelColumnResolver;
102
106
  this.slugStrategy = this.configService.entityOptions.slugStrategy;
103
107
  }
104
108
  parseAndImport(input, ctx, updateProductSlug = true, mainLanguage, updatingStrategy) {
@@ -146,18 +150,22 @@ let ProductImporter = class ProductImporter {
146
150
  * Everything that is checked before an import writes anything: relation lookups, then the parsed
147
151
  * rows through the row validation strategy. The upload runs this before the file is stored, and
148
152
  * the import job runs it again before its first write, since data can change while the job waits.
149
- * With the default strategy the file is parsed only when `parse` asks for it (the job does), so
150
- * an upload without a strategy costs no more than the lookups.
153
+ * With the default strategy and no `channels` column the file is parsed only when `parse` asks
154
+ * for it (the job does), so such an upload costs no more than the lookups. `uploader` is the
155
+ * context whose user needs rights in the channels the `channels` column names; the job passes
156
+ * the uploader's, since it imports with a context of its own.
151
157
  */
152
- async checkFile(ctx, csv, mainLanguage, updateProductSlug, { parse = false } = {}) {
158
+ async checkFile(ctx, csv, mainLanguage, updateProductSlug, { parse = false, uploader = ctx } = {}) {
159
+ const unchecked = { customFieldTypes: {}, channelsByToken: new Map() };
153
160
  const relationLookups = await this.relationLookupResolver.resolve(ctx, csv);
154
161
  if (!relationLookups.rowsChecked) {
155
- return { errors: relationLookups.errors, relationLookups, customFieldTypes: {} };
162
+ return { errors: relationLookups.errors, relationLookups, ...unchecked };
156
163
  }
157
164
  // Only the default itself is skipped: a subclass of it has rules of its own.
158
165
  const validatesRows = this.rowValidationStrategy.constructor !== import_row_validation_strategy_1.DefaultImportRowValidationStrategy;
159
- if (!validatesRows && !parse) {
160
- return { errors: relationLookups.errors, relationLookups, customFieldTypes: {} };
166
+ const namesChannels = (0, import_csv_lines_1.importCsvHeaders)((0, import_csv_lines_1.importCsvLines)(csv)).includes(channel_column_resolver_1.CHANNELS_COLUMN);
167
+ if (!validatesRows && !namesChannels && !parse) {
168
+ return { errors: relationLookups.errors, relationLookups, ...unchecked };
161
169
  }
162
170
  const { cleanedCsv, customFieldTypes } = this.preprocessCsv(csv, updateProductSlug);
163
171
  const parsed = (await this.importParser.parseProducts(cleanedCsv, mainLanguage));
@@ -172,11 +180,19 @@ let ProductImporter = class ProductImporter {
172
180
  const rowErrors = validatesRows
173
181
  ? await this.rowValidationStrategy.validate(ctx, (0, import_row_groups_1.toImportRowGroups)(parsed.results, relationLookups, this.configService.customFields))
174
182
  : [];
183
+ const channelColumn = await this.channelColumnResolver.resolve(ctx, uploader, parsed.results);
175
184
  const errors = [
176
185
  ...relationLookups.errors,
186
+ ...channelColumn.errors,
177
187
  ...rowErrors.map(({ line, message }) => `Row ${line}: ${message}`),
178
188
  ].sort((a, b) => errorRow(a) - errorRow(b));
179
- return { errors, relationLookups, parsed, customFieldTypes };
189
+ return {
190
+ errors,
191
+ relationLookups,
192
+ parsed,
193
+ customFieldTypes,
194
+ channelsByToken: channelColumn.channelsByToken,
195
+ };
180
196
  }
181
197
  preprocessCsv(input, updateProductSlug) {
182
198
  const customFieldTypes = {};
@@ -248,6 +264,7 @@ let ProductImporter = class ProductImporter {
248
264
  }
249
265
  this.allAssets = assets;
250
266
  this.allAssetsById = new Map(assets.map((asset) => [asset.id, asset]));
267
+ this.allAssetsBySource = new Map(assets.map((asset) => [asset.source, asset]));
251
268
  }
252
269
  async doParseAndImport(input, updateProductSlug, mainLanguage, updatingStrategy, reqCtx, onProgress) {
253
270
  // Per-import caches to avoid stale cross-job state.
@@ -265,7 +282,10 @@ let ProductImporter = class ProductImporter {
265
282
  // Checked again here, before the first write, not only on upload: data can change while the
266
283
  // job waits. Lookup values are resolved once, here: a row deleted while the import runs is
267
284
  // still linked to.
268
- const { errors, relationLookups, parsed, customFieldTypes } = await this.checkFile(ctx, csvContent, mainLanguage, updateProductSlug, { parse: true });
285
+ const { errors, relationLookups, parsed, customFieldTypes, channelsByToken } = await this.checkFile(ctx, csvContent, mainLanguage, updateProductSlug, {
286
+ parse: true,
287
+ uploader: reqCtx,
288
+ });
269
289
  if (errors.length > 0 || !parsed) {
270
290
  // Never fail a job without saying why.
271
291
  const reasons = errors.length > 0 ? errors : ['The import file could not be read'];
@@ -280,7 +300,7 @@ let ProductImporter = class ProductImporter {
280
300
  ...progess,
281
301
  processed: parsed.processed,
282
302
  });
283
- }, relationLookups);
303
+ }, relationLookups, channelsByToken);
284
304
  return {
285
305
  errors: parsed.errors.concat(importErrors),
286
306
  imported: parsed.results.length,
@@ -318,36 +338,26 @@ let ProductImporter = class ProductImporter {
318
338
  throw new core_2.InternalServerError('No RequestContext provided');
319
339
  }
320
340
  }
321
- async importProducts(ctx, rows, updatingStrategy, onProgress, relationLookups = NO_RELATION_LOOKUPS) {
341
+ async importProducts(ctx, rows, updatingStrategy, onProgress, relationLookups = NO_RELATION_LOOKUPS, channelsByToken = new Map()) {
322
342
  let errors = [];
323
343
  let imported = 0;
324
344
  const languageCode = ctx.languageCode;
325
- const taxCategories = await this.taxCategoryService.findAll(ctx);
326
- // Create taxCategory if none exists
345
+ let taxCategories = await this.taxCategoryService.findAll(ctx);
346
+ // Create taxCategory if none exists, and read the list again so the rows can match it
327
347
  if (taxCategories.totalItems === 0) {
328
348
  await this.taxCategoryService.create(ctx, {
329
349
  name: 'Standard Tax',
330
350
  isDefault: true,
331
351
  });
352
+ taxCategories = await this.taxCategoryService.findAll(ctx);
332
353
  }
333
354
  await this.fastImporter.initialize(ctx.channel);
334
355
  const shouldRestore = this.pluginOptions?.importOptions?.defaultOptions?.restoreSoftDeleted !== false;
335
- const sharedGroupMap = await this.buildSharedOptionGroupMap(ctx, rows);
356
+ const sharedGroupMap = await this.buildSharedOptionGroupMap(ctx, rows, channelsByToken);
336
357
  for (const { product, variants } of rows) {
358
+ this.fastImporter.setProductChannels((0, lodash_1.compact)(product.channelTokens.map((token) => channelsByToken.get(token))));
337
359
  const productMainTranslation = this.getTranslationByCodeOrFirst(product.translations, ctx.languageCode);
338
- const assetsToImport = (0, lodash_1.compact)(product.assetPaths.map((assetPath, idx) => {
339
- const assetID = product.assetsJson?.[idx]?.id;
340
- if (assetPath.startsWith('http://') || assetPath.startsWith('https://')) {
341
- return {
342
- url: assetPath,
343
- name: product.assetsJson?.[idx]?.name || undefined,
344
- id: assetID && this.allAssetsById.get(assetID)
345
- ? product.assetsJson?.[idx]?.id
346
- : undefined,
347
- };
348
- }
349
- }));
350
- const createProductAssets = await this.assetImporter.getAssets(assetsToImport, ctx);
360
+ const createProductAssets = await this.resolveAssets(product.assetPaths, product.assetsJson, ctx);
351
361
  const productAssets = createProductAssets.assets;
352
362
  if (createProductAssets.errors.length) {
353
363
  errors = errors.concat(createProductAssets.errors);
@@ -536,19 +546,7 @@ let ProductImporter = class ProductImporter {
536
546
  }
537
547
  for (const variant of variants) {
538
548
  const variantMainTranslation = this.getTranslationByCodeOrFirst(variant.translations, ctx.languageCode);
539
- const assetsToImport = (0, lodash_1.compact)(variant.assetPaths.map((assetPath, idx) => {
540
- const assetID = variant.assetsJson?.[idx]?.id;
541
- if (assetPath.startsWith('http://') || assetPath.startsWith('https://')) {
542
- return {
543
- url: assetPath,
544
- name: variant.assetsJson?.[idx]?.name || undefined,
545
- id: assetID && this.allAssetsById.get(assetID)
546
- ? variant.assetsJson?.[idx]?.id
547
- : undefined,
548
- };
549
- }
550
- }));
551
- const createVariantAssets = await this.assetImporter.getAssets(assetsToImport);
549
+ const createVariantAssets = await this.resolveAssets(variant.assetPaths, variant.assetsJson);
552
550
  const variantAssets = createVariantAssets.assets;
553
551
  if (createVariantAssets.errors.length) {
554
552
  errors = errors.concat(createVariantAssets.errors);
@@ -1050,7 +1048,7 @@ let ProductImporter = class ProductImporter {
1050
1048
  * code in the current channel, or create a new one (and its options) up-front so
1051
1049
  * the per-product loop can simply attach it.
1052
1050
  */
1053
- async buildSharedOptionGroupMap(ctx, rows) {
1051
+ async buildSharedOptionGroupMap(ctx, rows, channelsByToken) {
1054
1052
  const sharedGroupMap = new Map();
1055
1053
  // A shared group gets every value any product in the file uses, in order of first use.
1056
1054
  // The group's name comes from the first product that declares the code.
@@ -1060,8 +1058,13 @@ let ProductImporter = class ProductImporter {
1060
1058
  if (!optionGroup.code) {
1061
1059
  continue;
1062
1060
  }
1063
- const entry = codeEntries.get(optionGroup.code) ?? { optionGroup, values: new Map() };
1061
+ const entry = codeEntries.get(optionGroup.code) ?? {
1062
+ optionGroup,
1063
+ values: new Map(),
1064
+ channelTokens: new Set(),
1065
+ };
1064
1066
  codeEntries.set(optionGroup.code, entry);
1067
+ product.channelTokens.forEach((token) => entry.channelTokens.add(token));
1065
1068
  const mainTranslation = this.getTranslationByCodeOrFirst(optionGroup.translations, ctx.languageCode);
1066
1069
  mainTranslation.values.forEach((value, index) => {
1067
1070
  if (entry.values.has(value)) {
@@ -1076,7 +1079,10 @@ let ProductImporter = class ProductImporter {
1076
1079
  });
1077
1080
  }
1078
1081
  }
1079
- for (const [code, { optionGroup, values }] of codeEntries) {
1082
+ for (const [code, { optionGroup, values, channelTokens }] of codeEntries) {
1083
+ // Vendure resolves an option's group in the request's channel, so a shared group and its
1084
+ // options join every channel a product using them is assigned to through the channels column.
1085
+ this.fastImporter.setProductChannels((0, lodash_1.compact)([...channelTokens].map((token) => channelsByToken.get(token))));
1080
1086
  const groupTranslations = optionGroup.translations
1081
1087
  .map((translation) => ({
1082
1088
  languageCode: translation.languageCode,
@@ -1121,6 +1127,7 @@ let ProductImporter = class ProductImporter {
1121
1127
  }
1122
1128
  sharedGroupMap.set(code, { groupId, optionIds });
1123
1129
  }
1130
+ this.fastImporter.setProductChannels([]);
1124
1131
  return sharedGroupMap;
1125
1132
  }
1126
1133
  async createFacetAndValue(facet, facetCode, valueCode) {
@@ -1155,6 +1162,34 @@ let ProductImporter = class ProductImporter {
1155
1162
  this.facetValueIdCache.set(facetValueCacheKey, facetValueId);
1156
1163
  return facetValueId;
1157
1164
  }
1165
+ /**
1166
+ * Resolves the assets of an `assets` or `variantAssets` cell, in cell order. A URL goes through
1167
+ * the asset importer. Any other value names an existing asset the way the export writes it: by
1168
+ * the `id` of the JSON format or by its `source`. An existing asset is linked as it is, never
1169
+ * uploaded again, and a value that matches no asset is reported.
1170
+ */
1171
+ async resolveAssets(assetPaths, assetsJson, ctx) {
1172
+ const assets = [];
1173
+ const errors = [];
1174
+ for (const [idx, assetPath] of assetPaths.entries()) {
1175
+ const assetID = assetsJson?.[idx]?.id;
1176
+ const knownAsset = assetID ? this.allAssetsById.get(assetID) : undefined;
1177
+ if (assetPath.startsWith('http://') || assetPath.startsWith('https://')) {
1178
+ const imported = await this.assetImporter.getAssets([{ url: assetPath, name: assetsJson?.[idx]?.name || undefined, id: knownAsset?.id }], ctx);
1179
+ assets.push(...imported.assets);
1180
+ errors.push(...imported.errors);
1181
+ continue;
1182
+ }
1183
+ const existingAsset = knownAsset ?? this.allAssetsBySource.get(assetPath);
1184
+ if (existingAsset) {
1185
+ assets.push(existingAsset);
1186
+ }
1187
+ else {
1188
+ errors.push(`Could not find an existing asset with source "${assetPath}"`);
1189
+ }
1190
+ }
1191
+ return { assets, errors };
1192
+ }
1158
1193
  resolveFeaturedAssetId(importedAssets, existingFeaturedAsset, updatingStrategy) {
1159
1194
  const firstFeaturedCandidate = importedAssets.find((a) => a.type === generated_types_1.AssetType.IMAGE) ?? importedAssets[0];
1160
1195
  if (importedAssets.length > 0 && firstFeaturedCandidate) {
@@ -1224,6 +1259,6 @@ exports.ProductImporter = ProductImporter = __decorate([
1224
1259
  core_1.FacetValueService,
1225
1260
  core_1.TaxCategoryService,
1226
1261
  core_1.AssetService,
1227
- core_1.ProductOptionGroupService, Object, relation_lookup_resolver_1.RelationLookupResolver, Object])
1262
+ core_1.ProductOptionGroupService, Object, relation_lookup_resolver_1.RelationLookupResolver, Object, channel_column_resolver_1.ChannelColumnResolver])
1228
1263
  ], ProductImporter);
1229
1264
  //# sourceMappingURL=product-importer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"product-importer.js","sourceRoot":"","sources":["../../../../../../packages/product-import-export-plugin/src/providers/import-providers/product-importer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"product-importer.js","sourceRoot":"","sources":["../../../../../../packages/product-import-export-plugin/src/providers/import-providers/product-importer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uDAAuD;AACvD,6DAA6D;AAC7D,2CAAmD;AACnD,wCAuBsB;AACtB,wCAUsB;AAEtB,yCAAkD;AAClD,+BAAiC;AACjC,mEAAsE;AAEtE,yEAA+D;AAC/D,kGAA2F;AAC3F,mCAA+D;AAE/D,+CAGwB;AAExB,mDAA8C;AAC9C,qDAAwD;AACxD,qCAAoC;AACpC,2EAAqE;AACrE,mCAAmC;AACnC,mFAA6E;AAC7E,sFAMgD;AAChD,oGAGwD;AACxD,wEAAoE;AACpE,oFAI+C;AAC/C,qEAKuC;AAKvC,MAAM,mBAAmB,GAAoB,EAAE,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,WAAW,EAAE,IAAI,GAAG,EAAE,EAAE,CAAA;AAiB1F,mFAAmF;AACnF,SAAS,QAAQ,CAAC,KAAa;IAC7B,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACvC,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACrC,CAAC;AAED;;;GAGG;AACH,SAAS,2BAA2B,CAClC,MAAc;IAEd,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QACrE,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7C,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,KAAK,CAAA;IACvC,OAAO,EAAE,aAAa,EAAE,GAAG,MAAM,IAAI,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAA;AACvE,CAAC;AAGM,IAAM,eAAe,GAArB,MAAM,eAAe;IAchB;IACA;IAEA;IACA;IACA;IACA;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IAC8C;IAC9C;IAEA;IACA;IAhCF,kBAAkB,GAA2B,EAAE,CAAA;IAC/C,QAAQ,GAAG,IAAI,GAAG,EAAiB,CAAA;IACnC,aAAa,GAAG,IAAI,GAAG,EAAsB,CAAA;IAC7C,gBAAgB,GAA2B,EAAE,CAAA;IAC7C,SAAS,GAAY,EAAE,CAAA;IACvB,aAAa,GAAG,IAAI,GAAG,EAAa,CAAA;IACpC,iBAAiB,GAAG,IAAI,GAAG,EAAiB,CAAA;IAC5C,YAAY,GAAG,IAAI,GAAG,EAAc,CAAA;IACpC,iBAAiB,GAAG,IAAI,GAAG,EAAc,CAAA;IAEzC,YAAY,CAAc;IAElC,YACU,UAAmC,EACnC,aAA4B,EAE5B,YAA0B,EAC1B,aAAoC,EACpC,YAAyC,EACzC,iBAAoC,EAEpC,cAA8B,EAC9B,cAA8B,EAC9B,YAA0B,EAC1B,iBAAoC,EACpC,kBAAsC,EACtC,YAA0B,EAC1B,kBAA6C,EACC,aAAgC,EAC9E,sBAA8C,EAE9C,qBAAkD,EAClD,qBAA4C;QAnB5C,eAAU,GAAV,UAAU,CAAyB;QACnC,kBAAa,GAAb,aAAa,CAAe;QAE5B,iBAAY,GAAZ,YAAY,CAAc;QAC1B,kBAAa,GAAb,aAAa,CAAuB;QACpC,iBAAY,GAAZ,YAAY,CAA6B;QACzC,sBAAiB,GAAjB,iBAAiB,CAAmB;QAEpC,mBAAc,GAAd,cAAc,CAAgB;QAC9B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,iBAAY,GAAZ,YAAY,CAAc;QAC1B,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,uBAAkB,GAAlB,kBAAkB,CAA2B;QACC,kBAAa,GAAb,aAAa,CAAmB;QAC9E,2BAAsB,GAAtB,sBAAsB,CAAwB;QAE9C,0BAAqB,GAArB,qBAAqB,CAA6B;QAClD,0BAAqB,GAArB,qBAAqB,CAAuB;QAEpD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,CAAA;IACnE,CAAC;IAED,cAAc,CACZ,KAAsB,EACtB,GAAmB,EACnB,iBAAiB,GAAG,IAAI,EACxB,YAA0B,EAC1B,gBAAkC;QAElC,OAAO,IAAI,iBAAU,CAAC,CAAC,UAAU,EAAE,EAAE;YACnC,MAAM,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAC7B,KAAK,EACL,iBAAiB,EACjB,YAAY,EACZ,gBAAgB,EAChB,GAAG,EACH,CAAC,QAAQ,EAAE,EAAE;gBACX,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC3B,CAAC,CACF,CAAC,IAAI,CACJ,CAAC,KAAK,EAAE,EAAE;gBACR,UAAU,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAA;gBACzD,UAAU,CAAC,QAAQ,EAAE,CAAA;YACvB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CACnC,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;;OAIG;IACK,wBAAwB,CAAC,SAAiB;QAChD,IAAI,OAAmB,CAAA;QACvB,IAAI,CAAC;YACH,OAAO,GAAG,IAAA,YAAQ,EAAC,SAAS,EAAE;gBAC5B,IAAI,EAAE,IAAI;gBACV,kBAAkB,EAAE,IAAI;gBACxB,YAAY,EAAE,IAAI;aACnB,CAAe,CAAA;QAClB,CAAC;QAAC,MAAM,CAAC;YACP,mFAAmF;YACnF,OAAO,EAAE,CAAA;QACX,CAAC;QACD,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACrC,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;YAC/C,OAAO,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;QACnD,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,GAAW;QACxB,MAAM,OAAO,GAAG,IAAA,mCAAgB,EAAC,IAAA,iCAAc,EAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CACvD,CAAC,MAAM,EAAE,EAAE,CAAC,2BAA2B,CAAC,MAAM,CAAC,EAAE,aAAa,IAAI,MAAM,CACzE,CAAA;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;IAClD,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,SAAS,CACb,GAAmB,EACnB,GAAW,EACX,YAA0B,EAC1B,iBAA0B,EAC1B,EAAE,KAAK,GAAG,KAAK,EAAE,QAAQ,GAAG,GAAG,KAAqD,EAAE;QAEtF,MAAM,SAAS,GAAG,EAAE,gBAAgB,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,GAAG,EAAE,EAAE,CAAA;QACtE,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAC3E,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;YACjC,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,SAAS,EAAE,CAAA;QAC1E,CAAC;QACD,6EAA6E;QAC7E,MAAM,aAAa,GACjB,IAAI,CAAC,qBAAqB,CAAC,WAAW,KAAK,mEAAkC,CAAA;QAC/E,MAAM,aAAa,GAAG,IAAA,mCAAgB,EAAC,IAAA,iCAAc,EAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,yCAAe,CAAC,CAAA;QACrF,IAAI,CAAC,aAAa,IAAI,CAAC,aAAa,IAAI,CAAC,KAAK,EAAE,CAAC;YAC/C,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,SAAS,EAAE,CAAA;QAC1E,CAAC;QAED,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAA;QACnF,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CACnD,UAAU,EACV,YAAY,CACb,CAAqC,CAAA;QACtC,MAAM,UAAU,GAAG,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAA;QAC5D,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACpC,mFAAmF;YACnF,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YAClF,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;gBACtB,MAAM,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAA;YACtC,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,aAAa;YAC7B,CAAC,CAAC,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CACvC,GAAG,EACH,IAAA,qCAAiB,EAAC,MAAM,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CACpF;YACH,CAAC,CAAC,EAAE,CAAA;QACN,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;QAC7F,MAAM,MAAM,GAAG;YACb,GAAG,eAAe,CAAC,MAAM;YACzB,GAAG,aAAa,CAAC,MAAM;YACvB,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,OAAO,EAAE,CAAC;SACnE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QAC3C,OAAO;YACL,MAAM;YACN,eAAe;YACf,MAAM;YACN,gBAAgB;YAChB,eAAe,EAAE,aAAa,CAAC,eAAe;SAC/C,CAAA;IACH,CAAC;IAEO,aAAa,CACnB,KAAa,EACb,iBAA0B;QAK1B,MAAM,gBAAgB,GAA2B,EAAE,CAAA;QAEnD,+EAA+E;QAC/E,MAAM,aAAa,GAAG,IAAA,iCAAc,EAAC,KAAK,CAAC,CAAA;QAE3C,MAAM,OAAO,GAAG,IAAA,+BAAY,EAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;QAE9C,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;YAC/C,MAAM,KAAK,GAAG,2BAA2B,CAAC,IAAA,kCAAe,EAAC,SAAS,CAAC,CAAC,CAAA;YACrE,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,gBAAgB,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,IAAI,CAAA;YAClD,OAAO,KAAK,CAAC,aAAa,CAAA;QAC5B,CAAC,CAAC,CAAA;QAEF,wCAAwC;QACxC,aAAa,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAE3C,uGAAuG;QACvG,IAAI,iBAAiB,EAAE,CAAC;YACtB,MAAM,WAAW,GAAG,cAAc;iBAC/B,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC9D,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC,iDAAiD;YAEpF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;oBACpC,IAAI,KAAK,KAAK,CAAC;wBAAE,OAAM,CAAC,kBAAkB;oBAC1C,MAAM,OAAO,GAAG,IAAA,+BAAY,EAAC,IAAI,CAAC,CAAA;oBAClC,WAAW,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;wBAChC,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,CAAA,CAAC,yBAAyB;oBACnD,CAAC,CAAC,CAAA;oBACF,aAAa,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA,CAAC,sBAAsB;gBACjE,CAAC,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,OAAO;YACL,UAAU,EAAE,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,0BAA0B;YAChE,gBAAgB;SACjB,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,MAAc;QACzC,MAAM,MAAM,GAAiB,EAAE,CAAA;QAC/B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;YAChD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YAC1B,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QAC1E,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,GAAmB;QACpC,IAAI,MAAM,GAAG,CAAC,CAAA;QACd,MAAM,KAAK,GAAG,GAAG,CAAA;QACjB,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,IAAI,UAAU,GAAG,CAAC,CAAA;QAClB,GAAG,CAAC;YACF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YAC3F,MAAM,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;YACrC,UAAU,GAAG,eAAe,CAAC,UAAU,CAAA;YACvC,MAAM,IAAI,KAAK,CAAA;QACjB,CAAC,QAAQ,MAAM,CAAC,MAAM,GAAG,UAAU,EAAC;QAEpC,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,GAAmB;QAC7C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;QAC3C,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;QAC5E,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,IAAA,uCAAiB,EAAC,KAAK,CAAC,CAAA;YACrC,IAAI,KAAK,CAAC,YAAY,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBACrC,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,IAAI,CAAA;gBAC9B,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,YAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC7D,CAAC;QACH,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,MAAM,CAAA;QACvB,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;QACtE,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;IAChF,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,KAAsB,EACtB,iBAA0B,EAC1B,YAA0B,EAC1B,gBAAkC,EAClC,MAAsB,EACtB,UAAwB;QAExB,oDAAoD;QACpD,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAA;QACzB,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAA;QAE9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;QAE9D,IAAI,UAAkB,CAAA;QAEtB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,UAAU,GAAG,KAAK,CAAA;QACpB,CAAC;aAAM,CAAC;YACN,8DAA8D;YAC9D,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;QAC/C,CAAC;QAED,4FAA4F;QAC5F,2FAA2F;QAC3F,mBAAmB;QACnB,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,GAC1E,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAE;YACrE,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAA;QACJ,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjC,uCAAuC;YACvC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAA;YAClF,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;QACvE,CAAC;QAED,MAAM,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAA;QACrC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QAExC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,cAAc,CAC5C,GAAG,EACH,MAAM,CAAC,OAAO,EACd,gBAAgB,EAChB,CAAC,OAAO,EAAE,EAAE;oBACV,UAAU,CAAC;wBACT,GAAG,OAAO;wBACV,SAAS,EAAE,MAAM,CAAC,SAAS;qBAC5B,CAAC,CAAA;gBACJ,CAAC,EACD,eAAe,EACf,eAAe,CAChB,CAAA;gBACD,OAAO;oBACL,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;oBAC1C,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM;oBAC/B,SAAS,EAAE,MAAM,CAAC,SAAS;iBAC5B,CAAA;YACH,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,aAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,iBAAiB,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;gBAC9E,OAAO;oBACL,MAAM,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC;oBACrB,QAAQ,EAAE,CAAC;oBACX,SAAS,EAAE,MAAM,CAAC,SAAS;iBAC5B,CAAA;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,CAAC;gBACX,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B,CAAA;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,GAAmB,EACnB,YAA0B;QAE1B,IAAI,GAAG,YAAY,qBAAc,EAAE,CAAC;YAClC,OAAO,IAAI,qBAAc,CAAC;gBACxB,OAAO,EAAE,OAAO;gBAChB,YAAY,EAAE,IAAI;gBAClB,qBAAqB,EAAE,KAAK;gBAC5B,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,YAAY,EAAE,YAAY;aAC3B,CAAC,CAAA;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,0BAAmB,CAAC,4BAA4B,CAAC,CAAA;QAC7D,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,GAAmB,EACnB,IAA2B,EAC3B,gBAAkC,EAClC,UAAwB,EACxB,kBAAmC,mBAAmB,EACtD,kBAAmC,IAAI,GAAG,EAAE;QAE5C,IAAI,MAAM,GAAa,EAAE,CAAA;QACzB,IAAI,QAAQ,GAAG,CAAC,CAAA;QAChB,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAA;QACrC,IAAI,aAAa,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAE9D,sFAAsF;QACtF,IAAI,aAAa,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,EAAE;gBACxC,IAAI,EAAE,cAAc;gBACpB,SAAS,EAAE,IAAI;aAChB,CAAC,CAAA;YACF,aAAa,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC5D,CAAC;QACD,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAE/C,MAAM,aAAa,GACjB,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,kBAAkB,KAAK,KAAK,CAAA;QAEjF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,GAAG,EAAE,IAAI,EAAE,eAAe,CAAC,CAAA;QAEvF,KAAK,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC;YACzC,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAClC,IAAA,gBAAO,EAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAC1E,CAAA;YACD,MAAM,sBAAsB,GAAG,IAAI,CAAC,2BAA2B,CAC7D,OAAO,CAAC,YAAY,EACpB,GAAG,CAAC,YAAY,CACjB,CAAA;YAED,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,aAAa,CAClD,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,UAAU,EAClB,GAAG,CACJ,CAAA;YACD,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAA;YAEhD,IAAI,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACtC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAA;YACpD,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,wBAAwB,CACtD,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,EACpC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,EACvC,GAAG,EACH,SAAS,EACT,eAAe,CAChB,CAAA;YAED,IAAI,oBAAoB,CAAA;YAExB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACtB,oBAAoB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;YAClF,CAAC;YAED,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1B,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;gBAC9C,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,qBAAc,CAAC,CAAC,MAAM,CAAC;oBACpF,GAAG,EAAE,IAAA,YAAE,EAAC,WAAW,CAAC;iBACrB,CAAC,CAAA;gBACF,MAAM,+BAA+B,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;oBACjE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAA;gBACrB,CAAC,CAAC,CAAA;gBAEF,IAAI,+BAA+B,CAAC,MAAM,EAAE,CAAC;oBAC3C,oBAAoB,GAAG,aAAa;wBAClC,CAAC,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE;wBACpC,CAAC,CAAC,EAAE,EAAE,EAAE,+BAA+B,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,IAAA,gBAAM,GAAE,EAAE,CAAA;gBAC/E,CAAC;YACH,CAAC;YAED,IAAI,eAAe,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAC1D,GAAG,EACH,oBAAoB,EAAE,EAAE,EACxB,aAAa,CACd,CAAA;YAED,IAAI,CAAC;gBACH,IAAI,eAAe,EAAE,SAAS,EAAE,CAAC;oBAC/B,IAAI,aAAa,EAAE,CAAC;wBAClB,eAAe,CAAC,SAAS,GAAG,IAAI,CAAA;wBAChC,IAAI,CAAC;4BACH,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,cAAO,CAAC,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC,CAAA;wBAC3E,CAAC;wBAAC,OAAO,KAAU,EAAE,CAAC;4BACpB,MAAM,CAAC,IAAI,CAAC,sCAAsC,KAAK,EAAE,CAAC,CAAA;4BAC1D,aAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE,iBAAiB,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;wBACrF,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,eAAe,GAAG,SAAS,CAAA;oBAC7B,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,IAAI,CAAC,sCAAsC,KAAK,EAAE,CAAC,CAAA;gBAC1D,aAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE,iBAAiB,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;YACrF,CAAC;YAED,MAAM,mBAAmB,GAAG,eAAe,EAAE,YAAY,CAAC,IAAI,CAC5D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,YAAY,CACvC,EAAE,IAAI,CAAA;YACP,MAAM,qBAAqB,GACzB,eAAe,IAAI,mBAAmB,KAAK,sBAAsB,CAAC,IAAI;gBACpE,CAAC,CAAC;oBACE,IAAI,EAAE,sBAAsB,CAAC,IAAI;oBACjC,YAAY,EAAE,mBAAmB;oBACjC,cAAc,EAAE,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE;wBACpD,KAAK,EAAE,sBAAsB,CAAC,IAAI;wBAClC,UAAU,EAAE,SAAS;wBACrB,SAAS,EAAE,MAAM;qBAClB,CAAC;oBACF,sBAAsB,EAAE,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE;wBAC5D,KAAK,EAAE,mBAAmB,IAAI,EAAE;wBAChC,UAAU,EAAE,SAAS;wBACrB,SAAS,EAAE,MAAM;qBAClB,CAAC;iBACH;gBACH,CAAC,CAAC,SAAS,CAAA;YAEf,IAAI,eAAe,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;gBACtD,MAAM,IAAI,CAAC,YAAY,CAAC,0BAA0B,CAAC,eAAe,CAAC,CAAA;YACrE,CAAC;YAED,MAAM,WAAW,GAAG;gBAClB,eAAe,EAAE,IAAI,CAAC,sBAAsB,CAC1C,aAAa,EACb,eAAe,EAAE,aAAa,EAC9B,gBAAgB,CACjB;gBACD,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxC,aAAa,EAAE,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;gBAC9D,YAAY,EAAE,MAAM,OAAO,CAAC,GAAG,CAC7B,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;oBAC7C,MAAM,mBAAmB,GAAG,eAAe,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;wBACnE,OAAO,CAAC,CAAC,YAAY,KAAK,WAAW,CAAC,YAAY,CAAA;oBACpD,CAAC,CAAC,CAAA;oBACF,OAAO;wBACL,YAAY,EAAE,WAAW,CAAC,YAAY;wBACtC,IAAI,EAAE,WAAW,CAAC,IAAI;wBACtB,GAAG,CAAC,WAAW,CAAC,WAAW,KAAK,SAAS;4BACvC,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,WAAW,EAAE;4BAC1C,CAAC,CAAC,EAAE,CAAC;wBACP,IAAI,EAAE,mBAAmB,EAAE,IAAI,IAAI,WAAW,CAAC,IAAI;wBACnD,YAAY,EAAE,MAAM,IAAI,CAAC,wBAAwB,CAC/C,WAAW,CAAC,YAAY,EACxB,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,EACvC,GAAG,EACH,SAAS,EACT,eAAe,CAChB;qBACF,CAAA;gBACH,CAAC,CAAC,CACH;gBACD,YAAY;aACb,CAAA;YAED,MAAM,gBAAgB,GAAG,eAAe;gBACtC,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,EAAE;oBACxD,GAAG,WAAW;oBACd,EAAE,EAAE,eAAe,CAAC,EAAE;iBACvB,CAAC;gBACJ,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;YAEtD,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnC,MAAM,oBAAoB,GAAG,IAAI,CAAC,2BAA2B,CAC3D,KAAK,CAAC,YAAY,EAClB,GAAG,CAAC,YAAY,CACjB,CAAA;gBACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE;oBACjD,KAAK,EAAE,oBAAoB,CAAC,KAAK;oBACjC,UAAU,EAAE,OAAO;oBACnB,SAAS,EAAE,MAAM;iBAClB,CAAC,CAAA;gBACF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE;oBACtD,KAAK,EAAE,oBAAoB,CAAC,KAAK;oBACjC,UAAU,EAAE,YAAY;oBACxB,SAAS,EAAE,OAAO;iBACnB,CAAC,CAAA;gBACF,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,CAAA;gBAE3E,MAAM,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAA;YAChF,CAAC;YAED,MAAM,UAAU,GAAiC,EAAE,CAAA;YACnD,MAAM,mBAAmB,GACvB,OAAO,CAAC,oBAAoB,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAA;YAE1F,IAAI,mBAAmB,EAAE,CAAC;gBACxB,MAAM,IAAI,CAAC,YAAY,CAAC,6BAA6B,CAAC,gBAAgB,CAAC,CAAA;gBACvE,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,0BAA0B,CACnF,GAAG,EACH,gBAAgB,CACjB,CAAA;gBAED,KAAK,MAAM,CAAC,WAAW,EAAE,gBAAgB,CAAC,IAAI,OAAO,CAAC,YAAY,CAAC,GAAG,CACpE,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAU,CAClC,EAAE,CAAC;oBACF,MAAM,0BAA0B,GAAG,IAAI,CAAC,2BAA2B,CACjE,WAAW,CAAC,YAAY,EACxB,GAAG,CAAC,YAAY,CACjB,CAAA;oBAED,MAAM,gBAAgB,GAAG,WAAW,CAAC,IAAI;wBACvC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;wBACtC,CAAC,CAAC,SAAS,CAAA;oBACb,IAAI,gBAAgB,EAAE,CAAC;wBACrB,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAC7C,gBAAgB,EAChB,gBAAgB,CAAC,OAAO,CACzB,CAAA;wBACD,KAAK,MAAM,KAAK,IAAI,0BAA0B,CAAC,MAAM,EAAE,CAAC;4BACtD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;4BACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;gCACd,MAAM,IAAI,0BAAmB,CAC3B,iBAAiB,KAAK,uCAAuC,WAAW,CAAC,IAAI,IAAI,EAAE,GAAG,CACvF,CAAA;4BACH,CAAC;4BACD,UAAU,CAAC,GAAG,gBAAgB,IAAI,KAAK,EAAE,CAAC,GAAG,QAAQ,CAAA;wBACvD,CAAC;wBACD,SAAQ;oBACV,CAAC;oBAED,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE;wBAC9D,KAAK,EAAE,GAAG,sBAAsB,CAAC,IAAI,IAAI,0BAA0B,CAAC,IAAI,EAAE;wBAC1E,UAAU,EAAE,oBAAoB;wBAChC,SAAS,EAAE,MAAM;qBAClB,CAAC,CAAA;oBACF,MAAM,yBAAyB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE;wBACtE,KAAK,EAAE,GAAG,qBAAqB,EAAE,YAAY,IAAI,0BAA0B,CAAC,IAAI,EAAE;wBAClF,UAAU,EAAE,oBAAoB;wBAChC,SAAS,EAAE,MAAM;qBAClB,CAAC,CAAA;oBACF,MAAM,0BAA0B,GAAG,oBAAoB,CAAC,IAAI,CAC1D,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,yBAAyB,CACpD,CAAA;oBAED,MAAM,oBAAoB,GAAG,0BAA0B;wBACrD,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,wBAAwB,CAAC;4BAC/C,EAAE,EAAE,0BAA0B,CAAC,EAAE;4BACjC,IAAI,EAAE,iBAAiB;4BACvB,OAAO,EAAE,0BAA0B,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAQ,CAAC;4BACrE,YAAY,EAAE,WAAW,CAAC,YAAY;iCACnC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;gCACnB,OAAO;oCACL,YAAY,EAAE,WAAW,CAAC,YAAY;oCACtC,IAAI,EAAE,WAAW,CAAC,IAAI;iCACvB,CAAA;4BACH,CAAC,CAAC;iCACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;yBACzB,CAAC;wBACJ,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,wBAAwB,CAAC;4BAC/C,IAAI,EAAE,iBAAiB;4BACvB,OAAO,EAAE,0BAA0B,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAQ,CAAC;4BACrE,YAAY,EAAE,WAAW,CAAC,YAAY;iCACnC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;gCACnB,OAAO;oCACL,YAAY,EAAE,WAAW,CAAC,YAAY;oCACtC,IAAI,EAAE,WAAW,CAAC,IAAI;iCACvB,CAAA;4BACH,CAAC,CAAC;iCACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;yBACzB,CAAC,CAAA;oBAEN,KAAK,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,0BAA0B,CAAC,MAAM,CAAC,GAAG,CACtE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAU,CACtC,EAAE,CAAC;wBACF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC;4BAClE,oBAAoB,EAAE,oBAAoB;4BAC1C,IAAI,EAAE,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE;gCAC1C,KAAK;gCACL,UAAU,EAAE,eAAe;gCAC3B,SAAS,EAAE,MAAM;6BAClB,CAAC;4BACF,YAAY,EAAE,WAAW,CAAC,YAAY;iCACnC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;gCACnB,OAAO;oCACL,YAAY,EAAE,WAAW,CAAC,YAAY;oCACtC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC;iCACtC,CAAA;4BACH,CAAC,CAAC;iCACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;yBACzB,CAAC,CAAA;wBACF,UAAU,CAAC,GAAG,gBAAgB,IAAI,KAAK,EAAE,CAAC,GAAG,eAAe,CAAA;oBAC9D,CAAC;oBACD,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,CAAA;gBACzF,CAAC;YACH,CAAC;YAED,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,MAAM,sBAAsB,GAAG,IAAI,CAAC,2BAA2B,CAC7D,OAAO,CAAC,YAAY,EACpB,GAAG,CAAC,YAAY,CACjB,CAAA;gBAED,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAA;gBAC5F,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAA;gBAEhD,IAAI,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;oBACtC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAA;gBACpD,CAAC;gBAED,+BAA+B;gBAE/B,mCAAmC;gBACnC,mFAAmF;gBACnF,IAAI;gBAEJ,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAC7D,sBAAsB,CAAC,YAAY,EACnC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,cAAc,EAC9C,GAAG,EACH,SAAS,EACT,eAAe,CAChB,CAAA;gBAED,MAAM,SAAS,GAAG,mBAAmB;oBACnC,CAAC,CAAC,sBAAsB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;oBACpF,CAAC,CAAC,SAAS,CAAA;gBAEb,IAAI,eAAe,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,qBAAc,CAAC,CAAC,OAAO,CAAC;oBACrF,KAAK,EAAE;wBACL,GAAG,EAAE,OAAO,CAAC,GAAG;wBAChB,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,gBAAM,GAAE;wBAC/C,SAAS,EAAE,gBAAgB;qBAC5B;oBACD,WAAW,EAAE,aAAa;oBAC1B,SAAS,EAAE,CAAC,aAAa,EAAE,mBAAmB,EAAE,QAAQ,EAAE,eAAe,CAAC;iBAC3E,CAAC,CAAA;gBAEF,IAAI,eAAe,EAAE,SAAS,EAAE,CAAC;oBAC/B,IAAI,aAAa,EAAE,CAAC;wBAClB,eAAe,CAAC,SAAS,GAAG,IAAI,CAAA;wBAChC,IAAI,CAAC;4BACH,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,qBAAc,CAAC,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC,CAAA;wBAClF,CAAC;wBAAC,OAAO,KAAU,EAAE,CAAC;4BACpB,MAAM,CAAC,IAAI,CAAC,sCAAsC,KAAK,EAAE,CAAC,CAAA;4BAC1D,aAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE,iBAAiB,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;wBACrF,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,oFAAoF;wBAEpF,eAAe,GAAG,SAAgB,CAAA;oBACpC,CAAC;gBACH,CAAC;gBAED,IAAI,eAAe,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;oBACtD,qCAAqC;oBACrC,MAAM,IAAI,CAAC,YAAY,CAAC,0BAA0B,CAAC,eAAe,CAAC,CAAA;gBACrE,CAAC;gBAED,MAAM,WAAW,GAAG;oBAClB,SAAS,EAAE,gBAAgB;oBAC3B,aAAa,EAAE,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;oBAC9D,eAAe,EAAE,IAAI,CAAC,sBAAsB,CAC1C,aAAa,EACb,eAAe,EAAE,aAAa,EAC9B,gBAAgB,CACjB;oBACD,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACxC,GAAG,EAAE,OAAO,CAAC,GAAG;oBAChB,0FAA0F;oBAC1F,oFAAoF;oBACpF,6EAA6E;oBAC7E,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,CAAC,eAAe;wBACvD,CAAC,CAAC;4BACE,aAAa,EAAE,IAAI,CAAC,wBAAwB,CAC1C,OAAO,CAAC,WAAW,EACnB,aAAa,CAAC,KAAK,CACpB;yBACF;wBACH,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClF,GAAG,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS;wBACtC,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE;wBAC5C,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACtE,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjD,YAAY,EAAE,MAAM,OAAO,CAAC,GAAG,CAC7B,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;wBAC7C,MAAM,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAClD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,WAAW,CAAC,YAAY,CACnD,CAAA;wBACD,IAAI,CAAC,kBAAkB,EAAE,CAAC;4BACxB,MAAM,IAAI,0BAAmB,CAC3B,mBAAmB,WAAW,CAAC,YAAY,4BAA4B,sBAAsB,CAAC,IAAI,GAAG,CACtG,CAAA;wBACH,CAAC;wBACD,OAAO;4BACL,YAAY,EAAE,WAAW,CAAC,YAAY;4BACtC,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,EAAE,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;4BACtE,YAAY,EAAE,MAAM,IAAI,CAAC,wBAAwB,CAC/C,WAAW,CAAC,YAAY,EACxB,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,cAAc,EAC9C,GAAG,EACH,SAAS,EACT,eAAe,CAChB;yBACF,CAAA;oBACH,CAAC,CAAC,CACH;oBACD,KAAK,EAAE,IAAA,oBAAW,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG,GAAG,CAAC;oBAC/E,YAAY,EAAE,mBAAmB;iBAClC,CAAA;gBAED,MAAM,gBAAgB,GAAG,eAAe;oBACtC,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,EAAE,GAAG,WAAW,EAAE,EAAE,EAAE,eAAe,CAAC,EAAE,EAAE,CAAC;oBAC1F,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAA;gBAE7D,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnC,MAAM,oBAAoB,GAAG,IAAI,CAAC,2BAA2B,CAC3D,KAAK,CAAC,YAAY,EAClB,GAAG,CAAC,YAAY,CACjB,CAAA;oBACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE;wBACjD,KAAK,EAAE,oBAAoB,CAAC,KAAK;wBACjC,UAAU,EAAE,OAAO;wBACnB,SAAS,EAAE,MAAM;qBAClB,CAAC,CAAA;oBACF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE;wBACtD,KAAK,EAAE,oBAAoB,CAAC,KAAK;wBACjC,UAAU,EAAE,YAAY;wBACxB,SAAS,EAAE,OAAO;qBACnB,CAAC,CAAA;oBAEF,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,CAAA;oBAE3E,MAAM,IAAI,CAAC,YAAY,CAAC,6BAA6B,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAA;gBACvF,CAAC;YACH,CAAC;YAED,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,kBAAkB,GAAG,CAAC,MAAM,IAAI,CAAC,2BAA2B,CAChE,GAAG,EACH,gBAAgB,EAChB,KAAK,CACN,CAAY,CAAA,CAAC,uEAAuE;gBACrF,MAAM,mBAAmB,GAAG,IAAA,mBAAU,EAAC,KAAK,CAAC;qBAC1C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAA,+CAAqB,EAAC,eAAgB,CAAC,CAAC,CAAC;qBAC/D,MAAM,CAAC,KAAK,CAAC,CAAA;gBAChB,MAAM,sBAAsB,GAAG,IAAA,mBAAU,EAAC,KAAK,CAAC;qBAC7C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAA,+CAAqB,EAAC,kBAAmB,CAAC,CAAC,CAAC;qBAClE,MAAM,CAAC,KAAK,CAAC,CAAA;gBAChB,yDAAyD;gBACzD,IAAI,mBAAmB,KAAK,sBAAsB,EAAE,CAAC;oBACnD,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,cAAO,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,EAAE;wBAC9E,SAAS,EAAE,eAAe,CAAC,SAAS;qBACrC,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;YAED,QAAQ,EAAE,CAAA;YACV,UAAU,CAAC;gBACT,SAAS,EAAE,CAAC;gBACZ,QAAQ;gBACR,MAAM;gBACN,cAAc,EAAE,sBAAsB,CAAC,IAAI;aAC5C,CAAC,CAAA;QACJ,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED,kCAAkC;IAClC,yBAAyB;IACzB,2BAA2B;IAC3B,gCAAgC;IAChC,qBAAqB;IACrB,mCAAmC;IACnC,iCAAiC;IACjC,oGAAoG;IACpG,kDAAkD;IAClD,kDAAkD;IAElD,6BAA6B;IAC7B,uDAAuD;IACvD,gDAAgD;IAChD,gDAAgD;IAChD,QAAQ;IAER,yBAAyB;IACzB,kCAAkC;IAClC,eAAe;IACf,6DAA6D;IAC7D,eAAe;IACf,yDAAyD;IACzD,wBAAwB;IACxB,UAAU;IACV,wBAAwB;IACxB,iDAAiD;IACjD,mDAAmD;IACnD,YAAY;IACZ,iCAAiC;IACjC,iBAAiB;IACjB,8DAA8D;IAC9D,8BAA8B;IAC9B,iEAAiE;IACjE,mEAAmE;IACnE,uBAAuB;IACvB,wDAAwD;IACxD,yCAAyC;IACzC,gBAAgB;IAChB,gBAAgB;IAChB,aAAa;IACb,UAAU;IACV,kDAAkD;IAClD,QAAQ;IAER,uCAAuC;IACvC,2DAA2D;IAC3D,wEAAwE;IACxE,8BAA8B;IAC9B,4CAA4C;IAC5C,wDAAwD;IACxD,4DAA4D;IAC5D,UAAU;IACV,eAAe;IACf,kDAAkD;IAClD,iGAAiG;IACjG,UAAU;IACV,wBAAwB;IACxB,sCAAsC;IACtC,iBAAiB;IACjB,qFAAqF;IACrF,iEAAiE;IACjE,mEAAmE;IACnE,uBAAuB;IACvB,wDAAwD;IACxD,yCAAyC;IACzC,gBAAgB;IAChB,gBAAgB;IAChB,aAAa;IACb,UAAU;IACV,mEAAmE;IACnE,QAAQ;IACR,8CAA8C;IAC9C,MAAM;IAEN,yBAAyB;IACzB,IAAI;IAEJ;;OAEG;IACK,6BAA6B,CAAC,GAAW;QAC/C,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;IAC7E,CAAC;IAED;;OAEG;IACK,eAAe,CACrB,SAAkC,EAClC,MAA+B,EAC/B,cAA2C;QAE3C,MAAM,GAAG,GAA4B,EAAE,CAAA;QACvC,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YACxC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjE,SAAQ;YACV,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YACjC,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACtC,SAAQ;YACV,CAAC;YACD,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACtB,KAAK,QAAQ,CAAC;gBACd,KAAK,MAAM;oBACT,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;oBAChC,MAAK;gBACP,KAAK,KAAK,CAAC,CAAC,CAAC;oBACX,MAAM,CAAC,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAA;oBACnE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;wBACrB,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBACxB,CAAC;oBACD,MAAK;gBACP,CAAC;gBACD,KAAK,OAAO,CAAC,CAAC,CAAC;oBACb,MAAM,CAAC,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;oBACjE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;wBACrB,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBACxB,CAAC;oBACD,MAAK;gBACP,CAAC;gBACD,KAAK,SAAS;oBACZ,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;oBACjF,MAAK;gBACP,KAAK,UAAU;oBACb,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;oBAChC,MAAK;YACT,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,4FAA4F;IACpF,kBAAkB,CACxB,WAA4B,EAC5B,MAAsB,EACtB,KAAa,EACb,IAAa;QAEb,MAAM,KAAK,GAAG,CAAC,WAAmB,EAAU,EAAE;YAC5C,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC,IAAA,4CAAiB,EAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAA;YAClE,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;gBACrB,MAAM,IAAI,0BAAmB,CAC3B,MAAM,MAAM,CAAC,UAAU,SAAS,MAAM,CAAC,MAAM,IAAI,WAAW,EAAE,CAC/D,CAAA;YACH,CAAC;YACD,OAAO,MAAM,CAAC,EAAE,CAAC,CAAA;QACnB,CAAC,CAAA;QACD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;QAC5B,CAAC;QACD,OAAO,IAAA,0CAAe,EAAC,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAC1C,CAAC;IAEO,yBAAyB,CAAC,KAAa;QAC7C,OAAO,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACvC,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,YAAyC,EACzC,MAA2B,EAC3B,GAAmB,EACnB,KAA4B,EAC5B,kBAAmC,mBAAmB;QAEtD,SAAS,YAAY,CAAC,KAAc;YAClC,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;gBAClB,OAAO,KAAK,CAAA;YACd,CAAC;YACD,QAAQ,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC5B,KAAK,MAAM,CAAC;gBACZ,KAAK,GAAG,CAAC;gBACT,KAAK,KAAK;oBACR,OAAO,IAAI,CAAA;gBACb;oBACE,OAAO,KAAK,CAAA;YAChB,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAQX,EAAE,CAAA;QAEN,KAAK,MAAM,QAAQ,IAAI,MAAM,EAAE,CAAC;YAC9B,IAAI,oBAAoB,GAAG,IAAA,aAAI,EAC7B,IAAI,CAAC,gBAAgB,EACrB,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,IAAI,CACpD,CAAA;YAED,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1B,wCAAwC;gBACxC,IAAK,QAAsC,CAAC,MAAM,KAAK,YAAK,EAAE,CAAC;oBAC7D,oBAAoB,GAAG,OAAO,CAAA;gBAChC,CAAC;YACH,CAAC;YAED,MAAM,KAAK,GAAG,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAEzC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBAClC,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,IAAI,QAAQ,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;oBAChE,MAAM,IAAI,0BAAmB,CAC3B,mCAAmC,QAAQ,CAAC,IAAI,uBAAuB,CACxE,CAAA;gBACH,CAAC;gBACD,SAAQ;YACV,CAAC;YAED,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC/B,MAAM,SAAS,GAAG,QAAmC,CAAA;gBACrD,IAAI,CAAC;oBACH,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;wBAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;wBAC5B,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;4BAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAC,CAAA;4BAC1E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;gCAC/B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;4BACrD,CAAC;4BACD,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gCACxD,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oCACrE,MAAM,IAAI,KAAK,CAAC,mCAAmC,KAAK,EAAE,CAAC,CAAA;gCAC7D,CAAC;gCACD,OAAO,IAAI,CAAC,eAAe,CACzB,SAAS,EACT,IAA+B,EAC/B,YAAY,CACb,CAAA;4BACH,CAAC,CAAC,CAAA;wBACJ,CAAC;6BAAM,CAAC;4BACN,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK;iCAC7B,KAAK,CAAC,GAAG,CAAC;iCACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;iCAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC;iCAC7B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gCACZ,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC,CAAA;gCAChE,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;oCAClE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;gCAC5D,CAAC;gCACD,OAAO,IAAI,CAAC,eAAe,CACzB,SAAS,EACT,GAA8B,EAC9B,YAAY,CACb,CAAA;4BACH,CAAC,CAAC,CAAA;wBACN,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;wBACxE,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;4BAClE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;wBACjD,CAAC;wBACD,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,eAAe,CAC7C,SAAS,EACT,GAA8B,EAC9B,YAAY,CACb,CAAA;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,CAAU,EAAE,CAAC;oBACpB,MAAM,OAAO,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;oBAC1D,aAAM,CAAC,IAAI,CACT,0BAA0B,QAAQ,CAAC,IAAI,eAAe,OAAO,EAAE,EAC/D,iBAAiB,CAClB,CAAA;gBACH,CAAC;gBACD,SAAQ;YACV,CAAC;YAED,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBACjC,MAAM,QAAQ,GAAG,IAAA,kCAAmB,EAAC,QAAQ,CAAC,CAAA;gBAC9C,MAAM,MAAM,GAAG,QAAqC,CAAA;gBACpD,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;gBACtE,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,GAAG,GAAG,IAAI,CAAC,kBAAkB,CACjC,eAAe,CAAC,WAAW,EAC3B,MAAM,EACN,KAAK,EACL,QAAQ,CAAC,IAAI,KAAK,IAAI,CACvB,CAAA;oBACD,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACxE,MAAM,IAAI,0BAAmB,CAC3B,mCAAmC,QAAQ,CAAC,IAAI,uBAAuB,CACxE,CAAA;oBACH,CAAC;oBACD,SAAS,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAA;oBACzB,SAAQ;gBACV,CAAC;gBAED,IAAI,MAAM,CAAC,MAAM,KAAK,YAAK,EAAE,CAAC;oBAC5B,IAAI,qBAAoD,CAAA;oBACxD,IAAI,IAAA,mBAAU,EAAC,KAAK,EAAE,GAAG,CAAC,IAAI,IAAA,mBAAU,EAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;wBACrD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;4BAC9B,MAAM,UAAU,GAA4B,IAAI,CAAC,KAAK,CACpD,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CACvE,CAAA;4BAED,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;gCAC9B,MAAM,UAAU,GAAa,EAAE,CAAA;gCAC/B,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;oCAC/B,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;wCACxE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAA;wCACtE,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;wCACzC,IAAI,KAAK,EAAE,CAAC;4CACV,UAAU,CAAC,IAAI,CAAC,KAAe,CAAC,CAAA;wCAClC,CAAC;oCACH,CAAC;oCACD,MAAM,UAAU,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;oCAC1E,IAAI,UAAU,IAAI,KAAK,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;wCAC/D,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE;4CAClC,EAAE,EAAE,UAAU,CAAC,EAAE;4CACjB,IAAI,EAAE,KAAK,CAAC,IAAI;yCACjB,CAAC,CAAA;wCACF,UAAU,CAAC,IAAI,GAAG,KAAK,CAAC,IAAqB,CAAA;oCAC/C,CAAC;gCACH,CAAC;gCACD,qBAAqB,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;gCAClE,SAAS,CAAC,QAAQ,CAAC,GAAG,qBAAqB,CAAA;4BAC7C,CAAC;iCAAM,CAAC;gCACN,IAAI,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;oCAClF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAA;oCAC3E,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAY,CAAA;oCAC7D,SAAS,CAAC,QAAQ,CAAC,GAAG,qBAAqB,CAAA;gCAC7C,CAAC;gCAED,MAAM,UAAU,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;gCACpF,IAAI,UAAU,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;oCACzE,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE;wCAClC,EAAE,EAAE,UAAU,CAAC,EAAE;wCACjB,IAAI,EAAE,UAAU,CAAC,IAAI;qCACtB,CAAC,CAAA;oCACF,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,IAAqB,CAAA;gCACpD,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,IAAI,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;4BAChE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;4BAC/E,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAY,CAAA;4BAC7D,SAAS,CAAC,QAAQ,CAAC,GAAG,qBAAqB,CAAA;wBAC7C,CAAC;oBACH,CAAC;oBACD,IACE,MAAM,CAAC,QAAQ,KAAK,KAAK;wBACzB,CAAC,qBAAqB,IAAI,IAAI;4BAC5B,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,qBAAqB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,EAC/E,CAAC;wBACD,MAAM,IAAI,0BAAmB,CAC3B,mCAAmC,QAAQ,CAAC,IAAI,iCAAiC,CAClF,CAAA;oBACH,CAAC;oBACD,SAAQ;gBACV,CAAC;gBAED,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;oBAC3B,MAAM,WAAW,GAAG,KAAK;yBACtB,KAAK,CAAC,GAAG,CAAC;yBACV,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;yBACxB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,CAAA;oBAC9B,IACE,WAAW,CAAC,IAAI,CACd,CAAC,EAAE,EAAE,EAAE,CACL,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;wBACxB,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;wBACzB,IAAA,mBAAU,EAAC,EAAE,EAAE,GAAG,CAAC;wBACnB,IAAA,mBAAU,EAAC,EAAE,EAAE,GAAG,CAAC;wBACnB,CAAC,IAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,CACtC,EACD,CAAC;wBACD,MAAM,IAAI,0BAAmB,CAC3B,0BAA0B,QAAQ,CAAC,IAAI,mCAAmC,CAC3E,CAAA;oBACH,CAAC;oBACD,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBAC1D,MAAM,IAAI,0BAAmB,CAC3B,mCAAmC,QAAQ,CAAC,IAAI,uBAAuB,CACxE,CAAA;oBACH,CAAC;oBACD,SAAS,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAA;gBACnC,CAAC;qBAAM,CAAC;oBACN,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;oBAC/B,MAAM,eAAe,GACnB,UAAU,KAAK,EAAE;wBACjB,CAAC,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC;wBACjC,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC;wBAClC,CAAC,IAAA,mBAAU,EAAC,UAAU,EAAE,GAAG,CAAC;wBAC5B,CAAC,IAAA,mBAAU,EAAC,UAAU,EAAE,GAAG,CAAC;wBAC5B,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAA;oBAC5C,IAAI,CAAC,eAAe,EAAE,CAAC;wBACrB,MAAM,IAAI,0BAAmB,CAC3B,0BAA0B,QAAQ,CAAC,IAAI,oCAAoC,CAC5E,CAAA;oBACH,CAAC;oBACD,SAAS,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAA;gBAClC,CAAC;gBACD,SAAQ;YACV,CAAC;YAED,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBAC3B,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;YACjF,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;YAChD,CAAC;iBAAM,CAAC;gBACN,IAAI,IAAA,mBAAU,EAAC,KAAK,EAAE,GAAG,CAAC,IAAI,IAAA,mBAAU,EAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;oBACrD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;wBAC9B,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;oBAC1E,CAAC;yBAAM,CAAC;wBACN,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;6BAC7C,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;6BAClB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;6BACpB,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;oBAC7B,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;gBACtD,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAED;;;OAGG;IACK,wBAAwB,CAAC,IAAwB,EAAE,aAA4B;QACrF,yFAAyF;QACzF,qEAAqE;QACrE,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAAA;YAC7E,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,0BAAmB,CAAC,sBAAsB,CAAC,CAAA;YACvD,CAAC;YACD,OAAO,QAAQ,CAAC,EAAE,CAAA;QACpB,CAAC;QAED,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;QACtC,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QACnC,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;QAChE,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,0BAAmB,CAAC,kCAAkC,IAAI,GAAG,CAAC,CAAA;QAC1E,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,EAAE,CAAA;QACxC,OAAO,KAAK,CAAC,EAAE,CAAA;IACjB,CAAC;IAEO,2BAA2B,CACjC,YAAoB,EACpB,YAA0B;QAE1B,IAAI,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,YAAY,CAAC,CAAA;QAC3E,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;QAC/B,CAAC;QACD,OAAO,WAAW,CAAA;IACpB,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,yBAAyB,CACrC,GAAmB,EACnB,IAA2B,EAC3B,eAAgC;QAEhC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAuD,CAAA;QAIrF,uFAAuF;QACvF,wEAAwE;QACxE,MAAM,WAAW,GAAG,IAAI,GAAG,EAOxB,CAAA;QACH,KAAK,MAAM,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;YAC/B,KAAK,MAAM,WAAW,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;gBAC/C,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;oBACtB,SAAQ;gBACV,CAAC;gBACD,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI;oBACjD,WAAW;oBACX,MAAM,EAAE,IAAI,GAAG,EAAE;oBACjB,aAAa,EAAE,IAAI,GAAG,EAAU;iBACjC,CAAA;gBACD,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;gBACxC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;gBACxE,MAAM,eAAe,GAAG,IAAI,CAAC,2BAA2B,CACtD,WAAW,CAAC,YAAY,EACxB,GAAG,CAAC,YAAY,CACjB,CAAA;gBACD,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;oBAC9C,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC5B,OAAM;oBACR,CAAC;oBACD,KAAK,CAAC,MAAM,CAAC,GAAG,CACd,KAAK,EACL,WAAW,CAAC,YAAY;yBACrB,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;wBACrB,YAAY,EAAE,WAAW,CAAC,YAAY;wBACtC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC;qBAChC,CAAC,CAAC;yBACF,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CACzB,CAAA;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,IAAI,WAAW,EAAE,CAAC;YACzE,yFAAyF;YACzF,8FAA8F;YAC9F,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAClC,IAAA,gBAAO,EAAC,CAAC,GAAG,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CACvE,CAAA;YACD,MAAM,iBAAiB,GAAG,WAAW,CAAC,YAAY;iBAC/C,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;gBACrB,YAAY,EAAE,WAAW,CAAC,YAAY;gBACtC,IAAI,EAAE,WAAW,CAAC,IAAI;aACvB,CAAC,CAAC;iBACF,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YAExB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,yBAAkB,CAAC,CAAC,OAAO,CAAC;gBACzF,SAAS,EAAE,CAAC,UAAU,CAAC;gBACvB,KAAK,EAAE;oBACL,IAAI;oBACJ,QAAQ,EAAE;wBACR,EAAE,EAAE,GAAG,CAAC,SAAS;qBAClB;iBACF;aACF,CAAC,CAAA;YAEF,gFAAgF;YAChF,MAAM,OAAO,GAAG,aAAa;gBAC3B,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,wBAAwB,CAAC;oBAC/C,EAAE,EAAE,aAAa,CAAC,EAAE;oBACpB,IAAI;oBACJ,OAAO,EAAE,EAAE;oBACX,YAAY,EAAE,iBAAiB;iBAChC,CAAC;gBACJ,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,wBAAwB,CAAC;oBAC/C,IAAI;oBACJ,OAAO,EAAE,EAAE;oBACX,YAAY,EAAE,iBAAiB;iBAChC,CAAC,CAAA;YAEN,MAAM,SAAS,GAAG,IAAI,GAAG,EAAc,CAAA;YACvC,KAAK,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,MAAM,EAAE,CAAC;gBAC3C,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE;oBACvD,KAAK;oBACL,UAAU,EAAE,eAAe;oBAC3B,SAAS,EAAE,MAAM;iBAClB,CAAC,CAAA;gBACF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC;oBAClE,oBAAoB,EAAE,OAAO;oBAC7B,IAAI,EAAE,UAAU;oBAChB,YAAY;iBACb,CAAC,CAAA;gBACF,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,eAAe,CAAC,CAAA;YACvC,CAAC;YAED,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAA;QAClD,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAA;QAExC,OAAO,cAAc,CAAA;IACvB,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,KAAkB,EAAE,SAAiB,EAAE,SAAiB;QAChF,MAAM,kBAAkB,GAAG,GAAG,SAAS,KAAK,SAAS,EAAE,CAAA;QACvD,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;QACzE,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAO,kBAAkB,CAAA;QAC3B,CAAC;QAED,MAAM,OAAO,GACX,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC;YAChC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC;gBACnC,IAAI,EAAE,SAAS;gBACf,SAAS,EAAE,KAAK;gBAChB,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;oBACnD,OAAO;wBACL,YAAY,EAAE,WAAW,CAAC,YAAY;wBACtC,IAAI,EAAE,WAAW,CAAC,KAAK;wBACvB,KAAK,EAAE,WAAW,CAAC,KAAK;qBACzB,CAAA;gBACH,CAAC,CAAC;aACH,CAAC,CAAC,CAAA;QACL,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QAEzC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;YAC5D,OAAO;YACP,IAAI,EAAE,SAAS;YACf,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;gBACnD,OAAO;oBACL,YAAY,EAAE,WAAW,CAAC,YAAY;oBACtC,IAAI,EAAE,WAAW,CAAC,KAAK;iBACxB,CAAA;YACH,CAAC,CAAC;SACH,CAAC,CAAA;QAEF,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAA;QAC5D,OAAO,YAAY,CAAA;IACrB,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,aAAa,CACzB,UAAoB,EACpB,UAAmC,EACnC,GAAoB;QAEpB,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,MAAM,GAAa,EAAE,CAAA;QAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;YACpD,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAA;YACrC,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YACxE,IAAI,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBACxE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CACjD,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,EACpF,GAAG,CACJ,CAAA;gBACD,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;gBAC/B,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;gBAC/B,SAAQ;YACV,CAAC;YACD,MAAM,aAAa,GAAG,UAAU,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YACzE,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YAC5B,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,iDAAiD,SAAS,GAAG,CAAC,CAAA;YAC5E,CAAC;QACH,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;IAC3B,CAAC;IAEO,sBAAsB,CAC5B,cAAuB,EACvB,qBAA+C,EAC/C,gBAAkC;QAElC,MAAM,sBAAsB,GAC1B,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,2BAAS,CAAC,KAAK,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,CAAA;QAE7E,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,sBAAsB,EAAE,CAAC;YACxD,IAAI,gBAAgB,KAAK,SAAS,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC7D,OAAO,sBAAsB,CAAC,EAAE,CAAA;YAClC,CAAC;YACD,IAAI,qBAAqB,CAAC,IAAI,KAAK,2BAAS,CAAC,KAAK,EAAE,CAAC;gBACnD,OAAO,qBAAqB,CAAC,EAAE,CAAA;YACjC,CAAC;YACD,OAAO,sBAAsB,CAAC,EAAE,CAAA;QAClC,CAAC;QAED,IAAI,qBAAqB,EAAE,IAAI,KAAK,2BAAS,CAAC,KAAK,EAAE,CAAC;YACpD,OAAO,qBAAqB,CAAC,EAAE,CAAA;QACjC,CAAC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,KAAK,CAAC,2BAA2B,CAC/B,GAAmB,EACnB,EAAO,EACP,WAAW,GAAG,IAAI;QAElB,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,MAAM,OAAO,GACX,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,cAAO,CAAC,CAAC,OAAO,CAAC;YACzD,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,WAAW;YACX,SAAS,EAAE,CAAC,eAAe,CAAC;SAC7B,CAAC,CAAC,IAAI,SAAS,CAAA;QAElB,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,CAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACrF,IAAI,CAAC,UAAU;qBACZ,aAAa,CAAC,GAAG,EAAE,iBAAU,CAAC;qBAC9B,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1E,IAAI,CAAC,UAAU;qBACZ,aAAa,CAAC,GAAG,EAAE,yBAAkB,CAAC;qBACtC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5E,IAAI,CAAC,UAAU;qBACZ,aAAa,CAAC,GAAG,EAAE,qBAAc,CAAC;qBAClC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC/E,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,mBAAY,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC;gBAC3F,IAAI,CAAC,UAAU;qBACZ,aAAa,CAAC,GAAG,EAAE,YAAK,CAAC;qBACzB,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,aAAa,EAAE,EAAE,EAAE,EAAE,CAAC;aACzD,CAAC,CAAA;YAEF,OAAO,CAAC,WAAW,GAAG,WAAW,CAAA;YACjC,OAAO,CAAC,YAAY,GAAG,YAAY,CAAA;YACnC,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAA;YAC3B,OAAO,CAAC,MAAM,GAAG,MAAM,CAAA;YACvB,IAAI,aAAa,EAAE,CAAC;gBAClB,OAAO,CAAC,aAAa,GAAG,aAAa,CAAA;YACvC,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;CACF,CAAA;AAlgDY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,mBAAU,GAAE;IA8BR,YAAA,IAAA,eAAM,EAAC,gDAAoC,CAAC,CAAA;IAE5C,YAAA,IAAA,eAAM,EAAC,0CAA8B,CAAC,CAAA;qCAjBnB,8BAAuB;QACpB,oBAAa;QAEd,4BAAY;QACX,sCAAqB;QACtB,4DAA2B;QACtB,wBAAiB;QAEpB,qBAAc;QACd,qBAAc;QAChB,mBAAY;QACP,wBAAiB;QAChB,yBAAkB;QACxB,mBAAY;QACN,gCAAyB,UAErB,iDAAsB,UAGvB,+CAAqB;GAjC3C,eAAe,CAkgD3B"}
@@ -0,0 +1,24 @@
1
+ import { Channel, ChannelService, RequestContext, TransactionalConnection } from '@vendure/core';
2
+ import { ParsedProductWithId } from '../types';
3
+ /** The column that names, by token, the channels a row's product is assigned to. */
4
+ export declare const CHANNELS_COLUMN = "channels";
5
+ /** The channels of one import's `channels` column, by token. */
6
+ export type ChannelsByToken = Map<string, Channel>;
7
+ export interface ResolvedChannelColumn {
8
+ /** One `Row N: channels: ...` line per rejected token. Any error stops the whole import. */
9
+ errors: string[];
10
+ channelsByToken: ChannelsByToken;
11
+ }
12
+ /**
13
+ * Checks the tokens of the `channels` column before anything is written. A token must name a
14
+ * channel; an import run outside the default channel can only name its own channel; and the
15
+ * uploader needs product rights in every channel named. A context without a user (server code
16
+ * calling the importer itself) is trusted, as Vendure trusts it.
17
+ */
18
+ export declare class ChannelColumnResolver {
19
+ private connection;
20
+ private channelService;
21
+ constructor(connection: TransactionalConnection, channelService: ChannelService);
22
+ resolve(ctx: RequestContext, uploader: RequestContext, rows: ParsedProductWithId[]): Promise<ResolvedChannelColumn>;
23
+ private problemWith;
24
+ }
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ChannelColumnResolver = exports.CHANNELS_COLUMN = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const core_1 = require("@vendure/core");
15
+ const typeorm_1 = require("typeorm");
16
+ /** The column that names, by token, the channels a row's product is assigned to. */
17
+ exports.CHANNELS_COLUMN = 'channels';
18
+ /** Rights the upload endpoint asks for in the active channel, asked here in every named channel. */
19
+ const PRODUCT_RIGHTS = [core_1.Permission.UpdateCatalog, core_1.Permission.UpdateProduct];
20
+ /**
21
+ * Checks the tokens of the `channels` column before anything is written. A token must name a
22
+ * channel; an import run outside the default channel can only name its own channel; and the
23
+ * uploader needs product rights in every channel named. A context without a user (server code
24
+ * calling the importer itself) is trusted, as Vendure trusts it.
25
+ */
26
+ let ChannelColumnResolver = class ChannelColumnResolver {
27
+ connection;
28
+ channelService;
29
+ constructor(connection, channelService) {
30
+ this.connection = connection;
31
+ this.channelService = channelService;
32
+ }
33
+ async resolve(ctx, uploader, rows) {
34
+ const tokens = [...new Set(rows.flatMap((row) => row.product.channelTokens))];
35
+ if (tokens.length === 0) {
36
+ return { errors: [], channelsByToken: new Map() };
37
+ }
38
+ const channels = await this.connection
39
+ .getRepository(ctx, core_1.Channel)
40
+ .find({ where: { token: (0, typeorm_1.In)(tokens) } });
41
+ const channelsByToken = new Map(channels.map((channel) => [channel.token, channel]));
42
+ const defaultChannel = await this.channelService.getDefaultChannel(ctx);
43
+ const importsInDefaultChannel = (0, core_1.idsAreEqual)(ctx.channelId, defaultChannel.id);
44
+ const errors = [];
45
+ for (const { product } of rows) {
46
+ for (const token of product.channelTokens) {
47
+ const problem = this.problemWith(token, channelsByToken.get(token), ctx, uploader, importsInDefaultChannel);
48
+ if (problem) {
49
+ errors.push(`Row ${product.line}: ${exports.CHANNELS_COLUMN}: ${problem}`);
50
+ }
51
+ }
52
+ }
53
+ return { errors, channelsByToken };
54
+ }
55
+ problemWith(token, channel, ctx, uploader, importsInDefaultChannel) {
56
+ if (!channel) {
57
+ return `no channel with token '${token}'`;
58
+ }
59
+ if (!importsInDefaultChannel && !(0, core_1.idsAreEqual)(channel.id, ctx.channelId)) {
60
+ const own = ctx.channel.token;
61
+ return `an import run in channel '${own}' can only name '${own}', not '${token}'`;
62
+ }
63
+ if (uploader.activeUserId && !hasProductRights(uploader, channel)) {
64
+ return `no right to update products in channel '${token}'`;
65
+ }
66
+ }
67
+ };
68
+ exports.ChannelColumnResolver = ChannelColumnResolver;
69
+ exports.ChannelColumnResolver = ChannelColumnResolver = __decorate([
70
+ (0, common_1.Injectable)(),
71
+ __metadata("design:paramtypes", [core_1.TransactionalConnection,
72
+ core_1.ChannelService])
73
+ ], ChannelColumnResolver);
74
+ function hasProductRights(uploader, channel) {
75
+ const channelPermissions = uploader.session?.user?.channelPermissions ?? [];
76
+ const permissions = channelPermissions.find((entry) => (0, core_1.idsAreEqual)(entry.id, channel.id))?.permissions ?? [];
77
+ return PRODUCT_RIGHTS.some((right) => permissions.includes(right));
78
+ }
79
+ //# sourceMappingURL=channel-column-resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channel-column-resolver.js","sourceRoot":"","sources":["../../../../../packages/product-import-export-plugin/src/services/channel-column-resolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { CustomFieldConfig, Type, VendureEntity } from '@vendure/core';
2
+ /** How the export writes one relation custom field by a column of the related entity. */
3
+ export interface ExportRelationLookup {
4
+ /** The related entity's column written instead of the id, e.g. `sku`. */
5
+ column: string;
6
+ /** The CSV header, `<owner>:<field>:<entity>:<column>`: the lookup header the import reads. */
7
+ header: string;
8
+ }
9
+ interface ProductCustomFields {
10
+ Product: CustomFieldConfig[];
11
+ ProductVariant: CustomFieldConfig[];
12
+ }
13
+ /**
14
+ * Checks `exportOptions.relationLookups` against the custom field config and returns the lookup of
15
+ * each `<owner>:<field>` key. Throws for a key that names no relation custom field, for an Asset
16
+ * relation, and for a column that is not a plain text column of the related entity, since the
17
+ * import could not read such a file back.
18
+ */
19
+ export declare function resolveExportRelationLookups(lookups: Record<string, string> | undefined, customFields: ProductCustomFields, isTextColumn: (entity: Type<VendureEntity>, column: string) => boolean): Map<string, ExportRelationLookup>;
20
+ /**
21
+ * The given column of each related row of one relation cell (a single row or a list), in order.
22
+ * Soft-deleted rows and rows without a value are left out, since the import matches only live rows
23
+ * by a value.
24
+ */
25
+ export declare function relationLookupValues(fieldValue: unknown, column: string): string[];
26
+ export {};