agentfootprint 9.2.0 → 9.3.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.
- package/dist/adapters/memory/pgVector.js +731 -0
- package/dist/adapters/memory/pgVector.js.map +1 -0
- package/dist/adapters/memory/s3Vectors.js +628 -0
- package/dist/adapters/memory/s3Vectors.js.map +1 -0
- package/dist/adapters/memory/sqliteVector.js +16 -79
- package/dist/adapters/memory/sqliteVector.js.map +1 -1
- package/dist/embedders/index.js +240 -76
- package/dist/embedders/index.js.map +1 -1
- package/dist/esm/adapters/memory/pgVector.d.ts +243 -0
- package/dist/esm/adapters/memory/pgVector.js +726 -0
- package/dist/esm/adapters/memory/pgVector.js.map +1 -0
- package/dist/esm/adapters/memory/s3Vectors.d.ts +208 -0
- package/dist/esm/adapters/memory/s3Vectors.js +624 -0
- package/dist/esm/adapters/memory/s3Vectors.js.map +1 -0
- package/dist/esm/adapters/memory/sqliteVector.d.ts +5 -27
- package/dist/esm/adapters/memory/sqliteVector.js +10 -73
- package/dist/esm/adapters/memory/sqliteVector.js.map +1 -1
- package/dist/esm/embedders/index.d.ts +99 -19
- package/dist/esm/embedders/index.js +240 -76
- package/dist/esm/embedders/index.js.map +1 -1
- package/dist/esm/lib/embedderMismatch.d.ts +67 -0
- package/dist/esm/lib/embedderMismatch.js +96 -0
- package/dist/esm/lib/embedderMismatch.js.map +1 -0
- package/dist/esm/lib/rag/defineRAG.d.ts +28 -6
- package/dist/esm/lib/rag/defineRAG.js +39 -5
- package/dist/esm/lib/rag/defineRAG.js.map +1 -1
- package/dist/esm/memory/define.js +31 -1
- package/dist/esm/memory/define.js.map +1 -1
- package/dist/esm/memory/define.types.d.ts +13 -2
- package/dist/esm/memory/define.types.js.map +1 -1
- package/dist/esm/memory/embedding/loadRelevant.d.ts +10 -2
- package/dist/esm/memory/embedding/loadRelevant.js +36 -18
- package/dist/esm/memory/embedding/loadRelevant.js.map +1 -1
- package/dist/esm/memory/pipeline/semantic.d.ts +13 -2
- package/dist/esm/memory/pipeline/semantic.js +11 -5
- package/dist/esm/memory/pipeline/semantic.js.map +1 -1
- package/dist/esm/memory/store/capability.d.ts +25 -6
- package/dist/esm/memory/store/capability.js +68 -3
- package/dist/esm/memory/store/capability.js.map +1 -1
- package/dist/esm/memory/store/index.d.ts +1 -0
- package/dist/esm/memory/store/index.js +4 -0
- package/dist/esm/memory/store/index.js.map +1 -1
- package/dist/esm/memory/store/types.d.ts +40 -0
- package/dist/esm/memory-providers.d.ts +7 -4
- package/dist/esm/memory-providers.js +18 -4
- package/dist/esm/memory-providers.js.map +1 -1
- package/dist/lib/embedderMismatch.js +103 -0
- package/dist/lib/embedderMismatch.js.map +1 -0
- package/dist/lib/rag/defineRAG.js +39 -5
- package/dist/lib/rag/defineRAG.js.map +1 -1
- package/dist/memory/define.js +31 -1
- package/dist/memory/define.js.map +1 -1
- package/dist/memory/define.types.js.map +1 -1
- package/dist/memory/embedding/loadRelevant.js +36 -18
- package/dist/memory/embedding/loadRelevant.js.map +1 -1
- package/dist/memory/pipeline/semantic.js +11 -5
- package/dist/memory/pipeline/semantic.js.map +1 -1
- package/dist/memory/store/capability.js +70 -4
- package/dist/memory/store/capability.js.map +1 -1
- package/dist/memory/store/index.js +7 -1
- package/dist/memory/store/index.js.map +1 -1
- package/dist/memory-providers.js +22 -5
- package/dist/memory-providers.js.map +1 -1
- package/dist/types/adapters/memory/pgVector.d.ts +244 -0
- package/dist/types/adapters/memory/pgVector.d.ts.map +1 -0
- package/dist/types/adapters/memory/s3Vectors.d.ts +209 -0
- package/dist/types/adapters/memory/s3Vectors.d.ts.map +1 -0
- package/dist/types/adapters/memory/sqliteVector.d.ts +5 -27
- package/dist/types/adapters/memory/sqliteVector.d.ts.map +1 -1
- package/dist/types/embedders/index.d.ts +99 -19
- package/dist/types/embedders/index.d.ts.map +1 -1
- package/dist/types/lib/embedderMismatch.d.ts +68 -0
- package/dist/types/lib/embedderMismatch.d.ts.map +1 -0
- package/dist/types/lib/rag/defineRAG.d.ts +28 -6
- package/dist/types/lib/rag/defineRAG.d.ts.map +1 -1
- package/dist/types/memory/define.d.ts.map +1 -1
- package/dist/types/memory/define.types.d.ts +13 -2
- package/dist/types/memory/define.types.d.ts.map +1 -1
- package/dist/types/memory/embedding/loadRelevant.d.ts +10 -2
- package/dist/types/memory/embedding/loadRelevant.d.ts.map +1 -1
- package/dist/types/memory/pipeline/semantic.d.ts +13 -2
- package/dist/types/memory/pipeline/semantic.d.ts.map +1 -1
- package/dist/types/memory/store/capability.d.ts +25 -6
- package/dist/types/memory/store/capability.d.ts.map +1 -1
- package/dist/types/memory/store/index.d.ts +1 -0
- package/dist/types/memory/store/index.d.ts.map +1 -1
- package/dist/types/memory/store/types.d.ts +40 -0
- package/dist/types/memory/store/types.d.ts.map +1 -1
- package/dist/types/memory-providers.d.ts +7 -4
- package/dist/types/memory-providers.d.ts.map +1 -1
- package/package.json +9 -1
|
@@ -141,34 +141,12 @@ export declare class UnreadableIndexFileError extends Error {
|
|
|
141
141
|
/**
|
|
142
142
|
* Raised when a vector meets an index built by a different embedder.
|
|
143
143
|
*
|
|
144
|
-
*
|
|
145
|
-
*
|
|
146
|
-
*
|
|
147
|
-
*
|
|
148
|
-
* can tell them apart. So the mismatch is refused where it happens, on both
|
|
149
|
-
* sides:
|
|
150
|
-
*
|
|
151
|
-
* - at **write**, so a second embedder's vectors never enter a namespace;
|
|
152
|
-
* - at **query**, so a swapped embedder never scores against the old ones.
|
|
153
|
-
*
|
|
154
|
-
* The named fix is an explicit re-index — delete the namespace and build it
|
|
155
|
-
* again with one embedder, or point the retriever at a different file. It is
|
|
156
|
-
* never a fallback: silently ignoring the mismatch is the failure, and silently
|
|
157
|
-
* re-embedding somebody's corpus is a bill they did not agree to.
|
|
158
|
-
*
|
|
159
|
-
* `problem` says which half is wrong. `'dimensions'` is arithmetically
|
|
160
|
-
* impossible to score at all; `'model'` would score, and lie.
|
|
144
|
+
* Since 9.3.0 this is ONE class shared by every store that can make the check
|
|
145
|
+
* (`lib/embedderMismatch.ts`), re-exported here so the import path that has
|
|
146
|
+
* worked since 8.9.0 keeps working. A second class of the same name would make
|
|
147
|
+
* `instanceof` depend on which store threw.
|
|
161
148
|
*/
|
|
162
|
-
export
|
|
163
|
-
readonly code: "ERR_EMBEDDER_MISMATCH";
|
|
164
|
-
/** The fingerprint the namespace was built with, `'<id>@<dims>'`. */
|
|
165
|
-
readonly indexed: string;
|
|
166
|
-
/** The fingerprint that just arrived. */
|
|
167
|
-
readonly incoming: string;
|
|
168
|
-
/** Which half disagrees. */
|
|
169
|
-
readonly problem: 'dimensions' | 'model';
|
|
170
|
-
constructor(namespace: string, indexed: string, incoming: string, problem: EmbedderMismatchError['problem'], operation: 'write to' | 'search');
|
|
171
|
-
}
|
|
149
|
+
export { EmbedderMismatchError } from '../../lib/embedderMismatch.js';
|
|
172
150
|
/** A durable vector store, plus the three things a file owns beyond the port. */
|
|
173
151
|
export interface SqliteVectorStore extends MemoryStore {
|
|
174
152
|
/**
|
|
@@ -74,6 +74,7 @@
|
|
|
74
74
|
import { identityNamespace } from '../../memory/identity/index.js';
|
|
75
75
|
import { lazyRequire } from '../../lib/lazyRequire.js';
|
|
76
76
|
import { SqliteUnavailableError } from '../../lib/sqliteUnavailable.js';
|
|
77
|
+
import { EmbedderMismatchError as SharedEmbedderMismatchError, fingerprintConflict, fingerprintText, parseFingerprint, } from '../../lib/embedderMismatch.js';
|
|
77
78
|
// ─── The refusals ────────────────────────────────────────────────────
|
|
78
79
|
/**
|
|
79
80
|
* Raised when the file exists but this runtime cannot use it as a vector index.
|
|
@@ -118,50 +119,12 @@ export class UnreadableIndexFileError extends Error {
|
|
|
118
119
|
/**
|
|
119
120
|
* Raised when a vector meets an index built by a different embedder.
|
|
120
121
|
*
|
|
121
|
-
*
|
|
122
|
-
*
|
|
123
|
-
*
|
|
124
|
-
*
|
|
125
|
-
* can tell them apart. So the mismatch is refused where it happens, on both
|
|
126
|
-
* sides:
|
|
127
|
-
*
|
|
128
|
-
* - at **write**, so a second embedder's vectors never enter a namespace;
|
|
129
|
-
* - at **query**, so a swapped embedder never scores against the old ones.
|
|
130
|
-
*
|
|
131
|
-
* The named fix is an explicit re-index — delete the namespace and build it
|
|
132
|
-
* again with one embedder, or point the retriever at a different file. It is
|
|
133
|
-
* never a fallback: silently ignoring the mismatch is the failure, and silently
|
|
134
|
-
* re-embedding somebody's corpus is a bill they did not agree to.
|
|
135
|
-
*
|
|
136
|
-
* `problem` says which half is wrong. `'dimensions'` is arithmetically
|
|
137
|
-
* impossible to score at all; `'model'` would score, and lie.
|
|
122
|
+
* Since 9.3.0 this is ONE class shared by every store that can make the check
|
|
123
|
+
* (`lib/embedderMismatch.ts`), re-exported here so the import path that has
|
|
124
|
+
* worked since 8.9.0 keeps working. A second class of the same name would make
|
|
125
|
+
* `instanceof` depend on which store threw.
|
|
138
126
|
*/
|
|
139
|
-
export
|
|
140
|
-
code = 'ERR_EMBEDDER_MISMATCH';
|
|
141
|
-
/** The fingerprint the namespace was built with, `'<id>@<dims>'`. */
|
|
142
|
-
indexed;
|
|
143
|
-
/** The fingerprint that just arrived. */
|
|
144
|
-
incoming;
|
|
145
|
-
/** Which half disagrees. */
|
|
146
|
-
problem;
|
|
147
|
-
constructor(namespace, indexed, incoming, problem, operation) {
|
|
148
|
-
super(`[memory] cannot ${operation} the namespace '${namespace}': it was indexed by ` +
|
|
149
|
-
`'${indexed}' and this vector is from '${incoming}'. ` +
|
|
150
|
-
(problem === 'dimensions'
|
|
151
|
-
? `Vectors of different lengths cannot be compared at all. `
|
|
152
|
-
: `Cosine similarity between two embedding spaces is not a weak signal — it is ` +
|
|
153
|
-
`not a signal, and it comes back as a confident number in the same range as a ` +
|
|
154
|
-
`real one, which no threshold can separate. `) +
|
|
155
|
-
`Re-index this namespace with one embedder (delete it and build it again), or ` +
|
|
156
|
-
`point this store at a different file. This refuses rather than re-embedding ` +
|
|
157
|
-
`your corpus on your behalf — that is a bill you did not agree to — and rather ` +
|
|
158
|
-
`than mixing the two, which would silently corrupt every ranking it touched.`);
|
|
159
|
-
this.name = 'EmbedderMismatchError';
|
|
160
|
-
this.indexed = indexed;
|
|
161
|
-
this.incoming = incoming;
|
|
162
|
-
this.problem = problem;
|
|
163
|
-
}
|
|
164
|
-
}
|
|
127
|
+
export { EmbedderMismatchError } from '../../lib/embedderMismatch.js';
|
|
165
128
|
// ─── The schema ──────────────────────────────────────────────────────
|
|
166
129
|
/**
|
|
167
130
|
* What this runtime writes. Bumped only for a change an older reader could not
|
|
@@ -296,7 +259,10 @@ export function sqliteVectorStore(options) {
|
|
|
296
259
|
const stored = parseFingerprint(storedText);
|
|
297
260
|
const conflict = fingerprintConflict(stored, incoming);
|
|
298
261
|
if (conflict !== null) {
|
|
299
|
-
throw new
|
|
262
|
+
throw new SharedEmbedderMismatchError(ns, storedText, fingerprintText(incoming), conflict, operation,
|
|
263
|
+
// This store's own second way out: a namespace lives in a file, so
|
|
264
|
+
// another file is another index.
|
|
265
|
+
'point this store at a different file');
|
|
300
266
|
}
|
|
301
267
|
// Compatible. If the index recorded an anonymous embedder and this vector
|
|
302
268
|
// names one, upgrade the record — a named fingerprint can refuse a future
|
|
@@ -638,35 +604,6 @@ export function sqliteVectorStore(options) {
|
|
|
638
604
|
};
|
|
639
605
|
return store;
|
|
640
606
|
}
|
|
641
|
-
/** `'<id>@<dims>'`, with `'?'` for an embedder that did not name itself. */
|
|
642
|
-
function fingerprintText(fp) {
|
|
643
|
-
return `${fp.id ?? '?'}@${fp.dims}`;
|
|
644
|
-
}
|
|
645
|
-
function parseFingerprint(text) {
|
|
646
|
-
const at = text.lastIndexOf('@');
|
|
647
|
-
const id = at === -1 ? '?' : text.slice(0, at);
|
|
648
|
-
const dims = at === -1 ? 0 : Number(text.slice(at + 1));
|
|
649
|
-
return {
|
|
650
|
-
...(id !== '?' && id !== '' && { id }),
|
|
651
|
-
dims: Number.isFinite(dims) ? dims : 0,
|
|
652
|
-
};
|
|
653
|
-
}
|
|
654
|
-
/**
|
|
655
|
-
* What, if anything, makes these two incompatible.
|
|
656
|
-
*
|
|
657
|
-
* Dimensions always decide: two lengths cannot be compared at all. Model ids
|
|
658
|
-
* decide only when BOTH sides named themselves — an anonymous vector is not
|
|
659
|
-
* evidence of a different embedder, and refusing on absence would break every
|
|
660
|
-
* caller who never passed an `embedderId`, which is most of them.
|
|
661
|
-
*/
|
|
662
|
-
function fingerprintConflict(stored, incoming) {
|
|
663
|
-
if (stored.dims !== incoming.dims)
|
|
664
|
-
return 'dimensions';
|
|
665
|
-
if (stored.id !== undefined && incoming.id !== undefined && stored.id !== incoming.id) {
|
|
666
|
-
return 'model';
|
|
667
|
-
}
|
|
668
|
-
return null;
|
|
669
|
-
}
|
|
670
607
|
function rowToEntry(row) {
|
|
671
608
|
return {
|
|
672
609
|
id: row.id,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqliteVector.js","sourceRoot":"","sources":["../../../../src/adapters/memory/sqliteVector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AA6DxE,wEAAwE;AAExE;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACxC,IAAI,GAAG,2BAAoC,CAAC;IACrD,iCAAiC;IACxB,IAAI,CAAS;IACtB,wCAAwC;IAC/B,OAAO,CAAoD;IAEpE,YAAY,IAAY,EAAE,OAA4C,EAAE,MAAc;QACpF,KAAK,CACH,iCAAiC,IAAI,qBAAqB,MAAM,GAAG;YACjE,iFAAiF;YACjF,4EAA4E;YAC5E,8EAA8E;YAC9E,UAAU;YACV,CAAC,OAAO,KAAK,cAAc;gBACzB,CAAC,CAAC,6EAA6E;oBAC7E,0DAA0D;gBAC5D,CAAC,CAAC,OAAO,KAAK,gBAAgB;oBAC9B,CAAC,CAAC,0EAA0E;wBAC1E,gBAAgB;oBAClB,CAAC,CAAC,wEAAwE,GAAG,UAAU,CAAC,CAC7F,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IACrC,IAAI,GAAG,uBAAgC,CAAC;IACjD,qEAAqE;IAC5D,OAAO,CAAS;IACzB,yCAAyC;IAChC,QAAQ,CAAS;IAC1B,4BAA4B;IACnB,OAAO,CAAyB;IAEzC,YACE,SAAiB,EACjB,OAAe,EACf,QAAgB,EAChB,OAAyC,EACzC,SAAgC;QAEhC,KAAK,CACH,mBAAmB,SAAS,mBAAmB,SAAS,uBAAuB;YAC7E,IAAI,OAAO,8BAA8B,QAAQ,KAAK;YACtD,CAAC,OAAO,KAAK,YAAY;gBACvB,CAAC,CAAC,0DAA0D;gBAC5D,CAAC,CAAC,8EAA8E;oBAC9E,+EAA+E;oBAC/E,6CAA6C,CAAC;YAClD,+EAA+E;YAC/E,8EAA8E;YAC9E,gFAAgF;YAChF,6EAA6E,CAChF,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAED,wEAAwE;AAExE;;;;GAIG;AACH,MAAM,cAAc,GAAG,CAAC,CAAC;AAEzB,MAAM,aAAa,GAAG,YAAY,CAAC;AACnC,MAAM,gBAAgB,GAAG,eAAe,CAAC;AACzC,MAAM,cAAc,GAAG,aAAa,CAAC;AACrC,MAAM,UAAU,GAAG,eAAe,CAAC;AAEnC;;;;;;GAMG;AACH,MAAM,eAAe,GAAG;IACtB,WAAW;IACX,IAAI;IACJ,OAAO;IACP,UAAU;IACV,WAAW;IACX,MAAM;IACN,aAAa;IACb,SAAS;IACT,YAAY;IACZ,YAAY;IACZ,kBAAkB;IAClB,cAAc;IACd,KAAK;IACL,MAAM;IACN,QAAQ;IACR,YAAY;CACJ,CAAC;AAoEX;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAiC;IACjE,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAE/C,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC9C,MAAM,IAAI,SAAS,CACjB,uCAAuC,IAAI,+BAA+B;YACxE,iFAAiF;YACjF,8EAA8E;YAC9E,8EAA8E;YAC9E,0CAA0C,CAC7C,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,IAAI,UAAU,EAAE,CAAC;IACrD,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAE5B,IAAI,EAA4B,CAAC;IACjC,IAAI,CAAC;QACH,EAAE,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,wBAAwB,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC/E,CAAC;IAED,IAAI,WAAmB,CAAC;IACxB,IAAI,CAAC;QACH,WAAW,GAAG,YAAY,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;QAC9C,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACzB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,EAAE,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,GAAG,YAAY,wBAAwB;YAAE,MAAM,GAAG,CAAC;QACvD,MAAM,IAAI,wBAAwB,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC/E,CAAC;IAED,MAAM,IAAI,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAEnC,oFAAoF;IACpF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC3C,2DAA2D;IAC3D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE/C,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,MAAM,IAAI,GAAG,CAAC,IAAY,EAAQ,EAAE;QAClC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACb,sCAAsC,IAAI,6BAA6B,IAAI,IAAI;gBAC7E,0EAA0E;gBAC1E,8EAA8E;gBAC9E,yBAAyB,CAC5B,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,EAAU,EAAsB,EAAE;QACzD,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACpC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAoC,CAAC;QAC3E,IAAI,OAAO,GAAG,EAAE,KAAK,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QACrD,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAChC,OAAO,GAAG,CAAC,KAAK,CAAC;IACnB,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,EAAU,EAAE,EAAU,EAAQ,EAAE;QACzD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACjC,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF;;;;OAIG;IACH,MAAM,oBAAoB,GAAG,CAC3B,EAAU,EACV,QAAqB,EACrB,SAAgC,EAC1B,EAAE;QACR,MAAM,UAAU,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC;QACvC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,IAAI,SAAS,KAAK,UAAU;gBAAE,iBAAiB,CAAC,EAAE,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/E,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACvD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,qBAAqB,CAC7B,EAAE,EACF,UAAU,EACV,eAAe,CAAC,QAAQ,CAAC,EACzB,QAAQ,EACR,SAAS,CACV,CAAC;QACJ,CAAC;QACD,0EAA0E;QAC1E,0EAA0E;QAC1E,iDAAiD;QACjD,IAAI,SAAS,KAAK,UAAU,IAAI,MAAM,CAAC,EAAE,KAAK,SAAS,IAAI,QAAQ,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;YACrF,iBAAiB,CAAC,EAAE,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;QACnD,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,EAAU,EAAE,KAA2B,EAAQ,EAAE;QACnE,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,MAAM,EAAE,CAAC;YACX,oBAAoB,CAClB,EAAE,EACF;gBACE,GAAG,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvE,IAAI,EAAE,MAAM,CAAC,MAAM;aACpB,EACD,UAAU,CACX,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,EAAE,EACF,KAAK,CAAC,EAAE,EACR,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,EACnC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EACpE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAC9B,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAC1B,MAAM;YACJ,CAAC,CAAC,eAAe,CAAC;gBACd,GAAG,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvE,IAAI,EAAE,MAAM,CAAC,MAAM;aACpB,CAAC;YACJ,CAAC,CAAC,IAAI,EACR,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,GAAG,IAAI,IAAI,EACjB,KAAK,CAAC,IAAI,IAAI,IAAI,EAClB,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,EAChE,aAAa,CAAC,KAAK,CAAC,EACpB,KAAK,CAAC,cAAc,IAAI,IAAI,CAC7B,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,CAAC,EAAU,EAAc,EAAE;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1B,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;QAEtB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAO/B,CAAC;QAEJ,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;QACpD,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,MAAM,IAAI,GAA2B,EAAE,CAAC;QACxC,MAAM,KAAK,GAA2B,EAAE,CAAC;QACzC,MAAM,WAAW,GAA2B,EAAE,CAAC;QAC/C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;QAErC,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,uEAAuE;YACvE,qEAAqE;YACrE,6CAA6C;YAC7C,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI;gBAAE,SAAS;YAC9B,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAC3C,IAAI,IAAI,GAAG,CAAC,CAAC;YACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE;gBAAE,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACrE,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,MAAM,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC;YAC1B,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACN,wEAAwE;gBACxE,qEAAqE;gBACrE,yBAAyB;gBACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE;oBAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;YAC3E,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,SAAS,CAAC,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;YAChC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC;YACjD,GAAG,IAAI,CAAC,CAAC;QACX,CAAC;QAED,MAAM,KAAK,GAAe,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;QACtF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACpB,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,KAAK,GAAsB;QAC/B,WAAW;QACX,IAAI;QAEJ,yEAAyE;QACzE,wEAAwE;QACxE,4DAA4D;QAC5D,oBAAoB,EAAE,IAAI;QAE1B,aAAa,CAAC,QAAwB;YACpC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAC7B,OAAO,eAAe,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtD,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,IAAI,CAAC,QAAwB;YACjC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACzB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;YACpD,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC;QAC1E,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,GAAG,CAAc,QAAwB,EAAE,EAAU;YACzD,IAAI,CAAC,eAAe,CAAC,CAAC;YACtB,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAuB,CAAC;YAC1D,IAAI,GAAG,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC;YACnC,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC;YACpC,uEAAuE;YACvE,wEAAwE;YACxE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YACnC,OAAO,UAAU,CAAI,GAAG,CAAC,CAAC;QAC5B,CAAC;QAED,KAAK,CAAC,GAAG,CAAc,QAAwB,EAAE,KAAqB;YACpE,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;QACxC,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,OAAO,CACX,QAAwB,EACxB,OAAkC;YAElC,IAAI,CAAC,eAAe,CAAC,CAAC;YACtB,yEAAyE;YACzE,qDAAqD;YACrD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;YACjC,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAEvC,gEAAgE;YAChE,yEAAyE;YACzE,mEAAmE;YACnE,wEAAwE;YACxE,sEAAsE;YACtE,qDAAqD;YACrD,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACjB,IAAI,CAAC;gBACH,KAAK,MAAM,KAAK,IAAI,OAAO;oBAAE,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;gBACnD,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC;oBACH,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACtB,CAAC;gBAAC,MAAM,CAAC;oBACP,sDAAsD;gBACxD,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAChB,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,YAAY,CAChB,QAAwB,EACxB,KAAqB,EACrB,eAAuB;YAEvB,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACvB,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvC,oEAAoE;YACpE,yEAAyE;YACzE,mBAAmB;YACnB,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAC3B,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAqC,CAAC;gBACrF,MAAM,OAAO,GAAG,GAAG,EAAE,OAAO,CAAC;gBAC7B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1B,IAAI,eAAe,KAAK,CAAC,EAAE,CAAC;wBAC1B,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;wBAClB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;oBAC5B,CAAC;gBACH,CAAC;qBAAM,IAAI,OAAO,KAAK,eAAe,EAAE,CAAC;oBACvC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAClB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;gBACrD,CAAC;gBACD,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;gBACtB,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAClB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC;oBACH,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACtB,CAAC;gBAAC,MAAM,CAAC;oBACP,sDAAsD;gBACxD,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAChB,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,IAAI,CACR,QAAwB,EACxB,WAAyB;YAEzB,IAAI,CAAC,cAAc,CAAC,CAAC;YACrB,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC;YACjE,MAAM,KAAK,GAAG,WAAW,EAAE,MAAM,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,CAAa,CAAC;YAE7D,MAAM,UAAU,GAAG,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC/E,MAAM,IAAI,GAAqB,EAAE,CAAC;YAClC,IAAI,MAA0B,CAAC;YAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;oBAC1B,gEAAgE;oBAChE,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC;oBACnC,MAAM;gBACR,CAAC;gBACD,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,SAAS;gBACjC,IAAI,UAAU,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAa,CAAC,CAAC;oBAAE,SAAS;gBACtF,IAAI,CAAC,IAAI,CAAC,UAAU,CAAI,GAAG,CAAC,CAAC,CAAC;YAChC,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACpE,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,MAAM,CAAC,QAAwB,EAAE,EAAU;YAC/C,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACxB,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACxB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,IAAI,CAAC,QAAwB,EAAE,SAAiB;YACpD,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,KAAK,SAAS,CAAC;QAC7E,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,eAAe,CAAC,QAAwB,EAAE,SAAiB;YAC/D,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAC3B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;QAChE,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,QAAQ,CAAC,QAAwB,EAAE,EAAU,EAAE,UAAkB;YACrE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACxB,sEAAsE;YACtE,mCAAmC;YACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,OAAO;YACzC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;QACjE,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,WAAW,CACf,QAAwB,EACxB,EAAU;YAEV,IAAI,CAAC,eAAe,CAAC,CAAC;YACtB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,EAAE,CAEpD,CAAC;YACd,MAAM,KAAK,GAAG,GAAG,EAAE,KAAK,IAAI,CAAC,CAAC;YAC9B,IAAI,KAAK,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC7B,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,IAAI,CAAC,CAAC,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC;QACvD,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,MAAM,CAAC,QAAwB;YACnC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAC3B,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACjB,IAAI,CAAC;gBACH,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC3B,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC9B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC5B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAChC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC;oBACH,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACtB,CAAC;gBAAC,MAAM,CAAC;oBACP,sDAAsD;gBACxD,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChB,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,MAAM,CACV,QAAwB,EACxB,KAAwB,EACxB,aAA6B;YAE7B,IAAI,CAAC,QAAQ,CAAC,CAAC;YACf,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAE1D,wEAAwE;YACxE,0EAA0E;YAC1E,kEAAkE;YAClE,oBAAoB,CAClB,EAAE,EACF;gBACE,GAAG,CAAC,aAAa,EAAE,UAAU,KAAK,SAAS,IAAI,EAAE,EAAE,EAAE,aAAa,CAAC,UAAU,EAAE,CAAC;gBAChF,IAAI,EAAE,KAAK,CAAC,MAAM;aACnB,EACD,QAAQ,CACT,CAAC;YAEF,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;YAC3B,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAC5D,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM;gBAAE,OAAO,EAAE,CAAC;YAE5C,wEAAwE;YACxE,4CAA4C;YAC5C,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,KAAK,MAAM,CAAC,IAAI,KAAK;gBAAE,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC;YACtC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,KAAK,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE;gBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC;YAEtE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,UAAU,GAAG,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACnF,MAAM,UAAU,GAAG,aAAa,EAAE,UAAU,CAAC;YAC7C,MAAM,QAAQ,GAAG,aAAa,EAAE,QAAQ,CAAC;YACzC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;YAErC,MAAM,MAAM,GAAoC,EAAE,CAAC;YACnD,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC;gBAC1C,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,SAAS;gBACzC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,IAAI,GAAG;oBAAE,SAAS;gBAC9C,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC/B,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAa,CAAC;wBAAE,SAAS;gBACrE,CAAC;gBACD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;oBAC5C,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,UAAU;wBAAE,SAAS;gBACxE,CAAC;gBACD,MAAM,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC;gBAC1B,IAAI,GAAG,GAAG,CAAC,CAAC;gBACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE;oBAAE,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC9E,IAAI,QAAQ,KAAK,SAAS,IAAI,GAAG,GAAG,QAAQ;oBAAE,SAAS;gBACvD,oEAAoE;gBACpE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,GAAG,CAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YAC7C,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACnB,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK;oBAAE,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;gBAClD,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC;YAEH,oEAAoE;YACpE,qEAAqE;YACrE,wCAAwC;YACxC,MAAM,GAAG,GAAqB,EAAE,CAAC;YACjC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBACrC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAuB,CAAC;gBAC9D,IAAI,GAAG,KAAK,SAAS;oBAAE,SAAS;gBAChC,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,CAAI,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;YAC5D,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC;QAED,KAAK;YACH,IAAI,MAAM;gBAAE,OAAO;YACnB,MAAM,GAAG,IAAI,CAAC;YACd,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC;KACF,CAAC;IAEF,OAAO,KAAK,CAAC;AACf,CAAC;AASD,4EAA4E;AAC5E,SAAS,eAAe,CAAC,EAAe;IACtC,OAAO,GAAG,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;AACtC,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY;IACpC,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACjC,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IACxD,OAAO;QACL,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACtC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACvC,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,mBAAmB,CAC1B,MAAmB,EACnB,QAAqB;IAErB,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI;QAAE,OAAO,YAAY,CAAC;IACvD,IAAI,MAAM,CAAC,EAAE,KAAK,SAAS,IAAI,QAAQ,CAAC,EAAE,KAAK,SAAS,IAAI,MAAM,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,EAAE,CAAC;QACtF,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAqBD,SAAS,UAAU,CAAI,GAAW;IAChC,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,KAAK,CAAM;QAChC,GAAG,CAAC,GAAG,CAAC,QAAQ,KAAK,IAAI,IAAI;YAC3B,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,QAAQ,CAA4B;SAC7D,CAAC;QACF,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,cAAc,EAAE,GAAG,CAAC,gBAAgB;QACpC,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;QACzC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,IAA+B,EAAE,CAAC;QACvE,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,IAAI,IAAI;YACzB,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,MAAM,CAA6B;SAC1D,CAAC;QACF,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,IAAI;YACxB,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAClF,GAAG,CAAC,GAAG,CAAC,eAAe,KAAK,IAAI,IAAI,EAAE,cAAc,EAAE,GAAG,CAAC,eAAe,EAAE,CAAC;KAC7E,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,IAAY;IAC7B,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,yEAAyE;QACzE,uEAAuE;QACvE,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,GAAkB;IACnC,OAAO,GAAG,KAAK,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;AAC3C,CAAC;AAED,uFAAuF;AACvF,SAAS,aAAa,CAAC,KAA2B;IAChD,MAAM,KAAK,GAAG,KAAK,CAAC,KAA2D,CAAC;IAChF,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAwC,CAAC;IACxF,MAAM,GAAG,GAAG,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC;IACjD,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAChE,CAAC;AAED,wEAAwE;AAExE,SAAS,SAAS,CAAC,SAAwC;IACzD,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3D,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,GAAG,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACtE,OAAO,GAAG,CAAC;AACb,CAAC;AAED,qFAAqF;AACrF,SAAS,MAAM,CAAC,MAAoB;IAClC,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,WAAW,CAAC,IAAgB,EAAE,IAAY;IACjD,yEAAyE;IACzE,uEAAuE;IACvE,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC;IAC7F,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAClC,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,wEAAwE;AAExE,SAAS,UAAU;IACjB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,WAAW,CAA2C,aAAa,CAAC,CAAC;QACjF,IAAI,OAAO,GAAG,EAAE,YAAY,KAAK,UAAU,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,GAAG,CAAC,YAAY,CAAC;IAC1B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,sBAAsB,CAAC,WAAW,EAAE,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE;YAC7D,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,qBAAqB;YAC9B,WAAW,EACT,yHAAyH;YAC3H,cAAc,EACZ,6HAA6H;SAChI,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,WAAW;IAClB,OAAO,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;QAC1E,CAAC,CAAC,OAAO,CAAC,OAAO;QACjB,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY;IACzC,IAAI,CAAC;QACH,MAAM,EAAE,SAAS,EAAE,GAAG,WAAW,CAA2B,SAAS,CAAC,CAAC;QACvE,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAA6B,WAAW,CAAC,CAAC;QACzE,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,oEAAoE;IACtE,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,EAA4B,EAAE,aAAqB;IACvE,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC,GAAG,EAE1C,CAAC;IACd,4EAA4E;IAC5E,wEAAwE;IACxE,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9F,EAAE,CAAC,IAAI,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAC;IAC3C,4EAA4E;IAC5E,2EAA2E;IAC3E,kEAAkE;IAClE,mCAAmC;IACnC,EAAE,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IACvC,OAAO,OAAO,GAAG,EAAE,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9E,CAAC;AAED,SAAS,YAAY,CAAC,EAA4B,EAAE,IAAY;IAC9D,EAAE,CAAC,IAAI,CACL,8BAA8B,aAAa,IAAI;QAC7C,iFAAiF;QACjF,qFAAqF;QACrF,4DAA4D;QAC5D,oEAAoE;QACpE,8EAA8E;QAC9E,qCAAqC,CACxC,CAAC;IACF,uEAAuE;IACvE,wEAAwE;IACxE,sEAAsE;IACtE,yEAAyE;IACzE,sEAAsE;IACtE,0EAA0E;IAC1E,qCAAqC;IACrC,MAAM,OAAO,GACX,EAAE,CAAC,OAAO,CAAC,sBAAsB,aAAa,IAAI,CAAC,CAAC,GAAG,EACxD,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7B,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1E,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,wBAAwB,CAChC,IAAI,EACJ,gBAAgB,EAChB,cAAc,aAAa,mCAAmC;YAC5D,YAAY,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,IAAI,CAC/E,CAAC;IACJ,CAAC;IAED,EAAE,CAAC,IAAI,CAAC,8BAA8B,aAAa,UAAU,aAAa,aAAa,CAAC,CAAC;IACzF,EAAE,CAAC,IAAI,CACL,8BAA8B,aAAa,WAAW,aAAa,yBAAyB,CAC7F,CAAC;IACF,EAAE,CAAC,IAAI,CACL,8BAA8B,gBAAgB,IAAI;QAChD,8FAA8F,CACjG,CAAC;IACF,EAAE,CAAC,IAAI,CACL,8BAA8B,cAAc,IAAI;QAC9C,0FAA0F;QAC1F,qCAAqC,CACxC,CAAC;IACF,EAAE,CAAC,IAAI,CACL,8BAA8B,UAAU,qDAAqD,CAC9F,CAAC;IAEF,MAAM,MAAM,GAAG,EAAE;SACd,OAAO,CAAC,qBAAqB,UAAU,+BAA+B,CAAC;SACvE,GAAG,EAAqC,CAAC;IAC5C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,EAAE,CAAC,OAAO,CAAC,eAAe,UAAU,4CAA4C,CAAC,CAAC,GAAG,CACnF,MAAM,CAAC,cAAc,CAAC,CACvB,CAAC;QACF,OAAO;IACT,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,cAAc,EAAE,CAAC;QACtD,MAAM,IAAI,wBAAwB,CAChC,IAAI,EACJ,cAAc,EACd,sCAAsC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB;YAC5E,iBAAiB,cAAc,GAAG,CACrC,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,EAA4B;IACrD,MAAM,aAAa,GACjB,yEAAyE;QACzE,oEAAoE,CAAC;IACvE,OAAO;QACL,MAAM,EAAE,EAAE,CAAC,OAAO,CAChB,eAAe,aAAa,qDAAqD;YAC/E,gFAAgF;YAChF,kDAAkD;YAClD,6DAA6D;YAC7D,mEAAmE;YACnE,sFAAsF;YACtF,kEAAkE;YAClE,sEAAsE;YACtE,sFAAsF;YACtF,sEAAsE;YACtE,8EAA8E,CACjF;QACD,MAAM,EAAE,EAAE,CAAC,OAAO,CAChB,UAAU,aAAa,SAAS,aAAa,iCAAiC,CAC/E;QACD,aAAa,EAAE,EAAE,CAAC,OAAO,CACvB,uBAAuB,aAAa,iCAAiC,CACtE;QACD,IAAI,EAAE,EAAE,CAAC,OAAO,CACd,UAAU,aAAa,SAAS,aAAa,kCAAkC;YAC7E,qBAAqB,CACxB;QACD,SAAS,EAAE,EAAE,CAAC,OAAO,CACnB,+DAA+D,aAAa,GAAG;YAC7E,2DAA2D,CAC9D;QACD,KAAK,EAAE,EAAE,CAAC,OAAO,CACf,UAAU,aAAa,6DAA6D;YAClF,gCAAgC,CACnC;QACD,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,aAAa,iCAAiC,CAAC;QACjF,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,iBAAiB,gBAAgB,wCAAwC,CAAC;QAC3F,YAAY,EAAE,EAAE,CAAC,OAAO,CACtB,eAAe,gBAAgB,wCAAwC;YACrE,8CAA8C,CACjD;QACD,WAAW,EAAE,EAAE,CAAC,OAAO,CACrB,eAAe,cAAc,qDAAqD;YAChF,2EAA2E;YAC3E,mBAAmB,CACtB;QACD,YAAY,EAAE,EAAE,CAAC,OAAO,CACtB,4BAA4B,cAAc,iCAAiC,CAC5E;QACD,aAAa,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,aAAa,sBAAsB,CAAC;QAC7E,gBAAgB,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,gBAAgB,sBAAsB,CAAC;QACnF,cAAc,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,cAAc,sBAAsB,CAAC;QAC/E,UAAU,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,UAAU,gBAAgB,CAAC;QACjE,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,qBAAqB,UAAU,gBAAgB,CAAC;QACnE,OAAO,EAAE,EAAE,CAAC,OAAO,CACjB,eAAe,UAAU,8BAA8B;YACrD,uDAAuD,CAC1D;KACF,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,SAAS,QAAQ,CAAC,GAAY;IAC5B,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC"}
|
|
1
|
+
{"version":3,"file":"sqliteVector.js","sourceRoot":"","sources":["../../../../src/adapters/memory/sqliteVector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EACL,qBAAqB,IAAI,2BAA2B,EACpD,mBAAmB,EACnB,eAAe,EACf,gBAAgB,GAEjB,MAAM,+BAA+B,CAAC;AA6DvC,wEAAwE;AAExE;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACxC,IAAI,GAAG,2BAAoC,CAAC;IACrD,iCAAiC;IACxB,IAAI,CAAS;IACtB,wCAAwC;IAC/B,OAAO,CAAoD;IAEpE,YAAY,IAAY,EAAE,OAA4C,EAAE,MAAc;QACpF,KAAK,CACH,iCAAiC,IAAI,qBAAqB,MAAM,GAAG;YACjE,iFAAiF;YACjF,4EAA4E;YAC5E,8EAA8E;YAC9E,UAAU;YACV,CAAC,OAAO,KAAK,cAAc;gBACzB,CAAC,CAAC,6EAA6E;oBAC7E,0DAA0D;gBAC5D,CAAC,CAAC,OAAO,KAAK,gBAAgB;oBAC9B,CAAC,CAAC,0EAA0E;wBAC1E,gBAAgB;oBAClB,CAAC,CAAC,wEAAwE,GAAG,UAAU,CAAC,CAC7F,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAED;;;;;;;GAOG;AACH,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,wEAAwE;AAExE;;;;GAIG;AACH,MAAM,cAAc,GAAG,CAAC,CAAC;AAEzB,MAAM,aAAa,GAAG,YAAY,CAAC;AACnC,MAAM,gBAAgB,GAAG,eAAe,CAAC;AACzC,MAAM,cAAc,GAAG,aAAa,CAAC;AACrC,MAAM,UAAU,GAAG,eAAe,CAAC;AAEnC;;;;;;GAMG;AACH,MAAM,eAAe,GAAG;IACtB,WAAW;IACX,IAAI;IACJ,OAAO;IACP,UAAU;IACV,WAAW;IACX,MAAM;IACN,aAAa;IACb,SAAS;IACT,YAAY;IACZ,YAAY;IACZ,kBAAkB;IAClB,cAAc;IACd,KAAK;IACL,MAAM;IACN,QAAQ;IACR,YAAY;CACJ,CAAC;AAoEX;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAiC;IACjE,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAE/C,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC9C,MAAM,IAAI,SAAS,CACjB,uCAAuC,IAAI,+BAA+B;YACxE,iFAAiF;YACjF,8EAA8E;YAC9E,8EAA8E;YAC9E,0CAA0C,CAC7C,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,IAAI,UAAU,EAAE,CAAC;IACrD,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAE5B,IAAI,EAA4B,CAAC;IACjC,IAAI,CAAC;QACH,EAAE,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,wBAAwB,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC/E,CAAC;IAED,IAAI,WAAmB,CAAC;IACxB,IAAI,CAAC;QACH,WAAW,GAAG,YAAY,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;QAC9C,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACzB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,EAAE,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,GAAG,YAAY,wBAAwB;YAAE,MAAM,GAAG,CAAC;QACvD,MAAM,IAAI,wBAAwB,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC/E,CAAC;IAED,MAAM,IAAI,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAEnC,oFAAoF;IACpF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC3C,2DAA2D;IAC3D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE/C,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,MAAM,IAAI,GAAG,CAAC,IAAY,EAAQ,EAAE;QAClC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACb,sCAAsC,IAAI,6BAA6B,IAAI,IAAI;gBAC7E,0EAA0E;gBAC1E,8EAA8E;gBAC9E,yBAAyB,CAC5B,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,EAAU,EAAsB,EAAE;QACzD,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACpC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAoC,CAAC;QAC3E,IAAI,OAAO,GAAG,EAAE,KAAK,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QACrD,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAChC,OAAO,GAAG,CAAC,KAAK,CAAC;IACnB,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,EAAU,EAAE,EAAU,EAAQ,EAAE;QACzD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACjC,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF;;;;OAIG;IACH,MAAM,oBAAoB,GAAG,CAC3B,EAAU,EACV,QAAqB,EACrB,SAAgC,EAC1B,EAAE;QACR,MAAM,UAAU,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC;QACvC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,IAAI,SAAS,KAAK,UAAU;gBAAE,iBAAiB,CAAC,EAAE,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/E,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACvD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,2BAA2B,CACnC,EAAE,EACF,UAAU,EACV,eAAe,CAAC,QAAQ,CAAC,EACzB,QAAQ,EACR,SAAS;YACT,mEAAmE;YACnE,iCAAiC;YACjC,sCAAsC,CACvC,CAAC;QACJ,CAAC;QACD,0EAA0E;QAC1E,0EAA0E;QAC1E,iDAAiD;QACjD,IAAI,SAAS,KAAK,UAAU,IAAI,MAAM,CAAC,EAAE,KAAK,SAAS,IAAI,QAAQ,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;YACrF,iBAAiB,CAAC,EAAE,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;QACnD,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,EAAU,EAAE,KAA2B,EAAQ,EAAE;QACnE,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,MAAM,EAAE,CAAC;YACX,oBAAoB,CAClB,EAAE,EACF;gBACE,GAAG,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvE,IAAI,EAAE,MAAM,CAAC,MAAM;aACpB,EACD,UAAU,CACX,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,EAAE,EACF,KAAK,CAAC,EAAE,EACR,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,EACnC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EACpE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAC9B,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAC1B,MAAM;YACJ,CAAC,CAAC,eAAe,CAAC;gBACd,GAAG,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvE,IAAI,EAAE,MAAM,CAAC,MAAM;aACpB,CAAC;YACJ,CAAC,CAAC,IAAI,EACR,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,GAAG,IAAI,IAAI,EACjB,KAAK,CAAC,IAAI,IAAI,IAAI,EAClB,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,EAChE,aAAa,CAAC,KAAK,CAAC,EACpB,KAAK,CAAC,cAAc,IAAI,IAAI,CAC7B,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,CAAC,EAAU,EAAc,EAAE;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1B,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;QAEtB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAO/B,CAAC;QAEJ,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;QACpD,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,MAAM,IAAI,GAA2B,EAAE,CAAC;QACxC,MAAM,KAAK,GAA2B,EAAE,CAAC;QACzC,MAAM,WAAW,GAA2B,EAAE,CAAC;QAC/C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;QAErC,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,uEAAuE;YACvE,qEAAqE;YACrE,6CAA6C;YAC7C,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI;gBAAE,SAAS;YAC9B,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAC3C,IAAI,IAAI,GAAG,CAAC,CAAC;YACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE;gBAAE,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACrE,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,MAAM,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC;YAC1B,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACN,wEAAwE;gBACxE,qEAAqE;gBACrE,yBAAyB;gBACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE;oBAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;YAC3E,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,SAAS,CAAC,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;YAChC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC;YACjD,GAAG,IAAI,CAAC,CAAC;QACX,CAAC;QAED,MAAM,KAAK,GAAe,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;QACtF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACpB,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,KAAK,GAAsB;QAC/B,WAAW;QACX,IAAI;QAEJ,yEAAyE;QACzE,wEAAwE;QACxE,4DAA4D;QAC5D,oBAAoB,EAAE,IAAI;QAE1B,aAAa,CAAC,QAAwB;YACpC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAC7B,OAAO,eAAe,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtD,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,IAAI,CAAC,QAAwB;YACjC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACzB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;YACpD,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC;QAC1E,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,GAAG,CAAc,QAAwB,EAAE,EAAU;YACzD,IAAI,CAAC,eAAe,CAAC,CAAC;YACtB,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAuB,CAAC;YAC1D,IAAI,GAAG,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC;YACnC,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC;YACpC,uEAAuE;YACvE,wEAAwE;YACxE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YACnC,OAAO,UAAU,CAAI,GAAG,CAAC,CAAC;QAC5B,CAAC;QAED,KAAK,CAAC,GAAG,CAAc,QAAwB,EAAE,KAAqB;YACpE,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;QACxC,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,OAAO,CACX,QAAwB,EACxB,OAAkC;YAElC,IAAI,CAAC,eAAe,CAAC,CAAC;YACtB,yEAAyE;YACzE,qDAAqD;YACrD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;YACjC,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAEvC,gEAAgE;YAChE,yEAAyE;YACzE,mEAAmE;YACnE,wEAAwE;YACxE,sEAAsE;YACtE,qDAAqD;YACrD,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACjB,IAAI,CAAC;gBACH,KAAK,MAAM,KAAK,IAAI,OAAO;oBAAE,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;gBACnD,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC;oBACH,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACtB,CAAC;gBAAC,MAAM,CAAC;oBACP,sDAAsD;gBACxD,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAChB,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,YAAY,CAChB,QAAwB,EACxB,KAAqB,EACrB,eAAuB;YAEvB,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACvB,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvC,oEAAoE;YACpE,yEAAyE;YACzE,mBAAmB;YACnB,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAC3B,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAqC,CAAC;gBACrF,MAAM,OAAO,GAAG,GAAG,EAAE,OAAO,CAAC;gBAC7B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1B,IAAI,eAAe,KAAK,CAAC,EAAE,CAAC;wBAC1B,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;wBAClB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;oBAC5B,CAAC;gBACH,CAAC;qBAAM,IAAI,OAAO,KAAK,eAAe,EAAE,CAAC;oBACvC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAClB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;gBACrD,CAAC;gBACD,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;gBACtB,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAClB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC;oBACH,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACtB,CAAC;gBAAC,MAAM,CAAC;oBACP,sDAAsD;gBACxD,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAChB,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,IAAI,CACR,QAAwB,EACxB,WAAyB;YAEzB,IAAI,CAAC,cAAc,CAAC,CAAC;YACrB,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC;YACjE,MAAM,KAAK,GAAG,WAAW,EAAE,MAAM,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,CAAa,CAAC;YAE7D,MAAM,UAAU,GAAG,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC/E,MAAM,IAAI,GAAqB,EAAE,CAAC;YAClC,IAAI,MAA0B,CAAC;YAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;oBAC1B,gEAAgE;oBAChE,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC;oBACnC,MAAM;gBACR,CAAC;gBACD,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,SAAS;gBACjC,IAAI,UAAU,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAa,CAAC,CAAC;oBAAE,SAAS;gBACtF,IAAI,CAAC,IAAI,CAAC,UAAU,CAAI,GAAG,CAAC,CAAC,CAAC;YAChC,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACpE,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,MAAM,CAAC,QAAwB,EAAE,EAAU;YAC/C,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACxB,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACxB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,IAAI,CAAC,QAAwB,EAAE,SAAiB;YACpD,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,KAAK,SAAS,CAAC;QAC7E,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,eAAe,CAAC,QAAwB,EAAE,SAAiB;YAC/D,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAC3B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;QAChE,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,QAAQ,CAAC,QAAwB,EAAE,EAAU,EAAE,UAAkB;YACrE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACxB,sEAAsE;YACtE,mCAAmC;YACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,OAAO;YACzC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;QACjE,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,WAAW,CACf,QAAwB,EACxB,EAAU;YAEV,IAAI,CAAC,eAAe,CAAC,CAAC;YACtB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,EAAE,CAEpD,CAAC;YACd,MAAM,KAAK,GAAG,GAAG,EAAE,KAAK,IAAI,CAAC,CAAC;YAC9B,IAAI,KAAK,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC7B,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,IAAI,CAAC,CAAC,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC;QACvD,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,MAAM,CAAC,QAAwB;YACnC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAC3B,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACjB,IAAI,CAAC;gBACH,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC3B,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC9B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC5B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAChC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC;oBACH,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACtB,CAAC;gBAAC,MAAM,CAAC;oBACP,sDAAsD;gBACxD,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChB,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC;QAED,4DAA4D;QAC5D,KAAK,CAAC,MAAM,CACV,QAAwB,EACxB,KAAwB,EACxB,aAA6B;YAE7B,IAAI,CAAC,QAAQ,CAAC,CAAC;YACf,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAE1D,wEAAwE;YACxE,0EAA0E;YAC1E,kEAAkE;YAClE,oBAAoB,CAClB,EAAE,EACF;gBACE,GAAG,CAAC,aAAa,EAAE,UAAU,KAAK,SAAS,IAAI,EAAE,EAAE,EAAE,aAAa,CAAC,UAAU,EAAE,CAAC;gBAChF,IAAI,EAAE,KAAK,CAAC,MAAM;aACnB,EACD,QAAQ,CACT,CAAC;YAEF,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;YAC3B,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAC5D,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM;gBAAE,OAAO,EAAE,CAAC;YAE5C,wEAAwE;YACxE,4CAA4C;YAC5C,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,KAAK,MAAM,CAAC,IAAI,KAAK;gBAAE,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC;YACtC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,KAAK,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE;gBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC;YAEtE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,UAAU,GAAG,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACnF,MAAM,UAAU,GAAG,aAAa,EAAE,UAAU,CAAC;YAC7C,MAAM,QAAQ,GAAG,aAAa,EAAE,QAAQ,CAAC;YACzC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;YAErC,MAAM,MAAM,GAAoC,EAAE,CAAC;YACnD,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC;gBAC1C,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,SAAS;gBACzC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,IAAI,GAAG;oBAAE,SAAS;gBAC9C,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC/B,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAa,CAAC;wBAAE,SAAS;gBACrE,CAAC;gBACD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;oBAC5C,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,UAAU;wBAAE,SAAS;gBACxE,CAAC;gBACD,MAAM,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC;gBAC1B,IAAI,GAAG,GAAG,CAAC,CAAC;gBACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE;oBAAE,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC9E,IAAI,QAAQ,KAAK,SAAS,IAAI,GAAG,GAAG,QAAQ;oBAAE,SAAS;gBACvD,oEAAoE;gBACpE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,GAAG,CAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YAC7C,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACnB,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK;oBAAE,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;gBAClD,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC;YAEH,oEAAoE;YACpE,qEAAqE;YACrE,wCAAwC;YACxC,MAAM,GAAG,GAAqB,EAAE,CAAC;YACjC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBACrC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAuB,CAAC;gBAC9D,IAAI,GAAG,KAAK,SAAS;oBAAE,SAAS;gBAChC,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,CAAI,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;YAC5D,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC;QAED,KAAK;YACH,IAAI,MAAM;gBAAE,OAAO;YACnB,MAAM,GAAG,IAAI,CAAC;YACd,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC;KACF,CAAC;IAEF,OAAO,KAAK,CAAC;AACf,CAAC;AA6BD,SAAS,UAAU,CAAI,GAAW;IAChC,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,KAAK,CAAM;QAChC,GAAG,CAAC,GAAG,CAAC,QAAQ,KAAK,IAAI,IAAI;YAC3B,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,QAAQ,CAA4B;SAC7D,CAAC;QACF,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,cAAc,EAAE,GAAG,CAAC,gBAAgB;QACpC,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;QACzC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,IAA+B,EAAE,CAAC;QACvE,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,IAAI,IAAI;YACzB,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,MAAM,CAA6B;SAC1D,CAAC;QACF,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,IAAI;YACxB,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAClF,GAAG,CAAC,GAAG,CAAC,eAAe,KAAK,IAAI,IAAI,EAAE,cAAc,EAAE,GAAG,CAAC,eAAe,EAAE,CAAC;KAC7E,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,IAAY;IAC7B,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,yEAAyE;QACzE,uEAAuE;QACvE,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,GAAkB;IACnC,OAAO,GAAG,KAAK,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;AAC3C,CAAC;AAED,uFAAuF;AACvF,SAAS,aAAa,CAAC,KAA2B;IAChD,MAAM,KAAK,GAAG,KAAK,CAAC,KAA2D,CAAC;IAChF,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAwC,CAAC;IACxF,MAAM,GAAG,GAAG,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC;IACjD,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAChE,CAAC;AAED,wEAAwE;AAExE,SAAS,SAAS,CAAC,SAAwC;IACzD,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3D,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,GAAG,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACtE,OAAO,GAAG,CAAC;AACb,CAAC;AAED,qFAAqF;AACrF,SAAS,MAAM,CAAC,MAAoB;IAClC,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,WAAW,CAAC,IAAgB,EAAE,IAAY;IACjD,yEAAyE;IACzE,uEAAuE;IACvE,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC;IAC7F,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAClC,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,wEAAwE;AAExE,SAAS,UAAU;IACjB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,WAAW,CAA2C,aAAa,CAAC,CAAC;QACjF,IAAI,OAAO,GAAG,EAAE,YAAY,KAAK,UAAU,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,GAAG,CAAC,YAAY,CAAC;IAC1B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,sBAAsB,CAAC,WAAW,EAAE,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE;YAC7D,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,qBAAqB;YAC9B,WAAW,EACT,yHAAyH;YAC3H,cAAc,EACZ,6HAA6H;SAChI,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,WAAW;IAClB,OAAO,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;QAC1E,CAAC,CAAC,OAAO,CAAC,OAAO;QACjB,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY;IACzC,IAAI,CAAC;QACH,MAAM,EAAE,SAAS,EAAE,GAAG,WAAW,CAA2B,SAAS,CAAC,CAAC;QACvE,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAA6B,WAAW,CAAC,CAAC;QACzE,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,oEAAoE;IACtE,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,EAA4B,EAAE,aAAqB;IACvE,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC,GAAG,EAE1C,CAAC;IACd,4EAA4E;IAC5E,wEAAwE;IACxE,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9F,EAAE,CAAC,IAAI,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAC;IAC3C,4EAA4E;IAC5E,2EAA2E;IAC3E,kEAAkE;IAClE,mCAAmC;IACnC,EAAE,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IACvC,OAAO,OAAO,GAAG,EAAE,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9E,CAAC;AAED,SAAS,YAAY,CAAC,EAA4B,EAAE,IAAY;IAC9D,EAAE,CAAC,IAAI,CACL,8BAA8B,aAAa,IAAI;QAC7C,iFAAiF;QACjF,qFAAqF;QACrF,4DAA4D;QAC5D,oEAAoE;QACpE,8EAA8E;QAC9E,qCAAqC,CACxC,CAAC;IACF,uEAAuE;IACvE,wEAAwE;IACxE,sEAAsE;IACtE,yEAAyE;IACzE,sEAAsE;IACtE,0EAA0E;IAC1E,qCAAqC;IACrC,MAAM,OAAO,GACX,EAAE,CAAC,OAAO,CAAC,sBAAsB,aAAa,IAAI,CAAC,CAAC,GAAG,EACxD,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7B,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1E,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,wBAAwB,CAChC,IAAI,EACJ,gBAAgB,EAChB,cAAc,aAAa,mCAAmC;YAC5D,YAAY,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,IAAI,CAC/E,CAAC;IACJ,CAAC;IAED,EAAE,CAAC,IAAI,CAAC,8BAA8B,aAAa,UAAU,aAAa,aAAa,CAAC,CAAC;IACzF,EAAE,CAAC,IAAI,CACL,8BAA8B,aAAa,WAAW,aAAa,yBAAyB,CAC7F,CAAC;IACF,EAAE,CAAC,IAAI,CACL,8BAA8B,gBAAgB,IAAI;QAChD,8FAA8F,CACjG,CAAC;IACF,EAAE,CAAC,IAAI,CACL,8BAA8B,cAAc,IAAI;QAC9C,0FAA0F;QAC1F,qCAAqC,CACxC,CAAC;IACF,EAAE,CAAC,IAAI,CACL,8BAA8B,UAAU,qDAAqD,CAC9F,CAAC;IAEF,MAAM,MAAM,GAAG,EAAE;SACd,OAAO,CAAC,qBAAqB,UAAU,+BAA+B,CAAC;SACvE,GAAG,EAAqC,CAAC;IAC5C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,EAAE,CAAC,OAAO,CAAC,eAAe,UAAU,4CAA4C,CAAC,CAAC,GAAG,CACnF,MAAM,CAAC,cAAc,CAAC,CACvB,CAAC;QACF,OAAO;IACT,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,cAAc,EAAE,CAAC;QACtD,MAAM,IAAI,wBAAwB,CAChC,IAAI,EACJ,cAAc,EACd,sCAAsC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB;YAC5E,iBAAiB,cAAc,GAAG,CACrC,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,EAA4B;IACrD,MAAM,aAAa,GACjB,yEAAyE;QACzE,oEAAoE,CAAC;IACvE,OAAO;QACL,MAAM,EAAE,EAAE,CAAC,OAAO,CAChB,eAAe,aAAa,qDAAqD;YAC/E,gFAAgF;YAChF,kDAAkD;YAClD,6DAA6D;YAC7D,mEAAmE;YACnE,sFAAsF;YACtF,kEAAkE;YAClE,sEAAsE;YACtE,sFAAsF;YACtF,sEAAsE;YACtE,8EAA8E,CACjF;QACD,MAAM,EAAE,EAAE,CAAC,OAAO,CAChB,UAAU,aAAa,SAAS,aAAa,iCAAiC,CAC/E;QACD,aAAa,EAAE,EAAE,CAAC,OAAO,CACvB,uBAAuB,aAAa,iCAAiC,CACtE;QACD,IAAI,EAAE,EAAE,CAAC,OAAO,CACd,UAAU,aAAa,SAAS,aAAa,kCAAkC;YAC7E,qBAAqB,CACxB;QACD,SAAS,EAAE,EAAE,CAAC,OAAO,CACnB,+DAA+D,aAAa,GAAG;YAC7E,2DAA2D,CAC9D;QACD,KAAK,EAAE,EAAE,CAAC,OAAO,CACf,UAAU,aAAa,6DAA6D;YAClF,gCAAgC,CACnC;QACD,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,aAAa,iCAAiC,CAAC;QACjF,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,iBAAiB,gBAAgB,wCAAwC,CAAC;QAC3F,YAAY,EAAE,EAAE,CAAC,OAAO,CACtB,eAAe,gBAAgB,wCAAwC;YACrE,8CAA8C,CACjD;QACD,WAAW,EAAE,EAAE,CAAC,OAAO,CACrB,eAAe,cAAc,qDAAqD;YAChF,2EAA2E;YAC3E,mBAAmB,CACtB;QACD,YAAY,EAAE,EAAE,CAAC,OAAO,CACtB,4BAA4B,cAAc,iCAAiC,CAC5E;QACD,aAAa,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,aAAa,sBAAsB,CAAC;QAC7E,gBAAgB,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,gBAAgB,sBAAsB,CAAC;QACnF,cAAc,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,cAAc,sBAAsB,CAAC;QAC/E,UAAU,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,UAAU,gBAAgB,CAAC;QACjE,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,qBAAqB,UAAU,gBAAgB,CAAC;QACnE,OAAO,EAAE,EAAE,CAAC,OAAO,CACjB,eAAe,UAAU,8BAA8B;YACrD,uDAAuD,CAC1D;KACF,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,SAAS,QAAQ,CAAC,GAAY;IAC5B,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC"}
|
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
* you use and agentfootprint stays dependency-free.
|
|
9
9
|
*
|
|
10
10
|
* openaiEmbedder() — hosted; needs OPENAI_API_KEY; no extra install (fetch).
|
|
11
|
-
* bedrockEmbedder() — hosted on AWS; Titan Text Embeddings
|
|
11
|
+
* bedrockEmbedder() — hosted on AWS; Titan Text Embeddings and Cohere Embed
|
|
12
|
+
* v3 (the model id picks the body shape); credentials
|
|
12
13
|
* come from the AWS chain, so no key option at all.
|
|
13
14
|
* peer dep: @aws-sdk/client-bedrock-runtime.
|
|
14
15
|
* localEmbedder() — on-device sentence-transformer; no key; offline after a
|
|
@@ -111,25 +112,85 @@ export interface BedrockRuntimeSdkModule {
|
|
|
111
112
|
}) => BedrockRuntimeLikeClient;
|
|
112
113
|
readonly InvokeModelCommand?: new (input: unknown) => unknown;
|
|
113
114
|
}
|
|
115
|
+
/**
|
|
116
|
+
* The request/response SHAPE a Bedrock embedding model speaks (9.3.0).
|
|
117
|
+
*
|
|
118
|
+
* `InvokeModel` is one operation with a vendor-specific body on both sides:
|
|
119
|
+
* Titan takes `{ inputText }` and answers `{ embedding }`, Cohere takes
|
|
120
|
+
* `{ texts, input_type }` and answers `{ embeddings }`. One model id therefore
|
|
121
|
+
* does not describe one call, and until 9.3.0 this factory sent Titan's body to
|
|
122
|
+
* everything — so a Cohere model id was accepted at construction (with
|
|
123
|
+
* `dimensions`) and failed at the first embed, against the real service, with a
|
|
124
|
+
* validation error from AWS rather than a sentence from here.
|
|
125
|
+
*/
|
|
126
|
+
export type BedrockEmbeddingFamily = 'titan' | 'cohere';
|
|
127
|
+
/**
|
|
128
|
+
* Cohere's `input_type`, which is a real parameter and not a hint: the v3
|
|
129
|
+
* models embed a QUERY and a DOCUMENT into deliberately different places, and
|
|
130
|
+
* the two are meant to be compared with each other. Sending one value for both
|
|
131
|
+
* halves is a measurable loss of retrieval quality, not a style choice — and
|
|
132
|
+
* Cohere requires the field, so there is no "unset" to fall back to.
|
|
133
|
+
*/
|
|
134
|
+
export type CohereInputType = 'search_document' | 'search_query';
|
|
114
135
|
export interface BedrockEmbedderOptions {
|
|
115
136
|
/**
|
|
116
137
|
* Bedrock model id. Default `'amazon.titan-embed-text-v2:0'`.
|
|
117
138
|
*
|
|
118
|
-
*
|
|
119
|
-
*
|
|
120
|
-
*
|
|
121
|
-
*
|
|
139
|
+
* Four are known by name — Titan V2, Titan V1, and Cohere Embed English /
|
|
140
|
+
* Multilingual v3 (see {@link BEDROCK_EMBEDDING_MODELS}) — and each brings
|
|
141
|
+
* its own body shape, vector length and input window. An id that WRAPS one of
|
|
142
|
+
* those (a cross-region inference profile `us.amazon.titan-embed-text-v2:0`,
|
|
143
|
+
* or an ARN ending in the model id) is resolved to the model it names.
|
|
144
|
+
*
|
|
145
|
+
* Anything else is a model this library has never met: pass `dimensions`
|
|
146
|
+
* with it (its vector length is not something this can know) and `family` if
|
|
147
|
+
* it is not Titan-shaped.
|
|
122
148
|
*/
|
|
123
149
|
readonly model?: string;
|
|
124
150
|
/**
|
|
125
|
-
* Vector length to request.
|
|
151
|
+
* Vector length to request.
|
|
152
|
+
*
|
|
153
|
+
* Titan V2 is the one CONFIGURABLE model — 1024 (default), 512 or 256 — and
|
|
126
154
|
* the value is SENT to the model AND reported as `.dimensions`, so the two
|
|
127
|
-
* can never disagree.
|
|
155
|
+
* can never disagree. Every other known model has ONE size, and asking for a
|
|
156
|
+
* different one is refused rather than reported: `.dimensions` is what a
|
|
157
|
+
* vector store fingerprints on, and a wrong one corrupts it silently.
|
|
128
158
|
*
|
|
129
|
-
* Required for a model outside {@link
|
|
130
|
-
* `.dimensions` silently corrupts a vector store.
|
|
159
|
+
* Required for a model outside {@link BEDROCK_EMBEDDING_MODELS}.
|
|
131
160
|
*/
|
|
132
161
|
readonly dimensions?: number;
|
|
162
|
+
/**
|
|
163
|
+
* The body shape to speak, when the model id does not say (9.3.0).
|
|
164
|
+
*
|
|
165
|
+
* Inferred for every known model and for anything that wraps one, so this is
|
|
166
|
+
* only for a model id this library has never met — a provisioned-throughput
|
|
167
|
+
* ARN, a custom deployment. Unknown and unstated, the body is **Titan's**,
|
|
168
|
+
* which is the shape every release before 9.3.0 sent to everything.
|
|
169
|
+
*
|
|
170
|
+
* Stating a family that contradicts a known model id is refused by name.
|
|
171
|
+
*/
|
|
172
|
+
readonly family?: BedrockEmbeddingFamily;
|
|
173
|
+
/**
|
|
174
|
+
* Pin Cohere's `input_type` instead of deriving it from the call (9.3.0).
|
|
175
|
+
*
|
|
176
|
+
* Unset — the default — `embed()` sends `'search_query'` and `embedBatch()`
|
|
177
|
+
* sends `'search_document'`, because that is what this library's own two
|
|
178
|
+
* call sites are: retrieval embeds ONE question (`loadRelevant`), indexing
|
|
179
|
+
* embeds MANY passages (`indexDocuments`, `embedMessages`). Pin it when your
|
|
180
|
+
* own code uses the two calls differently — embedding a single document, say,
|
|
181
|
+
* or scoring a batch of queries.
|
|
182
|
+
*
|
|
183
|
+
* Ignored by Titan, which has no such parameter.
|
|
184
|
+
*/
|
|
185
|
+
readonly inputType?: CohereInputType;
|
|
186
|
+
/**
|
|
187
|
+
* The longest input this model reads whole, in CHARACTERS
|
|
188
|
+
* ({@link Embedder.maxInputChars}). Declared for every known model from its
|
|
189
|
+
* documented token window; this option is how a model this library does not
|
|
190
|
+
* know states its own, rather than declaring none and leaving the indexer's
|
|
191
|
+
* conservative default in place. An explicit value always wins.
|
|
192
|
+
*/
|
|
193
|
+
readonly maxInputChars?: number;
|
|
133
194
|
/** AWS region. Passed to the SDK client when this factory builds one. */
|
|
134
195
|
readonly region?: string;
|
|
135
196
|
/** A pre-built Bedrock runtime client, so one SDK config serves the whole app. */
|
|
@@ -167,19 +228,31 @@ export interface BedrockEmbedderOptions {
|
|
|
167
228
|
* q8 and an fp32 build of one model are near-identical spaces, and "near" is
|
|
168
229
|
* exactly the difference that surfaces as a mysteriously worse ranking.)
|
|
169
230
|
*
|
|
231
|
+
* ── One operation, two body shapes (9.3.0) ───────────────────────────────
|
|
232
|
+
* `InvokeModel` is a single API over vendor-specific JSON. Titan takes
|
|
233
|
+
* `{ inputText }` and answers `{ embedding }`; Cohere takes
|
|
234
|
+
* `{ texts, input_type }` and answers `{ embeddings }`, embeds up to
|
|
235
|
+
* {@link COHERE_MAX_TEXTS_PER_CALL} of them per call, and distinguishes a
|
|
236
|
+
* QUERY from a DOCUMENT. So the model id selects a FAMILY
|
|
237
|
+
* ({@link BedrockEmbeddingFamily}), and the family owns the request, the
|
|
238
|
+
* response and the batching. Before this, one shape was sent to everything —
|
|
239
|
+
* a Cohere id constructed fine and failed at the first embed.
|
|
240
|
+
*
|
|
170
241
|
* ── The input ceiling (9.1.0) ────────────────────────────────────────────
|
|
171
|
-
* `.maxInputChars`
|
|
172
|
-
*
|
|
173
|
-
*
|
|
174
|
-
* the indexer's own default, which was measured on an on-device model
|
|
175
|
-
*
|
|
176
|
-
*
|
|
177
|
-
*
|
|
178
|
-
*
|
|
242
|
+
* `.maxInputChars` is per MODEL, from its documented token window converted at
|
|
243
|
+
* the stated {@link CHARS_PER_TOKEN} assumption of 4 characters per token:
|
|
244
|
+
* **32,000** for both Titan text-embedding models (8,192 tokens — sixteen
|
|
245
|
+
* times the indexer's own default, which was measured on an on-device model),
|
|
246
|
+
* and **2,000** for Cohere Embed v3 (512 tokens). Those two numbers are why the
|
|
247
|
+
* ceiling cannot be a per-vendor constant: the same 2,500-character chunk is
|
|
248
|
+
* read whole by Titan and truncated by Cohere. Dense text (code, tables, CJK)
|
|
249
|
+
* tokenises tighter than the assumption; pass an explicit `maxChunkChars` for
|
|
250
|
+
* such a corpus, and it wins over this number.
|
|
179
251
|
*
|
|
180
252
|
* @throws if `model` is unknown and `dimensions` was not supplied; if
|
|
181
|
-
* `dimensions` is
|
|
182
|
-
*
|
|
253
|
+
* `dimensions` is a size the model does not produce; if `family`
|
|
254
|
+
* contradicts a known model id; or if the SDK is missing and no
|
|
255
|
+
* `client` / `_client` / `_sdk` was passed.
|
|
183
256
|
*
|
|
184
257
|
* @example
|
|
185
258
|
* ```ts
|
|
@@ -190,6 +263,13 @@ export interface BedrockEmbedderOptions {
|
|
|
190
263
|
* const embedder = bedrockEmbedder({ region: 'us-east-1', dimensions: 512 });
|
|
191
264
|
* await indexFolder('./docs', { to: sqliteVectorStore({ file: './corpus.db' }), embedder });
|
|
192
265
|
* ```
|
|
266
|
+
*
|
|
267
|
+
* @example A Cohere embedding model on the same runtime
|
|
268
|
+
* ```ts
|
|
269
|
+
* // Body shape, response field, batch size and 512-token window all follow
|
|
270
|
+
* // from the model id — nothing else changes at the call site.
|
|
271
|
+
* const embedder = bedrockEmbedder({ model: 'cohere.embed-english-v3' });
|
|
272
|
+
* ```
|
|
193
273
|
*/
|
|
194
274
|
export declare function bedrockEmbedder(options?: BedrockEmbedderOptions): Embedder;
|
|
195
275
|
/**
|