duckdb-tinyorm 2.0.3 → 3.0.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.
@@ -2,27 +2,47 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DuckDbRepository = exports.DuckDbLocation = void 0;
4
4
  /* eslint-disable @typescript-eslint/no-explicit-any */
5
- const duckdb_1 = require("duckdb");
5
+ const node_api_1 = require("@duckdb/node-api");
6
6
  const mapping_helper_1 = require("../helpers/mapping.helper");
7
7
  const table_util_helper_1 = require("../helpers/table-util.helper");
8
8
  const db_helper_1 = require("../helpers/db.helper");
9
- const transaction_1 = require("./transaction"); // Add this import
9
+ const transaction_1 = require("./transaction");
10
10
  const orm_errors_1 = require("../errors/orm-errors");
11
+ const models_interface_1 = require("./models.interface");
11
12
  var DuckDbLocation;
12
13
  (function (DuckDbLocation) {
13
14
  DuckDbLocation["File"] = "";
14
15
  DuckDbLocation["Memory"] = ":memory:";
15
16
  })(DuckDbLocation || (exports.DuckDbLocation = DuckDbLocation = {}));
16
17
  class DuckDbRepository {
17
- db = undefined;
18
+ instance = undefined;
18
19
  connection = undefined;
19
- // private statement: Statement;
20
- // private toDropTable: boolean = true;
21
20
  tables = new Map();
22
21
  isClosed = true;
23
- // private readonly tableName: string;
24
- // private readonly fileName: string;
22
+ connectionPromise = null;
23
+ initialized = null;
25
24
  static instance = null;
25
+ static async getInstance(duckdbConfig) {
26
+ if (!duckdbConfig) {
27
+ duckdbConfig = {
28
+ name: 'default',
29
+ location: DuckDbLocation.Memory,
30
+ filename: undefined
31
+ };
32
+ }
33
+ if (duckdbConfig?.location == DuckDbLocation.File && !duckdbConfig.filename) {
34
+ throw new Error("Filepath for duckdb is missing");
35
+ }
36
+ const dbLocation = duckdbConfig.location == DuckDbLocation.File ? duckdbConfig.filename : DuckDbLocation.Memory.toString();
37
+ console.log(dbLocation);
38
+ if (!this.instance) {
39
+ this.instance = new DuckDbRepository(dbLocation, duckdbConfig.options);
40
+ // Wait for initialization to complete
41
+ await this.instance.initialized;
42
+ }
43
+ return this.instance;
44
+ }
45
+ // Legacy method to maintain backward compatibility
26
46
  static getInstances(duckdbConfig) {
27
47
  if (!duckdbConfig) {
28
48
  duckdbConfig = {
@@ -37,24 +57,77 @@ class DuckDbRepository {
37
57
  const dbLocation = duckdbConfig.location == DuckDbLocation.File ? duckdbConfig.filename : DuckDbLocation.Memory.toString();
38
58
  console.log(dbLocation);
39
59
  if (!this.instance) {
40
- this.instance = new DuckDbRepository(dbLocation);
60
+ this.instance = new DuckDbRepository(dbLocation, duckdbConfig.options);
41
61
  }
42
62
  return this.instance;
43
63
  }
44
- constructor(location) {
45
- if (!this.db) {
46
- this.db = new duckdb_1.Database(location ?? ':memory:');
47
- this.connect();
64
+ constructor(location, options) {
65
+ // Initialize with the provided location or default to ':memory:'
66
+ this.initialized = this.initSync(location ?? ':memory:', options).catch(error => {
67
+ console.error('Error initializing DuckDB instance:', error);
68
+ throw error;
69
+ });
70
+ }
71
+ async initSync(location, options) {
72
+ try {
73
+ // Create instance using the static create method as per DuckDB API
74
+ this.instance = await node_api_1.DuckDBInstance.create(location);
75
+ console.log(`DuckDB instance created at ${location}`);
76
+ // If we have options and the instance is created successfully, set them
77
+ if (options && this.instance) {
78
+ // Set options on the instance if needed
79
+ }
80
+ // Connect immediately after creating the instance
81
+ if (this.instance) {
82
+ this.connection = await this.instance.connect();
83
+ this.isClosed = false;
84
+ console.log('DuckDB connection established successfully');
85
+ }
86
+ }
87
+ catch (error) {
88
+ console.error('Error initializing DuckDB repository:', error);
89
+ throw error;
90
+ }
91
+ }
92
+ async connect() {
93
+ // If we're already connecting, return the existing promise
94
+ if (this.connectionPromise) {
95
+ return this.connectionPromise;
96
+ }
97
+ // If we're already connected, return immediately
98
+ if (!this.isClosed && this.connection) {
99
+ return Promise.resolve();
48
100
  }
101
+ // Start a new connection process
102
+ this.connectionPromise = new Promise((resolve, reject) => {
103
+ if (this.isClosed && this.instance) {
104
+ this.instance.connect()
105
+ .then(connection => {
106
+ this.connection = connection;
107
+ this.isClosed = false;
108
+ resolve();
109
+ })
110
+ .catch(error => {
111
+ console.error('Error connecting to DuckDB:', error);
112
+ reject(error);
113
+ })
114
+ .finally(() => {
115
+ this.connectionPromise = null;
116
+ });
117
+ }
118
+ else {
119
+ resolve();
120
+ }
121
+ });
122
+ return this.connectionPromise;
49
123
  }
50
- connect() {
51
- if (this.isClosed) {
52
- this.connection = this.db?.connect();
53
- this.isClosed = false;
124
+ async ensureConnected() {
125
+ if (!this.connection || this.isClosed) {
126
+ await this.connect();
54
127
  }
55
128
  }
56
- // Fix the sequence creation logic
57
129
  async createTableIfNotExists(tableName, classType) {
130
+ await this.ensureConnected();
58
131
  try {
59
132
  // Get the actual table name from metadata if available
60
133
  const actualTableName = Reflect.getMetadata('TableName', classType) || tableName;
@@ -100,15 +173,18 @@ class DuckDbRepository {
100
173
  }
101
174
  }
102
175
  async getDuckDbExtension(extension_name) {
176
+ await this.ensureConnected();
103
177
  return this.executeQuery(`select extension_name, loaded, installed from duckdb_extensions() where extension_name='${extension_name}';`);
104
178
  }
105
179
  async executeQuery(query) {
106
- return await (0, db_helper_1.executeQuery)(this.connection, query);
180
+ await this.ensureConnected();
181
+ return (0, db_helper_1.executeQuery)(this.connection, query);
107
182
  }
108
183
  async pushToDuckDb(tableName, classType, data) {
109
184
  await this.saveToDuckDB(tableName, classType, data);
110
185
  }
111
186
  async saveToDuckDB(tableName, classType, data) {
187
+ await this.ensureConnected();
112
188
  if (!(data?.length))
113
189
  return;
114
190
  // Get the actual table name from metadata if available
@@ -122,15 +198,18 @@ class DuckDbRepository {
122
198
  await (0, db_helper_1.bulkInsert)(this.connection, fullQuery);
123
199
  }
124
200
  async saveToParquet(name, mainFolder) {
201
+ await this.ensureConnected();
125
202
  const fileName = `${name}.parquet`;
126
203
  const tableName = `main.${name}`;
127
204
  await (0, db_helper_1.saveToParquet)(this.connection, fileName, tableName, mainFolder);
128
205
  }
129
206
  async saveToParquetByName(parquetFileName, duckDBTableName, mainFolder) {
207
+ await this.ensureConnected();
130
208
  const fileName = `${parquetFileName}.parquet`;
131
209
  await (0, db_helper_1.saveToParquet)(this.connection, fileName, `main.${duckDBTableName}`, mainFolder);
132
210
  }
133
211
  async dropTablesFromMemory() {
212
+ await this.ensureConnected();
134
213
  const promiseDropTables = [];
135
214
  this.tables.forEach((value, key) => {
136
215
  if (value)
@@ -141,26 +220,30 @@ class DuckDbRepository {
141
220
  await Promise.all(promiseDropTables);
142
221
  }
143
222
  async dropTable(tableName) {
223
+ await this.ensureConnected();
144
224
  await (0, db_helper_1.dropTable)(this.connection, 'main.' + tableName);
145
225
  if (this.tables.get(tableName)) {
146
226
  this.tables.delete(tableName);
147
227
  }
148
228
  }
149
229
  async deleteTableData(tableName) {
230
+ await this.ensureConnected();
150
231
  return await (0, db_helper_1.deleteTableData)(this.connection, tableName);
151
232
  }
152
233
  async saveQueryToParquet(name, query, folder) {
234
+ await this.ensureConnected();
153
235
  const fileName = `${name}.parquet`;
154
236
  await (0, db_helper_1.saveQueryToParquet)(this.connection, fileName, query, folder);
155
237
  }
156
238
  // Add this method to the DuckDbRepository class
157
239
  createTransaction() {
158
240
  if (!this.connection) {
159
- this.connect();
241
+ throw new orm_errors_1.ConnectionError("Cannot create transaction: Connection is not established.");
160
242
  }
161
243
  return new transaction_1.Transaction(this.connection);
162
244
  }
163
245
  async exportTable(tableName, options) {
246
+ await this.ensureConnected();
164
247
  if (this.connection == undefined) {
165
248
  throw new orm_errors_1.ConnectionError("Connection is not established.");
166
249
  }
@@ -177,6 +260,7 @@ class DuckDbRepository {
177
260
  }
178
261
  }
179
262
  async exportQuery(query, options) {
263
+ await this.ensureConnected();
180
264
  if (this.connection == undefined) {
181
265
  throw new orm_errors_1.ConnectionError("Connection is not established.");
182
266
  }
@@ -192,6 +276,7 @@ class DuckDbRepository {
192
276
  }
193
277
  }
194
278
  async dropSequence(sequenceName) {
279
+ await this.ensureConnected();
195
280
  try {
196
281
  const query = `DROP SEQUENCE IF EXISTS ${sequenceName}`;
197
282
  await this.executeQuery(query);
@@ -203,6 +288,7 @@ class DuckDbRepository {
203
288
  }
204
289
  }
205
290
  async sequenceExists(sequenceName) {
291
+ await this.ensureConnected();
206
292
  try {
207
293
  const query = `SELECT sequence_name FROM information_schema.sequences WHERE sequence_name = '${sequenceName}'`;
208
294
  const result = await this.executeQuery(query);
@@ -213,6 +299,100 @@ class DuckDbRepository {
213
299
  return false;
214
300
  }
215
301
  }
302
+ // Method to create a secret in DuckDB
303
+ async createSecret(secret) {
304
+ await this.ensureConnected();
305
+ let query = '';
306
+ switch (secret.type) {
307
+ case models_interface_1.SecretType.S3:
308
+ query = this.buildS3SecretQuery(secret);
309
+ break;
310
+ case models_interface_1.SecretType.AZURE:
311
+ query = this.buildAzureSecretQuery(secret);
312
+ break;
313
+ default:
314
+ throw new Error(`Secret type '${secret}' not supported`);
315
+ }
316
+ try {
317
+ await this.executeQuery(query);
318
+ console.log(`Secret '${secret.name}' created successfully`);
319
+ }
320
+ catch (error) {
321
+ console.error(`Error creating secret '${secret.name}':`, error);
322
+ throw error;
323
+ }
324
+ }
325
+ // Method to drop a secret
326
+ async dropSecret(secretName) {
327
+ await this.ensureConnected();
328
+ const query = `DROP SECRET IF EXISTS ${secretName}`;
329
+ try {
330
+ await this.executeQuery(query);
331
+ console.log(`Secret '${secretName}' dropped successfully`);
332
+ }
333
+ catch (error) {
334
+ console.error(`Error dropping secret '${secretName}':`, error);
335
+ throw error;
336
+ }
337
+ }
338
+ // Method to replace (update) a secret
339
+ async replaceSecret(secret) {
340
+ await this.ensureConnected();
341
+ // Drop the existing secret first if it exists
342
+ await this.dropSecret(secret.name);
343
+ // Create the new secret
344
+ await this.createSecret(secret);
345
+ }
346
+ // Method to list all secrets
347
+ async listSecrets() {
348
+ await this.ensureConnected();
349
+ const query = `SELECT * FROM duckdb_secrets()`;
350
+ return this.executeQuery(query);
351
+ }
352
+ // Helper method to build S3 secret query
353
+ buildS3SecretQuery(secret) {
354
+ let query = `CREATE SECRET ${secret.name} (\n TYPE ${secret.type},\n KEY_ID '${secret.keyId}',\n SECRET '${secret.secret}'`;
355
+ if (secret.region) {
356
+ query += `,\n REGION '${secret.region}'`;
357
+ }
358
+ if (secret.scope) {
359
+ query += `,\n SCOPE '${secret.scope}'`;
360
+ }
361
+ query += '\n)';
362
+ return query;
363
+ }
364
+ // Helper method to build Azure secret query
365
+ buildAzureSecretQuery(secret) {
366
+ let query = `CREATE SECRET ${secret.name} (\n TYPE ${secret.type}`;
367
+ // Handle different Azure provider types
368
+ if ('connectionString' in secret) {
369
+ query += `,\n CONNECTION_STRING '${secret.connectionString}'`;
370
+ }
371
+ else if ('provider' in secret) {
372
+ query += `,\n PROVIDER ${secret.provider}`;
373
+ if (secret.provider === models_interface_1.AzureProviderType.CREDENTIAL_CHAIN) {
374
+ query += `,\n CHAIN '${secret.chain}'`;
375
+ }
376
+ query += `,\n ACCOUNT_NAME '${secret.accountName}'`;
377
+ }
378
+ query += '\n)';
379
+ return query;
380
+ }
381
+ // Method to check if a secret exists
382
+ async secretExists(secretName) {
383
+ await this.ensureConnected();
384
+ const query = `SELECT name FROM duckdb_secrets() WHERE name = '${secretName}'`;
385
+ const result = await this.executeQuery(query);
386
+ return result && result.length > 0;
387
+ }
388
+ // Close connection explicitly
389
+ async close() {
390
+ if (this.connection && !this.isClosed) {
391
+ this.connection.disconnectSync();
392
+ this.isClosed = true;
393
+ this.connection = undefined;
394
+ }
395
+ }
216
396
  }
217
397
  exports.DuckDbRepository = DuckDbRepository;
218
398
  //# sourceMappingURL=duckdb.repository.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"duckdb.repository.js","sourceRoot":"","sources":["../../src/repositories/duckdb.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"duckdb.repository.js","sourceRoot":"","sources":["../../src/repositories/duckdb.repository.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ export declare enum SecretType {
2
+ S3 = "s3",
3
+ AZURE = "azure",
4
+ GCS = "gcs",
5
+ MYSQL = "mysql",
6
+ POSTGRES = "postgres",
7
+ SQLITE = "sqlite",
8
+ CUSTOM = "custom"
9
+ }
10
+ export declare enum AzureProviderType {
11
+ CREDENTIAL_CHAIN = "credential_chain",
12
+ CONFIG = "config",
13
+ CONNECTION_STRING = "connection_string"
14
+ }
15
+ export interface BaseSecret {
16
+ name: string;
17
+ type: SecretType;
18
+ }
19
+ export interface S3Secret extends BaseSecret {
20
+ type: SecretType.S3;
21
+ keyId: string;
22
+ secret: string;
23
+ region?: string;
24
+ scope?: string;
25
+ }
26
+ export interface AzureSecretBase extends BaseSecret {
27
+ type: SecretType.AZURE;
28
+ }
29
+ export interface AzureCredentialChainSecret extends AzureSecretBase {
30
+ provider: AzureProviderType.CREDENTIAL_CHAIN;
31
+ chain: string;
32
+ accountName: string;
33
+ }
34
+ export interface AzureConfigSecret extends AzureSecretBase {
35
+ provider: AzureProviderType.CONFIG;
36
+ accountName: string;
37
+ }
38
+ export interface AzureConnectionStringSecret extends AzureSecretBase {
39
+ provider?: undefined;
40
+ connectionString: string;
41
+ }
42
+ export type AzureSecret = AzureCredentialChainSecret | AzureConfigSecret | AzureConnectionStringSecret;
43
+ export type Secret = S3Secret | AzureSecret;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AzureProviderType = exports.SecretType = void 0;
4
+ // Types for DuckDB secrets
5
+ var SecretType;
6
+ (function (SecretType) {
7
+ SecretType["S3"] = "s3";
8
+ SecretType["AZURE"] = "azure";
9
+ SecretType["GCS"] = "gcs";
10
+ SecretType["MYSQL"] = "mysql";
11
+ SecretType["POSTGRES"] = "postgres";
12
+ SecretType["SQLITE"] = "sqlite";
13
+ SecretType["CUSTOM"] = "custom";
14
+ })(SecretType || (exports.SecretType = SecretType = {}));
15
+ var AzureProviderType;
16
+ (function (AzureProviderType) {
17
+ AzureProviderType["CREDENTIAL_CHAIN"] = "credential_chain";
18
+ AzureProviderType["CONFIG"] = "config";
19
+ AzureProviderType["CONNECTION_STRING"] = "connection_string";
20
+ })(AzureProviderType || (exports.AzureProviderType = AzureProviderType = {}));
21
+ //# sourceMappingURL=models.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.interface.js","sourceRoot":"","sources":["../../src/repositories/models.interface.ts"],"names":[],"mappings":";;;AAAA,2BAA2B;AAC3B,IAAY,UAQX;AARD,WAAY,UAAU;IAClB,uBAAS,CAAA;IACT,6BAAe,CAAA;IACf,yBAAW,CAAA;IACX,6BAAe,CAAA;IACf,mCAAqB,CAAA;IACrB,+BAAiB,CAAA;IACjB,+BAAiB,CAAA;AACrB,CAAC,EARW,UAAU,0BAAV,UAAU,QAQrB;AAED,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IACzB,0DAAqC,CAAA;IACrC,sCAAiB,CAAA;IACjB,4DAAuC,CAAA;AAC3C,CAAC,EAJW,iBAAiB,iCAAjB,iBAAiB,QAI5B"}
@@ -1,9 +1,8 @@
1
- import { Connection } from 'duckdb';
1
+ import { DuckDBConnection } from '@duckdb/node-api';
2
2
  export declare class Transaction {
3
3
  private connection;
4
- constructor(connection: Connection);
4
+ constructor(connection: DuckDBConnection);
5
5
  begin(): Promise<void>;
6
6
  commit(): Promise<void>;
7
7
  rollback(): Promise<void>;
8
- private execute;
9
8
  }
@@ -9,7 +9,7 @@ class Transaction {
9
9
  }
10
10
  async begin() {
11
11
  try {
12
- await this.execute('BEGIN TRANSACTION');
12
+ await this.connection.run('BEGIN TRANSACTION');
13
13
  }
14
14
  catch (error) {
15
15
  throw new orm_errors_1.TransactionError('begin', error);
@@ -17,7 +17,7 @@ class Transaction {
17
17
  }
18
18
  async commit() {
19
19
  try {
20
- await this.execute('COMMIT');
20
+ await this.connection.run('COMMIT');
21
21
  }
22
22
  catch (error) {
23
23
  throw new orm_errors_1.TransactionError('commit', error);
@@ -25,24 +25,12 @@ class Transaction {
25
25
  }
26
26
  async rollback() {
27
27
  try {
28
- await this.execute('ROLLBACK');
28
+ await this.connection.run('ROLLBACK');
29
29
  }
30
30
  catch (error) {
31
31
  throw new orm_errors_1.TransactionError('rollback', error);
32
32
  }
33
33
  }
34
- execute(query) {
35
- return new Promise((resolve, reject) => {
36
- this.connection.run(query, (err) => {
37
- if (err) {
38
- reject(err);
39
- }
40
- else {
41
- resolve();
42
- }
43
- });
44
- });
45
- }
46
34
  }
47
35
  exports.Transaction = Transaction;
48
36
  //# sourceMappingURL=transaction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/repositories/transaction.ts"],"names":[],"mappings":";;;AACA,qDAAwD;AAExD,MAAa,WAAW;IACA;IAApB,YAAoB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IAE9C,KAAK,CAAC,KAAK;QACP,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,6BAAgB,CAAC,OAAO,EAAE,KAAc,CAAC,CAAC;QACxD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM;QACR,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,6BAAgB,CAAC,QAAQ,EAAE,KAAc,CAAC,CAAC;QACzD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ;QACV,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,6BAAgB,CAAC,UAAU,EAAE,KAAc,CAAC,CAAC;QAC3D,CAAC;IACL,CAAC;IAEO,OAAO,CAAC,KAAa;QACzB,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACzC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;gBAC/B,IAAI,GAAG,EAAE,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACJ,OAAO,EAAE,CAAC;gBACd,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AAtCD,kCAsCC"}
1
+ {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/repositories/transaction.ts"],"names":[],"mappings":";;;AACA,qDAAwD;AAExD,MAAa,WAAW;IACA;IAApB,YAAoB,UAA4B;QAA5B,eAAU,GAAV,UAAU,CAAkB;IAAI,CAAC;IAErD,KAAK,CAAC,KAAK;QACP,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,6BAAgB,CAAC,OAAO,EAAE,KAAc,CAAC,CAAC;QACxD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM;QACR,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,6BAAgB,CAAC,QAAQ,EAAE,KAAc,CAAC,CAAC;QACzD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ;QACV,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,6BAAgB,CAAC,UAAU,EAAE,KAAc,CAAC,CAAC;QAC3D,CAAC;IACL,CAAC;CACJ;AA1BD,kCA0BC"}