velocious 1.0.601 → 1.0.603

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 (80) hide show
  1. package/README.md +18 -7
  2. package/build/database/drivers/base.js +191 -39
  3. package/build/database/drivers/mysql/deadlock-diagnostic-parser.js +227 -0
  4. package/build/database/drivers/mysql/index.js +21 -30
  5. package/build/database/live-query.js +4 -1
  6. package/build/database/operation.js +9 -0
  7. package/build/database/pool/async-tracked-multi-connection.js +10 -15
  8. package/build/database/pool/base.js +19 -2
  9. package/build/database/record/index.js +50 -2
  10. package/build/database/record-changes.js +18 -4
  11. package/build/src/database/drivers/base.d.ts +110 -3
  12. package/build/src/database/drivers/base.d.ts.map +1 -1
  13. package/build/src/database/drivers/base.js +175 -37
  14. package/build/src/database/drivers/mysql/deadlock-diagnostic-parser.d.ts +80 -0
  15. package/build/src/database/drivers/mysql/deadlock-diagnostic-parser.d.ts.map +1 -0
  16. package/build/src/database/drivers/mysql/deadlock-diagnostic-parser.js +196 -0
  17. package/build/src/database/drivers/mysql/index.d.ts +21 -2
  18. package/build/src/database/drivers/mysql/index.d.ts.map +1 -1
  19. package/build/src/database/drivers/mysql/index.js +19 -28
  20. package/build/src/database/live-query.d.ts +5 -0
  21. package/build/src/database/live-query.d.ts.map +1 -1
  22. package/build/src/database/live-query.js +4 -2
  23. package/build/src/database/operation.d.ts +5 -0
  24. package/build/src/database/operation.d.ts.map +1 -1
  25. package/build/src/database/operation.js +9 -1
  26. package/build/src/database/pool/async-tracked-multi-connection.d.ts.map +1 -1
  27. package/build/src/database/pool/async-tracked-multi-connection.js +11 -16
  28. package/build/src/database/pool/base.d.ts +7 -0
  29. package/build/src/database/pool/base.d.ts.map +1 -1
  30. package/build/src/database/pool/base.js +17 -2
  31. package/build/src/database/record/index.d.ts +36 -0
  32. package/build/src/database/record/index.d.ts.map +1 -1
  33. package/build/src/database/record/index.js +43 -3
  34. package/build/src/database/record-changes.d.ts +9 -1
  35. package/build/src/database/record-changes.d.ts.map +1 -1
  36. package/build/src/database/record-changes.js +18 -5
  37. package/build/src/sync/local-mutation-log.d.ts +7 -0
  38. package/build/src/sync/local-mutation-log.d.ts.map +1 -1
  39. package/build/src/sync/local-mutation-log.js +17 -1
  40. package/build/src/sync/sync-api-client-types.d.ts +8 -4
  41. package/build/src/sync/sync-api-client-types.d.ts.map +1 -1
  42. package/build/src/sync/sync-api-client-types.js +3 -3
  43. package/build/src/sync/sync-client-types.d.ts +25 -0
  44. package/build/src/sync/sync-client-types.d.ts.map +1 -1
  45. package/build/src/sync/sync-client-types.js +6 -1
  46. package/build/src/sync/sync-client.d.ts +43 -1
  47. package/build/src/sync/sync-client.d.ts.map +1 -1
  48. package/build/src/sync/sync-client.js +187 -37
  49. package/build/src/sync/sync-realtime-bridge.js +2 -2
  50. package/build/src/sync/sync-scope-store.d.ts +15 -1
  51. package/build/src/sync/sync-scope-store.d.ts.map +1 -1
  52. package/build/src/sync/sync-scope-store.js +31 -4
  53. package/build/src/tenants/tenant-handle.d.ts +81 -0
  54. package/build/src/tenants/tenant-handle.d.ts.map +1 -1
  55. package/build/src/tenants/tenant-handle.js +143 -1
  56. package/build/sync/local-mutation-log.js +17 -0
  57. package/build/sync/sync-api-client-types.js +2 -2
  58. package/build/sync/sync-client-types.js +5 -0
  59. package/build/sync/sync-client.js +198 -38
  60. package/build/sync/sync-realtime-bridge.js +1 -1
  61. package/build/sync/sync-scope-store.js +32 -3
  62. package/build/tenants/tenant-handle.js +165 -0
  63. package/build/tsconfig.tsbuildinfo +1 -1
  64. package/package.json +1 -1
  65. package/src/database/drivers/base.js +191 -39
  66. package/src/database/drivers/mysql/deadlock-diagnostic-parser.js +227 -0
  67. package/src/database/drivers/mysql/index.js +21 -30
  68. package/src/database/live-query.js +4 -1
  69. package/src/database/operation.js +9 -0
  70. package/src/database/pool/async-tracked-multi-connection.js +10 -15
  71. package/src/database/pool/base.js +19 -2
  72. package/src/database/record/index.js +50 -2
  73. package/src/database/record-changes.js +18 -4
  74. package/src/sync/local-mutation-log.js +17 -0
  75. package/src/sync/sync-api-client-types.js +2 -2
  76. package/src/sync/sync-client-types.js +5 -0
  77. package/src/sync/sync-client.js +198 -38
  78. package/src/sync/sync-realtime-bridge.js +1 -1
  79. package/src/sync/sync-scope-store.js +32 -3
  80. package/src/tenants/tenant-handle.js +165 -0
@@ -21,6 +21,7 @@ import Table from "./table.js"
21
21
  import StructureSql from "./structure-sql.js"
22
22
  import Upsert from "./sql/upsert.js"
23
23
  import Update from "./sql/update.js"
24
+ import parseInnodbDeadlockSummary from "./deadlock-diagnostic-parser.js"
24
25
 
25
26
  /**
26
27
  * Sentinel timeout (in seconds) used as the "block forever" value when a
@@ -365,14 +366,12 @@ export default class VelociousDatabaseDriversMysql extends Base{
365
366
  // A deadlock or lock-wait-timeout aborts the whole transaction; it must be retried at the
366
367
  // transaction level (re-running the callback), not the query level, so flag it as such and
367
368
  // keep `retry` false so an in-transaction query does not retry against the dead transaction.
368
- if (
369
- errorCode == "ER_LOCK_DEADLOCK" ||
370
- errorCode == "ER_LOCK_WAIT_TIMEOUT" ||
371
- message.includes("ER_LOCK_DEADLOCK") ||
372
- message.includes("Deadlock found") ||
373
- message.includes("Lock wait timeout exceeded")
374
- ) {
375
- return {retry: false, reconnect: false, deadlock: true, waitMs: 50}
369
+ if (errorCode == "ER_LOCK_DEADLOCK" || message.includes("ER_LOCK_DEADLOCK") || message.includes("Deadlock found")) {
370
+ return {retry: false, reconnect: false, deadlock: true, contentionKind: "deadlock", waitMs: 50}
371
+ }
372
+
373
+ if (errorCode == "ER_LOCK_WAIT_TIMEOUT" || message.includes("Lock wait timeout exceeded")) {
374
+ return {retry: false, reconnect: false, deadlock: true, contentionKind: "lock-wait-timeout", waitMs: 50}
376
375
  }
377
376
 
378
377
  shouldReconnect ||= (
@@ -397,19 +396,24 @@ export default class VelociousDatabaseDriversMysql extends Base{
397
396
  * Adds a redacted, bounded excerpt from MySQL's latest InnoDB deadlock report. Capture uses a
398
397
  * separate short-lived connection so it cannot queue ahead of rollback or the next retry on this
399
398
  * driver's single-connection pool.
399
+ * @param {import("../base.js").DeadlockRetryDiagnosticSnapshot} snapshot - Immutable retry snapshot.
400
400
  * @returns {Promise<Record<string, ReturnType<typeof JSON.parse>>>} - Safe diagnostic context.
401
401
  */
