@lightdash/common 0.1914.1 → 0.1915.0

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.
@@ -4,7 +4,7 @@ import { dateGranularityToTimeFrameMap, } from '../types/timeFrames';
4
4
  import { timeFrameConfigs } from '../utils/timeFrames';
5
5
  import { renderFilterRuleSqlFromField } from './filtersCompiler';
6
6
  import { getCategoriesFromResource, getSpotlightConfigurationForResource, } from './lightdashProjectConfig';
7
- import { getParameterReferences } from './parameters';
7
+ import { getAvailableParameterNames, getParameterReferences, validateParameterReferences, } from './parameters';
8
8
  // exclude lightdash prefix from variable pattern
9
9
  export const lightdashVariablePattern = /\$\{((?!(lightdash|ld)\.)[a-zA-Z0-9_.]+)\}/g;
10
10
  export const getParsedReference = (ref, currentTable) => {
@@ -50,6 +50,9 @@ export class ExploreCompiler {
50
50
  if (hasDuplicateParameterDefinitions) {
51
51
  throw new CompileError(`Failed to compile explore "${name}". Cannot have duplicate parameter definitions in model and \`lightdash.config.yml\``, {});
52
52
  }
53
+ // available parameters are the combination of project parameters and model parameters
54
+ // used for validating parameter references
55
+ const availableParameters = getAvailableParameterNames(projectParameters, meta.parameters);
53
56
  const includedTables = joinedTables.reduce((prev, join) => {
54
57
  const joinTableName = join.alias || tables[join.table].name;
55
58
  const joinTableLabel = join.label ||
@@ -115,9 +118,9 @@ export class ExploreCompiler {
115
118
  }, { [baseTable]: tables[baseTable] });
116
119
  const compiledTables = aliases.reduce((prev, tableName) => ({
117
120
  ...prev,
118
- [tableName]: this.compileTable(includedTables[tableName], includedTables),
121
+ [tableName]: this.compileTable(includedTables[tableName], includedTables, availableParameters),
119
122
  }), {});
120
- const compiledJoins = joinedTables.map((j) => this.compileJoin(j, includedTables));
123
+ const compiledJoins = joinedTables.map((j) => this.compileJoin(j, includedTables, availableParameters));
121
124
  const spotlightVisibility = meta.spotlight?.visibility ?? spotlightConfig?.default_visibility;
122
125
  const spotlightCategories = getCategoriesFromResource('explore', name, spotlightConfig, meta.spotlight?.categories);
123
126
  return {
@@ -140,14 +143,14 @@ export class ExploreCompiler {
140
143
  : {}),
141
144
  };
142
145
  }
143
- compileTable(table, tables) {
146
+ compileTable(table, tables, availableParameters) {
144
147
  const dimensions = Object.keys(table.dimensions).reduce((prev, dimensionKey) => ({
145
148
  ...prev,
146
- [dimensionKey]: this.compileDimension(table.dimensions[dimensionKey], tables),
149
+ [dimensionKey]: this.compileDimension(table.dimensions[dimensionKey], tables, availableParameters),
147
150
  }), {});
148
151
  const metrics = Object.keys(table.metrics).reduce((prev, metricKey) => ({
149
152
  ...prev,
150
- [metricKey]: this.compileMetric(table.metrics[metricKey], tables),
153
+ [metricKey]: this.compileMetric(table.metrics[metricKey], tables, availableParameters),
151
154
  }), {});
152
155
  const compiledSqlWhere = table.sqlWhere?.replace(lightdashVariablePattern, (_, p1) => {
153
156
  const compiledReference = this.compileDimensionReference(p1, tables, table.name);
@@ -157,6 +160,7 @@ export class ExploreCompiler {
157
160
  const parameterReferences = compiledSqlWhere
158
161
  ? getParameterReferences(compiledSqlWhere)
159
162
  : [];
163
+ validateParameterReferences(table.name, parameterReferences, availableParameters);
160
164
  return {
161
165
  ...table,
162
166
  uncompiledSqlWhere: table.sqlWhere,
@@ -166,8 +170,8 @@ export class ExploreCompiler {
166
170
  ...(parameterReferences.length > 0 ? { parameterReferences } : {}),
167
171
  };
168
172
  }
169
- compileMetric(metric, tables) {
170
- const compiledMetric = this.compileMetricSql(metric, tables);
173
+ compileMetric(metric, tables, availableParameters) {
174
+ const compiledMetric = this.compileMetricSql(metric, tables, availableParameters);
171
175
  metric.showUnderlyingValues?.forEach((dimReference) => {
172
176
  const { refTable, refName } = getParsedReference(dimReference, metric.table);
173
177
  const referencedTable = getReferencedTable(refTable, tables);
@@ -186,6 +190,7 @@ export class ExploreCompiler {
186
190
  const compiledSql = compiledMetric.sql;
187
191
  // Extract parameter references from metric sql
188
192
  const parameterReferences = getParameterReferences(compiledSql);
193
+ validateParameterReferences(metric.table, parameterReferences, availableParameters);
189
194
  return {
190
195
  ...metric,
191
196
  compiledSql,
@@ -196,7 +201,7 @@ export class ExploreCompiler {
196
201
  ...(parameterReferences.length > 0 ? { parameterReferences } : {}),
197
202
  };
198
203
  }
199
- compileMetricSql(metric, tables) {
204
+ compileMetricSql(metric, tables, availableParameters) {
200
205
  // Metric might have references to other dimensions
201
206
  if (!tables[metric.table]) {
202
207
  throw new CompileError(`Metric "${metric.name}" references a table "${metric.table}" which matches no model`, {});
@@ -209,7 +214,7 @@ export class ExploreCompiler {
209
214
  throw new CompileError(`Metric "${metric.name}" in table "${metric.table}" has a sql string referencing itself: "${metric.sql}"`, {});
210
215
  }
211
216
  const compiledReference = isNonAggregateMetric(metric)
212
- ? this.compileMetricReference(p1, tables, metric.table)
217
+ ? this.compileMetricReference(p1, tables, metric.table, availableParameters)
213
218
  : this.compileDimensionReference(p1, tables, metric.table);
214
219
  tablesReferences = new Set([
215
220
  ...tablesReferences,
@@ -238,7 +243,7 @@ export class ExploreCompiler {
238
243
  if (!dimensionField) {
239
244
  throw new CompileError(`Filter for metric "${metric.name}" has a reference to an unknown dimension: ${fieldRef}`);
240
245
  }
241
- const compiledDimension = this.compileDimension(dimensionField, tables);
246
+ const compiledDimension = this.compileDimension(dimensionField, tables, availableParameters);
242
247
  if (compiledDimension.tablesReferences) {
243
248
  tablesReferences = new Set([
244
249
  ...tablesReferences,
@@ -252,7 +257,7 @@ export class ExploreCompiler {
252
257
  const compiledSql = this.warehouseClient.getMetricSql(renderedSql, metric);
253
258
  return { sql: compiledSql, tablesReferences };
254
259
  }
255
- compileDimension(dimension, tables) {
260
+ compileDimension(dimension, tables, availableParameters) {
256
261
  const compiledDimension = this.compileDimensionSql(dimension, tables);
257
262
  const tablesRequiredAttributes = Array.from(compiledDimension.tablesReferences).reduce((acc, tableReference) => {
258
263
  const table = tables[tableReference];
@@ -264,6 +269,7 @@ export class ExploreCompiler {
264
269
  const compiledSql = compiledDimension.sql;
265
270
  // Extract parameter references from dimension sql
266
271
  const parameterReferences = getParameterReferences(compiledSql);
272
+ validateParameterReferences(dimension.table, parameterReferences, availableParameters);
267
273
  return {
268
274
  ...dimension,
269
275
  compiledSql,
@@ -294,7 +300,7 @@ export class ExploreCompiler {
294
300
  });
295
301
  return { sql, tablesReferences };
296
302
  }
297
- compileCustomDimensionSql(dimension, tables) {
303
+ compileCustomDimensionSql(dimension, tables, availableParameters) {
298
304
  const currentRef = dimension.id;
299
305
  let tablesReferences = new Set([]);
300
306
  const compiledSql = dimension.sql.replace(lightdashVariablePattern, (_, p1) => {
@@ -310,17 +316,18 @@ export class ExploreCompiler {
310
316
  });
311
317
  // Extract parameter references from custom dimension sql
312
318
  const parameterReferences = getParameterReferences(compiledSql);
319
+ validateParameterReferences(dimension.table, parameterReferences, availableParameters);
313
320
  return {
314
321
  compiledSql,
315
322
  tablesReferences: Array.from(tablesReferences),
316
323
  ...(parameterReferences.length > 0 ? { parameterReferences } : {}),
317
324
  };
318
325
  }
319
- compileCustomDimension(customDimension, tables) {
326
+ compileCustomDimension(customDimension, tables, availableParameters) {
320
327
  if (isCustomBinDimension(customDimension)) {
321
328
  return customDimension;
322
329
  }
323
- const compiledCustomDimensionSql = this.compileCustomDimensionSql(customDimension, tables);
330
+ const compiledCustomDimensionSql = this.compileCustomDimensionSql(customDimension, tables, availableParameters);
324
331
  return {
325
332
  ...customDimension,
326
333
  ...compiledCustomDimensionSql,
@@ -351,7 +358,7 @@ export class ExploreCompiler {
351
358
  ]),
352
359
  };
353
360
  }
354
- compileMetricReference(ref, tables, currentTable) {
361
+ compileMetricReference(ref, tables, currentTable, availableParameters) {
355
362
  // Reference to current table
356
363
  if (ref === 'TABLE') {
357
364
  const fieldQuoteChar = this.warehouseClient.getFieldQuoteChar();
@@ -367,7 +374,7 @@ export class ExploreCompiler {
367
374
  throw new CompileError(`Model "${currentTable}" has a metric reference: \${${ref}} which matches no metric`, {});
368
375
  }
369
376
  // eslint-disable-next-line @typescript-eslint/no-use-before-define
370
- const compiledMetric = this.compileMetricSql(referencedMetric, tables);
377
+ const compiledMetric = this.compileMetricSql(referencedMetric, tables, availableParameters);
371
378
  return {
372
379
  sql: `(${compiledMetric.sql})`,
373
380
  tablesReferences: new Set([
@@ -387,13 +394,14 @@ export class ExploreCompiler {
387
394
  });
388
395
  return { sql, tablesReferences };
389
396
  }
390
- compileJoin(join, tables) {
397
+ compileJoin(join, tables, availableParameters) {
391
398
  const { sql, tablesReferences } = this.compileExploreJoinSql({
392
399
  table: join.alias || join.table,
393
400
  sqlOn: join.sqlOn,
394
401
  }, tables);
395
402
  // Extract parameter references from sqlOn
396
403
  const parameterReferences = getParameterReferences(sql);
404
+ validateParameterReferences(join.table, parameterReferences, availableParameters);
397
405
  return {
398
406
  table: join.alias || join.table,
399
407
  sqlOn: join.sqlOn,
@@ -407,7 +415,7 @@ export class ExploreCompiler {
407
415
  };
408
416
  }
409
417
  }
410
- export const createDimensionWithGranularity = (dimensionName, baseTimeDimension, explore, warehouseSqlBuilder, granularity) => {
418
+ export const createDimensionWithGranularity = (dimensionName, baseTimeDimension, explore, warehouseSqlBuilder, granularity, availableParameters) => {
411
419
  const newTimeInterval = dateGranularityToTimeFrameMap[granularity];
412
420
  const exploreCompiler = new ExploreCompiler(warehouseSqlBuilder);
413
421
  return exploreCompiler.compileDimension({
@@ -419,6 +427,6 @@ export const createDimensionWithGranularity = (dimensionName, baseTimeDimension,
419
427
  .getLabel()
420
428
  .toLowerCase()}`,
421
429
  sql: timeFrameConfigs[newTimeInterval].getSql(warehouseSqlBuilder.getAdapterType(), newTimeInterval, baseTimeDimension.sql, timeFrameConfigs[newTimeInterval].getDimensionType(baseTimeDimension.type), warehouseSqlBuilder.getStartOfWeek()),
422
- }, explore.tables);
430
+ }, explore.tables, availableParameters);
423
431
  };
424
432
  //# sourceMappingURL=exploreCompiler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exploreCompiler.js","sourceRoot":"","sources":["../../../src/compiler/exploreCompiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exploreCompiler.js","sourceRoot":"","sources":["../../../src/compiler/exploreCompiler.ts"],"names":[],"mappings":"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"}
@@ -167,13 +167,13 @@ describe('Compile metrics with filters', () => {
167
167
  jest.useFakeTimers();
168
168
  });
169
169
  test('should show filters as columns metric1', () => {
170
- expect(compiler.compileMetric(tablesWithMetricsWithFilters.table1.metrics.metric1, tablesWithMetricsWithFilters).compiledSql).toStrictEqual(`MAX(CASE WHEN (LOWER("table1".shared) LIKE LOWER('%foo%')) THEN ("table1".number_column) ELSE NULL END)`);
170
+ expect(compiler.compileMetric(tablesWithMetricsWithFilters.table1.metrics.metric1, tablesWithMetricsWithFilters, []).compiledSql).toStrictEqual(`MAX(CASE WHEN (LOWER("table1".shared) LIKE LOWER('%foo%')) THEN ("table1".number_column) ELSE NULL END)`);
171
171
  });
172
172
  test('should show filters as columns metric2', () => {
173
- expect(compiler.compileMetric(tablesWithMetricsWithFilters.table2.metrics.metric2, tablesWithMetricsWithFilters).compiledSql).toStrictEqual(`MAX(CASE WHEN (("table2".dim2) < (10) AND ("table2".dim2) > (5)) THEN ("table2".number_column) ELSE NULL END)`);
173
+ expect(compiler.compileMetric(tablesWithMetricsWithFilters.table2.metrics.metric2, tablesWithMetricsWithFilters, []).compiledSql).toStrictEqual(`MAX(CASE WHEN (("table2".dim2) < (10) AND ("table2".dim2) > (5)) THEN ("table2".number_column) ELSE NULL END)`);
174
174
  });
175
175
  test('should show filters as columns metric with sql', () => {
176
- expect(compiler.compileMetric(tablesWithMetricsWithFilters.table1.metrics.metric_with_sql, tablesWithMetricsWithFilters).compiledSql).toStrictEqual(`MAX(CASE WHEN (LOWER("table1".shared) LIKE LOWER('%foo%')) THEN (CASE WHEN "table1".number_column THEN 1 ELSE 0 END) ELSE NULL END)`);
176
+ expect(compiler.compileMetric(tablesWithMetricsWithFilters.table1.metrics.metric_with_sql, tablesWithMetricsWithFilters, []).compiledSql).toStrictEqual(`MAX(CASE WHEN (LOWER("table1".shared) LIKE LOWER('%foo%')) THEN (CASE WHEN "table1".number_column THEN 1 ELSE 0 END) ELSE NULL END)`);
177
177
  });
178
178
  });
179
179
  describe('Parse dimension reference', () => {
@@ -223,10 +223,10 @@ describe('Explore with always true join', () => {
223
223
  });
224
224
  describe('Compiled custom dimensions', () => {
225
225
  test('should compile custom dimension with no references', () => {
226
- expect(compiler.compileCustomDimension(customSqlDimensionWithNoReferences, simpleJoinedExplore.tables)).toStrictEqual(expectedCompiledCustomSqlDimensionWithNoReferences);
226
+ expect(compiler.compileCustomDimension(customSqlDimensionWithNoReferences, simpleJoinedExplore.tables, [])).toStrictEqual(expectedCompiledCustomSqlDimensionWithNoReferences);
227
227
  });
228
228
  test('should compile custom dimension with references', () => {
229
- expect(compiler.compileCustomDimension(customSqlDimensionWithReferences, simpleJoinedExplore.tables)).toStrictEqual(expectedCompiledCustomSqlDimensionWithReferences);
229
+ expect(compiler.compileCustomDimension(customSqlDimensionWithReferences, simpleJoinedExplore.tables, [])).toStrictEqual(expectedCompiledCustomSqlDimensionWithReferences);
230
230
  });
231
231
  });
232
232
  //# sourceMappingURL=exploreCompiler.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exploreCompiler.test.js","sourceRoot":"","sources":["../../../src/compiler/exploreCompiler.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exploreCompiler.test.js","sourceRoot":"","sources":["../../../src/compiler/exploreCompiler.test.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * Utility functions for handling SQL parameter references
3
3
  */
4
+ import type { LightdashProjectParameter } from '../types/lightdashProjectConfig';
4
5
  export declare const parameterRegex: RegExp;
5
6
  /**
6
7
  * Extracts parameter references from SQL strings
@@ -8,4 +9,12 @@ export declare const parameterRegex: RegExp;
8
9
  * @returns An array of unique parameter names referenced in the SQL
9
10
  */
10
11
  export declare const getParameterReferences: (sql: string) => string[];
12
+ export declare const validateParameterReferences: (tableName: string, parameterReferences: string[], availableParameters: string[]) => void;
13
+ /**
14
+ * Get all available parameter names for a project and explore
15
+ * @param projectParameters - The project parameters
16
+ * @param exploreParameters - The explore parameters
17
+ * @returns An array of available parameter names
18
+ */
19
+ export declare const getAvailableParameterNames: (projectParameters: Record<string, LightdashProjectParameter> | undefined, exploreParameters: Record<string, LightdashProjectParameter> | undefined) => string[];
11
20
  //# sourceMappingURL=parameters.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parameters.d.ts","sourceRoot":"","sources":["../../../src/compiler/parameters.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,cAAc,QAAmD,CAAC;AAE/E;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAS,MAAM,KAAG,MAAM,EAc1D,CAAC"}
1
+ {"version":3,"file":"parameters.d.ts","sourceRoot":"","sources":["../../../src/compiler/parameters.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAEjF,eAAO,MAAM,cAAc,QAAmD,CAAC;AAE/E;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAS,MAAM,KAAG,MAAM,EAc1D,CAAC;AAEF,eAAO,MAAM,2BAA2B,cACzB,MAAM,uBACI,MAAM,EAAE,uBACR,MAAM,EAAE,SAchC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,sBAChB,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,GAAG,SAAS,qBACrD,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,GAAG,SAAS,KACzE,MAAM,EAGJ,CAAC"}
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * Utility functions for handling SQL parameter references
3
3
  */
4
+ import { CompileError } from '../types/errors';
4
5
  export const parameterRegex = /\$\{(?:lightdash|ld)\.(?:parameters)\.(\w+)\}/g;
5
6
  /**
6
7
  * Extracts parameter references from SQL strings
@@ -17,4 +18,17 @@ export const getParameterReferences = (sql) => {
17
18
  // Return unique parameter names
18
19
  return [...new Set(parameterNames)];
19
20
  };
21
+ export const validateParameterReferences = (tableName, parameterReferences, availableParameters) => {
22
+ const missingParameters = parameterReferences.filter((p) => !availableParameters.includes(p));
23
+ if (missingParameters.length > 0) {
24
+ throw new CompileError(`Failed to compile explore "${tableName}". Missing parameters: ${missingParameters.join(', ')}`, {});
25
+ }
26
+ };
27
+ /**
28
+ * Get all available parameter names for a project and explore
29
+ * @param projectParameters - The project parameters
30
+ * @param exploreParameters - The explore parameters
31
+ * @returns An array of available parameter names
32
+ */
33
+ export const getAvailableParameterNames = (projectParameters, exploreParameters) => Object.keys(projectParameters || {}).concat(Object.keys(exploreParameters || {}));
20
34
  //# sourceMappingURL=parameters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../../src/compiler/parameters.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,gDAAgD,CAAC;AAE/E;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAW,EAAY,EAAE;IAC5D,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAE1C,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;IACd,CAAC;IAED,8EAA8E;IAC9E,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACzC,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,CACtC,CAAC;IAEF,gCAAgC;IAChC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC;AACxC,CAAC,CAAC"}
1
+ {"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../../src/compiler/parameters.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,MAAM,CAAC,MAAM,cAAc,GAAG,gDAAgD,CAAC;AAE/E;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAW,EAAY,EAAE;IAC5D,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAE1C,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;IACd,CAAC;IAED,8EAA8E;IAC9E,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACzC,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,CACtC,CAAC;IAEF,gCAAgC;IAChC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CACvC,SAAiB,EACjB,mBAA6B,EAC7B,mBAA6B,EAC/B,EAAE;IACA,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,MAAM,CAChD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAC1C,CAAC;IAEF,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,YAAY,CAClB,8BAA8B,SAAS,0BAA0B,iBAAiB,CAAC,IAAI,CACnF,IAAI,CACP,EAAE,EACH,EAAE,CACL,CAAC;IACN,CAAC;AACL,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACtC,iBAAwE,EACxE,iBAAwE,EAChE,EAAE,CACV,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,MAAM,CACvC,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CACvC,CAAC"}