@happyvertical/smrt-reports 0.51.31 → 0.51.33

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.
@@ -3,12 +3,12 @@
3
3
  "sensitiveFieldsExcluded": true,
4
4
  "generatedAt": "1970-01-01T00:00:00.000Z",
5
5
  "packageName": "@happyvertical/smrt-reports",
6
- "packageVersion": "0.51.31",
6
+ "packageVersion": "0.51.33",
7
7
  "sourceManifestPath": "dist/manifest.json",
8
8
  "agentDocPath": "AGENTS.md",
9
9
  "sourceHashes": {
10
- "manifest": "66f825ba46f03112a0e24d31d3eb345950517a2e2c890aa0695e18ea0499be06",
11
- "packageJson": "95d6ac1e3eb6b78df8c911e0baedb97b70085ef78ef9f22f74737369771bee42",
10
+ "manifest": "e4ed73077446359b5887fc5c10a1478bb77cae30d56c846b2f3b8878996ca00b",
11
+ "packageJson": "df7e8163043d807ec0b65aea0e7a1f6ce5eb04946d35d93ae1c380f047a1378e",
12
12
  "agents": "c4cb7fa4c5b144ba48f382d3ecbf74b76dd1361e843a7f2747e7e035719910da"
13
13
  },
14
14
  "exports": [
@@ -30,7 +30,7 @@
30
30
  "@happyvertical/sql": "catalog:",
31
31
  "@happyvertical/smrt-vitest": "workspace:*",
32
32
  "@types/node": "24.13.6",
33
- "typescript": "5.9.3",
33
+ "typescript": "6.0.3",
34
34
  "vite": "8.1.4",
35
35
  "vitest": "4.1.10"
36
36
  },