402
- async _deadlockDiagnosticContext() {
403
- try {
404
- const status = await this._captureInnodbDeadlockStatus()
402
+ async _deadlockDiagnosticContext(snapshot) {
403
+ if (snapshot.contentionKind == "lock-wait-timeout") return {statusCapture: "not-applicable"}
405
404
 
406
- return {
407
- innodbDeadlockSummary: this._innodbDeadlockSummary(status),
408
- statusCapture: "captured"
409
- }
405
+ let status
406
+
407
+ try {
408
+ status = await this._captureInnodbDeadlockStatus()
410
409
  } catch {
411
410
  return {statusCapture: "failed"}
412
411
  }
412
+
413
+ return {
414
+ innodbDeadlockSummary: this._innodbDeadlockSummary(status),
415
+ statusCapture: "captured"
416
+ }
413
417
  }
414
418
 
415
419
  /**
@@ -465,23 +469,10 @@ export default class VelociousDatabaseDriversMysql extends Base{
465
469
  * Extracts only fixed-format deadlock counters. The server report contains raw SQL, identifiers,
466
470
  * and physical record data, so no source text is ever included in an application diagnostic.
467
471
  * @param {string} status - SHOW ENGINE INNODB STATUS text.
468
- * @returns {{transactions: number, victimTransaction: number | null}} - Structural deadlock summary.
472
+ * @returns {{lockRecordsTruncated: boolean, sectionTruncated: boolean, transactionNodes: Array<{conflictingLocks: Array<{indexFingerprint: string, lockMode: string, state: string, tableFingerprint: string}>, locks: Array<{indexFingerprint: string, lockMode: string, state: string, tableFingerprint: string}>, ordinal: number}>, transactionNodesTruncated: boolean, transactions: number, victimTransaction: number | null}} - Structural deadlock summary.
469
473
  */
470
474
  _innodbDeadlockSummary(status) {
471
- const deadlockStart = status.indexOf("LATEST DETECTED DEADLOCK")
472
- const candidate = deadlockStart >= 0 ? status.slice(deadlockStart) : status
473
- let transactions = 0
474
- /** @type {number | null} */
475
- let victimTransaction = null
476
-
477
- for (const line of candidate.split(/\r?\n/)) {
478
- const trimmed = line.trim()
479
- if (/^\*\*\* \(\d+\) TRANSACTION:$/.test(trimmed)) transactions++
480
- const victimMatch = /^\*\*\* WE ROLL BACK TRANSACTION \((\d+)\)$/.exec(trimmed)
481
- if (victimMatch) victimTransaction = Number(victimMatch[1])
482
- }
483
-
484
- return {transactions, victimTransaction}
475
+ return parseInnodbDeadlockSummary(status)
485
476
  }
486
477
 
487
478
  /**
@@ -16,6 +16,7 @@ import restArgsError from "../utils/rest-args-error.js"
16
16
  * @template T
17
17
  * @typedef {object} LiveQuerySource
18
18
  * @property {() => RecordModelClass} getModelClass - Root model class the query reads.
19
+ * @property {(modelClass: RecordModelClass) => string} [databaseIdentityForModel] - Captured physical identity for an observed model.
19
20
  * @property {() => Promise<T[]>} toArray - Runs the query and resolves the current rows.
20
21
  */
21
22
 
@@ -117,7 +118,9 @@ class LiveQuery {
117
118
  this._started = true
118
119
 
119
120
  for (const modelClass of this._modelClasses) {
120
- this._unsubscribes.push(recordChanges.subscribe(modelClass, this._onRecordChange))
121
+ const databaseIdentity = this._query.databaseIdentityForModel?.(modelClass)
122
+
123
+ this._unsubscribes.push(recordChanges.subscribe(modelClass, this._onRecordChange, {databaseIdentity}))
121
124
  }
122
125
 
123
126
  this._run()
@@ -127,6 +127,7 @@ export default class VelociousDatabaseOperation {
127
127
  this.assertActive()
128
128
  this.assertModel(record.getModelClass())
129
129
  record.bindDatabaseOperation(this)
130
+ record.captureDatabaseIdentity(this.databaseIdentity())
130
131
 
131
132
  return record
132
133
  }
@@ -203,6 +204,14 @@ export default class VelociousDatabaseOperation {
203
204
  return `${this._databaseIdentifier}:${this._configurationReuseKey}`
204
205
  }
205
206
 
207
+ /**
208
+ * Returns the tenant schema generation captured when this operation started.
209
+ * @returns {string | undefined} - Captured schema generation.
210
+ */
211
+ schemaGeneration() {
212
+ return this._schemaGeneration
213
+ }
214
+
206
215
  /**
207
216
  * Initializes a model through this operation's captured connection.
208
217
  * @param {typeof import("./record/index.js").default} ModelClass - Model class.
@@ -241,24 +241,24 @@ export default class VelociousDatabasePoolAsyncTrackedMultiConnection extends Ba
241
241
  * @returns {Promise<import("../drivers/base.js").default>} - Resolves with the checkout.
242
242
  */
243
243
  async checkout(options = {}) {
244
- const databaseConfig = this.getConfiguration()
245
- const reuseKey = this.getConfigurationReuseKey()
244
+ let databaseConfig = this.getConfiguration()
245
+ let reuseKey = this.getConfigurationReuseKey(databaseConfig)
246
246
  let connection = this.takeIdleConnectionForReuseKey(reuseKey)
247
247
 
248
248
  if (connection) return await this.activateConnection(connection, options)
249
249
 
250
250
  await this.reapIdleConnections()
251
+ databaseConfig = this.getConfiguration()
252
+ reuseKey = this.getConfigurationReuseKey(databaseConfig)
251
253
  connection = this.takeIdleConnectionForReuseKey(reuseKey)
252
254
 
253
255
  if (connection) return await this.activateConnection(connection, options)
254
256
 
255
- if (this.canSpawnConnection()) {
256
- // Spawn via spawnConnection() so the tenant-aware configuration is resolved FRESH at
257
- // spawn time for the current caller. Reusing the databaseConfig captured at the top of
258
- // checkout() could bind the connection to a stale tenant/database, which breaks
259
- // per-request isolation (e.g. test truncation appearing not to take effect). The queued
260
- // path below keeps the waiting caller's captured config via waitForCheckout().
261
- connection = await this.spawnConnectionForCheckout(this.getConfiguration(), this.getConfigurationReuseKey())
257
+ if (this.canSpawnConnection(databaseConfig)) {
258
+ // The post-reap configuration is fresh for the current caller, and its reuse key is
259
+ // derived from this exact captured object so the connection cannot open one tenant while
260
+ // being stamped for another. The queued path retains the same captured pair.
261
+ connection = await this.spawnConnectionForCheckout(databaseConfig, reuseKey)
262
262
 
263
263
  return await this.activateConnection(connection, options)
264
264
  }
@@ -443,13 +443,8 @@ export default class VelociousDatabasePoolAsyncTrackedMultiConnection extends Ba
443
443
 
444
444
  try {
445
445
  const connection = await this.spawnConnectionWithConfiguration(databaseConfig)
446
- const connectionWithPoolKey = /** @type {import("../drivers/base.js").default & {[POOL_CONFIGURATION_KEY]?: string}} */ (connection)
447
446
 
448
- connectionWithPoolKey[POOL_CONFIGURATION_KEY] = reuseKey
449
- connection.setSchemaCacheInvalidator(() => {
450
- this.clearSchemaCache()
451
- this.configuration.clearSchemaCachesForReuseKey(reuseKey)
452
- })
447
+ this.stampConnectionForConfigurationReuseKey(connection, reuseKey)
453
448
 
454
449
  return connection
455
450
  } finally {
@@ -3,6 +3,7 @@
3
3
  import Configuration from "../../configuration.js"
4
4
  import Logger from "../../logger.js"
5
5
  import baseMethodsForward from "./base-methods-forward.js"
6
+ import sha256Hex from "../../utils/sha256-hex.js"
6
7
 
7
8
  /**
8
9
  * Opaque ownership handle for an in-process test shared connection registration.
@@ -337,15 +338,31 @@ class VelociousDatabasePoolBase {
337
338
  async spawnConnectionForConfiguration(databaseConfiguration) {
338
339
  const reuseKey = this.getConfigurationReuseKey(databaseConfiguration)
339
340
  const connection = await this.spawnConnectionWithConfiguration(databaseConfiguration)
341
+
342
+ this.stampConnectionForConfigurationReuseKey(connection, reuseKey)
343
+
344
+ return connection
345
+ }
346
+
347
+ /**
348
+ * Stamps a connected driver with its pool reuse identity and diagnostic-safe opaque identity.
349
+ * @param {import("../drivers/base.js").default} connection - Connected driver.
350
+ * @param {string} reuseKey - Exact physical configuration reuse key captured for this spawn.
351
+ * @returns {void}
352
+ */
353
+ stampConnectionForConfigurationReuseKey(connection, reuseKey) {
340
354
  const connectionWithPoolKey = /** @type {import("../drivers/base.js").default & {[POOL_CONFIGURATION_KEY]?: string}} */ (connection)
355
+ const databaseIdentityFingerprint = `sha256:${sha256Hex(`database-configuration-reuse:v1\0${reuseKey}`)}`
341
356
 
342
357
  connectionWithPoolKey[POOL_CONFIGURATION_KEY] = reuseKey
358
+ connection.setPoolDiagnosticIdentity({
359
+ databaseIdentifier: this.identifier,
360
+ databaseIdentityFingerprint
361
+ })
343
362
  connection.setSchemaCacheInvalidator(() => {
344
363
  this.clearSchemaCache()
345
364
  this.configuration.clearSchemaCachesForReuseKey(reuseKey)
346
365
  })
347
-
348
- return connection
349
366
  }
350
367
 
351
368
  /**
@@ -3618,6 +3618,29 @@ class VelociousDatabaseRecord {
3618
3618
  return this
3619
3619
  }
3620
3620
 
3621
+ /**
3622
+ * Captures and validates the physical database identity that owns this record.
3623
+ * @param {string} databaseIdentity - Opaque operation/connection identity.
3624
+ * @returns {this} This record.
3625
+ */
3626
+ captureDatabaseIdentity(databaseIdentity) {
3627
+ if (this._databaseIdentity && this._databaseIdentity !== databaseIdentity) {
3628
+ throw new Error("Record belongs to a different physical tenant database")
3629
+ }
3630
+
3631
+ this._databaseIdentity = databaseIdentity
3632
+
3633
+ return this
3634
+ }
3635
+
3636
+ /**
3637
+ * Returns the captured physical database identity.
3638
+ * @returns {string | undefined} Captured physical database identity.
3639
+ */
3640
+ databaseIdentity() {
3641
+ return this._databaseIdentity
3642
+ }
3643
+
3621
3644
  /**
3622
3645
  * Releases this record from a completed eager-helper operation while
3623
3646
  * preserving the legacy ambient follow-up behavior of `usingTenant` finders.
@@ -3742,7 +3765,27 @@ class VelociousDatabaseRecord {
3742
3765
  if (this._databaseOperation) return this._databaseOperation.connection()
3743
3766
  if (this.__connection) return this.__connection
3744
3767
 
3745
- return this.getModelClass().connection()
3768
+ const connection = this.getModelClass().connection()
3769
+
3770
+ if (this._databaseIdentity) this.captureDatabaseIdentity(this._databaseIdentityForConnection(connection))
3771
+
3772
+ return connection
3773
+ }
3774
+
3775
+ /**
3776
+ * Resolves the identity of an already selected concrete connection.
3777
+ * @param {import("../drivers/base.js").default} connection - Concrete connection.
3778
+ * @returns {string} Physical database identity.
3779
+ */
3780
+ _databaseIdentityForConnection(connection) {
3781
+ const modelClass = this.getModelClass()
3782
+ const databaseIdentifier = modelClass.getDatabaseIdentifier()
3783
+ const reuseKey = modelClass
3784
+ ._getConfiguration()
3785
+ .getDatabasePool(databaseIdentifier)
3786
+ .getConnectionConfigurationReuseKey(connection)
3787
+
3788
+ return `${databaseIdentifier}:${reuseKey}`
3746
3789
  }
3747
3790
 
3748
3791
  /**
@@ -3993,9 +4036,14 @@ class VelociousDatabaseRecord {
3993
4036
  if (!recordChanges.hasListeners(modelClass)) return
3994
4037
 
3995
4038
  const record = this
4039
+ const databaseIdentity = this._databaseOperation
4040
+ ? this._databaseOperation.databaseIdentity()
4041
+ : this._databaseIdentityForConnection(this._connection())
4042
+
4043
+ this.captureDatabaseIdentity(databaseIdentity)
3996
4044
 
3997
4045
  await this._connection().afterCommit(() => {
3998
- recordChanges.emit({modelClass, operation, record})
4046
+ recordChanges.emit({databaseIdentity, modelClass, operation, record})
3999
4047
  })
4000
4048
  }
4001
4049
 
@@ -14,6 +14,7 @@ import EventEmitter from "../utils/event-emitter.js"
14
14
  * RecordChangeEvent type.
15
15
  * @typedef {object} RecordChangeEvent
16
16
  * @property {RecordModelClass} modelClass - Model class whose row changed.
17
+ * @property {string} databaseIdentity - Opaque physical database identity where the commit occurred.
17
18
  * @property {RecordChangeOperation} operation - The committed operation.
18
19
  * @property {InstanceType<RecordModelClass>} record - The committed record instance.
19
20
  */
@@ -49,15 +50,25 @@ class RecordChanges {
49
50
  * Subscribes a listener to committed changes of a model class.
50
51
  * @param {RecordModelClass} modelClass - Model class to observe.
51
52
  * @param {RecordChangeListener} listener - Listener called with each change event.
53
+ * @param {{databaseIdentity?: string}} [options] - Captured physical identity filter.
52
54
  * @returns {() => void} Unsubscribe callback.
53
55
  */
54
- subscribe(modelClass, listener) {
56
+ subscribe(modelClass, listener, {databaseIdentity} = {}) {
57
+ if (modelClass.hasTenantDatabaseIdentifierResolver() && !databaseIdentity) {
58
+ throw new Error(`Tenant-scoped record-change subscriptions for ${modelClass.getModelName()} require a captured databaseIdentity`)
59
+ }
60
+
55
61
  const eventName = modelClass.getModelName()
62
+ const subscribedListener = databaseIdentity
63
+ ? (/** @type {RecordChangeEvent} */ event) => {
64
+ if (event.databaseIdentity === databaseIdentity) listener(event)
65
+ }
66
+ : listener
56
67
 
57
- this._emitter.on(eventName, listener)
68
+ this._emitter.on(eventName, subscribedListener)
58
69
 
59
70
  return () => {
60
- this._emitter.off(eventName, listener)
71
+ this._emitter.off(eventName, subscribedListener)
61
72
  }
62
73
  }
63
74
 
@@ -81,7 +92,10 @@ class RecordChanges {
81
92
  */
82
93
  emit(event) {
83
94
  if (this._batchDepth > 0) {
84
- this._bufferedEvents.set(event.modelClass.getModelName(), event)
95
+ const modelName = event.modelClass.getModelName()
96
+ const eventKey = `${modelName.length}:${modelName}:${event.databaseIdentity}`
97
+
98
+ this._bufferedEvents.set(eventKey, event)
85
99
 
86
100
  return
87
101
  }
@@ -105,6 +105,10 @@ export type RetryableDatabaseErrorResult = {
105
105
  * - Whether the error is a transaction deadlock/lock-wait-timeout that should retry the whole transaction.
106
106
  */
107
107
  deadlock?: boolean;
108
+ /**
109
+ * - Classified transaction contention kind.
110
+ */
111
+ contentionKind?: "deadlock" | "lock-wait-timeout";
108
112
  /**
109
113
  * - Override the max retry attempts.
110
114
  */
@@ -152,6 +156,64 @@ export type QueryOptions = {
152
156
  */
153
157
  operationOwner?: symbol;
154
158
  };
159
+ export type DeadlockRetryDiagnosticSnapshot = {
160
+ /**
161
+ * - One-based transaction attempt.
162
+ */
163
+ attempt: number;
164
+ /**
165
+ * - Classified contention kind.
166
+ */
167
+ contentionKind: "deadlock" | "lock-wait-timeout";
168
+ /**
169
+ * - Redacted logical database pool identifier marker.
170
+ */
171
+ databaseIdentifier?: string;
172
+ /**
173
+ * - Opaque logical database pool identity.
174
+ */
175
+ databaseIdentifierFingerprint?: string;
176
+ /**
177
+ * - Opaque physical database identity.
178
+ */
179
+ databaseIdentityFingerprint?: string;
180
+ /**
181
+ * - Driver type.
182
+ */
183
+ driverType: string;
184
+ /**
185
+ * - Configured transaction attempt budget.
186
+ */
187
+ maxAttempts: number;
188
+ /**
189
+ * - Redacted operation-name marker.
190
+ */
191
+ operationName?: string;
192
+ /**
193
+ * - Opaque operation-name identity.
194
+ */
195
+ operationNameFingerprint?: string;
196
+ /**
197
+ * - Normalized SQL-shape fingerprint.
198
+ */
199
+ sqlFingerprint?: string;
200
+ /**
201
+ * - SQL verb.
202
+ */
203
+ sqlOperation?: string;
204
+ /**
205
+ * - Error-event stage.
206
+ */
207
+ stage: string;
208
+ /**
209
+ * - Duration of the failed outer attempt.
210
+ */
211
+ transactionAttemptDurationMs: number;
212
+ /**
213
+ * - Whether another outer transaction attempt will run.
214
+ */
215
+ willRetry: boolean;
216
+ };
155
217
  export type ActiveQueryDebugSnapshot = {
156
218
  /**
157
219
  * - Database annotations active when the query started.
@@ -307,6 +369,10 @@ export default class VelociousDatabaseDriversBase {
307
369
  * Narrows the runtime value to the documented type.
308
370
  * @type {string | undefined} */
309
371
  _connectionCheckoutName: string | undefined;
372
+ /** @type {string | undefined} */
373
+ _databaseIdentifier: string | undefined;
374
+ /** @type {string | undefined} */
375
+ _databaseIdentityFingerprint: string | undefined;
310
376
  /**
311
377
  * Active query.
312
378
  * @type {ActiveQueryState | null} */
@@ -401,6 +467,15 @@ export default class VelociousDatabaseDriversBase {
401
467
  * @returns {Promise<void>} - Resolves when complete.
402
468
  */
403
469
  clearConnectionCheckoutName(): Promise<void>;
470
+ /**
471
+ * Sets the pool-owned identity used by safe database diagnostics.
472
+ * @param {{databaseIdentifier: string, databaseIdentityFingerprint: string}} identity - Pool-stamped identity redacted at diagnostic snapshot time.
473
+ * @returns {void}
474
+ */
475
+ setPoolDiagnosticIdentity({ databaseIdentifier, databaseIdentityFingerprint }: {
476
+ databaseIdentifier: string;
477
+ databaseIdentityFingerprint: string;
478
+ }): void;
404
479
  /**
405
480
  * Runs reconnect.
406
481
  * @returns {Promise<void>} - Resolves when complete.
@@ -865,22 +940,54 @@ export default class VelociousDatabaseDriversBase {
865
940
  * @returns {Promise<void>} - Resolves after the delay.
866
941
  */
867
942
  _waitMs(ms: number): Promise<void>;
943
+ /**
944
+ * Returns the clock used for transaction-attempt diagnostics.
945
+ * @returns {number} - Monotonic milliseconds where available.
946
+ */
947
+ _nowMs(): number;
868
948
  /**
869
949
  * Starts best-effort deadlock diagnostics without joining the retry control flow. Subclasses may
870
950
  * add bounded driver-specific context; capture and event-listener failures cannot affect retry.
871
- * @param {{attempt: number, error: Error, maxAttempts: number}} args - Retry metadata.
951
+ * @param {{attempt: number, contentionKind: "deadlock" | "lock-wait-timeout", error: Error, maxAttempts: number, transactionAttemptDurationMs: number, willRetry: boolean}} args - Retry metadata.
872
952
  * @returns {void}
873
953
  */
874
- _reportDeadlockRetryDiagnostic({ attempt, error, maxAttempts }: {
954
+ _reportDeadlockRetryDiagnostic({ attempt, contentionKind, error, maxAttempts, transactionAttemptDurationMs, willRetry }: {
875
955
  attempt: number;
956
+ contentionKind: "deadlock" | "lock-wait-timeout";
876
957
  error: Error;
877
958
  maxAttempts: number;
959
+ transactionAttemptDurationMs: number;
960
+ willRetry: boolean;
878
961
  }): void;
962
+ /**
963
+ * Returns pool identity only when this driver was stamped by a pool.
964
+ * @returns {{databaseIdentifier?: string, databaseIdentifierFingerprint?: string, databaseIdentityFingerprint?: string}} - Safe pool identity.
965
+ */
966
+ _poolDiagnosticIdentityContext(): {
967
+ databaseIdentifier?: string;
968
+ databaseIdentifierFingerprint?: string;
969
+ databaseIdentityFingerprint?: string;
970
+ };
971
+ /**
972
+ * Builds the bounded operation portion of an immutable retry snapshot.
973
+ * @returns {{operationName?: string, operationNameFingerprint?: string}} - Safe operation fields.
974
+ */
975
+ _operationDiagnosticContext(): {
976
+ operationName?: string;
977
+ operationNameFingerprint?: string;
978
+ };
979
+ /**
980
+ * Reports an unexpected detached diagnostics failure without changing transaction control flow.
981
+ * @param {ReturnType<typeof JSON.parse>} diagnosticError - Diagnostics failure.
982
+ * @returns {void}
983
+ */
984
+ _reportDeadlockDiagnosticPipelineFailure(diagnosticError: ReturnType<typeof JSON.parse>): void;
879
985
  /**
880
986
  * Builds driver-specific deadlock context. The base driver has no server diagnostic source.
987
+ * @param {DeadlockRetryDiagnosticSnapshot} _snapshot - Immutable retry snapshot.
881
988
  * @returns {Promise<Record<string, ReturnType<typeof JSON.parse>>>} - Safe context fields.
882
989
  */
883
- _deadlockDiagnosticContext(): Promise<Record<string, ReturnType<typeof JSON.parse>>>;
990
+ _deadlockDiagnosticContext(_snapshot: DeadlockRetryDiagnosticSnapshot): Promise<Record<string, ReturnType<typeof JSON.parse>>>;
884
991
  /**
885
992
  * Runs a single transaction attempt: starts a transaction (or a savepoint when nested), runs
886
993
  * `callback`, and commits — rolling back on error. {@link transaction} wraps this with deadlock
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/database/drivers/base.js"],"names":[],"mappings":"AAIG,YAAkB,kBAAkB,GACpC;;;;IAA8E,OAAO,EAA1E,KAAK,CAAC,MAAM,GAAG,OAAO,iCAAiC,EAAE,OAAO,CAAC,CAC5E;;;;IAAqB,WAAW,AAAhC,CACA,EADW,OAAO,CAClB;;;;IAAoB,IAAI,AAAxB,CACA,EADW,MAAM,CACjB;;;;IAAqB,MAAM,AAA3B,CACA,EADW,OAAO,CAClB;;;;IAAmB,SAAS,EAAjB,MAAM,CACnB;CAAA,CAAA;AAGE,YAAkB,kBAAkB,GACpC;;;;IAAmB,IAAI,EAAZ,MAAM,CACjB;;;;IAAmB,SAAS,EAAjB,MAAM,CACnB;CAAA,CAAA;AAGE,YAAkB,oBAAoB,GACtC;;;;IAAqB,OAAO,AAA5B,CACA,EADW,OAAO,CAClB;;;;IAAqB,QAAQ,AAA7B,CACF,EADa,OAAO,CACpB;CAAA,CAAA;AAGE,YAAkB,iBAAiB,GACnC;;;;IAAmB,SAAS,EAAjB,MAAM,CACjB;;;;IAA2D,UAAU,EAA1D;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAA;KAAC,CAC3D;CAAA,CAAA;AAGE,YAAkB,iBAAiB,GACnC;;;;IAAsB,OAAO,AAA7B,CACA,EADW,MAAM,EAAE,CACnB;;;;IAA4D,IAAI,AAAhE,CACA,EADW;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAA;KAAC,CACzD;;;;IAAqB,QAAQ,AAA7B,CACA,EADW,OAAO,CAClB;;;;IAAsB,6BAA6B,AAAnD,CACA,EADW,MAAM,EAAE,CACnB;;;;IAAyD,IAAI,AAA7D,CACA,EADW,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACtD;;;;IAAmB,SAAS,EAAjB,MAAM,CACnB;CAAA,CAAA;AAGE,YAAyD,YAAY,GAA3D,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAc;AACrE,YAA+B,eAAe,GAApC,KAAK,CAAC,YAAY,CAAC,CAAiB;AAI9C,YAAkB,wBAAwB,GAC1C;;;;IAA8C,oBAAoB,EAAvD,KAAK,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAC5C;;;;IAA8C,qBAAqB,EAAxD,KAAK,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAC9C;CAAA,CAAA;AAGE,YAAkB,4BAA4B,GAC9C;;;;IAAoB,KAAK,EAAd,OAAO,CAClB;;;;IAAoB,SAAS,EAAlB,OAAO,CAClB;;;;IAAqB,QAAQ,AAA7B,CACA,EADW,OAAO,CAClB;;;;IAAoB,QAAQ,AAA5B,CACA,EADW,MAAM,CACjB;;;;IAAoB,MAAM,AAA1B,CACF,EADa,MAAM,CACnB;CAAA,CAAA;AAGE,YAAkB,YAAY,GAC9B;;;;IAAoB,OAAO,AAA3B,CACA,EADW,MAAM,CACjB;;;;IAAqB,QAAQ,AAA7B,CACA,EADW,OAAO,CAClB;;;;IAAqB,kBAAkB,AAAvC,CACA,EADW,OAAO,CAClB;;;;IAAqB,KAAK,AAA1B,CACA,EADW,OAAO,CAClB;;;;IAAqB,eAAe,AAApC,CACA,EADW,OAAO,CAClB;;;;IAAqB,YAAY,AAAjC,CACA,EADW,OAAO,CAClB;;;;IAAyB,MAAM,AAA/B,CACA,EADW,WAAW,CACtB;;;;IAAoB,WAAW,AAA/B,CACA,EADW,MAAM,CACjB;;;;IAAoB,cAAc,AAAlC,CACF,EADa,MAAM,CACnB;CAAA,CAAA;AAIE,YAAkB,wBAAwB,GAC1C;;;;IAAqB,WAAW,EAArB,MAAM,EAAE,CACnB;;;;IAAmB,OAAO,EAAf,MAAM,CACjB;;;;IAAmB,eAAe,EAAvB,MAAM,CACjB;;;;IAAmB,SAAS,EAAjB,MAAM,CACjB;;;;IAAmB,UAAU,EAAlB,MAAM,CACnB;CAAA,CAAA;AAIE,YAAkB,+BAA+B,GACjD;;;;IAA4C,WAAW,EAA5C,wBAAwB,GAAG,IAAI,CAC1C;;;;IAA+B,kBAAkB,EAAtC,MAAM,GAAG,SAAS,CAC7B;;;;IAA+B,aAAa,EAAjC,MAAM,GAAG,SAAS,CAC7B;;;;IAA+B,YAAY,EAAhC,MAAM,GAAG,SAAS,CAC7B;;;;IAAmB,WAAW,EAAnB,MAAM,CACjB;;;;IAA+B,KAAK,EAAzB,MAAM,GAAG,SAAS,CAC7B;;;;IAAmB,gBAAgB,EAAxB,MAAM,CACjB;;;;IAAmB,kBAAkB,EAA1B,MAAM,CACnB;CAAA,CAAA;AAIE,YAAkB,gBAAgB,GAClC;;;;IAAqB,WAAW,EAArB,MAAM,EAAE,CACnB;;;;IAAmB,OAAO,EAAf,MAAM,CACjB;;;;IAAmB,eAAe,EAAvB,MAAM,CACjB;;;;IAAmB,UAAU,EAAlB,MAAM,CACnB;CAAA,CAAA;AAIE,YAAiB,iBAAiB,GAClC;;;;IAAmB,UAAU,EAAlB,MAAM,CACjB;;;;IAAmB,IAAI,EAAZ,MAAM,CACjB;;;;IAAmB,SAAS,EAAjB,MAAM,CACnB;CAAA,CAAA;AAGE,YAAiB,iBAAiB,GAClC;;;;IAAqB,eAAe,EAAzB,MAAM,EAAE,CACnB;;;;IAAmB,IAAI,EAAZ,MAAM,CACjB;;;;IAAmB,SAAS,EAAjB,MAAM,CACjB;;;;IAAqB,aAAa,EAAvB,MAAM,EAAE,CACrB;CAAA,CAAA;AAIE,YAAkB,cAAc,GAChC;;;;IAAoB,UAAU,EAAnB,OAAO,CAClB;;;;IAA+B,KAAK,EAAzB,MAAM,GAAG,SAAS,CAC7B;;;;IAAmB,KAAK,EAAb,MAAM,CACnB;CAAA,CAAA;AAMD,OAAO,MAAM,MAAM,iBAAiB,CAAA;AACpC,OAAO,KAAK,MAAM,mBAAmB,CAAA;AAIrC,OAAO,KAAK,MAAM,2BAA2B,CAAA;AA6G7C,MAAM,CAAC,OAAO,OAAO,4BAA4B;IA6CxC,KAAK;IACL,aAAa;IACb,KAAK;IACL,MAAM;IAEN,kBAAkB;IAGlB,yBAAyB;IA2JzB,6BAA6B;IA/MpC;;oCAEgC;IAChC,KAAK,EADK,MAAM,GAAG,SAAS,CACX;IACjB;;4CAEwC;IACxC,0BAA0B,EADhB,wBAAwB,EAAE,CACV;IAC1B,4BAA4B;IAC5B,6BAA6B,EADlB,OAAO,CAAC,IAAI,CAAC,CACK;IAC7B,uCAAuC;IACvC,6BAA6B,EADlB,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CACN;IAC7B;;qEAEiE;IACjE,YAAY,EADF,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACjD;IACZ;;0CAEsC;IACtC,uBAAuB,EADb,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CACX;IACvB;;oCAEgC;IAChC,uBAAuB,EADb,MAAM,GAAG,SAAS,CACL;IACvB;;yCAEqC;IACrC,YAAY,EADF,gBAAgB,GAAG,IAAI,CACd;IACnB,6EAA6E;IAC7E,uBAAuB,EADZ,OAAO,CAAC,KAAK,EAAE;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAC,CAAC,CAClC;IACvC,kCAAkC;IAClC,kBAAkB,EADP,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CACA;IAC9B;;;OAGG;IACH,eAAe,EAFL,OAAO,uBAAuB,EAAE,OAAO,GAAG,SAAS,CAElC;IAE3B;;;;OAIG;IACH,YAAY,MAAM,EAHP,OAAO,8BAA8B,EAAE,yBAGhC,EAAE,aAAa,EAFtB,OAAO,wBAAwB,EAAE,OAEX,EAWhC;IAED;;;;OAIG;IACG,gCAAgC,IAFzB,OAAO,CAAC,IAAI,CAAC,CAEiB;IAE3C;;;;;;;;OAQG;IACG,aAAa,CAAC,SAAS,EAPlB,MAOkB,EAAE,UAAU,EAN9B,MAM8B,EAAE,mBAAmB,EALnD,MAKmD,EAAE,oBAAoB,EAJzE,MAIyE,EAAE,IAAI,EAH/E,MAG+E,GAF7E,OAAO,CAAC,IAAI,CAAC,CAuBzB;IAED;;;;;OAKG;IACG,gBAAgB,CAAC,SAAS,EAJrB,MAIqB,EAAE,kBAAkB,EAHzC,OAAO,uBAAuB,EAAE,OAGS,GAFvC,OAAO,CAAC,IAAI,CAAC,CAsBzB;IAED;;;;;OAKG;IACH,cAAc,CAAC,UAAU,EAHd,OAAO,wBAAwB,EAAE,OAGnB,GAFZ,OAAO,CAAC,MAAM,EAAE,CAAC,CAI7B;IAED;;;;OAIG;IACH,OAAO,IAFM,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;OAGG;IACG,KAAK,IAFE,OAAO,CAAC,IAAI,CAAC,CA0BzB;IAED;;;OAGG;IACG,MAAM,IAFC,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;OAGG;IACG,kBAAkB,IAFX,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;OAGG;IACH,gBAAgB,IAFH,OAAO,CAEe;IAEnC;;;OAGG;IACG,qBAAqB,IAFd,OAAO,CAAC,IAAI,CAAC,CAEiG;IAE3H;;;;OAIG;IACG,yBAAyB,CAAC,IAAI,EAHzB,MAAM,GAAG,SAGgB,GAFvB,OAAO,CAAC,IAAI,CAAC,CAKzB;IAED;;;OAGG;IACG,2BAA2B,IAFpB,OAAO,CAAC,IAAI,CAAC,CAKzB;IAED;;;OAGG;IACG,SAAS,IAFF,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;;;;;;;OASG;IACH,iBAAiB,CAAC,YAAY,EAPnB,MAOmB,EAAE,IAAI,AANjC,CAIA,EAHA;QAAuB,WAAW,AAAlC,CACA,EADQ,OAAO,CACf;QAAsB,eAAe,AAArC,CACA,EADQ,MAAM,CACd;QAAsB,iBAAiB,AAAvC,CACA,EADQ,MAAM,CACd;KAEiC,GAFvB,MAAM,EAAE,CAE2E;IAEhG;;;;;;;OAOG;IACH,eAAe,CAAC,YAAY,EALjB,MAKiB,EAAE,IAAI,AAJ/B,CAEA,EADA;QAAuB,QAAQ,AAA/B,CACA,EADQ,OAAO,CACf;KAE+B,GAFrB,MAAM,EAAE,CAEuE;IAE5F;;;;;OAKG;IACG,eAAe,CAAC,SAAS,EAHpB,kBAGoB,GAFlB,OAAO,CAAC,MAAM,EAAE,CAAC,CAI7B;IAED;;;;;OAKG;IACG,eAAe,CAAC,SAAS,EAHpB,kBAGoB,GAFlB,OAAO,CAAC,MAAM,EAAE,CAAC,CAI7B;IAED;;;;OAIG;IACG,WAAW,CAAC,SAAS,EAHhB,OAAO,wBAAwB,EAAE,OAGjB,GAFd,OAAO,CAAC,IAAI,CAAC,CASzB;IAED;;;;;OAKG;IACG,cAAc,CAAC,SAAS,EAHnB,OAAO,wBAAwB,EAAE,OAGd,GAFjB,OAAO,CAAC,MAAM,EAAE,CAAC,CAI7B;IAED;;;;OAIG;IACG,MAAM,CAAC,IAAI,EAHN,iBAGM,GAFJ,OAAO,CAAC,IAAI,CAAC,CAOzB;IAED;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAHH,iBAGG,GAFD,MAAM,CAIlB;IAED;;;;;OAKG;IACG,SAAS,CAAC,SAAS,EAJd,MAIc,EAAE,IAAI,AAH5B,CACA,EADQ,oBAGoB,GAFlB,OAAO,CAAC,IAAI,CAAC,CASzB;IAED;;;;;;OAMG;IACG,aAAa,CAAC,SAAS,EAJlB,MAIkB,EAAE,IAAI,AAHhC,CACA,EADQ,oBAGwB,GAFtB,OAAO,CAAC,MAAM,EAAE,CAAC,CAI7B;IAED;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAHD,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAG3B,GAFC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAIzC;IAED;;;OAGG;IACH,OAAO,IAFM,OAAO,8BAA8B,EAAE,yBAAyB,CAI5E;IAED;;;OAGG;IACH,gBAAgB,IAFH,OAAO,wBAAwB,EAAE,OAAO,CAMpD;IAED;;;;OAIG;IACG,iBAAiB,CAAC,cAAc,EAH3B,OAAO,uBAAuB,EAAE,OAGL,GAFzB,OAAO,CAAC,IAAI,CAAC,CAWzB;IAED;;;;OAIG;IACH,mBAAmB,CAAC,cAAc,EAHvB,OAAO,uBAAuB,EAAE,OAGT,GAFrB,IAAI,CAQhB;IAED;;;;OAIG;IACG,sBAAsB,CAAC,cAAc,EAHhC,MAAM,GAAG,SAGuB,GAF9B,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;OAGG;IACH,QAAQ,IAFK,MAAM,GAAG,SAAS,CAI9B;IAED;;;OAGG;IACH,cAAc,IAFD,MAAM,CAIlB;IAED;;;OAGG;IACH,gBAAgB,IAFH,IAAI,CAShB;IAED;;;OAGG;IACH,sBAAsB,IAFT,IAAI,CAIhB;IAED;;;;OAIG;IACH,yBAAyB,CAAC,WAAW,EAH1B,MAAM,IAGoB,GAFxB,IAAI,CAIhB;IAED;;;OAGG;IACH,mBAAmB,IAFN,OAAO,CAInB;IAED;;;;;;OAMG;IACG,qBAAqB,CALd,CAAC,EAKc,QAAQ,EAJzB,MAIyB,EAAE,QAAQ,EAHnC,MAAM,OAAO,CAAC,CAAC,CAGoB,GAFjC,OAAO,CAAC,CAAC,CAAC,CAwBtB;IAED;;;;;;;OAOG;IACG,0BAA0B,CANnB,CAAC,EAMmB,SAAS,EAL/B,MAK+B,EAAE,YAAY,EAJ7C,MAI6C,EAAE,QAAQ,EAHvD,MAAM,OAAO,CAAC,CAAC,CAGwC,GAFrD,OAAO,CAAC,CAAC,CAAC,CAItB;IAED;;;;OAIG;IACH,uBAAuB,CAAC,KAAK,EAHlB,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAGV,GAFhB,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAMzC;IAED;;;;OAIG;IACH,SAAS,IAFI,OAAO,CAAC,KAAK,CAAC,OAAO,iBAAiB,EAAE,OAAO,CAAC,CAAC,CAI7D;IAED;;;OAGG;IACG,YAAY,IAFL,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIlC;IAED;;;;;;;OAOG;IACG,mBAAmB,CAAC,aAAa,EAH5B,MAG4B,GAF1B,OAAO,CAAC,OAAO,CAAC,CAI5B;IAED;;;;;;OAMG;IACG,cAAc,CAAC,IAAI,EALd,MAKc,EAAE,IAAI,AAJ5B,CAEA,EADA;QAAsB,UAAU,EAAxB,OAAO,CACf;KAE4B,GAFlB,OAAO,CAAC,OAAO,iBAAiB,EAAE,OAAO,GAAG,SAAS,CAAC,CAuBlE;IAED;;;;;OAKG;IACH,yBAAyB,CAAC,IAAI,EAJnB,MAImB,EAAE,UAAU,EAH/B,MAAM,EAGyB,GAF7B,MAAM,CAQlB;IAED;;;;OAIG;IACG,oBAAoB,CAAC,IAAI,EAHpB,MAGoB,GAFlB,OAAO,CAAC,OAAO,iBAAiB,EAAE,OAAO,CAAC,CAItD;IAED;;;;OAIG;IACH,OAAO,IAFM,MAAM,CAIlB;IAED;;;;OAIG;IACG,MAAM,CAAC,IAAI,EAHN,iBAGM,GAFJ,OAAO,CAAC,IAAI,CAAC,CAOzB;IAED;;;;;;;;;OASG;IACH,gBAAgB,IAFH,MAAM,CAIlB;IAED;;;;;;;;OAQG;IACH,iBAAiB,IAFJ,MAAM,CAIlB;IAED;;;;;;;OAOG;IACH,iBAAiB,IAFJ,MAAM,CAIlB;IAED;;;;;;;OAOG;IACH,gBAAgB,IAFH,MAAM,CAIlB;IAED;;;;;;;;;;;OAWG;IACH,WAAW,CANE,CAAC,EAMF,MAAM,EALP,KAAK,CAAC,CAAC,CAKA,EAAE,QAAQ,EAJjB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,MAIL,EAAE,EAAC,QAAmC,EAAE,QAAkC,EAAC,AAHpG,CACA,EADQ;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAG4D,GAF/F,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CA+B3B;IAED;;;;;;;;;;;;;;OAcG;IACH,qBAAqB,CAAC,IAAI,EAJf,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAI3B,EAAE,QAAQ,EAHzB,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,MAG9B,GAFvB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CA8C9D;IAED;;;;;;;;;;;;OAYG;IACG,cAAc,CAAC,SAAS,EALnB,MAKmB,EAAE,OAAO,EAJ5B,KAAK,CAAC,MAAM,CAIgB,EAAE,IAAI,EAHlC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAGR,GAFhC,OAAO,CAAC,IAAI,CAAC,CAYzB;IAED;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAHH,iBAGG,GAFD,MAAM,CAIlB;IAED;;;;OAIG;IACG,MAAM,CAAC,IAAI,EAHN,iBAGM,GAFJ,OAAO,CAAC,IAAI,CAAC,CAOzB;IAED;;;;;OAKG;IACH,YAAY,CAAC,QAAQ,AAHlB,CACA,EADQ,YAGe,GAFb,OAAO,CAAC,MAAM,CAAC,CAI3B;IAED;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAHR,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAGpB,GAFN,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAyBzC;IAED;;;;;OAKG;IACH,qBAAqB,CAAC,KAAK,EAHhB,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAGZ,GAFd,OAAO,CAUnB;IAED;;;;OAIG;IACH,OAAO,IAFM,OAAO,4BAA4B,EAAE,OAAO,CAIxD;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK,EAHA,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAG5B,GAFE,MAAM,GAAG,MAAM,CAS3B;IAED;;;;OAIG;IACH,WAAW,CAAC,UAAU,EAHX,MAGW,GAFT,MAAM,CAIlB;IAED;;;;OAIG;IACH,UAAU,CAAC,UAAU,EAHV,MAGU,GAFR,MAAM,CAIlB;IAED;;;;OAIG;IACH,UAAU,CAAC,SAAS,EAHT,MAGS,GAFP,MAAM,CAIlB;IAED;;;OAGG;IACH,QAAQ,IAFK,KAAK,CASjB;IAED;;;;OAIG;IACG,MAAM,CAAC,SAAS,EAHX,MAGW,GAFT,OAAO,CAAC,eAAe,CAAC,CAUpC;IAED;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAHN,MAAM,GAAG,SAGH,GAFJ,IAAI,CAIhB;IAED;;;;OAIG;IACH,oCAAoC,IAFvB,OAAO,CAInB;IAED;;;OAGG;IACH,6BAA6B,IAFhB,OAAO,CAE4B;IAEhD;;;;;;;;;;OAUG;IACG,4BAA4B,CAAC,EAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAC,EALzD;QAA2B,OAAO,EAA1B,YAAY,CACpB;QAAqB,GAAG,EAAhB,MAAM,CACd;QAAqB,SAAS,EAAtB,MAAM,CACd;KAEyD,GAF/C,OAAO,CAAC,eAAe,CAAC,CAMpC;IAED;;;;OAIG;IACH,2BAA2B,IAFd,OAAO,CAE0B;IAE9C;;;;;;;;;;OAUG;IACH,+BAA+B,IAFlB,OAAO,CAE8B;IAElD;;;;OAIG;IACG,WAAW,CAAC,SAAS,EAHhB,MAGgB,GAFd,OAAO,CAAC,OAAO,CAAC,CAS5B;IAED;;;;;;;;;OASG;IACG,WAAW,CALJ,CAAC,EAKI,QAAQ,EAJf,MAAM,OAAO,CAAC,CAAC,CAIA,EAAE,OAAO,AAHhC,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGN,GAF3B,OAAO,CAAC,CAAC,CAAC,CAmDtB;IAED;;;;;OAKG;IACG,OAAO,CAAC,EAAE,EAHL,MAGK,GAFH,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;;OAKG;IACH,8BAA8B,CAAC,EAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAC,EAHjD;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAGF,GAF/C,IAAI,CAmDhB;IAED;;;OAGG;IACG,0BAA0B,IAFnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAIlE;IAED;;;;;;;;OAQG;IACG,sBAAsB,CALf,CAAC,EAKe,QAAQ,EAJ1B,MAAM,OAAO,CAAC,CAAC,CAIW,EAAE,OAAO,EAHnC,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGA,GAFjC,OAAO,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CA8FlD;IAED;;;;;;OAMG;IACG,YAAY,CAAC,QAAQ,EAJhB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAIT,EAAE,OAAO,AAHjC,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGL,GAF5B,OAAO,CAAC,IAAI,CAAC,CAUzB;IAED;;;;;;OAMG;IACG,WAAW,CAAC,QAAQ,EAJf,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAIV,EAAE,OAAO,AAHhC,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGN,GAF3B,OAAO,CAAC,IAAI,CAAC,CAazB;IAED;;;OAGG;IACH,iBAAiB,IAFJ,OAAO,CAEsC;IAE1D;;;OAGG;IACH,qBAAqB,IAFR,OAAO,CAAC,IAAI,CAAC,CAE2C;IAErE;;;;OAIG;IACG,gBAAgB,CAAC,OAAO,AAH3B,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGX,GAFtB,OAAO,CAAC,IAAI,CAAC,CA6BzB;IAED;;;;OAIG;IACG,uBAAuB,CAAC,OAAO,AAHlC,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGJ,GAF7B,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;OAIG;IACG,iBAAiB,CAAC,OAAO,AAH5B,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGV,GAFvB,OAAO,CAAC,IAAI,CAAC,CAQzB;IAED,8EAA8E;IAC9E,4BAA4B,SAO3B;IAED;;;;OAIG;IACG,wBAAwB,CAAC,OAAO,AAHnC,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGH,GAF9B,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;OAIG;IACG,yBAAyB,CAAC,aAAa,EAHlC,wBAGkC,GAFhC,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;OAGG;IACG,+BAA+B,IAFxB,OAAO,CAAC,IAAI,CAAC,CAiBzB;IAED;;;;;;;;OAQG;IACI,WAAW,CAAC,GAAG,EAJX,MAIW,EAAE,OAAO,AAH5B,CACA,EADQ,YAGyB,+CAMnC;IAED;;;;;OAKG;IACG,KAAK,CAAC,GAAG,EAJJ,MAII,EAAE,OAAO,AAHrB,CACA,EADQ,YAGkB,GAFhB,OAAO,CAAC,eAAe,CAAC,CAqDpC;IAED;;;;;OAKG;IACG,YAAY,CAAC,GAAG,EAJX,MAIW,EAAE,OAAO,AAH5B,CACA,EADQ,YAGyB,GAFvB,OAAO,CAAC,MAAM,CAAC,CAe3B;IAED;;;;;;;;;OASG;IACG,uBAAuB,CAAC,EAAC,WAAW,EAAE,QAAQ,EAAC,EAPlD;QAAqB,WAAW,EAAxB,MAAM,CACd;QAAqB,QAAQ,EAArB,MAAM,CACd;KAKkD,EAAE,OAAO,EALnD,YAKmD,EAAE,aAAa,EAJlE,OAAO,4CAA4C,EAAE,OAAO,GAAG,SAIG,EAAE,KAAK,EAHzE,MAGyE,GAFvE,OAAO,CAAC,eAAe,CAAC,CA2CpC;IAED;;;;;OAKG;IACG,qBAAqB,CAAC,GAAG,EAJpB,MAIoB,EAAE,OAAO,EAH7B,YAG6B,GAF3B,OAAO,CAAC,eAAe,CAAC,CAYpC;IAED;;;;;OAKG;IACG,WAAW,CAAC,IAAI,EAJX,MAIW,EAAE,QAAQ,EAHrB,YAGqB,GAFnB,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;;OAKG;IACG,UAAU,CAAC,IAAI,EAJV,MAIU,EAAE,QAAQ,EAHpB,YAGoB,GAFlB,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;OAGG;IACH,gBAAgB,IAFH,+BAA+B,CAgB3C;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,GAAG,EAJb,MAIa,EAAE,KAAK,EAHpB,MAGoB,GAFlB,MAAM,CAIlB;IAED;;;;OAIG;IACH,gBAAgB,CAAC,GAAG,EAHT,MAGS,GAFP,MAAM,CASlB;IAED;;;;;OAKG;IACH,+BAA+B,CAAC,GAAG,EAJxB,MAIwB,EAAE,OAAO,EAHjC,YAGiC,GAF/B,MAAM,CAoBlB;IAED;;;;OAIG;IACH,wBAAwB,CAAC,KAAK,EAHnB,MAGmB,GAFjB,MAAM,CAiBlB;IAED;;;;;;;;;OASG;IACH,aAAa,CAAC,GAAG,EALN,MAKM,EAAE,UAAU,EAJlB,MAIkB,EAAE,KAAK,EAHzB,MAGyB,GAFvB,cAAc,CA6D1B;IAED;;;;OAIG;IACH,2BAA2B,CAAC,GAAG,EAHpB,MAGoB,GAFlB,OAAO,CA2CnB;IAED;;;OAGG;IACH,oBAAoB,IAFP,OAAO,CASnB;IAED;;;;;;;;OAQG;IACG,SAAS,CAAC,EAAC,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,EAAC,EANnD;QAAqB,SAAS,EAAtB,MAAM,CACd;QAAqB,OAAO,EAApB,MAAM,CACd;QAAiC,WAAW,EAApC,MAAM,GAAG,SAAS,CAC1B;QAAqB,GAAG,EAAhB,MAAM,CACd;KAEmD,GAFzC,OAAO,CAAC,IAAI,CAAC,CAUzB;IAED;;;;OAIG;IACH,gBAAgB,CAAC,WAAW,EAHjB,MAAM,GAAG,SAGQ,GAFf,MAAM,GAAG,SAAS,CAmB9B;IAED;;;;;;OAMG;IACH,YAAY,CAAC,GAAG,EAJL,MAIK,EAAE,OAAO,AAHtB,CACA,EADQ,YAGc,GAFZ,OAAO,CAAC,eAAe,CAAC,CAIpC;IAED;;;;;OAKG;IACH,mBAAmB,CAAC,GAAG,EAHZ,MAGY,GAFV,OAAO,CAAC,MAAM,CAAC,CAI3B;IAED;;;;;OAKG;IACH,UAAU,CAAC,MAAM,EAHN,KAGM,GAFJ,MAAM,CAEiD;IAEpE;;;;OAIG;IACH,sBAAsB,CAAC,MAAM,EAHlB,KAGkB,GAFhB,4BAA4B,CAIxC;IAED;;;;OAIG;IACH,oBAAoB,CAAC,GAAG,EAHb,MAGa,GAFX,IAAI,CAOhB;IAED;;;OAGG;IACH,kBAAkB,IAFL,IAAI,CAMhB;IAED;;;;OAIG;IACH,kBAAkB,CAAC,GAAG,EAHX,MAGW,GAFT,OAAO,CAyCnB;IAED;;;OAGG;IACH,UAAU,IAFG,OAAO,CAInB;IAED;;;;OAIG;IACG,mBAAmB,CAAC,OAAO,AAH9B,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGR,GAFzB,OAAO,CAAC,IAAI,CAAC,CAkBzB;IAED;;;;OAIG;IACG,0BAA0B,CAAC,OAAO,AAHrC,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGD,GAFhC,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;OAGG;IACH,qBAAqB,IAFR,MAAM,CAIlB;IAED;;;;;OAKG;IACG,cAAc,CAAC,aAAa,EAJvB,MAIuB,EAAE,OAAO,AAHxC,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGE,GAFnC,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;;;OAKG;IACG,qBAAqB,CAAC,aAAa,EAJ9B,MAI8B,EAAE,OAAO,AAH/C,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGS,GAF1C,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;;;OAMG;IACG,YAAY,CAAC,SAAS,EALjB,MAKiB,EAAE,aAAa,EAJhC,MAIgC,EAAE,aAAa,EAH/C,MAG+C,GAF7C,OAAO,CAAC,IAAI,CAAC,CAiBzB;IAED;;;;;OAKG;IACG,gBAAgB,CAAC,aAAa,EAJzB,MAIyB,EAAE,OAAO,AAH1C,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGI,GAFrC,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;;;OAKG;IACG,uBAAuB,CAAC,aAAa,EAJhC,MAIgC,EAAE,OAAO,AAHjD,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGW,GAF5C,OAAO,CAAC,IAAI,CAAC,CAgBzB;IAED;;;;;OAKG;IACG,iBAAiB,CAAC,aAAa,EAJ1B,MAI0B,EAAE,OAAO,AAH3C,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGK,GAFtC,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;;;OAKG;IACG,wBAAwB,CAAC,aAAa,EAJjC,MAIiC,EAAE,OAAO,AAHlD,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGY,GAF7C,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;;OAKG;IACH,UAAM,cAAc,CAAC,MAAM,EAHhB,KAAK,CAAC,OAAO,iBAAiB,EAAE,OAAO,CAGvB,GAFd,OAAO,CAAC,IAAI,CAAC,CAczB;IAED;;;OAGG;IACG,iBAAiB,IAFV,OAAO,CAAC,IAAI,CAAC,CA8BzB;IAED;;;;OAIG;IACG,MAAM,CAAC,IAAI,EAHN,iBAGM,GAFJ,OAAO,CAAC,IAAI,CAAC,CAOzB;IAED;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAHH,iBAGG,GAFD,MAAM,CAIlB;IAED;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAHH,iBAGG,GAFD,MAAM,CAIlB;IAED;;;;OAIG;IACH,kBAAkB,IAFL,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;OAIG;IACH,iBAAiB,IAFJ,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;OAIG;IACG,uBAAuB,CAAC,QAAQ,EAH3B,MAAM,IAGqB,GAFzB,OAAO,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAUlD;IAED;;;;;;;;;OASG;IACG,mBAAmB,CAAC,IAAI,EAJnB,MAImB,EAAE,IAAI,AAHjC,CACA,EADQ;QAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAGI,GAF5B,OAAO,CAAC,OAAO,CAAC,CAQ5B;IAED;;;;;;OAMG;IACH,oBAAoB,CAAC,IAAI,EAJd,MAIc,EAAE,KAAK,AAH7B,CACA,EADQ;QAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAGA,GAFxB,OAAO,CAAC,OAAO,CAAC,CAI5B;IAED;;;;OAIG;IACG,sBAAsB,CAAC,IAAI,EAHtB,MAGsB,GAFpB,OAAO,CAAC,OAAO,CAAC,CAQ5B;IAED;;;;;OAKG;IACH,uBAAuB,CAAC,IAAI,EAHjB,MAGiB,GAFf,OAAO,CAAC,OAAO,CAAC,CAI5B;IAED;;;;OAIG;IACG,mBAAmB,CAAC,IAAI,EAHnB,MAGmB,GAFjB,OAAO,CAAC,OAAO,CAAC,CAY5B;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,IAAI,EAHd,MAGc,GAFZ,OAAO,CAAC,OAAO,CAAC,CAI5B;IAED;;;OAGG;IACG,wBAAwB,IAFjB,OAAO,CAAC,IAAI,CAAC,CAmBzB;IAED;;;;OAIG;IACH,kBAAkB,CAAC,IAAI,EAHZ,MAGY,GAFV,IAAI,CAIhB;IAED;;;;OAIG;IACH,oBAAoB,CAAC,IAAI,EAHd,MAGc,GAFZ,IAAI,CAUhB;IAED;;;;;;;OAOG;IACH,kBAAkB,CAAC,IAAI,EAHZ,MAGY,GAFV,OAAO,CAAC,OAAO,CAAC,CAI5B;CACF"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/database/drivers/base.js"],"names":[],"mappings":"AAIG,YAAkB,kBAAkB,GACpC;;;;IAA8E,OAAO,EAA1E,KAAK,CAAC,MAAM,GAAG,OAAO,iCAAiC,EAAE,OAAO,CAAC,CAC5E;;;;IAAqB,WAAW,AAAhC,CACA,EADW,OAAO,CAClB;;;;IAAoB,IAAI,AAAxB,CACA,EADW,MAAM,CACjB;;;;IAAqB,MAAM,AAA3B,CACA,EADW,OAAO,CAClB;;;;IAAmB,SAAS,EAAjB,MAAM,CACnB;CAAA,CAAA;AAGE,YAAkB,kBAAkB,GACpC;;;;IAAmB,IAAI,EAAZ,MAAM,CACjB;;;;IAAmB,SAAS,EAAjB,MAAM,CACnB;CAAA,CAAA;AAGE,YAAkB,oBAAoB,GACtC;;;;IAAqB,OAAO,AAA5B,CACA,EADW,OAAO,CAClB;;;;IAAqB,QAAQ,AAA7B,CACF,EADa,OAAO,CACpB;CAAA,CAAA;AAGE,YAAkB,iBAAiB,GACnC;;;;IAAmB,SAAS,EAAjB,MAAM,CACjB;;;;IAA2D,UAAU,EAA1D;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAA;KAAC,CAC3D;CAAA,CAAA;AAGE,YAAkB,iBAAiB,GACnC;;;;IAAsB,OAAO,AAA7B,CACA,EADW,MAAM,EAAE,CACnB;;;;IAA4D,IAAI,AAAhE,CACA,EADW;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAA;KAAC,CACzD;;;;IAAqB,QAAQ,AAA7B,CACA,EADW,OAAO,CAClB;;;;IAAsB,6BAA6B,AAAnD,CACA,EADW,MAAM,EAAE,CACnB;;;;IAAyD,IAAI,AAA7D,CACA,EADW,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACtD;;;;IAAmB,SAAS,EAAjB,MAAM,CACnB;CAAA,CAAA;AAGE,YAAyD,YAAY,GAA3D,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAc;AACrE,YAA+B,eAAe,GAApC,KAAK,CAAC,YAAY,CAAC,CAAiB;AAI9C,YAAkB,wBAAwB,GAC1C;;;;IAA8C,oBAAoB,EAAvD,KAAK,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAC5C;;;;IAA8C,qBAAqB,EAAxD,KAAK,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAC9C;CAAA,CAAA;AAGE,YAAkB,4BAA4B,GAC9C;;;;IAAoB,KAAK,EAAd,OAAO,CAClB;;;;IAAoB,SAAS,EAAlB,OAAO,CAClB;;;;IAAqB,QAAQ,AAA7B,CACA,EADW,OAAO,CAClB;;;;IAA8C,cAAc,AAA5D,CACA,EADW,UAAU,GAAG,mBAAmB,CAC3C;;;;IAAoB,QAAQ,AAA5B,CACA,EADW,MAAM,CACjB;;;;IAAoB,MAAM,AAA1B,CACF,EADa,MAAM,CACnB;CAAA,CAAA;AAGE,YAAkB,YAAY,GAC9B;;;;IAAoB,OAAO,AAA3B,CACA,EADW,MAAM,CACjB;;;;IAAqB,QAAQ,AAA7B,CACA,EADW,OAAO,CAClB;;;;IAAqB,kBAAkB,AAAvC,CACA,EADW,OAAO,CAClB;;;;IAAqB,KAAK,AAA1B,CACA,EADW,OAAO,CAClB;;;;IAAqB,eAAe,AAApC,CACA,EADW,OAAO,CAClB;;;;IAAqB,YAAY,AAAjC,CACA,EADW,OAAO,CAClB;;;;IAAyB,MAAM,AAA/B,CACA,EADW,WAAW,CACtB;;;;IAAoB,WAAW,AAA/B,CACA,EADW,MAAM,CACjB;;;;IAAoB,cAAc,AAAlC,CACF,EADa,MAAM,CACnB;CAAA,CAAA;AAIE,YAAkB,+BAA+B,GACjD;;;;IAAmB,OAAO,EAAf,MAAM,CACjB;;;;IAA6C,cAAc,EAAhD,UAAU,GAAG,mBAAmB,CAC3C;;;;IAAoB,kBAAkB,AAAtC,CACA,EADW,MAAM,CACjB;;;;IAAoB,6BAA6B,AAAjD,CACA,EADW,MAAM,CACjB;;;;IAAoB,2BAA2B,AAA/C,CACA,EADW,MAAM,CACjB;;;;IAAmB,UAAU,EAAlB,MAAM,CACjB;;;;IAAmB,WAAW,EAAnB,MAAM,CACjB;;;;IAAoB,aAAa,AAAjC,CACA,EADW,MAAM,CACjB;;;;IAAoB,wBAAwB,AAA5C,CACA,EADW,MAAM,CACjB;;;;IAAoB,cAAc,AAAlC,CACA,EADW,MAAM,CACjB;;;;IAAoB,YAAY,AAAhC,CACA,EADW,MAAM,CACjB;;;;IAAmB,KAAK,EAAb,MAAM,CACjB;;;;IAAmB,4BAA4B,EAApC,MAAM,CACjB;;;;IAAoB,SAAS,EAAlB,OAAO,CACpB;CAAA,CAAA;AAIE,YAAkB,wBAAwB,GAC1C;;;;IAAqB,WAAW,EAArB,MAAM,EAAE,CACnB;;;;IAAmB,OAAO,EAAf,MAAM,CACjB;;;;IAAmB,eAAe,EAAvB,MAAM,CACjB;;;;IAAmB,SAAS,EAAjB,MAAM,CACjB;;;;IAAmB,UAAU,EAAlB,MAAM,CACnB;CAAA,CAAA;AAIE,YAAkB,+BAA+B,GACjD;;;;IAA4C,WAAW,EAA5C,wBAAwB,GAAG,IAAI,CAC1C;;;;IAA+B,kBAAkB,EAAtC,MAAM,GAAG,SAAS,CAC7B;;;;IAA+B,aAAa,EAAjC,MAAM,GAAG,SAAS,CAC7B;;;;IAA+B,YAAY,EAAhC,MAAM,GAAG,SAAS,CAC7B;;;;IAAmB,WAAW,EAAnB,MAAM,CACjB;;;;IAA+B,KAAK,EAAzB,MAAM,GAAG,SAAS,CAC7B;;;;IAAmB,gBAAgB,EAAxB,MAAM,CACjB;;;;IAAmB,kBAAkB,EAA1B,MAAM,CACnB;CAAA,CAAA;AAIE,YAAkB,gBAAgB,GAClC;;;;IAAqB,WAAW,EAArB,MAAM,EAAE,CACnB;;;;IAAmB,OAAO,EAAf,MAAM,CACjB;;;;IAAmB,eAAe,EAAvB,MAAM,CACjB;;;;IAAmB,UAAU,EAAlB,MAAM,CACnB;CAAA,CAAA;AAIE,YAAiB,iBAAiB,GAClC;;;;IAAmB,UAAU,EAAlB,MAAM,CACjB;;;;IAAmB,IAAI,EAAZ,MAAM,CACjB;;;;IAAmB,SAAS,EAAjB,MAAM,CACnB;CAAA,CAAA;AAGE,YAAiB,iBAAiB,GAClC;;;;IAAqB,eAAe,EAAzB,MAAM,EAAE,CACnB;;;;IAAmB,IAAI,EAAZ,MAAM,CACjB;;;;IAAmB,SAAS,EAAjB,MAAM,CACjB;;;;IAAqB,aAAa,EAAvB,MAAM,EAAE,CACrB;CAAA,CAAA;AAIE,YAAkB,cAAc,GAChC;;;;IAAoB,UAAU,EAAnB,OAAO,CAClB;;;;IAA+B,KAAK,EAAzB,MAAM,GAAG,SAAS,CAC7B;;;;IAAmB,KAAK,EAAb,MAAM,CACnB;CAAA,CAAA;AAMD,OAAO,MAAM,MAAM,iBAAiB,CAAA;AACpC,OAAO,KAAK,MAAM,mBAAmB,CAAA;AAIrC,OAAO,KAAK,MAAM,2BAA2B,CAAA;AAsH7C,MAAM,CAAC,OAAO,OAAO,4BAA4B;IAiDxC,KAAK;IACL,aAAa;IACb,KAAK;IACL,MAAM;IAEN,kBAAkB;IAGlB,yBAAyB;IA2JzB,6BAA6B;IAnNpC;;oCAEgC;IAChC,KAAK,EADK,MAAM,GAAG,SAAS,CACX;IACjB;;4CAEwC;IACxC,0BAA0B,EADhB,wBAAwB,EAAE,CACV;IAC1B,4BAA4B;IAC5B,6BAA6B,EADlB,OAAO,CAAC,IAAI,CAAC,CACK;IAC7B,uCAAuC;IACvC,6BAA6B,EADlB,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CACN;IAC7B;;qEAEiE;IACjE,YAAY,EADF,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACjD;IACZ;;0CAEsC;IACtC,uBAAuB,EADb,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CACX;IACvB;;oCAEgC;IAChC,uBAAuB,EADb,MAAM,GAAG,SAAS,CACL;IACvB,iCAAiC;IACjC,mBAAmB,EADR,MAAM,GAAG,SAAS,CACV;IACnB,iCAAiC;IACjC,4BAA4B,EADjB,MAAM,GAAG,SAAS,CACD;IAC5B;;yCAEqC;IACrC,YAAY,EADF,gBAAgB,GAAG,IAAI,CACd;IACnB,6EAA6E;IAC7E,uBAAuB,EADZ,OAAO,CAAC,KAAK,EAAE;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAC,CAAC,CAClC;IACvC,kCAAkC;IAClC,kBAAkB,EADP,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CACA;IAC9B;;;OAGG;IACH,eAAe,EAFL,OAAO,uBAAuB,EAAE,OAAO,GAAG,SAAS,CAElC;IAE3B;;;;OAIG;IACH,YAAY,MAAM,EAHP,OAAO,8BAA8B,EAAE,yBAGhC,EAAE,aAAa,EAFtB,OAAO,wBAAwB,EAAE,OAEX,EAWhC;IAED;;;;OAIG;IACG,gCAAgC,IAFzB,OAAO,CAAC,IAAI,CAAC,CAEiB;IAE3C;;;;;;;;OAQG;IACG,aAAa,CAAC,SAAS,EAPlB,MAOkB,EAAE,UAAU,EAN9B,MAM8B,EAAE,mBAAmB,EALnD,MAKmD,EAAE,oBAAoB,EAJzE,MAIyE,EAAE,IAAI,EAH/E,MAG+E,GAF7E,OAAO,CAAC,IAAI,CAAC,CAuBzB;IAED;;;;;OAKG;IACG,gBAAgB,CAAC,SAAS,EAJrB,MAIqB,EAAE,kBAAkB,EAHzC,OAAO,uBAAuB,EAAE,OAGS,GAFvC,OAAO,CAAC,IAAI,CAAC,CAsBzB;IAED;;;;;OAKG;IACH,cAAc,CAAC,UAAU,EAHd,OAAO,wBAAwB,EAAE,OAGnB,GAFZ,OAAO,CAAC,MAAM,EAAE,CAAC,CAI7B;IAED;;;;OAIG;IACH,OAAO,IAFM,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;OAGG;IACG,KAAK,IAFE,OAAO,CAAC,IAAI,CAAC,CA0BzB;IAED;;;OAGG;IACG,MAAM,IAFC,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;OAGG;IACG,kBAAkB,IAFX,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;OAGG;IACH,gBAAgB,IAFH,OAAO,CAEe;IAEnC;;;OAGG;IACG,qBAAqB,IAFd,OAAO,CAAC,IAAI,CAAC,CAEiG;IAE3H;;;;OAIG;IACG,yBAAyB,CAAC,IAAI,EAHzB,MAAM,GAAG,SAGgB,GAFvB,OAAO,CAAC,IAAI,CAAC,CAKzB;IAED;;;OAGG;IACG,2BAA2B,IAFpB,OAAO,CAAC,IAAI,CAAC,CAKzB;IAED;;;;OAIG;IACH,yBAAyB,CAAC,EAAC,kBAAkB,EAAE,2BAA2B,EAAC,EAHhE;QAAC,kBAAkB,EAAE,MAAM,CAAC;QAAC,2BAA2B,EAAE,MAAM,CAAA;KAGA,GAF9D,IAAI,CAKhB;IAED;;;OAGG;IACG,SAAS,IAFF,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;;;;;;;OASG;IACH,iBAAiB,CAAC,YAAY,EAPnB,MAOmB,EAAE,IAAI,AANjC,CAIA,EAHA;QAAuB,WAAW,AAAlC,CACA,EADQ,OAAO,CACf;QAAsB,eAAe,AAArC,CACA,EADQ,MAAM,CACd;QAAsB,iBAAiB,AAAvC,CACA,EADQ,MAAM,CACd;KAEiC,GAFvB,MAAM,EAAE,CAE2E;IAEhG;;;;;;;OAOG;IACH,eAAe,CAAC,YAAY,EALjB,MAKiB,EAAE,IAAI,AAJ/B,CAEA,EADA;QAAuB,QAAQ,AAA/B,CACA,EADQ,OAAO,CACf;KAE+B,GAFrB,MAAM,EAAE,CAEuE;IAE5F;;;;;OAKG;IACG,eAAe,CAAC,SAAS,EAHpB,kBAGoB,GAFlB,OAAO,CAAC,MAAM,EAAE,CAAC,CAI7B;IAED;;;;;OAKG;IACG,eAAe,CAAC,SAAS,EAHpB,kBAGoB,GAFlB,OAAO,CAAC,MAAM,EAAE,CAAC,CAI7B;IAED;;;;OAIG;IACG,WAAW,CAAC,SAAS,EAHhB,OAAO,wBAAwB,EAAE,OAGjB,GAFd,OAAO,CAAC,IAAI,CAAC,CASzB;IAED;;;;;OAKG;IACG,cAAc,CAAC,SAAS,EAHnB,OAAO,wBAAwB,EAAE,OAGd,GAFjB,OAAO,CAAC,MAAM,EAAE,CAAC,CAI7B;IAED;;;;OAIG;IACG,MAAM,CAAC,IAAI,EAHN,iBAGM,GAFJ,OAAO,CAAC,IAAI,CAAC,CAOzB;IAED;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAHH,iBAGG,GAFD,MAAM,CAIlB;IAED;;;;;OAKG;IACG,SAAS,CAAC,SAAS,EAJd,MAIc,EAAE,IAAI,AAH5B,CACA,EADQ,oBAGoB,GAFlB,OAAO,CAAC,IAAI,CAAC,CASzB;IAED;;;;;;OAMG;IACG,aAAa,CAAC,SAAS,EAJlB,MAIkB,EAAE,IAAI,AAHhC,CACA,EADQ,oBAGwB,GAFtB,OAAO,CAAC,MAAM,EAAE,CAAC,CAI7B;IAED;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAHD,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAG3B,GAFC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAIzC;IAED;;;OAGG;IACH,OAAO,IAFM,OAAO,8BAA8B,EAAE,yBAAyB,CAI5E;IAED;;;OAGG;IACH,gBAAgB,IAFH,OAAO,wBAAwB,EAAE,OAAO,CAMpD;IAED;;;;OAIG;IACG,iBAAiB,CAAC,cAAc,EAH3B,OAAO,uBAAuB,EAAE,OAGL,GAFzB,OAAO,CAAC,IAAI,CAAC,CAWzB;IAED;;;;OAIG;IACH,mBAAmB,CAAC,cAAc,EAHvB,OAAO,uBAAuB,EAAE,OAGT,GAFrB,IAAI,CAQhB;IAED;;;;OAIG;IACG,sBAAsB,CAAC,cAAc,EAHhC,MAAM,GAAG,SAGuB,GAF9B,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;OAGG;IACH,QAAQ,IAFK,MAAM,GAAG,SAAS,CAI9B;IAED;;;OAGG;IACH,cAAc,IAFD,MAAM,CAIlB;IAED;;;OAGG;IACH,gBAAgB,IAFH,IAAI,CAShB;IAED;;;OAGG;IACH,sBAAsB,IAFT,IAAI,CAIhB;IAED;;;;OAIG;IACH,yBAAyB,CAAC,WAAW,EAH1B,MAAM,IAGoB,GAFxB,IAAI,CAIhB;IAED;;;OAGG;IACH,mBAAmB,IAFN,OAAO,CAInB;IAED;;;;;;OAMG;IACG,qBAAqB,CALd,CAAC,EAKc,QAAQ,EAJzB,MAIyB,EAAE,QAAQ,EAHnC,MAAM,OAAO,CAAC,CAAC,CAGoB,GAFjC,OAAO,CAAC,CAAC,CAAC,CAwBtB;IAED;;;;;;;OAOG;IACG,0BAA0B,CANnB,CAAC,EAMmB,SAAS,EAL/B,MAK+B,EAAE,YAAY,EAJ7C,MAI6C,EAAE,QAAQ,EAHvD,MAAM,OAAO,CAAC,CAAC,CAGwC,GAFrD,OAAO,CAAC,CAAC,CAAC,CAItB;IAED;;;;OAIG;IACH,uBAAuB,CAAC,KAAK,EAHlB,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAGV,GAFhB,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAMzC;IAED;;;;OAIG;IACH,SAAS,IAFI,OAAO,CAAC,KAAK,CAAC,OAAO,iBAAiB,EAAE,OAAO,CAAC,CAAC,CAI7D;IAED;;;OAGG;IACG,YAAY,IAFL,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIlC;IAED;;;;;;;OAOG;IACG,mBAAmB,CAAC,aAAa,EAH5B,MAG4B,GAF1B,OAAO,CAAC,OAAO,CAAC,CAI5B;IAED;;;;;;OAMG;IACG,cAAc,CAAC,IAAI,EALd,MAKc,EAAE,IAAI,AAJ5B,CAEA,EADA;QAAsB,UAAU,EAAxB,OAAO,CACf;KAE4B,GAFlB,OAAO,CAAC,OAAO,iBAAiB,EAAE,OAAO,GAAG,SAAS,CAAC,CAuBlE;IAED;;;;;OAKG;IACH,yBAAyB,CAAC,IAAI,EAJnB,MAImB,EAAE,UAAU,EAH/B,MAAM,EAGyB,GAF7B,MAAM,CAQlB;IAED;;;;OAIG;IACG,oBAAoB,CAAC,IAAI,EAHpB,MAGoB,GAFlB,OAAO,CAAC,OAAO,iBAAiB,EAAE,OAAO,CAAC,CAItD;IAED;;;;OAIG;IACH,OAAO,IAFM,MAAM,CAIlB;IAED;;;;OAIG;IACG,MAAM,CAAC,IAAI,EAHN,iBAGM,GAFJ,OAAO,CAAC,IAAI,CAAC,CAOzB;IAED;;;;;;;;;OASG;IACH,gBAAgB,IAFH,MAAM,CAIlB;IAED;;;;;;;;OAQG;IACH,iBAAiB,IAFJ,MAAM,CAIlB;IAED;;;;;;;OAOG;IACH,iBAAiB,IAFJ,MAAM,CAIlB;IAED;;;;;;;OAOG;IACH,gBAAgB,IAFH,MAAM,CAIlB;IAED;;;;;;;;;;;OAWG;IACH,WAAW,CANE,CAAC,EAMF,MAAM,EALP,KAAK,CAAC,CAAC,CAKA,EAAE,QAAQ,EAJjB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,MAIL,EAAE,EAAC,QAAmC,EAAE,QAAkC,EAAC,AAHpG,CACA,EADQ;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAG4D,GAF/F,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CA+B3B;IAED;;;;;;;;;;;;;;OAcG;IACH,qBAAqB,CAAC,IAAI,EAJf,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAI3B,EAAE,QAAQ,EAHzB,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,MAG9B,GAFvB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CA8C9D;IAED;;;;;;;;;;;;OAYG;IACG,cAAc,CAAC,SAAS,EALnB,MAKmB,EAAE,OAAO,EAJ5B,KAAK,CAAC,MAAM,CAIgB,EAAE,IAAI,EAHlC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAGR,GAFhC,OAAO,CAAC,IAAI,CAAC,CAYzB;IAED;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAHH,iBAGG,GAFD,MAAM,CAIlB;IAED;;;;OAIG;IACG,MAAM,CAAC,IAAI,EAHN,iBAGM,GAFJ,OAAO,CAAC,IAAI,CAAC,CAOzB;IAED;;;;;OAKG;IACH,YAAY,CAAC,QAAQ,AAHlB,CACA,EADQ,YAGe,GAFb,OAAO,CAAC,MAAM,CAAC,CAI3B;IAED;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAHR,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAGpB,GAFN,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAyBzC;IAED;;;;;OAKG;IACH,qBAAqB,CAAC,KAAK,EAHhB,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAGZ,GAFd,OAAO,CAUnB;IAED;;;;OAIG;IACH,OAAO,IAFM,OAAO,4BAA4B,EAAE,OAAO,CAIxD;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK,EAHA,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAG5B,GAFE,MAAM,GAAG,MAAM,CAS3B;IAED;;;;OAIG;IACH,WAAW,CAAC,UAAU,EAHX,MAGW,GAFT,MAAM,CAIlB;IAED;;;;OAIG;IACH,UAAU,CAAC,UAAU,EAHV,MAGU,GAFR,MAAM,CAIlB;IAED;;;;OAIG;IACH,UAAU,CAAC,SAAS,EAHT,MAGS,GAFP,MAAM,CAIlB;IAED;;;OAGG;IACH,QAAQ,IAFK,KAAK,CASjB;IAED;;;;OAIG;IACG,MAAM,CAAC,SAAS,EAHX,MAGW,GAFT,OAAO,CAAC,eAAe,CAAC,CAUpC;IAED;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAHN,MAAM,GAAG,SAGH,GAFJ,IAAI,CAIhB;IAED;;;;OAIG;IACH,oCAAoC,IAFvB,OAAO,CAInB;IAED;;;OAGG;IACH,6BAA6B,IAFhB,OAAO,CAE4B;IAEhD;;;;;;;;;;OAUG;IACG,4BAA4B,CAAC,EAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAC,EALzD;QAA2B,OAAO,EAA1B,YAAY,CACpB;QAAqB,GAAG,EAAhB,MAAM,CACd;QAAqB,SAAS,EAAtB,MAAM,CACd;KAEyD,GAF/C,OAAO,CAAC,eAAe,CAAC,CAMpC;IAED;;;;OAIG;IACH,2BAA2B,IAFd,OAAO,CAE0B;IAE9C;;;;;;;;;;OAUG;IACH,+BAA+B,IAFlB,OAAO,CAE8B;IAElD;;;;OAIG;IACG,WAAW,CAAC,SAAS,EAHhB,MAGgB,GAFd,OAAO,CAAC,OAAO,CAAC,CAS5B;IAED;;;;;;;;;OASG;IACG,WAAW,CALJ,CAAC,EAKI,QAAQ,EAJf,MAAM,OAAO,CAAC,CAAC,CAIA,EAAE,OAAO,AAHhC,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGN,GAF3B,OAAO,CAAC,CAAC,CAAC,CA8DtB;IAED;;;;;OAKG;IACG,OAAO,CAAC,EAAE,EAHL,MAGK,GAFH,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;OAGG;IACH,MAAM,IAFO,MAAM,CAIlB;IAED;;;;;OAKG;IACH,8BAA8B,CAAC,EAAC,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,4BAA4B,EAAE,SAAS,EAAC,EAH1G;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,UAAU,GAAG,mBAAmB,CAAC;QAAC,KAAK,EAAE,KAAK,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,4BAA4B,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAGrD,GAFxG,IAAI,CAiEhB;IAED;;;OAGG;IACH,8BAA8B,IAFjB;QAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAAC,6BAA6B,CAAC,EAAE,MAAM,CAAC;QAAC,2BAA2B,CAAC,EAAE,MAAM,CAAA;KAAC,CAevH;IAED;;;OAGG;IACH,2BAA2B,IAFd;QAAC,aAAa,CAAC,EAAE,MAAM,CAAC;QAAC,wBAAwB,CAAC,EAAE,MAAM,CAAA;KAAC,CAoBvE;IAED;;;;OAIG;IACH,wCAAwC,CAAC,eAAe,EAH7C,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAGiB,GAF3C,IAAI,CA8BhB;IAED;;;;OAIG;IACG,0BAA0B,CAAC,SAAS,EAH/B,+BAG+B,GAF7B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAIlE;IAED;;;;;;;;OAQG;IACG,sBAAsB,CALf,CAAC,EAKe,QAAQ,EAJ1B,MAAM,OAAO,CAAC,CAAC,CAIW,EAAE,OAAO,EAHnC,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGA,GAFjC,OAAO,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CA8FlD;IAED;;;;;;OAMG;IACG,YAAY,CAAC,QAAQ,EAJhB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAIT,EAAE,OAAO,AAHjC,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGL,GAF5B,OAAO,CAAC,IAAI,CAAC,CAUzB;IAED;;;;;;OAMG;IACG,WAAW,CAAC,QAAQ,EAJf,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAIV,EAAE,OAAO,AAHhC,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGN,GAF3B,OAAO,CAAC,IAAI,CAAC,CAazB;IAED;;;OAGG;IACH,iBAAiB,IAFJ,OAAO,CAEsC;IAE1D;;;OAGG;IACH,qBAAqB,IAFR,OAAO,CAAC,IAAI,CAAC,CAE2C;IAErE;;;;OAIG;IACG,gBAAgB,CAAC,OAAO,AAH3B,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGX,GAFtB,OAAO,CAAC,IAAI,CAAC,CA6BzB;IAED;;;;OAIG;IACG,uBAAuB,CAAC,OAAO,AAHlC,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGJ,GAF7B,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;OAIG;IACG,iBAAiB,CAAC,OAAO,AAH5B,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGV,GAFvB,OAAO,CAAC,IAAI,CAAC,CAQzB;IAED,8EAA8E;IAC9E,4BAA4B,SAO3B;IAED;;;;OAIG;IACG,wBAAwB,CAAC,OAAO,AAHnC,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGH,GAF9B,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;OAIG;IACG,yBAAyB,CAAC,aAAa,EAHlC,wBAGkC,GAFhC,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;OAGG;IACG,+BAA+B,IAFxB,OAAO,CAAC,IAAI,CAAC,CAiBzB;IAED;;;;;;;;OAQG;IACI,WAAW,CAAC,GAAG,EAJX,MAIW,EAAE,OAAO,AAH5B,CACA,EADQ,YAGyB,+CAMnC;IAED;;;;;OAKG;IACG,KAAK,CAAC,GAAG,EAJJ,MAII,EAAE,OAAO,AAHrB,CACA,EADQ,YAGkB,GAFhB,OAAO,CAAC,eAAe,CAAC,CAkDpC;IAED;;;;;OAKG;IACG,YAAY,CAAC,GAAG,EAJX,MAIW,EAAE,OAAO,AAH5B,CACA,EADQ,YAGyB,GAFvB,OAAO,CAAC,MAAM,CAAC,CAe3B;IAED;;;;;;;;;OASG;IACG,uBAAuB,CAAC,EAAC,WAAW,EAAE,QAAQ,EAAC,EAPlD;QAAqB,WAAW,EAAxB,MAAM,CACd;QAAqB,QAAQ,EAArB,MAAM,CACd;KAKkD,EAAE,OAAO,EALnD,YAKmD,EAAE,aAAa,EAJlE,OAAO,4CAA4C,EAAE,OAAO,GAAG,SAIG,EAAE,KAAK,EAHzE,MAGyE,GAFvE,OAAO,CAAC,eAAe,CAAC,CA2CpC;IAED;;;;;OAKG;IACG,qBAAqB,CAAC,GAAG,EAJpB,MAIoB,EAAE,OAAO,EAH7B,YAG6B,GAF3B,OAAO,CAAC,eAAe,CAAC,CAYpC;IAED;;;;;OAKG;IACG,WAAW,CAAC,IAAI,EAJX,MAIW,EAAE,QAAQ,EAHrB,YAGqB,GAFnB,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;;OAKG;IACG,UAAU,CAAC,IAAI,EAJV,MAIU,EAAE,QAAQ,EAHpB,YAGoB,GAFlB,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;OAGG;IACH,gBAAgB,IAFH,+BAA+B,CAgB3C;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,GAAG,EAJb,MAIa,EAAE,KAAK,EAHpB,MAGoB,GAFlB,MAAM,CAIlB;IAED;;;;OAIG;IACH,gBAAgB,CAAC,GAAG,EAHT,MAGS,GAFP,MAAM,CASlB;IAED;;;;;OAKG;IACH,+BAA+B,CAAC,GAAG,EAJxB,MAIwB,EAAE,OAAO,EAHjC,YAGiC,GAF/B,MAAM,CAoBlB;IAED;;;;OAIG;IACH,wBAAwB,CAAC,KAAK,EAHnB,MAGmB,GAFjB,MAAM,CAiBlB;IAED;;;;;;;;;OASG;IACH,aAAa,CAAC,GAAG,EALN,MAKM,EAAE,UAAU,EAJlB,MAIkB,EAAE,KAAK,EAHzB,MAGyB,GAFvB,cAAc,CA6D1B;IAED;;;;OAIG;IACH,2BAA2B,CAAC,GAAG,EAHpB,MAGoB,GAFlB,OAAO,CA2CnB;IAED;;;OAGG;IACH,oBAAoB,IAFP,OAAO,CASnB;IAED;;;;;;;;OAQG;IACG,SAAS,CAAC,EAAC,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,EAAC,EANnD;QAAqB,SAAS,EAAtB,MAAM,CACd;QAAqB,OAAO,EAApB,MAAM,CACd;QAAiC,WAAW,EAApC,MAAM,GAAG,SAAS,CAC1B;QAAqB,GAAG,EAAhB,MAAM,CACd;KAEmD,GAFzC,OAAO,CAAC,IAAI,CAAC,CAUzB;IAED;;;;OAIG;IACH,gBAAgB,CAAC,WAAW,EAHjB,MAAM,GAAG,SAGQ,GAFf,MAAM,GAAG,SAAS,CAmB9B;IAED;;;;;;OAMG;IACH,YAAY,CAAC,GAAG,EAJL,MAIK,EAAE,OAAO,AAHtB,CACA,EADQ,YAGc,GAFZ,OAAO,CAAC,eAAe,CAAC,CAIpC;IAED;;;;;OAKG;IACH,mBAAmB,CAAC,GAAG,EAHZ,MAGY,GAFV,OAAO,CAAC,MAAM,CAAC,CAI3B;IAED;;;;;OAKG;IACH,UAAU,CAAC,MAAM,EAHN,KAGM,GAFJ,MAAM,CAEiD;IAEpE;;;;OAIG;IACH,sBAAsB,CAAC,MAAM,EAHlB,KAGkB,GAFhB,4BAA4B,CAIxC;IAED;;;;OAIG;IACH,oBAAoB,CAAC,GAAG,EAHb,MAGa,GAFX,IAAI,CAOhB;IAED;;;OAGG;IACH,kBAAkB,IAFL,IAAI,CAMhB;IAED;;;;OAIG;IACH,kBAAkB,CAAC,GAAG,EAHX,MAGW,GAFT,OAAO,CAyCnB;IAED;;;OAGG;IACH,UAAU,IAFG,OAAO,CAInB;IAED;;;;OAIG;IACG,mBAAmB,CAAC,OAAO,AAH9B,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGR,GAFzB,OAAO,CAAC,IAAI,CAAC,CAkBzB;IAED;;;;OAIG;IACG,0BAA0B,CAAC,OAAO,AAHrC,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGD,GAFhC,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;OAGG;IACH,qBAAqB,IAFR,MAAM,CAIlB;IAED;;;;;OAKG;IACG,cAAc,CAAC,aAAa,EAJvB,MAIuB,EAAE,OAAO,AAHxC,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGE,GAFnC,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;;;OAKG;IACG,qBAAqB,CAAC,aAAa,EAJ9B,MAI8B,EAAE,OAAO,AAH/C,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGS,GAF1C,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;;;OAMG;IACG,YAAY,CAAC,SAAS,EALjB,MAKiB,EAAE,aAAa,EAJhC,MAIgC,EAAE,aAAa,EAH/C,MAG+C,GAF7C,OAAO,CAAC,IAAI,CAAC,CAiBzB;IAED;;;;;OAKG;IACG,gBAAgB,CAAC,aAAa,EAJzB,MAIyB,EAAE,OAAO,AAH1C,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGI,GAFrC,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;;;OAKG;IACG,uBAAuB,CAAC,aAAa,EAJhC,MAIgC,EAAE,OAAO,AAHjD,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGW,GAF5C,OAAO,CAAC,IAAI,CAAC,CAgBzB;IAED;;;;;OAKG;IACG,iBAAiB,CAAC,aAAa,EAJ1B,MAI0B,EAAE,OAAO,AAH3C,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGK,GAFtC,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;;;OAKG;IACG,wBAAwB,CAAC,aAAa,EAJjC,MAIiC,EAAE,OAAO,AAHlD,CACA,EADQ,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAGY,GAF7C,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;;OAKG;IACH,UAAM,cAAc,CAAC,MAAM,EAHhB,KAAK,CAAC,OAAO,iBAAiB,EAAE,OAAO,CAGvB,GAFd,OAAO,CAAC,IAAI,CAAC,CAczB;IAED;;;OAGG;IACG,iBAAiB,IAFV,OAAO,CAAC,IAAI,CAAC,CA8BzB;IAED;;;;OAIG;IACG,MAAM,CAAC,IAAI,EAHN,iBAGM,GAFJ,OAAO,CAAC,IAAI,CAAC,CAOzB;IAED;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAHH,iBAGG,GAFD,MAAM,CAIlB;IAED;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAHH,iBAGG,GAFD,MAAM,CAIlB;IAED;;;;OAIG;IACH,kBAAkB,IAFL,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;OAIG;IACH,iBAAiB,IAFJ,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;OAIG;IACG,uBAAuB,CAAC,QAAQ,EAH3B,MAAM,IAGqB,GAFzB,OAAO,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAUlD;IAED;;;;;;;;;OASG;IACG,mBAAmB,CAAC,IAAI,EAJnB,MAImB,EAAE,IAAI,AAHjC,CACA,EADQ;QAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAGI,GAF5B,OAAO,CAAC,OAAO,CAAC,CAQ5B;IAED;;;;;;OAMG;IACH,oBAAoB,CAAC,IAAI,EAJd,MAIc,EAAE,KAAK,AAH7B,CACA,EADQ;QAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAGA,GAFxB,OAAO,CAAC,OAAO,CAAC,CAI5B;IAED;;;;OAIG;IACG,sBAAsB,CAAC,IAAI,EAHtB,MAGsB,GAFpB,OAAO,CAAC,OAAO,CAAC,CAQ5B;IAED;;;;;OAKG;IACH,uBAAuB,CAAC,IAAI,EAHjB,MAGiB,GAFf,OAAO,CAAC,OAAO,CAAC,CAI5B;IAED;;;;OAIG;IACG,mBAAmB,CAAC,IAAI,EAHnB,MAGmB,GAFjB,OAAO,CAAC,OAAO,CAAC,CAY5B;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,IAAI,EAHd,MAGc,GAFZ,OAAO,CAAC,OAAO,CAAC,CAI5B;IAED;;;OAGG;IACG,wBAAwB,IAFjB,OAAO,CAAC,IAAI,CAAC,CAmBzB;IAED;;;;OAIG;IACH,kBAAkB,CAAC,IAAI,EAHZ,MAGY,GAFV,IAAI,CAIhB;IAED;;;;OAIG;IACH,oBAAoB,CAAC,IAAI,EAHd,MAGc,GAFZ,IAAI,CAUhB;IAED;;;;;;;OAOG;IACH,kBAAkB,CAAC,IAAI,EAHZ,MAGY,GAFV,OAAO,CAAC,OAAO,CAAC,CAI5B;CACF"}