package/dist/state.d.ts CHANGED
@@ -1,108 +1,84 @@
1
- import { DatabaseInterface } from '@happyvertical/sql';
2
- import { SmrtCollection } from '@happyvertical/smrt-core';
3
- import { SmrtObject } from '@happyvertical/smrt-core';
4
-
5
- export declare function assertReportTablesReady(db: DatabaseInterface, tables?: readonly string[]): Promise<void>;
6
-
7
- export declare const REPORT_LOCKS_TABLE = "_smrt_report_locks";
8
-
9
- export declare const REPORT_REFRESH_TASKS_TABLE = "_smrt_report_refresh_tasks";
10
-
11
- export declare const REPORT_RUNS_TABLE = "_smrt_report_runs";
12
-
13
- export declare const REPORT_RUNTIME_TABLES: readonly ["_smrt_report_runs", "_smrt_report_watermarks", "_smrt_report_locks"];
14
-
15
- export declare const REPORT_SCHEDULER_TABLES: readonly ["_smrt_report_schedules", "_smrt_report_refresh_tasks"];
16
-
17
- export declare const REPORT_SCHEDULES_TABLE = "_smrt_report_schedules";
18
-
19
- export declare const REPORT_WATERMARKS_TABLE = "_smrt_report_watermarks";
20
-
21
- declare type ReportRefreshMode = 'rebuild' | 'incremental';
22
-
23
- declare type ReportRefreshTrigger = 'manual' | 'schedule' | 'change' | 'ttl' | 'job';
24
-
25
- export declare type ReportRunStatus = 'running' | 'success' | 'failed' | 'skipped';
26
-
27
- export declare type ReportScheduleStatus = 'active' | 'paused' | 'disabled' | 'error';
28
-
29
- export declare function scopeKeyForTenant(tenantId: string | null | undefined): string;
30
-
31
- export declare class SmrtReportLock extends SmrtObject {
32
- tenantId: string | null;
33
- scopeKey: string;
34
- reportClass: string;
35
- ownerId: string | null;
36
- acquiredAt: Date | null;
37
- heartbeatAt: Date | null;
38
- expiresAt: Date | null;
39
- }
40
-
41
- export declare class SmrtReportLockCollection extends SmrtCollection<SmrtReportLock> {
42
- static readonly _itemClass: typeof SmrtReportLock;
43
- }
44
-
45
- export declare class SmrtReportRun extends SmrtObject {
46
- tenantId: string | null;
47
- scopeKey: string;
48
- reportClass: string;
49
- sourceClass: string;
50
- mode: ReportRefreshMode;
51
- trigger: ReportRefreshTrigger;
52
- status: ReportRunStatus;
53
- startedAt: Date;
54
- completedAt: Date | null;
55
- rowCount: number;
56
- changedGroupCount: number;
57
- watermarkBefore: string | null;
58
- watermarkAfter: string | null;
59
- error: string | null;
60
- metadata: Record<string, unknown>;
61
- }
62
-
63
- export declare class SmrtReportRunCollection extends SmrtCollection<SmrtReportRun> {
64
- static readonly _itemClass: typeof SmrtReportRun;
65
- }
66
-
67
- export declare class SmrtReportSchedule extends SmrtObject {
68
- tenantId: string | null;
69
- scopeKey: string;
70
- reportClass: string;
71
- cron: string;
72
- trigger: ReportRefreshTrigger;
73
- mode: ReportRefreshMode;
74
- enabled: boolean;
75
- status: ReportScheduleStatus;
76
- nextRun: Date | null;
77
- lastRun: Date | null;
78
- lastStatus: 'success' | 'failed' | null;
79
- lastError: string | null;
80
- runCount: number;
81
- successCount: number;
82
- failureCount: number;
83
- runningCount: number;
84
- maxConcurrent: number;
85
- queue: string;
86
- priority: number;
87
- timeout: number;
88
- }
89
-
90
- export declare class SmrtReportScheduleCollection extends SmrtCollection<SmrtReportSchedule> {
91
- static readonly _itemClass: typeof SmrtReportSchedule;
92
- }
93
-
94
- export declare class SmrtReportWatermark extends SmrtObject {
95
- tenantId: string | null;
96
- scopeKey: string;
97
- reportClass: string;
98
- sourceClass: string;
99
- watermarkColumn: string;
100
- watermarkValue: string | null;
101
- lastRunId: string | null;
102
- }
103
-
104
- export declare class SmrtReportWatermarkCollection extends SmrtCollection<SmrtReportWatermark> {
105
- static readonly _itemClass: typeof SmrtReportWatermark;
106
- }
107
-
108
- export { }
1
+ import { SmrtCollection, SmrtObject } from '@happyvertical/smrt-core';
2
+ import type { DatabaseInterface } from '@happyvertical/sql';
3
+ import type { ReportRefreshMode, ReportRefreshTrigger } from './types.js';
4
+ export declare const REPORT_RUNS_TABLE = "_smrt_report_runs";
5
+ export declare const REPORT_WATERMARKS_TABLE = "_smrt_report_watermarks";
6
+ export declare const REPORT_LOCKS_TABLE = "_smrt_report_locks";
7
+ export declare const REPORT_SCHEDULES_TABLE = "_smrt_report_schedules";
8
+ export declare const REPORT_REFRESH_TASKS_TABLE = "_smrt_report_refresh_tasks";
9
+ export declare const REPORT_RUNTIME_TABLES: readonly ["_smrt_report_runs", "_smrt_report_watermarks", "_smrt_report_locks"];
10
+ export declare const REPORT_SCHEDULER_TABLES: readonly ["_smrt_report_schedules", "_smrt_report_refresh_tasks"];
11
+ export type ReportRunStatus = 'running' | 'success' | 'failed' | 'skipped';
12
+ export type ReportScheduleStatus = 'active' | 'paused' | 'disabled' | 'error';
13
+ export declare function scopeKeyForTenant(tenantId: string | null | undefined): string;
14
+ export declare function assertReportTablesReady(db: DatabaseInterface, tables?: readonly string[]): Promise<void>;
15
+ export declare class SmrtReportRun extends SmrtObject {
16
+ tenantId: string | null;
17
+ scopeKey: string;
18
+ reportClass: string;
19
+ sourceClass: string;
20
+ mode: ReportRefreshMode;
21
+ trigger: ReportRefreshTrigger;
22
+ status: ReportRunStatus;
23
+ startedAt: Date;
24
+ completedAt: Date | null;
25
+ rowCount: number;
26
+ changedGroupCount: number;
27
+ watermarkBefore: string | null;
28
+ watermarkAfter: string | null;
29
+ error: string | null;
30
+ metadata: Record<string, unknown>;
31
+ }
32
+ export declare class SmrtReportRunCollection extends SmrtCollection<SmrtReportRun> {
33
+ static readonly _itemClass: typeof SmrtReportRun;
34
+ }
35
+ export declare class SmrtReportWatermark extends SmrtObject {
36
+ tenantId: string | null;
37
+ scopeKey: string;
38
+ reportClass: string;
39
+ sourceClass: string;
40
+ watermarkColumn: string;
41
+ watermarkValue: string | null;
42
+ lastRunId: string | null;
43
+ }
44
+ export declare class SmrtReportWatermarkCollection extends SmrtCollection<SmrtReportWatermark> {
45
+ static readonly _itemClass: typeof SmrtReportWatermark;
46
+ }
47
+ export declare class SmrtReportLock extends SmrtObject {
48
+ tenantId: string | null;
49
+ scopeKey: string;
50
+ reportClass: string;
51
+ ownerId: string | null;
52
+ acquiredAt: Date | null;
53
+ heartbeatAt: Date | null;
54
+ expiresAt: Date | null;
55
+ }
56
+ export declare class SmrtReportLockCollection extends SmrtCollection<SmrtReportLock> {
57
+ static readonly _itemClass: typeof SmrtReportLock;
58
+ }
59
+ export declare class SmrtReportSchedule extends SmrtObject {
60
+ tenantId: string | null;
61
+ scopeKey: string;
62
+ reportClass: string;
63
+ cron: string;
64
+ trigger: ReportRefreshTrigger;
65
+ mode: ReportRefreshMode;
66
+ enabled: boolean;
67
+ status: ReportScheduleStatus;
68
+ nextRun: Date | null;
69
+ lastRun: Date | null;
70
+ lastStatus: 'success' | 'failed' | null;
71
+ lastError: string | null;
72
+ runCount: number;
73
+ successCount: number;
74
+ failureCount: number;
75
+ runningCount: number;
76
+ maxConcurrent: number;
77
+ queue: string;
78
+ priority: number;
79
+ timeout: number;
80
+ }
81
+ export declare class SmrtReportScheduleCollection extends SmrtCollection<SmrtReportSchedule> {
82
+ static readonly _itemClass: typeof SmrtReportSchedule;
83
+ }
84
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,114 +1,86 @@
1
- import { AggregateBuildResult } from '@happyvertical/sql';
2
- import { AggregateFunction } from '@happyvertical/sql';
3
- import { AggregateSelectExpr } from '@happyvertical/sql';
4
- import { AggregateSpec } from '@happyvertical/sql';
5
- import { AggregateTimeBucketUnit } from '@happyvertical/sql';
6
- import { DatabaseInterface } from '@happyvertical/sql';
7
- import { SmrtObject } from '@happyvertical/smrt-core';
8
- import { SqlAdapterType } from '@happyvertical/sql';
9
- import { WhereClause } from '@happyvertical/sql';
10
-
11
- export { AggregateBuildResult }
12
-
13
- export { AggregateSelectExpr }
14
-
15
- export { AggregateSpec }
16
-
17
- export declare interface ReportAggregateFieldMetadata {
18
- kind: 'aggregate';
19
- fn: ReportAggregateFn;
20
- column?: string;
21
- distinct?: boolean;
22
- }
23
-
24
- export declare type ReportAggregateFn = AggregateFunction;
25
-
26
- export declare interface ReportBucketFieldMetadata {
27
- kind: 'bucket';
28
- unit: ReportTimeBucketUnit;
29
- sourceColumn: string;
30
- }
31
-
32
- export declare interface ReportDefinition {
33
- reportClassName: string;
34
- sourceClassName: string;
35
- sourceTable: string;
36
- fields: ReportFieldDefinition[];
37
- where?: WhereClause;
38
- having?: WhereClause;
39
- refresh?: ReportRefreshConfig;
40
- }
41
-
42
- export declare interface ReportFieldDefinition {
43
- fieldName: string;
44
- columnName?: string;
45
- type?: string;
46
- report?: ReportFieldMetadata;
47
- }
48
-
49
- export declare type ReportFieldMetadata = ReportGroupFieldMetadata | ReportBucketFieldMetadata | ReportAggregateFieldMetadata;
50
-
51
- export declare interface ReportGroupFieldMetadata {
52
- kind: 'group';
53
- sourceColumn?: string;
54
- }
55
-
56
- export declare interface ReportOptions {
57
- source: ReportSource;
58
- where?: WhereClause;
59
- having?: WhereClause;
60
- refresh?: ReportRefreshConfig;
61
- }
62
-
63
- export declare interface ReportRefreshConfig {
64
- mode?: ReportRefreshMode;
65
- schedule?: string;
66
- onChange?: ReportSource[];
67
- /**
68
- * Milliseconds before collection reads trigger a synchronous refresh.
69
- *
70
- * TTL refresh checks add a read-time MAX(refreshedAt) query, and stale reads
71
- * perform the refresh before returning list/get results.
72
- */
73
- ttl?: number;
74
- manual?: boolean;
75
- watermarkColumn?: string;
76
- softDeleteColumn?: string;
77
- fullRebuildSchedule?: string;
78
- tenantFanout?: boolean;
79
- }
80
-
81
- export declare type ReportRefreshMode = 'rebuild' | 'incremental';
82
-
83
- export declare interface ReportRefreshOptions {
84
- db?: DatabaseInterface;
85
- mode?: ReportRefreshMode;
86
- adapterType?: SqlAdapterType;
87
- trigger?: ReportRefreshTrigger;
88
- tenantId?: string | null;
89
- tenantIds?: string[];
90
- lock?: boolean;
91
- lockTtlMs?: number;
92
- trackRuns?: boolean;
93
- scheduleId?: string;
94
- changedRows?: Record<string, unknown>[];
95
- }
96
-
97
- export declare interface ReportRefreshResult {
98
- rowCount: number;
99
- refreshedAt: Date;
100
- mode: ReportRefreshMode;
101
- tenantId?: string | null;
102
- runId?: string;
103
- changedGroupCount?: number;
104
- skipped?: boolean;
105
- tenantResults?: ReportRefreshResult[];
106
- }
107
-
108
- export declare type ReportRefreshTrigger = 'manual' | 'schedule' | 'change' | 'ttl' | 'job';
109
-
110
- export declare type ReportSource = string | (new (...args: any[]) => SmrtObject) | (abstract new (...args: any[]) => SmrtObject);
111
-
112
- export declare type ReportTimeBucketUnit = AggregateTimeBucketUnit;
113
-
114
- export { }
1
+ import type { SmrtObject } from '@happyvertical/smrt-core';
2
+ import type { AggregateBuildResult, AggregateFunction, AggregateSelectExpr, AggregateSpec, AggregateTimeBucketUnit, SqlAdapterType, WhereClause } from '@happyvertical/sql';
3
+ export type ReportTimeBucketUnit = AggregateTimeBucketUnit;
4
+ export type ReportAggregateFn = AggregateFunction;
5
+ export type { AggregateBuildResult, AggregateSelectExpr, AggregateSpec };
6
+ export type ReportRefreshMode = 'rebuild' | 'incremental';
7
+ export type ReportRefreshTrigger = 'manual' | 'schedule' | 'change' | 'ttl' | 'job';
8
+ export type ReportSource = string | (new (...args: any[]) => SmrtObject) | (abstract new (...args: any[]) => SmrtObject);
9
+ export interface ReportRefreshConfig {
10
+ mode?: ReportRefreshMode;
11
+ schedule?: string;
12
+ onChange?: ReportSource[];
13
+ /**
14
+ * Milliseconds before collection reads trigger a synchronous refresh.
15
+ *
16
+ * TTL refresh checks add a read-time MAX(refreshedAt) query, and stale reads
17
+ * perform the refresh before returning list/get results.
18
+ */
19
+ ttl?: number;
20
+ manual?: boolean;
21
+ watermarkColumn?: string;
22
+ softDeleteColumn?: string;
23
+ fullRebuildSchedule?: string;
24
+ tenantFanout?: boolean;
25
+ }
26
+ export interface ReportOptions {
27
+ source: ReportSource;
28
+ where?: WhereClause;
29
+ having?: WhereClause;
30
+ refresh?: ReportRefreshConfig;
31
+ }
32
+ export interface ReportGroupFieldMetadata {
33
+ kind: 'group';
34
+ sourceColumn?: string;
35
+ }
36
+ export interface ReportBucketFieldMetadata {
37
+ kind: 'bucket';
38
+ unit: ReportTimeBucketUnit;
39
+ sourceColumn: string;
40
+ }
41
+ export interface ReportAggregateFieldMetadata {
42
+ kind: 'aggregate';
43
+ fn: ReportAggregateFn;
44
+ column?: string;
45
+ distinct?: boolean;
46
+ }
47
+ export type ReportFieldMetadata = ReportGroupFieldMetadata | ReportBucketFieldMetadata | ReportAggregateFieldMetadata;
48
+ export interface ReportFieldDefinition {
49
+ fieldName: string;
50
+ columnName?: string;
51
+ type?: string;
52
+ report?: ReportFieldMetadata;
53
+ }
54
+ export interface ReportDefinition {
55
+ reportClassName: string;
56
+ sourceClassName: string;
57
+ sourceTable: string;
58
+ fields: ReportFieldDefinition[];
59
+ where?: WhereClause;
60
+ having?: WhereClause;
61
+ refresh?: ReportRefreshConfig;
62
+ }
63
+ export interface ReportRefreshOptions {
64
+ db?: import('@happyvertical/sql').DatabaseInterface;
65
+ mode?: ReportRefreshMode;
66
+ adapterType?: SqlAdapterType;
67
+ trigger?: ReportRefreshTrigger;
68
+ tenantId?: string | null;
69
+ tenantIds?: string[];
70
+ lock?: boolean;
71
+ lockTtlMs?: number;
72
+ trackRuns?: boolean;
73
+ scheduleId?: string;
74
+ changedRows?: Record<string, unknown>[];
75
+ }
76
+ export interface ReportRefreshResult {
77
+ rowCount: number;
78
+ refreshedAt: Date;
79
+ mode: ReportRefreshMode;
80
+ tenantId?: string | null;
81
+ runId?: string;
82
+ changedGroupCount?: number;
83
+ skipped?: boolean;
84
+ tenantResults?: ReportRefreshResult[];
85
+ }
86
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EACV,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,uBAAuB,EACvB,cAAc,EACd,WAAW,EACZ,MAAM,oBAAoB,CAAC;AAE5B,MAAM,MAAM,oBAAoB,GAAG,uBAAuB,CAAC;AAC3D,MAAM,MAAM,iBAAiB,GAAG,iBAAiB,CAAC;AAClD,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,aAAa,EAAE,CAAC;AAEzE,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,aAAa,CAAC;AAE1D,MAAM,MAAM,oBAAoB,GAC5B,QAAQ,GACR,UAAU,GACV,QAAQ,GACR,KAAK,GACL,KAAK,CAAC;AAEV,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,CAAC,KACC,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,UAAU,CAAC,GAChB,CAAC,QAAQ,MACP,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,UAAU,CAAC,CAAC;AAErB,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B;;;;;OAKG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC/B;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,oBAAoB,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,WAAW,CAAC;IAClB,EAAE,EAAE,iBAAiB,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,mBAAmB,GAC3B,wBAAwB,GACxB,yBAAyB,GACzB,4BAA4B,CAAC;AAEjC,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,mBAAmB,CAAC;CAC9B;AAED,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,qBAAqB,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,CAAC,EAAE,OAAO,oBAAoB,EAAE,iBAAiB,CAAC;IACpD,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,IAAI,CAAC;IAClB,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,mBAAmB,EAAE,CAAC;CACvC"}