@velarscript-labs/sqlite 0.3.2 → 0.3.4
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/CHANGELOG.md +11 -0
- package/README.md +6 -0
- package/THIRD_PARTY_NOTICES.md +35 -0
- package/dist/index.js +2 -1936
- package/dist/index.js.map +1 -1
- package/dist/index.veli.json +213 -129
- package/dist/velar-library.json +10 -6
- package/package.json +24 -6
- package/src/generated/worker-source.vel +3 -0
- package/src/index.vel +44 -242
package/dist/index.js
CHANGED
|
@@ -1,1936 +1,2 @@
|
|
|
1
|
-
// velar-standard:velar/text
|
|
2
|
-
|
|
3
|
-
var __velarTextNativeArray = globalThis.Array;
|
|
4
|
-
var __velarTextNativeString = globalThis.String;
|
|
5
|
-
var __velarTextNativeNumber = globalThis.Number;
|
|
6
|
-
var __velarTextNativeMath = globalThis.Math;
|
|
7
|
-
var __velarTextNativeObject = globalThis.Object;
|
|
8
|
-
var __velarTextNativeMap = globalThis.Map;
|
|
9
|
-
var __velarTextNativeTypeError = globalThis.TypeError;
|
|
10
|
-
var __velarTextNativeRangeError = globalThis.RangeError;
|
|
11
|
-
var __velarTextGetOwnPropertyDescriptor = __velarTextNativeObject.getOwnPropertyDescriptor;
|
|
12
|
-
var __velarTextRuntimeGetPrototypeOf = __velarTextGetOwnPropertyDescriptor(__velarTextNativeObject, "getPrototypeOf")?.value;
|
|
13
|
-
var __velarTextReflectApply = __velarTextGetOwnPropertyDescriptor(globalThis.Reflect, "apply")?.value;
|
|
14
|
-
var __velarTextStringPrototype = __velarTextGetOwnPropertyDescriptor(__velarTextNativeString, "prototype")?.value;
|
|
15
|
-
var __velarTextArrayIsArray = __velarTextGetOwnPropertyDescriptor(__velarTextNativeArray, "isArray")?.value;
|
|
16
|
-
var __velarTextNumberIsSafeInteger = __velarTextGetOwnPropertyDescriptor(__velarTextNativeNumber, "isSafeInteger")?.value;
|
|
17
|
-
var __velarTextNumberIsInteger = __velarTextGetOwnPropertyDescriptor(__velarTextNativeNumber, "isInteger")?.value;
|
|
18
|
-
var __velarTextMathFloor = __velarTextGetOwnPropertyDescriptor(__velarTextNativeMath, "floor")?.value;
|
|
19
|
-
var __velarTextMathMax = __velarTextGetOwnPropertyDescriptor(__velarTextNativeMath, "max")?.value;
|
|
20
|
-
var __velarTextMathMin = __velarTextGetOwnPropertyDescriptor(__velarTextNativeMath, "min")?.value;
|
|
21
|
-
var __velarNativeStringIndexOf = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "indexOf")?.value;
|
|
22
|
-
var __velarNativeStringSlice = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "slice")?.value;
|
|
23
|
-
var __velarNativeStringCharCodeAt = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "charCodeAt")?.value;
|
|
24
|
-
var __velarNativeStringTrim = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "trim")?.value;
|
|
25
|
-
var __velarNativeStringUpper = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "toUpperCase")?.value;
|
|
26
|
-
var __velarNativeStringLower = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "toLowerCase")?.value;
|
|
27
|
-
var __velarNativeStringSplit = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "split")?.value;
|
|
28
|
-
var __velarNativeStringReplaceAll = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "replaceAll")?.value;
|
|
29
|
-
var __velarNativeStringRepeat = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "repeat")?.value;
|
|
30
|
-
var __velarTextMapPrototype = typeof __velarTextNativeMap === "function" ? __velarTextGetOwnPropertyDescriptor(__velarTextNativeMap, "prototype")?.value : null;
|
|
31
|
-
var __velarTextMapGet = __velarTextMapPrototype ? __velarTextGetOwnPropertyDescriptor(__velarTextMapPrototype, "get")?.value : null;
|
|
32
|
-
var __velarTextMapSet = __velarTextMapPrototype ? __velarTextGetOwnPropertyDescriptor(__velarTextMapPrototype, "set")?.value : null;
|
|
33
|
-
var __velarTextMapClear = __velarTextMapPrototype ? __velarTextGetOwnPropertyDescriptor(__velarTextMapPrototype, "clear")?.value : null;
|
|
34
|
-
var __velarTextSurrogatePattern = /[\u{10000}-\u{10FFFF}\uD800-\uDFFF]/u;
|
|
35
|
-
var __velarTextRegExpPrototype = typeof __velarTextRuntimeGetPrototypeOf === "function" ? __velarTextRuntimeGetPrototypeOf(__velarTextSurrogatePattern) : null;
|
|
36
|
-
var __velarTextSurrogateExec = __velarTextRegExpPrototype ? __velarTextGetOwnPropertyDescriptor(__velarTextRegExpPrototype, "exec")?.value : null;
|
|
37
|
-
function __velarTextCall(operation, receiver, arguments_) {
|
|
38
|
-
if (typeof operation !== "function" || typeof __velarTextReflectApply !== "function") throw new __velarTextNativeTypeError("The JavaScript text runtime is unavailable");
|
|
39
|
-
return __velarTextReflectApply(operation, receiver, arguments_);
|
|
40
|
-
}
|
|
41
|
-
var __velarTextMeasureCacheUnits = 8 * 1024 * 1024;
|
|
42
|
-
var __velarTextMeasureCache = typeof __velarTextNativeMap === "function" && typeof __velarTextMapGet === "function" && typeof __velarTextMapSet === "function" && typeof __velarTextMapClear === "function" ? new __velarTextNativeMap() : null;
|
|
43
|
-
var __velarUtf8CharCodeAt = Object.getOwnPropertyDescriptor(String.prototype, "charCodeAt")?.value;
|
|
44
|
-
var __velarUtf8ReflectApply = Object.getOwnPropertyDescriptor(Reflect, "apply")?.value;
|
|
45
|
-
var __velarTextGetOwnPropertyNames = __velarTextGetOwnPropertyDescriptor(__velarTextNativeObject, "getOwnPropertyNames")?.value;
|
|
46
|
-
var __velarTextGetOwnPropertySymbols = __velarTextGetOwnPropertyDescriptor(__velarTextNativeObject, "getOwnPropertySymbols")?.value;
|
|
47
|
-
var __velarTextGetPrototypeOf = __velarTextGetOwnPropertyDescriptor(__velarTextNativeObject, "getPrototypeOf")?.value;
|
|
48
|
-
var __velarTextObjectPrototype = __velarTextGetOwnPropertyDescriptor(__velarTextNativeObject, "prototype")?.value;
|
|
49
|
-
var __velarTextObjectCreate = __velarTextGetOwnPropertyDescriptor(__velarTextNativeObject, "create")?.value;
|
|
50
|
-
var __velarTextObjectFreeze = __velarTextGetOwnPropertyDescriptor(__velarTextNativeObject, "freeze")?.value;
|
|
51
|
-
var __velarTextArrayPrototype = __velarTextGetOwnPropertyDescriptor(__velarTextNativeArray, "prototype")?.value;
|
|
52
|
-
var __velarTextArrayJoin = __velarTextGetOwnPropertyDescriptor(__velarTextArrayPrototype, "join")?.value;
|
|
53
|
-
var __velarTextStringTrimStart = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "trimStart")?.value;
|
|
54
|
-
var __velarTextStringTrimEnd = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "trimEnd")?.value;
|
|
55
|
-
var __velarTextStringNormalize = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "normalize")?.value;
|
|
56
|
-
var __velarTextNativeDate = globalThis.Date;
|
|
57
|
-
var __velarTextDateNow = __velarTextGetOwnPropertyDescriptor(__velarTextNativeDate, "now")?.value;
|
|
58
|
-
var nativeRegExpPrototype = __velarTextGetPrototypeOf(/(?:)/u);
|
|
59
|
-
var NativeRegExp = __velarTextGetOwnPropertyDescriptor(nativeRegExpPrototype, "constructor")?.value;
|
|
60
|
-
var nativeRegExpExec = __velarTextGetOwnPropertyDescriptor(nativeRegExpPrototype, "exec")?.value;
|
|
61
|
-
var __velarTextStringCodePointAt = __velarTextGetOwnPropertyDescriptor(__velarTextStringPrototype, "codePointAt")?.value;
|
|
62
|
-
var __velarTextStringFromCodePoint = __velarTextGetOwnPropertyDescriptor(__velarTextNativeString, "fromCodePoint")?.value;
|
|
63
|
-
var __velarTextLatinMarks = new RegExp("(?<=\\p{Script=Latin})\\p{M}+", "gu");
|
|
64
|
-
var __velarTextBaselessMarks = new RegExp("(?<![\\p{L}\\p{N}\\p{M}])\\p{M}+", "gu");
|
|
65
|
-
function fromCodePoint(value) {
|
|
66
|
-
if (!__velarTextCall(__velarTextNumberIsSafeInteger, __velarTextNativeNumber, [value]) || value < 0 || value > 1114111) {
|
|
67
|
-
throw new __velarTextNativeRangeError("fromCodePoint requires a code point from 0 through 1114111");
|
|
68
|
-
}
|
|
69
|
-
if (value >= 55296 && value <= 57343) throw new __velarTextNativeRangeError("fromCodePoint refuses surrogate halves; they are not characters on their own");
|
|
70
|
-
return __velarTextCall(__velarTextStringFromCodePoint, __velarTextNativeString, [value]);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
// velar-standard:velar/compiler-runtime-reactive-v1
|
|
74
|
-
var __velarReactiveStructureKey = null;
|
|
75
|
-
function __velarReactiveRaw(value) {
|
|
76
|
-
return value;
|
|
77
|
-
}
|
|
78
|
-
function __velarHostRaw(value) {
|
|
79
|
-
return value;
|
|
80
|
-
}
|
|
81
|
-
function __velarReactiveCollectionRead(value, key, child) {
|
|
82
|
-
return child === void 0 ? null : child;
|
|
83
|
-
}
|
|
84
|
-
function __velarReactiveCollectionTrack() {
|
|
85
|
-
}
|
|
86
|
-
function __velarReactiveCollectionLink() {
|
|
87
|
-
}
|
|
88
|
-
function __velarReactiveCollectionTrigger() {
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
// velar-standard:velar/compiler-runtime-primitives-v1
|
|
92
|
-
var __velarMaxTextCodeUnits2 = 16 * 1024 * 1024;
|
|
93
|
-
var __velarTextNativeArray2 = globalThis.Array;
|
|
94
|
-
var __velarTextNativeString2 = globalThis.String;
|
|
95
|
-
var __velarTextNativeNumber2 = globalThis.Number;
|
|
96
|
-
var __velarTextNativeMath2 = globalThis.Math;
|
|
97
|
-
var __velarTextNativeObject2 = globalThis.Object;
|
|
98
|
-
var __velarTextNativeMap2 = globalThis.Map;
|
|
99
|
-
var __velarTextNativeTypeError2 = globalThis.TypeError;
|
|
100
|
-
var __velarTextNativeRangeError2 = globalThis.RangeError;
|
|
101
|
-
var __velarTextGetOwnPropertyDescriptor2 = __velarTextNativeObject2.getOwnPropertyDescriptor;
|
|
102
|
-
var __velarTextRuntimeGetPrototypeOf2 = __velarTextGetOwnPropertyDescriptor2(__velarTextNativeObject2, "getPrototypeOf")?.value;
|
|
103
|
-
var __velarTextReflectApply2 = __velarTextGetOwnPropertyDescriptor2(globalThis.Reflect, "apply")?.value;
|
|
104
|
-
var __velarTextStringPrototype2 = __velarTextGetOwnPropertyDescriptor2(__velarTextNativeString2, "prototype")?.value;
|
|
105
|
-
var __velarTextArrayIsArray2 = __velarTextGetOwnPropertyDescriptor2(__velarTextNativeArray2, "isArray")?.value;
|
|
106
|
-
var __velarTextNumberIsSafeInteger2 = __velarTextGetOwnPropertyDescriptor2(__velarTextNativeNumber2, "isSafeInteger")?.value;
|
|
107
|
-
var __velarTextNumberIsInteger2 = __velarTextGetOwnPropertyDescriptor2(__velarTextNativeNumber2, "isInteger")?.value;
|
|
108
|
-
var __velarTextMathFloor2 = __velarTextGetOwnPropertyDescriptor2(__velarTextNativeMath2, "floor")?.value;
|
|
109
|
-
var __velarTextMathMax2 = __velarTextGetOwnPropertyDescriptor2(__velarTextNativeMath2, "max")?.value;
|
|
110
|
-
var __velarTextMathMin2 = __velarTextGetOwnPropertyDescriptor2(__velarTextNativeMath2, "min")?.value;
|
|
111
|
-
var __velarNativeStringIndexOf2 = __velarTextGetOwnPropertyDescriptor2(__velarTextStringPrototype2, "indexOf")?.value;
|
|
112
|
-
var __velarNativeStringSlice2 = __velarTextGetOwnPropertyDescriptor2(__velarTextStringPrototype2, "slice")?.value;
|
|
113
|
-
var __velarNativeStringCharCodeAt2 = __velarTextGetOwnPropertyDescriptor2(__velarTextStringPrototype2, "charCodeAt")?.value;
|
|
114
|
-
var __velarNativeStringTrim2 = __velarTextGetOwnPropertyDescriptor2(__velarTextStringPrototype2, "trim")?.value;
|
|
115
|
-
var __velarNativeStringUpper2 = __velarTextGetOwnPropertyDescriptor2(__velarTextStringPrototype2, "toUpperCase")?.value;
|
|
116
|
-
var __velarNativeStringLower2 = __velarTextGetOwnPropertyDescriptor2(__velarTextStringPrototype2, "toLowerCase")?.value;
|
|
117
|
-
var __velarNativeStringSplit2 = __velarTextGetOwnPropertyDescriptor2(__velarTextStringPrototype2, "split")?.value;
|
|
118
|
-
var __velarNativeStringReplaceAll2 = __velarTextGetOwnPropertyDescriptor2(__velarTextStringPrototype2, "replaceAll")?.value;
|
|
119
|
-
var __velarNativeStringRepeat2 = __velarTextGetOwnPropertyDescriptor2(__velarTextStringPrototype2, "repeat")?.value;
|
|
120
|
-
var __velarTextMapPrototype2 = typeof __velarTextNativeMap2 === "function" ? __velarTextGetOwnPropertyDescriptor2(__velarTextNativeMap2, "prototype")?.value : null;
|
|
121
|
-
var __velarTextMapGet2 = __velarTextMapPrototype2 ? __velarTextGetOwnPropertyDescriptor2(__velarTextMapPrototype2, "get")?.value : null;
|
|
122
|
-
var __velarTextMapSet2 = __velarTextMapPrototype2 ? __velarTextGetOwnPropertyDescriptor2(__velarTextMapPrototype2, "set")?.value : null;
|
|
123
|
-
var __velarTextMapClear2 = __velarTextMapPrototype2 ? __velarTextGetOwnPropertyDescriptor2(__velarTextMapPrototype2, "clear")?.value : null;
|
|
124
|
-
var __velarTextSurrogatePattern2 = /[\u{10000}-\u{10FFFF}\uD800-\uDFFF]/u;
|
|
125
|
-
var __velarTextRegExpPrototype2 = typeof __velarTextRuntimeGetPrototypeOf2 === "function" ? __velarTextRuntimeGetPrototypeOf2(__velarTextSurrogatePattern2) : null;
|
|
126
|
-
var __velarTextSurrogateExec2 = __velarTextRegExpPrototype2 ? __velarTextGetOwnPropertyDescriptor2(__velarTextRegExpPrototype2, "exec")?.value : null;
|
|
127
|
-
function __velarTextCall2(operation, receiver, arguments_) {
|
|
128
|
-
if (typeof operation !== "function" || typeof __velarTextReflectApply2 !== "function") throw new __velarTextNativeTypeError2("The JavaScript text runtime is unavailable");
|
|
129
|
-
return __velarTextReflectApply2(operation, receiver, arguments_);
|
|
130
|
-
}
|
|
131
|
-
function __velarTextValue(value) {
|
|
132
|
-
if (typeof value !== "string") throw new __velarTextNativeTypeError2("String methods require a string receiver");
|
|
133
|
-
if (value.length > __velarMaxTextCodeUnits2) throw new __velarTextNativeRangeError2("Strings cannot exceed 16 MiB");
|
|
134
|
-
return value;
|
|
135
|
-
}
|
|
136
|
-
function __velarTextArgument(value, name) {
|
|
137
|
-
if (typeof value !== "string") throw new __velarTextNativeTypeError2(name + " must be a string");
|
|
138
|
-
if (value.length > __velarMaxTextCodeUnits2) throw new __velarTextNativeRangeError2(name + " cannot exceed 16 MiB");
|
|
139
|
-
return value;
|
|
140
|
-
}
|
|
141
|
-
function __velarTextNextCodePointOffset(value, offset) {
|
|
142
|
-
const first = __velarTextCall2(__velarNativeStringCharCodeAt2, value, [offset]);
|
|
143
|
-
if (first < 55296 || first > 56319 || offset + 1 >= value.length) return offset + 1;
|
|
144
|
-
const second = __velarTextCall2(__velarNativeStringCharCodeAt2, value, [offset + 1]);
|
|
145
|
-
return second >= 56320 && second <= 57343 ? offset + 2 : offset + 1;
|
|
146
|
-
}
|
|
147
|
-
var __velarTextCheckpointStride = 64;
|
|
148
|
-
var __velarTextMeasureMinimumUnits = 64;
|
|
149
|
-
var __velarTextMeasureCacheEntries = 512;
|
|
150
|
-
var __velarTextMeasureCacheUnits2 = 8 * 1024 * 1024;
|
|
151
|
-
var __velarTextMeasureCache2 = typeof __velarTextNativeMap2 === "function" && typeof __velarTextMapGet2 === "function" && typeof __velarTextMapSet2 === "function" && typeof __velarTextMapClear2 === "function" ? new __velarTextNativeMap2() : null;
|
|
152
|
-
var __velarTextMeasureCacheCount = 0;
|
|
153
|
-
var __velarTextMeasureCacheHeld = 0;
|
|
154
|
-
function __velarTextMeasureText(value) {
|
|
155
|
-
if (__velarTextCall2(__velarTextSurrogateExec2, __velarTextSurrogatePattern2, [value]) === null) {
|
|
156
|
-
return { length: value.length, dense: true, checkpoints: null };
|
|
157
|
-
}
|
|
158
|
-
const checkpoints = new __velarTextNativeArray2();
|
|
159
|
-
let length = 0, offset = 0;
|
|
160
|
-
while (offset < value.length) {
|
|
161
|
-
if (length % __velarTextCheckpointStride === 0) checkpoints[length / __velarTextCheckpointStride] = offset;
|
|
162
|
-
offset = __velarTextNextCodePointOffset(value, offset);
|
|
163
|
-
length += 1;
|
|
164
|
-
}
|
|
165
|
-
return { length, dense: length === value.length, checkpoints };
|
|
166
|
-
}
|
|
167
|
-
function __velarTextMeasure(value) {
|
|
168
|
-
if (__velarTextMeasureCache2 === null || value.length < __velarTextMeasureMinimumUnits) return __velarTextMeasureText(value);
|
|
169
|
-
const cached = __velarTextCall2(__velarTextMapGet2, __velarTextMeasureCache2, [value]);
|
|
170
|
-
if (cached !== void 0) return cached;
|
|
171
|
-
const measured = __velarTextMeasureText(value);
|
|
172
|
-
if (__velarTextMeasureCacheCount >= __velarTextMeasureCacheEntries || __velarTextMeasureCacheCount > 0 && __velarTextMeasureCacheHeld + value.length > __velarTextMeasureCacheUnits2) {
|
|
173
|
-
__velarTextCall2(__velarTextMapClear2, __velarTextMeasureCache2, []);
|
|
174
|
-
__velarTextMeasureCacheCount = 0;
|
|
175
|
-
__velarTextMeasureCacheHeld = 0;
|
|
176
|
-
}
|
|
177
|
-
__velarTextCall2(__velarTextMapSet2, __velarTextMeasureCache2, [value, measured]);
|
|
178
|
-
__velarTextMeasureCacheCount += 1;
|
|
179
|
-
__velarTextMeasureCacheHeld += value.length;
|
|
180
|
-
return measured;
|
|
181
|
-
}
|
|
182
|
-
function __velarTextCodePointLength(value) {
|
|
183
|
-
return __velarTextMeasure(value).length;
|
|
184
|
-
}
|
|
185
|
-
function __velarTextIsBoundary(value, offset) {
|
|
186
|
-
if (offset <= 0 || offset >= value.length) return true;
|
|
187
|
-
const lead = __velarTextCall2(__velarNativeStringCharCodeAt2, value, [offset - 1]);
|
|
188
|
-
if (lead < 55296 || lead > 56319) return true;
|
|
189
|
-
const trail = __velarTextCall2(__velarNativeStringCharCodeAt2, value, [offset]);
|
|
190
|
-
return trail < 56320 || trail > 57343;
|
|
191
|
-
}
|
|
192
|
-
function __velarTextNeedsBoundaryCheck(search) {
|
|
193
|
-
const first = __velarTextCall2(__velarNativeStringCharCodeAt2, search, [0]);
|
|
194
|
-
if (first >= 56320 && first <= 57343) return true;
|
|
195
|
-
const last = __velarTextCall2(__velarNativeStringCharCodeAt2, search, [search.length - 1]);
|
|
196
|
-
return last >= 55296 && last <= 56319;
|
|
197
|
-
}
|
|
198
|
-
function __velarTextBoundedIndexOf(value, search, cursor) {
|
|
199
|
-
if (!__velarTextNeedsBoundaryCheck(search)) return __velarTextCall2(__velarNativeStringIndexOf2, value, [search, cursor]);
|
|
200
|
-
while (cursor <= value.length) {
|
|
201
|
-
const found = __velarTextCall2(__velarNativeStringIndexOf2, value, [search, cursor]);
|
|
202
|
-
if (found < 0) return -1;
|
|
203
|
-
if (__velarTextIsBoundary(value, found) && __velarTextIsBoundary(value, found + search.length)) return found;
|
|
204
|
-
cursor = found + 1;
|
|
205
|
-
}
|
|
206
|
-
return -1;
|
|
207
|
-
}
|
|
208
|
-
function __velarTextReplacementOutputUnits(value, search, replacement, all) {
|
|
209
|
-
let matches = 0;
|
|
210
|
-
if (search === "") matches = all ? __velarTextCodePointLength(value) + 1 : 1;
|
|
211
|
-
else {
|
|
212
|
-
let cursor = 0;
|
|
213
|
-
while (true) {
|
|
214
|
-
const index = __velarTextBoundedIndexOf(value, search, cursor);
|
|
215
|
-
if (index < 0) break;
|
|
216
|
-
matches += 1;
|
|
217
|
-
if (!all) break;
|
|
218
|
-
cursor = index + search.length;
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
if (replacement.length <= search.length || matches === 0) return value.length;
|
|
222
|
-
const growth = replacement.length - search.length;
|
|
223
|
-
if (matches > __velarTextCall2(__velarTextMathFloor2, __velarTextNativeMath2, [(__velarMaxTextCodeUnits2 - value.length) / growth])) return __velarMaxTextCodeUnits2 + 1;
|
|
224
|
-
return value.length + matches * growth;
|
|
225
|
-
}
|
|
226
|
-
function __velarStringSize(value) {
|
|
227
|
-
return __velarTextCodePointLength(__velarTextValue(value));
|
|
228
|
-
}
|
|
229
|
-
function __velarStringIsBlank(value) {
|
|
230
|
-
return __velarTextCall2(__velarNativeStringTrim2, __velarTextValue(value), []) === "";
|
|
231
|
-
}
|
|
232
|
-
function __velarStringHas(value, text) {
|
|
233
|
-
value = __velarTextValue(value);
|
|
234
|
-
text = __velarTextArgument(text, "String.has text");
|
|
235
|
-
return text === "" || __velarTextBoundedIndexOf(value, text, 0) >= 0;
|
|
236
|
-
}
|
|
237
|
-
function __velarStringReplaceAll(value, from, to) {
|
|
238
|
-
value = __velarTextValue(value);
|
|
239
|
-
from = __velarTextArgument(from, "String.replaceAll from");
|
|
240
|
-
to = __velarTextArgument(to, "String.replaceAll to");
|
|
241
|
-
if (__velarTextReplacementOutputUnits(value, from, to, true) > __velarMaxTextCodeUnits2) throw new __velarTextNativeRangeError2("String.replaceAll output cannot exceed 16 MiB");
|
|
242
|
-
if (from === "") {
|
|
243
|
-
let output2 = to;
|
|
244
|
-
let offset = 0;
|
|
245
|
-
while (offset < value.length) {
|
|
246
|
-
const next = __velarTextNextCodePointOffset(value, offset);
|
|
247
|
-
output2 += __velarTextCall2(__velarNativeStringSlice2, value, [offset, next]) + to;
|
|
248
|
-
offset = next;
|
|
249
|
-
}
|
|
250
|
-
return output2;
|
|
251
|
-
}
|
|
252
|
-
if (!__velarTextNeedsBoundaryCheck(from)) return __velarTextCall2(__velarNativeStringReplaceAll2, value, [from, () => to]);
|
|
253
|
-
let output = "";
|
|
254
|
-
let cursor = 0;
|
|
255
|
-
while (true) {
|
|
256
|
-
const found = __velarTextBoundedIndexOf(value, from, cursor);
|
|
257
|
-
if (found < 0) break;
|
|
258
|
-
output += __velarTextCall2(__velarNativeStringSlice2, value, [cursor, found]) + to;
|
|
259
|
-
cursor = found + from.length;
|
|
260
|
-
}
|
|
261
|
-
return output + __velarTextCall2(__velarNativeStringSlice2, value, [cursor]);
|
|
262
|
-
}
|
|
263
|
-
var __velarNumberNativeMath = globalThis.Math;
|
|
264
|
-
var __velarNumberNativeNumber = globalThis.Number;
|
|
265
|
-
var __velarNumberNativeObject = globalThis.Object;
|
|
266
|
-
var __velarNumberNativeTypeError = globalThis.TypeError;
|
|
267
|
-
var __velarNumberNativeRangeError = globalThis.RangeError;
|
|
268
|
-
var __velarNumberGetOwnPropertyDescriptor = __velarNumberNativeObject.getOwnPropertyDescriptor;
|
|
269
|
-
var __velarNumberReflectApply = __velarNumberGetOwnPropertyDescriptor(globalThis.Reflect, "apply")?.value;
|
|
270
|
-
var __velarNumberPrototype = __velarNumberGetOwnPropertyDescriptor(__velarNumberNativeNumber, "prototype")?.value;
|
|
271
|
-
var __velarNumberMathAbs = __velarNumberGetOwnPropertyDescriptor(__velarNumberNativeMath, "abs")?.value;
|
|
272
|
-
var __velarNumberMathRound = __velarNumberGetOwnPropertyDescriptor(__velarNumberNativeMath, "round")?.value;
|
|
273
|
-
var __velarNumberMathFloor = __velarNumberGetOwnPropertyDescriptor(__velarNumberNativeMath, "floor")?.value;
|
|
274
|
-
var __velarNumberMathCeil = __velarNumberGetOwnPropertyDescriptor(__velarNumberNativeMath, "ceil")?.value;
|
|
275
|
-
var __velarNumberIsSafeInteger = __velarNumberGetOwnPropertyDescriptor(__velarNumberNativeNumber, "isSafeInteger")?.value;
|
|
276
|
-
var __velarNumberNativeIsInteger = __velarNumberGetOwnPropertyDescriptor(__velarNumberNativeNumber, "isInteger")?.value;
|
|
277
|
-
var __velarNumberNativeIsNaN = __velarNumberGetOwnPropertyDescriptor(__velarNumberNativeNumber, "isNaN")?.value;
|
|
278
|
-
var __velarNumberNativeIsFinite = __velarNumberGetOwnPropertyDescriptor(__velarNumberNativeNumber, "isFinite")?.value;
|
|
279
|
-
var __velarNativeNumberToFixed = __velarNumberGetOwnPropertyDescriptor(__velarNumberPrototype, "toFixed")?.value;
|
|
280
|
-
function __velarNumberCall(operation, receiver, arguments_) {
|
|
281
|
-
if (typeof operation !== "function" || typeof __velarNumberReflectApply !== "function") throw new __velarNumberNativeTypeError("The JavaScript Number runtime is unavailable");
|
|
282
|
-
return __velarNumberReflectApply(operation, receiver, arguments_);
|
|
283
|
-
}
|
|
284
|
-
function __velarNumberValue(value) {
|
|
285
|
-
if (typeof value !== "number") throw new __velarNumberNativeTypeError("Number methods require a number receiver");
|
|
286
|
-
return value;
|
|
287
|
-
}
|
|
288
|
-
function __velarNumberIsInteger(value) {
|
|
289
|
-
return __velarNumberCall(__velarNumberNativeIsInteger, __velarNumberNativeNumber, [__velarNumberValue(value)]);
|
|
290
|
-
}
|
|
291
|
-
function __velarNumberIsFinite(value) {
|
|
292
|
-
return __velarNumberCall(__velarNumberNativeIsFinite, __velarNumberNativeNumber, [__velarNumberValue(value)]);
|
|
293
|
-
}
|
|
294
|
-
|
|
295
|
-
// velar-standard:velar/compiler-runtime-class-fields-v1
|
|
296
|
-
var __velarClassNativeObject = globalThis.Object;
|
|
297
|
-
var __velarClassNativeReflect = globalThis.Reflect;
|
|
298
|
-
var __velarClassNativeTypeError = globalThis.TypeError;
|
|
299
|
-
var __velarClassGetOwnPropertyDescriptor = __velarClassNativeObject.getOwnPropertyDescriptor;
|
|
300
|
-
var __velarClassReflectApply = __velarClassGetOwnPropertyDescriptor(__velarClassNativeReflect, "apply")?.value;
|
|
301
|
-
var __velarClassReflectGet = __velarClassGetOwnPropertyDescriptor(__velarClassNativeReflect, "get")?.value;
|
|
302
|
-
var __velarClassGetPrototypeOf = __velarClassGetOwnPropertyDescriptor(__velarClassNativeObject, "getPrototypeOf")?.value;
|
|
303
|
-
function __velarClassHostCall(operation, receiver, arguments_) {
|
|
304
|
-
if (typeof operation !== "function" || typeof __velarClassReflectApply !== "function") throw new __velarClassNativeTypeError("The JavaScript class field runtime is unavailable");
|
|
305
|
-
return __velarClassReflectApply(operation, receiver, arguments_);
|
|
306
|
-
}
|
|
307
|
-
function __velarReadInstanceField(receiver, name) {
|
|
308
|
-
const value = __velarClassHostCall(__velarClassReflectGet, __velarClassNativeReflect, [receiver, name]);
|
|
309
|
-
if (value === void 0) throw new __velarClassNativeTypeError("Field '" + name + "' was read before initialization or contains undefined");
|
|
310
|
-
return value;
|
|
311
|
-
}
|
|
312
|
-
function __velarReadPrivateField(value, name) {
|
|
313
|
-
if (value === void 0) throw new __velarClassNativeTypeError("Private field '" + name + "' was read before initialization or contains undefined");
|
|
314
|
-
return value;
|
|
315
|
-
}
|
|
316
|
-
|
|
317
|
-
// velar-standard:velar/compiler-runtime-narrowing-v1
|
|
318
|
-
var __velarNarrowingNativeTypeError = globalThis.TypeError;
|
|
319
|
-
var __velarNarrowingDefineProperty = globalThis.Object.defineProperty;
|
|
320
|
-
var __VelarNarrowingError = class extends __velarNarrowingNativeTypeError {
|
|
321
|
-
constructor(message) {
|
|
322
|
-
super(message);
|
|
323
|
-
this.name = "NarrowingError";
|
|
324
|
-
}
|
|
325
|
-
};
|
|
326
|
-
__velarNarrowingDefineProperty(__VelarNarrowingError, "name", { value: "NarrowingError", writable: false, enumerable: false, configurable: true });
|
|
327
|
-
function __velarNarrow(value, valid, expected, description, offset) {
|
|
328
|
-
if (!valid) throw new __VelarNarrowingError("Flow narrowing for '" + description + "' no longer holds: expected " + expected + " at source offset " + offset);
|
|
329
|
-
return value;
|
|
330
|
-
}
|
|
331
|
-
|
|
332
|
-
// velar-standard:velar/compiler-runtime-promises-v1
|
|
333
|
-
var __velarNormalizeGlobal = globalThis;
|
|
334
|
-
var __velarNormalizeNativeObject = globalThis.Object;
|
|
335
|
-
var __velarNormalizeNativeReflect = globalThis.Reflect;
|
|
336
|
-
var __velarNormalizeNativeWeakMap = globalThis.WeakMap;
|
|
337
|
-
var __velarNormalizeNativePromise = globalThis.Promise;
|
|
338
|
-
var __velarNormalizeNativeSymbol = globalThis.Symbol;
|
|
339
|
-
var __velarNormalizeTypeError = globalThis.TypeError;
|
|
340
|
-
var __velarNormalizeGetOwnPropertyDescriptor = __velarNormalizeNativeObject.getOwnPropertyDescriptor;
|
|
341
|
-
var __velarNormalizeGetPrototypeOf = __velarNormalizeGetOwnPropertyDescriptor(__velarNormalizeNativeObject, "getPrototypeOf")?.value;
|
|
342
|
-
var __velarNormalizeDefineProperty = __velarNormalizeGetOwnPropertyDescriptor(__velarNormalizeNativeObject, "defineProperty")?.value;
|
|
343
|
-
var __velarNormalizeApply = __velarNormalizeGetOwnPropertyDescriptor(__velarNormalizeNativeReflect, "apply")?.value;
|
|
344
|
-
var __velarNormalizeWeakMapPrototype = __velarNormalizeGetOwnPropertyDescriptor(__velarNormalizeNativeWeakMap, "prototype")?.value;
|
|
345
|
-
var __velarNormalizeWeakMapHas = __velarNormalizeGetOwnPropertyDescriptor(__velarNormalizeWeakMapPrototype, "has")?.value;
|
|
346
|
-
var __velarNormalizeWeakMapGet = __velarNormalizeGetOwnPropertyDescriptor(__velarNormalizeWeakMapPrototype, "get")?.value;
|
|
347
|
-
var __velarNormalizeWeakMapSet = __velarNormalizeGetOwnPropertyDescriptor(__velarNormalizeWeakMapPrototype, "set")?.value;
|
|
348
|
-
var __velarNormalizePromisePrototype = __velarNormalizeGetOwnPropertyDescriptor(__velarNormalizeNativePromise, "prototype")?.value;
|
|
349
|
-
var __velarNormalizePromiseThen = __velarNormalizeGetOwnPropertyDescriptor(__velarNormalizePromisePrototype, "then")?.value;
|
|
350
|
-
var __velarNormalizeSymbolFor = __velarNormalizeGetOwnPropertyDescriptor(__velarNormalizeNativeSymbol, "for")?.value;
|
|
351
|
-
function __velarNormalizeCall(operation, receiver, arguments_) {
|
|
352
|
-
if (typeof operation !== "function" || typeof __velarNormalizeApply !== "function") throw new __velarNormalizeTypeError("The JavaScript Promise normalization runtime is unavailable");
|
|
353
|
-
return __velarNormalizeApply(operation, receiver, arguments_);
|
|
354
|
-
}
|
|
355
|
-
var __velarNormalizedPromiseRegistryKey = __velarNormalizeCall(__velarNormalizeSymbolFor, __velarNormalizeNativeSymbol, ["velar.promise.normalization.v1"]);
|
|
356
|
-
var __velarNormalizedPromiseValues = (() => {
|
|
357
|
-
const descriptor = __velarNormalizeCall(__velarNormalizeGetOwnPropertyDescriptor, __velarNormalizeNativeObject, [__velarNormalizeGlobal, __velarNormalizedPromiseRegistryKey]);
|
|
358
|
-
if (descriptor) {
|
|
359
|
-
if (!("value" in descriptor) || descriptor.enumerable || descriptor.configurable || descriptor.writable) {
|
|
360
|
-
throw new __velarNormalizeTypeError("VelarScript Promise normalization registry ownership is invalid");
|
|
361
|
-
}
|
|
362
|
-
try {
|
|
363
|
-
__velarNormalizeCall(__velarNormalizeWeakMapHas, descriptor.value, [descriptor.value]);
|
|
364
|
-
} catch {
|
|
365
|
-
throw new __velarNormalizeTypeError("VelarScript Promise normalization registry is invalid");
|
|
366
|
-
}
|
|
367
|
-
return descriptor.value;
|
|
368
|
-
}
|
|
369
|
-
const registry = new __velarNormalizeNativeWeakMap();
|
|
370
|
-
__velarNormalizeCall(__velarNormalizeDefineProperty, __velarNormalizeNativeObject, [__velarNormalizeGlobal, __velarNormalizedPromiseRegistryKey, {
|
|
371
|
-
value: registry,
|
|
372
|
-
enumerable: false,
|
|
373
|
-
configurable: false,
|
|
374
|
-
writable: false
|
|
375
|
-
}]);
|
|
376
|
-
return registry;
|
|
377
|
-
})();
|
|
378
|
-
function __velarNormalizeOwnsPromise(candidate) {
|
|
379
|
-
if (typeof candidate !== "object" && typeof candidate !== "function" || candidate === null) return false;
|
|
380
|
-
let prototype;
|
|
381
|
-
try {
|
|
382
|
-
prototype = __velarNormalizeCall(__velarNormalizeGetPrototypeOf, __velarNormalizeNativeObject, [candidate]);
|
|
383
|
-
} catch {
|
|
384
|
-
return false;
|
|
385
|
-
}
|
|
386
|
-
return prototype === __velarNormalizePromisePrototype;
|
|
387
|
-
}
|
|
388
|
-
function __velarNormalizePromiseValue(value) {
|
|
389
|
-
if (typeof value !== "object" && typeof value !== "function" || value === null) throw new __velarNormalizeTypeError("Expected an actual Promise");
|
|
390
|
-
const known = __velarNormalizeCall(__velarNormalizeWeakMapGet, __velarNormalizedPromiseValues, [value]);
|
|
391
|
-
if (known) return known;
|
|
392
|
-
let settle;
|
|
393
|
-
let fail;
|
|
394
|
-
try {
|
|
395
|
-
__velarNormalizeCall(__velarNormalizePromiseThen, value, [
|
|
396
|
-
(resolved) => {
|
|
397
|
-
if (typeof settle === "function") settle(resolved ?? null);
|
|
398
|
-
},
|
|
399
|
-
(reason) => {
|
|
400
|
-
if (typeof fail === "function") fail(reason);
|
|
401
|
-
}
|
|
402
|
-
]);
|
|
403
|
-
} catch {
|
|
404
|
-
throw new __velarNormalizeTypeError("Expected an actual Promise");
|
|
405
|
-
}
|
|
406
|
-
if (typeof __velarNormalizeNativePromise !== "function") throw new __velarNormalizeTypeError("The JavaScript Promise normalization runtime is unavailable");
|
|
407
|
-
const normalized = new __velarNormalizeNativePromise((resolve, reject) => {
|
|
408
|
-
settle = resolve;
|
|
409
|
-
fail = reject;
|
|
410
|
-
});
|
|
411
|
-
if (typeof settle !== "function" || typeof fail !== "function" || !__velarNormalizeOwnsPromise(normalized)) throw new __velarNormalizeTypeError("The JavaScript Promise normalization runtime is unavailable");
|
|
412
|
-
__velarNormalizeCall(__velarNormalizeWeakMapSet, __velarNormalizedPromiseValues, [value, normalized]);
|
|
413
|
-
__velarNormalizeCall(__velarNormalizeWeakMapSet, __velarNormalizedPromiseValues, [normalized, normalized]);
|
|
414
|
-
return normalized;
|
|
415
|
-
}
|
|
416
|
-
function __velarAsyncResolvedValue(value) {
|
|
417
|
-
if (value === void 0) return null;
|
|
418
|
-
if (typeof value !== "object" && typeof value !== "function" || value === null) return value;
|
|
419
|
-
try {
|
|
420
|
-
return __velarNormalizePromiseValue(value);
|
|
421
|
-
} catch {
|
|
422
|
-
}
|
|
423
|
-
let owner = value;
|
|
424
|
-
for (let depth = 0; owner !== null && depth < 128; depth += 1) {
|
|
425
|
-
let descriptor;
|
|
426
|
-
try {
|
|
427
|
-
descriptor = __velarNormalizeCall(__velarNormalizeGetOwnPropertyDescriptor, __velarNormalizeNativeObject, [owner, "then"]);
|
|
428
|
-
} catch {
|
|
429
|
-
throw new __velarNormalizeTypeError("An async result must not expose a callable 'then' or a 'then' getter");
|
|
430
|
-
}
|
|
431
|
-
if (descriptor) {
|
|
432
|
-
if (!("value" in descriptor) || typeof descriptor.value === "function") throw new __velarNormalizeTypeError("An async result must not expose a callable 'then' or a 'then' getter");
|
|
433
|
-
return value;
|
|
434
|
-
}
|
|
435
|
-
try {
|
|
436
|
-
owner = __velarNormalizeCall(__velarNormalizeGetPrototypeOf, __velarNormalizeNativeObject, [owner]);
|
|
437
|
-
} catch {
|
|
438
|
-
throw new __velarNormalizeTypeError("An async result must have an inspectable prototype chain");
|
|
439
|
-
}
|
|
440
|
-
}
|
|
441
|
-
if (owner !== null) throw new __velarNormalizeTypeError("An async result prototype chain is too deep");
|
|
442
|
-
return value;
|
|
443
|
-
}
|
|
444
|
-
|
|
445
|
-
// velar-standard:velar/compiler-runtime-errors-v1
|
|
446
|
-
var __velarErrorNativeError = globalThis.Error;
|
|
447
|
-
var __velarErrorNativeString = globalThis.String;
|
|
448
|
-
var __velarErrorNativeObject = globalThis.Object;
|
|
449
|
-
var __velarErrorNativeReflect = globalThis.Reflect;
|
|
450
|
-
var __velarErrorNativeTypeError = globalThis.TypeError;
|
|
451
|
-
var __velarErrorGetOwnPropertyDescriptor = __velarErrorNativeObject.getOwnPropertyDescriptor;
|
|
452
|
-
var __velarErrorGetPrototypeOf = __velarErrorNativeObject.getPrototypeOf;
|
|
453
|
-
var __velarErrorReflectApply = __velarErrorGetOwnPropertyDescriptor(__velarErrorNativeReflect, "apply")?.value;
|
|
454
|
-
var __velarErrorIsErrorOperation = __velarErrorGetOwnPropertyDescriptor(__velarErrorNativeError, "isError")?.value;
|
|
455
|
-
function __velarErrorApply(operation, receiver, arguments_, label) {
|
|
456
|
-
if (typeof operation !== "function" || typeof __velarErrorReflectApply !== "function") {
|
|
457
|
-
throw new __velarErrorNativeTypeError("The JavaScript " + label + " API is unavailable");
|
|
458
|
-
}
|
|
459
|
-
return __velarErrorReflectApply(operation, receiver, arguments_);
|
|
460
|
-
}
|
|
461
|
-
function __velarIsError(value) {
|
|
462
|
-
return __velarErrorApply(__velarErrorIsErrorOperation, __velarErrorNativeError, [value], "Error.isError");
|
|
463
|
-
}
|
|
464
|
-
function __velarNormalizeError(value) {
|
|
465
|
-
if (__velarIsError(value)) return value;
|
|
466
|
-
const kind = typeof value;
|
|
467
|
-
let message;
|
|
468
|
-
if (kind === "string") message = value;
|
|
469
|
-
else if (value === null) message = "null";
|
|
470
|
-
else if (kind === "undefined") message = "undefined";
|
|
471
|
-
else if (kind === "number" || kind === "boolean" || kind === "bigint" || kind === "symbol") {
|
|
472
|
-
message = __velarErrorApply(__velarErrorNativeString, globalThis, [value], "String");
|
|
473
|
-
} else message = "A non-Error value was thrown by JavaScript";
|
|
474
|
-
return new __velarErrorNativeError(message, { cause: value });
|
|
475
|
-
}
|
|
476
|
-
var __velarAssertionNativeError = globalThis.Error;
|
|
477
|
-
var __velarAssertionDefineProperty = globalThis.Object.defineProperty;
|
|
478
|
-
var __VelarAssertionError = class extends __velarAssertionNativeError {
|
|
479
|
-
constructor(message) {
|
|
480
|
-
super(message);
|
|
481
|
-
this.name = "AssertionError";
|
|
482
|
-
}
|
|
483
|
-
};
|
|
484
|
-
__velarAssertionDefineProperty(__VelarAssertionError, "name", { value: "AssertionError", writable: false, enumerable: false, configurable: true });
|
|
485
|
-
var __velarHostErrorNativeError = globalThis.Error;
|
|
486
|
-
var __velarHostErrorDefineProperty = globalThis.Object.defineProperty;
|
|
487
|
-
var __VelarFileNotFoundError = class extends __velarHostErrorNativeError {
|
|
488
|
-
constructor(message, path = null) {
|
|
489
|
-
super(message);
|
|
490
|
-
this.name = "FileNotFoundError";
|
|
491
|
-
this.path = path;
|
|
492
|
-
}
|
|
493
|
-
};
|
|
494
|
-
__velarHostErrorDefineProperty(__VelarFileNotFoundError, "name", { value: "FileNotFoundError", writable: false, enumerable: false, configurable: true });
|
|
495
|
-
var __VelarPermissionError = class extends __velarHostErrorNativeError {
|
|
496
|
-
constructor(message, path = null) {
|
|
497
|
-
super(message);
|
|
498
|
-
this.name = "PermissionError";
|
|
499
|
-
this.path = path;
|
|
500
|
-
}
|
|
501
|
-
};
|
|
502
|
-
__velarHostErrorDefineProperty(__VelarPermissionError, "name", { value: "PermissionError", writable: false, enumerable: false, configurable: true });
|
|
503
|
-
var __VelarNotADirectoryError = class extends __velarHostErrorNativeError {
|
|
504
|
-
constructor(message, path = null) {
|
|
505
|
-
super(message);
|
|
506
|
-
this.name = "NotADirectoryError";
|
|
507
|
-
this.path = path;
|
|
508
|
-
}
|
|
509
|
-
};
|
|
510
|
-
__velarHostErrorDefineProperty(__VelarNotADirectoryError, "name", { value: "NotADirectoryError", writable: false, enumerable: false, configurable: true });
|
|
511
|
-
var __VelarFileExistsError = class extends __velarHostErrorNativeError {
|
|
512
|
-
constructor(message, path = null) {
|
|
513
|
-
super(message);
|
|
514
|
-
this.name = "FileExistsError";
|
|
515
|
-
this.path = path;
|
|
516
|
-
}
|
|
517
|
-
};
|
|
518
|
-
__velarHostErrorDefineProperty(__VelarFileExistsError, "name", { value: "FileExistsError", writable: false, enumerable: false, configurable: true });
|
|
519
|
-
var __VelarAddressInUseError = class extends __velarHostErrorNativeError {
|
|
520
|
-
constructor(message) {
|
|
521
|
-
super(message);
|
|
522
|
-
this.name = "AddressInUseError";
|
|
523
|
-
}
|
|
524
|
-
};
|
|
525
|
-
__velarHostErrorDefineProperty(__VelarAddressInUseError, "name", { value: "AddressInUseError", writable: false, enumerable: false, configurable: true });
|
|
526
|
-
|
|
527
|
-
// velar-standard:velar/compiler-runtime-types-v1
|
|
528
|
-
var __velarCollectionNativeArray = globalThis.Array;
|
|
529
|
-
var __velarCollectionNativeMap = globalThis.Map;
|
|
530
|
-
var __velarCollectionNativeSet = globalThis.Set;
|
|
531
|
-
var __velarCollectionNativeObject = globalThis.Object;
|
|
532
|
-
var __velarCollectionNativeReflect = globalThis.Reflect;
|
|
533
|
-
var __velarCollectionNativeWeakMap = globalThis.WeakMap;
|
|
534
|
-
var __velarCollectionNativeTypeError = globalThis.TypeError;
|
|
535
|
-
var __velarCollectionGetOwnPropertyDescriptor = __velarCollectionNativeObject.getOwnPropertyDescriptor;
|
|
536
|
-
var __velarCollectionReflectApply = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionNativeReflect, "apply")?.value;
|
|
537
|
-
var __velarCollectionArrayIsArray = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionNativeArray, "isArray")?.value;
|
|
538
|
-
var __velarCollectionGetPrototypeOf = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionNativeObject, "getPrototypeOf")?.value;
|
|
539
|
-
var __velarCollectionObjectPrototype = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionNativeObject, "prototype")?.value;
|
|
540
|
-
var __velarCollectionMapPrototype = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionNativeMap, "prototype")?.value;
|
|
541
|
-
var __velarCollectionSetPrototype = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionNativeSet, "prototype")?.value;
|
|
542
|
-
var __velarCollectionMapSize = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionMapPrototype, "size")?.get;
|
|
543
|
-
var __velarCollectionSetSize = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionSetPrototype, "size")?.get;
|
|
544
|
-
function __velarCollectionHostCall(operation, receiver, arguments_) {
|
|
545
|
-
if (typeof operation !== "function" || typeof __velarCollectionReflectApply !== "function") throw new __velarCollectionNativeTypeError("The JavaScript collection runtime is unavailable");
|
|
546
|
-
return __velarCollectionReflectApply(operation, receiver, arguments_);
|
|
547
|
-
}
|
|
548
|
-
var __velarCollectionWeakMapPrototype = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionNativeWeakMap, "prototype")?.value;
|
|
549
|
-
var __velarCollectionWeakMapGetOperation = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionWeakMapPrototype, "get")?.value;
|
|
550
|
-
var __velarCollectionWeakMapSetOperation = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionWeakMapPrototype, "set")?.value;
|
|
551
|
-
var __velarCollectionBrands = new __velarCollectionNativeWeakMap();
|
|
552
|
-
function __velarCollectionBrand(value) {
|
|
553
|
-
if (value === null || typeof value !== "object" && typeof value !== "function") return 0;
|
|
554
|
-
const known = __velarCollectionHostCall(__velarCollectionWeakMapGetOperation, __velarCollectionBrands, [value]);
|
|
555
|
-
if (known !== void 0) return known;
|
|
556
|
-
let brand = 0;
|
|
557
|
-
try {
|
|
558
|
-
__velarCollectionHostCall(__velarCollectionMapSize, value, []);
|
|
559
|
-
brand = 1;
|
|
560
|
-
} catch {
|
|
561
|
-
try {
|
|
562
|
-
__velarCollectionHostCall(__velarCollectionSetSize, value, []);
|
|
563
|
-
brand = 2;
|
|
564
|
-
} catch {
|
|
565
|
-
brand = 0;
|
|
566
|
-
}
|
|
567
|
-
}
|
|
568
|
-
__velarCollectionHostCall(__velarCollectionWeakMapSetOperation, __velarCollectionBrands, [value, brand]);
|
|
569
|
-
return brand;
|
|
570
|
-
}
|
|
571
|
-
function __velarIsMap(value) {
|
|
572
|
-
return __velarCollectionBrand(value) === 1;
|
|
573
|
-
}
|
|
574
|
-
function __velarIsSet(value) {
|
|
575
|
-
return __velarCollectionBrand(value) === 2;
|
|
576
|
-
}
|
|
577
|
-
var __velarCollectionOwnNames = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionNativeObject, "getOwnPropertyNames")?.value;
|
|
578
|
-
var __velarCollectionOwnSymbols = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionNativeObject, "getOwnPropertySymbols")?.value;
|
|
579
|
-
var __velarCollectionOwnKeys = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionNativeReflect, "ownKeys")?.value;
|
|
580
|
-
var __velarCollectionMapEntries = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionMapPrototype, "entries")?.value;
|
|
581
|
-
var __velarCollectionSetValues = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionSetPrototype, "values")?.value;
|
|
582
|
-
var __velarCollectionMapIteratorPrototype = __velarCollectionHostCall(__velarCollectionGetPrototypeOf, __velarCollectionNativeObject, [__velarCollectionHostCall(__velarCollectionMapEntries, new __velarCollectionNativeMap(), [])]);
|
|
583
|
-
var __velarCollectionSetIteratorPrototype = __velarCollectionHostCall(__velarCollectionGetPrototypeOf, __velarCollectionNativeObject, [__velarCollectionHostCall(__velarCollectionSetValues, new __velarCollectionNativeSet(), [])]);
|
|
584
|
-
var __velarCollectionMapIteratorNext = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionMapIteratorPrototype, "next")?.value;
|
|
585
|
-
var __velarCollectionSetIteratorNext = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionSetIteratorPrototype, "next")?.value;
|
|
586
|
-
function __velarCollectionMapTypeIterator(value) {
|
|
587
|
-
return __velarCollectionHostCall(__velarCollectionMapEntries, value, []);
|
|
588
|
-
}
|
|
589
|
-
function __velarCollectionSetTypeIterator(value) {
|
|
590
|
-
return __velarCollectionHostCall(__velarCollectionSetValues, value, []);
|
|
591
|
-
}
|
|
592
|
-
function __velarCollectionMapTypeNext(iterator) {
|
|
593
|
-
return __velarCollectionHostCall(__velarCollectionMapIteratorNext, iterator, []);
|
|
594
|
-
}
|
|
595
|
-
function __velarCollectionSetTypeNext(iterator) {
|
|
596
|
-
return __velarCollectionHostCall(__velarCollectionSetIteratorNext, iterator, []);
|
|
597
|
-
}
|
|
598
|
-
var __velarTypeNativeWeakSet = globalThis.WeakSet;
|
|
599
|
-
var __velarTypeNativeObject = globalThis.Object;
|
|
600
|
-
var __velarTypeNativeTypeError = globalThis.TypeError;
|
|
601
|
-
var __velarTypeGetOwnPropertyDescriptor = __velarTypeNativeObject.getOwnPropertyDescriptor;
|
|
602
|
-
var __velarTypeDefineProperty = __velarTypeNativeObject.defineProperty;
|
|
603
|
-
var __velarTypeReflectApply = __velarTypeGetOwnPropertyDescriptor(globalThis.Reflect, "apply")?.value;
|
|
604
|
-
var __velarTypeSymbolFor = globalThis.Symbol.for;
|
|
605
|
-
var __velarTypeWeakSetPrototype = __velarTypeGetOwnPropertyDescriptor(__velarTypeNativeWeakSet, "prototype")?.value;
|
|
606
|
-
var __velarTypeWeakSetHas = __velarTypeGetOwnPropertyDescriptor(__velarTypeWeakSetPrototype, "has")?.value;
|
|
607
|
-
var __velarTypeWeakSetAdd = __velarTypeGetOwnPropertyDescriptor(__velarTypeWeakSetPrototype, "add")?.value;
|
|
608
|
-
function __velarTypeCall(operation, receiver, arguments_) {
|
|
609
|
-
if (typeof operation !== "function" || typeof __velarTypeReflectApply !== "function") throw new __velarTypeNativeTypeError("The JavaScript runtime Type registry API is unavailable");
|
|
610
|
-
return __velarTypeReflectApply(operation, receiver, arguments_);
|
|
611
|
-
}
|
|
612
|
-
var __velarRuntimeTypeRegistryKey = __velarTypeCall(__velarTypeSymbolFor, globalThis.Symbol, ["velar.type.registry.v1"]);
|
|
613
|
-
var __velarRuntimeTypeRegistry = (() => {
|
|
614
|
-
const descriptor = __velarTypeGetOwnPropertyDescriptor(globalThis, __velarRuntimeTypeRegistryKey);
|
|
615
|
-
if (descriptor) {
|
|
616
|
-
if (!("value" in descriptor) || descriptor.enumerable || descriptor.configurable || descriptor.writable) {
|
|
617
|
-
throw new __velarTypeNativeTypeError("VelarScript runtime type registry descriptor is invalid");
|
|
618
|
-
}
|
|
619
|
-
try {
|
|
620
|
-
__velarTypeCall(__velarTypeWeakSetHas, descriptor.value, [descriptor.value]);
|
|
621
|
-
} catch {
|
|
622
|
-
throw new __velarTypeNativeTypeError("VelarScript runtime type registry is invalid");
|
|
623
|
-
}
|
|
624
|
-
return descriptor.value;
|
|
625
|
-
}
|
|
626
|
-
const registry = new __velarTypeNativeWeakSet();
|
|
627
|
-
__velarTypeCall(__velarTypeDefineProperty, __velarTypeNativeObject, [globalThis, __velarRuntimeTypeRegistryKey, {
|
|
628
|
-
value: registry,
|
|
629
|
-
enumerable: false,
|
|
630
|
-
configurable: false,
|
|
631
|
-
writable: false
|
|
632
|
-
}]);
|
|
633
|
-
return registry;
|
|
634
|
-
})();
|
|
635
|
-
function __velarRegisterRuntimeType(value) {
|
|
636
|
-
__velarTypeCall(__velarTypeWeakSetAdd, __velarRuntimeTypeRegistry, [value]);
|
|
637
|
-
return value;
|
|
638
|
-
}
|
|
639
|
-
var __velarValidationNativeWeakMap = globalThis.WeakMap;
|
|
640
|
-
var __velarValidationNativeSet = globalThis.Set;
|
|
641
|
-
var __velarValidationNativePromise = globalThis.Promise;
|
|
642
|
-
var __velarValidationNativeFunction = globalThis.Function;
|
|
643
|
-
var __velarValidationNativeSymbol = globalThis.Symbol;
|
|
644
|
-
var __velarValidationWeakMapPrototype = __velarCollectionGetOwnPropertyDescriptor(__velarValidationNativeWeakMap, "prototype")?.value;
|
|
645
|
-
var __velarValidationSetPrototype = __velarCollectionGetOwnPropertyDescriptor(__velarValidationNativeSet, "prototype")?.value;
|
|
646
|
-
var __velarValidationFunctionPrototype = __velarCollectionGetOwnPropertyDescriptor(__velarValidationNativeFunction, "prototype")?.value;
|
|
647
|
-
var __velarValidationHasInstanceSymbol = __velarCollectionGetOwnPropertyDescriptor(__velarValidationNativeSymbol, "hasInstance")?.value;
|
|
648
|
-
var __velarValidationWeakMapGetOperation = __velarCollectionGetOwnPropertyDescriptor(__velarValidationWeakMapPrototype, "get")?.value;
|
|
649
|
-
var __velarValidationWeakMapSetOperation = __velarCollectionGetOwnPropertyDescriptor(__velarValidationWeakMapPrototype, "set")?.value;
|
|
650
|
-
var __velarValidationWeakMapDeleteOperation = __velarCollectionGetOwnPropertyDescriptor(__velarValidationWeakMapPrototype, "delete")?.value;
|
|
651
|
-
var __velarValidationSetHasOperation = __velarCollectionGetOwnPropertyDescriptor(__velarValidationSetPrototype, "has")?.value;
|
|
652
|
-
var __velarValidationSetAddOperation = __velarCollectionGetOwnPropertyDescriptor(__velarValidationSetPrototype, "add")?.value;
|
|
653
|
-
var __velarValidationSetDeleteOperation = __velarCollectionGetOwnPropertyDescriptor(__velarValidationSetPrototype, "delete")?.value;
|
|
654
|
-
var __velarValidationSetSizeOperation = __velarCollectionGetOwnPropertyDescriptor(__velarValidationSetPrototype, "size")?.get;
|
|
655
|
-
var __velarValidationFunctionHasInstanceOperation = __velarCollectionGetOwnPropertyDescriptor(__velarValidationFunctionPrototype, __velarValidationHasInstanceSymbol)?.value;
|
|
656
|
-
var __velarValidationFreezeOperation = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionNativeObject, "freeze")?.value;
|
|
657
|
-
var __velarValidationDefinePropertyOperation = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionNativeObject, "defineProperty")?.value;
|
|
658
|
-
var __velarValidationMapSetOperation = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionMapPrototype, "set")?.value;
|
|
659
|
-
var __velarValidationMapGetOperation = __velarCollectionGetOwnPropertyDescriptor(__velarCollectionMapPrototype, "get")?.value;
|
|
660
|
-
function __velarValidationState() {
|
|
661
|
-
return { active: new __velarValidationNativeWeakMap(), depth: 0, copies: null, copy: __velarValidationCopy };
|
|
662
|
-
}
|
|
663
|
-
function __velarValidationSet() {
|
|
664
|
-
return new __velarValidationNativeSet();
|
|
665
|
-
}
|
|
666
|
-
function __velarValidationWeakMapGet(value, key) {
|
|
667
|
-
return __velarCollectionHostCall(__velarValidationWeakMapGetOperation, value, [key]);
|
|
668
|
-
}
|
|
669
|
-
function __velarValidationWeakMapSet(value, key, item) {
|
|
670
|
-
return __velarCollectionHostCall(__velarValidationWeakMapSetOperation, value, [key, item]);
|
|
671
|
-
}
|
|
672
|
-
function __velarValidationMapGet(value, key) {
|
|
673
|
-
return __velarCollectionHostCall(__velarValidationMapGetOperation, value, [key]);
|
|
674
|
-
}
|
|
675
|
-
function __velarValidationMapSet(value, key, item) {
|
|
676
|
-
return __velarCollectionHostCall(__velarValidationMapSetOperation, value, [key, item]);
|
|
677
|
-
}
|
|
678
|
-
function __velarValidationSetAdd(value, item) {
|
|
679
|
-
return __velarCollectionHostCall(__velarValidationSetAddOperation, value, [item]);
|
|
680
|
-
}
|
|
681
|
-
function __velarValidationIsArray(value) {
|
|
682
|
-
return __velarCollectionHostCall(__velarCollectionArrayIsArray, __velarCollectionNativeArray, [value]);
|
|
683
|
-
}
|
|
684
|
-
function __velarValidationOwnDescriptor(value, key) {
|
|
685
|
-
return __velarCollectionHostCall(__velarCollectionGetOwnPropertyDescriptor, __velarCollectionNativeObject, [value, key]);
|
|
686
|
-
}
|
|
687
|
-
function __velarValidationIsInstance(value, constructor) {
|
|
688
|
-
return __velarCollectionHostCall(__velarValidationFunctionHasInstanceOperation, constructor, [value]);
|
|
689
|
-
}
|
|
690
|
-
function __velarValidationFreeze(value) {
|
|
691
|
-
return __velarCollectionHostCall(__velarValidationFreezeOperation, __velarCollectionNativeObject, [value]);
|
|
692
|
-
}
|
|
693
|
-
function __velarValidationIsPlainObject(value) {
|
|
694
|
-
const prototype = __velarCollectionHostCall(__velarCollectionGetPrototypeOf, __velarCollectionNativeObject, [value]);
|
|
695
|
-
if (prototype === null) return true;
|
|
696
|
-
return __velarCollectionHostCall(__velarCollectionGetPrototypeOf, __velarCollectionNativeObject, [prototype]) === null;
|
|
697
|
-
}
|
|
698
|
-
var __velarValidationCopy = {
|
|
699
|
-
seen(state, value, plan) {
|
|
700
|
-
if (state.copies === null) return void 0;
|
|
701
|
-
const plans = __velarValidationWeakMapGet(state.copies, value);
|
|
702
|
-
return plans === void 0 ? void 0 : __velarValidationMapGet(plans, plan);
|
|
703
|
-
},
|
|
704
|
-
remember(state, value, copy, plan) {
|
|
705
|
-
if (state.copies === null) state.copies = new __velarValidationNativeWeakMap();
|
|
706
|
-
let plans = __velarValidationWeakMapGet(state.copies, value);
|
|
707
|
-
if (plans === void 0) {
|
|
708
|
-
plans = new __velarCollectionNativeMap();
|
|
709
|
-
__velarValidationWeakMapSet(state.copies, value, plans);
|
|
710
|
-
}
|
|
711
|
-
__velarValidationMapSet(plans, plan, copy);
|
|
712
|
-
return copy;
|
|
713
|
-
},
|
|
714
|
-
object(state, value, plan) {
|
|
715
|
-
return __velarValidationCopy.remember(state, value, {}, plan);
|
|
716
|
-
},
|
|
717
|
-
// Fields are written through defineProperty so a field literally named
|
|
718
|
-
// '__proto__' lands as an own data property instead of retargeting the
|
|
719
|
-
// copy's prototype, and so every copied field is an ordinary mutable
|
|
720
|
-
// enumerable data property whatever the source's descriptor said.
|
|
721
|
-
field(target, name, value) {
|
|
722
|
-
__velarCollectionHostCall(__velarValidationDefinePropertyOperation, __velarCollectionNativeObject, [target, name, { value, writable: true, enumerable: true, configurable: true }]);
|
|
723
|
-
},
|
|
724
|
-
// A null element callback means the element position has nothing to copy —
|
|
725
|
-
// a primitive, an enum member, a class instance, or an opaque 'unknown'.
|
|
726
|
-
// 'plan' is the container position's own stable identity: the emitter hoists
|
|
727
|
-
// one function per distinct copy plan and hands it in as both the element
|
|
728
|
-
// callback and the key this memo files the copy under.
|
|
729
|
-
listOf(value, state, item, plan) {
|
|
730
|
-
const found = __velarValidationCopy.seen(state, value, plan);
|
|
731
|
-
if (found !== void 0) return found;
|
|
732
|
-
const result = __velarValidationCopy.remember(state, value, [], plan);
|
|
733
|
-
const length = __velarValidationOwnDescriptor(value, "length")?.value ?? 0;
|
|
734
|
-
for (let index = 0; index < length; index += 1) {
|
|
735
|
-
const descriptor = __velarValidationOwnDescriptor(value, index);
|
|
736
|
-
result[index] = item === null ? descriptor?.value : item(descriptor?.value, state);
|
|
737
|
-
}
|
|
738
|
-
return result;
|
|
739
|
-
},
|
|
740
|
-
setOf(value, state, item, plan) {
|
|
741
|
-
const found = __velarValidationCopy.seen(state, value, plan);
|
|
742
|
-
if (found !== void 0) return found;
|
|
743
|
-
const result = __velarValidationCopy.remember(state, value, __velarValidationSet(), plan);
|
|
744
|
-
const iterator = __velarCollectionSetTypeIterator(value);
|
|
745
|
-
while (true) {
|
|
746
|
-
const step = __velarCollectionSetTypeNext(iterator);
|
|
747
|
-
if (step.done) break;
|
|
748
|
-
__velarValidationSetAdd(result, item === null ? step.value : item(step.value, state));
|
|
749
|
-
}
|
|
750
|
-
return result;
|
|
751
|
-
},
|
|
752
|
-
mapOf(value, state, key, item, plan) {
|
|
753
|
-
const found = __velarValidationCopy.seen(state, value, plan);
|
|
754
|
-
if (found !== void 0) return found;
|
|
755
|
-
const result = __velarValidationCopy.remember(state, value, new __velarCollectionNativeMap(), plan);
|
|
756
|
-
const iterator = __velarCollectionMapTypeIterator(value);
|
|
757
|
-
while (true) {
|
|
758
|
-
const step = __velarCollectionMapTypeNext(iterator);
|
|
759
|
-
if (step.done) break;
|
|
760
|
-
const entry = step.value;
|
|
761
|
-
__velarValidationMapSet(result, key === null ? entry[0] : key(entry[0], state), item === null ? entry[1] : item(entry[1], state));
|
|
762
|
-
}
|
|
763
|
-
return result;
|
|
764
|
-
},
|
|
765
|
-
recordOf(value, state, item, plan) {
|
|
766
|
-
const found = __velarValidationCopy.seen(state, value, plan);
|
|
767
|
-
if (found !== void 0) return found;
|
|
768
|
-
const result = __velarValidationCopy.remember(state, value, {}, plan);
|
|
769
|
-
const keys = __velarCollectionHostCall(__velarCollectionOwnKeys, __velarCollectionNativeReflect, [value]);
|
|
770
|
-
for (let index = 0; index < keys.length; index += 1) {
|
|
771
|
-
const name = keys[index];
|
|
772
|
-
if (typeof name !== "string") continue;
|
|
773
|
-
const descriptor = __velarValidationOwnDescriptor(value, name);
|
|
774
|
-
if (!descriptor?.enumerable || !("value" in descriptor)) continue;
|
|
775
|
-
__velarValidationCopy.field(result, name, item === null ? descriptor.value : item(descriptor.value, state));
|
|
776
|
-
}
|
|
777
|
-
return result;
|
|
778
|
-
},
|
|
779
|
-
// A generic instantiation supplies a predicate per type argument but no copy
|
|
780
|
-
// plan, and a structural or union position is validated as a shape the
|
|
781
|
-
// predicate did not fully decide. Both copy the plain data they can see:
|
|
782
|
-
// arrays, Maps, Sets, and plain objects recurse; anything else — a class
|
|
783
|
-
// instance, a promise, a function, a binary buffer — is not plain data and
|
|
784
|
-
// passes through by reference.
|
|
785
|
-
plain(value, state) {
|
|
786
|
-
if (value === null || typeof value !== "object") return value;
|
|
787
|
-
const found = __velarValidationCopy.seen(state, value, __velarValidationCopy.plain);
|
|
788
|
-
if (found !== void 0) return found;
|
|
789
|
-
if (__velarValidationIsArray(value)) return __velarValidationCopy.listOf(value, state, __velarValidationCopy.plain, __velarValidationCopy.plain);
|
|
790
|
-
if (__velarIsMap(value)) return __velarValidationCopy.mapOf(value, state, __velarValidationCopy.plain, __velarValidationCopy.plain, __velarValidationCopy.plain);
|
|
791
|
-
if (__velarIsSet(value)) return __velarValidationCopy.setOf(value, state, __velarValidationCopy.plain, __velarValidationCopy.plain);
|
|
792
|
-
if (!__velarValidationIsPlainObject(value)) return value;
|
|
793
|
-
return __velarValidationCopy.recordOf(value, state, __velarValidationCopy.plain, __velarValidationCopy.plain);
|
|
794
|
-
},
|
|
795
|
-
// A Type object from a target extension, or one emitted by an older build,
|
|
796
|
-
// may carry no copy plan; the structural copy is what is left to fall back on.
|
|
797
|
-
// A Type that does answer 'copy' owns its own plan identity — a declared
|
|
798
|
-
// record files under its copy function, an instantiation under its arguments
|
|
799
|
-
// — so nothing is threaded in from here.
|
|
800
|
-
through(type, value, state) {
|
|
801
|
-
const operation = type === null || type === void 0 ? void 0 : type.copy;
|
|
802
|
-
if (typeof operation !== "function") return __velarValidationCopy.plain(value, state);
|
|
803
|
-
return __velarCollectionHostCall(operation, type, [value, state]);
|
|
804
|
-
}
|
|
805
|
-
};
|
|
806
|
-
function __velarValidationRejectionHint(value) {
|
|
807
|
-
if (value === null || typeof value !== "object" || __velarValidationIsArray(value) || __velarValidationIsPlainObject(value)) return "";
|
|
808
|
-
return "; a record accepts only plain data objects \u2014 project the fields into a record first, for example {x: instance.x}";
|
|
809
|
-
}
|
|
810
|
-
var __velarValidationErrorDefineProperty = globalThis.Object.defineProperty;
|
|
811
|
-
var __VelarValidationError = class extends __velarCollectionNativeTypeError {
|
|
812
|
-
constructor(message, detail) {
|
|
813
|
-
super(message);
|
|
814
|
-
this.name = "ValidationError";
|
|
815
|
-
this.path = detail?.path ?? null;
|
|
816
|
-
this.field = detail?.field ?? null;
|
|
817
|
-
this.reason = detail?.reason ?? null;
|
|
818
|
-
}
|
|
819
|
-
};
|
|
820
|
-
__velarValidationErrorDefineProperty(__VelarValidationError, "name", { value: "ValidationError", writable: false, enumerable: false, configurable: true });
|
|
821
|
-
|
|
822
|
-
// velar-standard:velar/compiler-runtime-collections-v1
|
|
823
|
-
var __velarCollectionNativeArray2 = globalThis.Array;
|
|
824
|
-
var __velarCollectionNativeMap2 = globalThis.Map;
|
|
825
|
-
var __velarCollectionNativeSet2 = globalThis.Set;
|
|
826
|
-
var __velarCollectionNativeObject2 = globalThis.Object;
|
|
827
|
-
var __velarCollectionNativeReflect2 = globalThis.Reflect;
|
|
828
|
-
var __velarCollectionNativeWeakMap2 = globalThis.WeakMap;
|
|
829
|
-
var __velarCollectionNativeTypeError2 = globalThis.TypeError;
|
|
830
|
-
var __velarCollectionGetOwnPropertyDescriptor2 = __velarCollectionNativeObject2.getOwnPropertyDescriptor;
|
|
831
|
-
var __velarCollectionReflectApply2 = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeReflect2, "apply")?.value;
|
|
832
|
-
var __velarCollectionArrayIsArray2 = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeArray2, "isArray")?.value;
|
|
833
|
-
var __velarCollectionGetPrototypeOf2 = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeObject2, "getPrototypeOf")?.value;
|
|
834
|
-
var __velarCollectionObjectPrototype2 = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeObject2, "prototype")?.value;
|
|
835
|
-
var __velarCollectionMapPrototype2 = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeMap2, "prototype")?.value;
|
|
836
|
-
var __velarCollectionSetPrototype2 = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeSet2, "prototype")?.value;
|
|
837
|
-
var __velarCollectionMapSize2 = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionMapPrototype2, "size")?.get;
|
|
838
|
-
var __velarCollectionSetSize2 = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionSetPrototype2, "size")?.get;
|
|
839
|
-
function __velarCollectionHostCall2(operation, receiver, arguments_) {
|
|
840
|
-
if (typeof operation !== "function" || typeof __velarCollectionReflectApply2 !== "function") throw new __velarCollectionNativeTypeError2("The JavaScript collection runtime is unavailable");
|
|
841
|
-
return __velarCollectionReflectApply2(operation, receiver, arguments_);
|
|
842
|
-
}
|
|
843
|
-
var __velarCollectionWeakMapPrototype2 = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeWeakMap2, "prototype")?.value;
|
|
844
|
-
var __velarCollectionWeakMapGetOperation2 = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionWeakMapPrototype2, "get")?.value;
|
|
845
|
-
var __velarCollectionWeakMapSetOperation2 = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionWeakMapPrototype2, "set")?.value;
|
|
846
|
-
var __velarCollectionBrands2 = new __velarCollectionNativeWeakMap2();
|
|
847
|
-
var __velarCollectionListNativeNumber = globalThis.Number;
|
|
848
|
-
var __velarCollectionListNativeMath = globalThis.Math;
|
|
849
|
-
var __velarCollectionListNativeRangeError = globalThis.RangeError;
|
|
850
|
-
var __velarCollectionListArrayPrototype = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeArray2, "prototype")?.value;
|
|
851
|
-
var __velarCollectionListOwnNamesOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeObject2, "getOwnPropertyNames")?.value;
|
|
852
|
-
var __velarCollectionListOwnSymbolsOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeObject2, "getOwnPropertySymbols")?.value;
|
|
853
|
-
var __velarCollectionListDefinePropertyOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeObject2, "defineProperty")?.value;
|
|
854
|
-
var __velarCollectionListObjectIsOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeObject2, "is")?.value;
|
|
855
|
-
var __velarCollectionListIntegerOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionListNativeNumber, "isInteger")?.value;
|
|
856
|
-
var __velarCollectionListNaNOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionListNativeNumber, "isNaN")?.value;
|
|
857
|
-
var __velarCollectionListFiniteOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionListNativeNumber, "isFinite")?.value;
|
|
858
|
-
var __velarCollectionListMaximumOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionListNativeMath, "max")?.value;
|
|
859
|
-
var __velarCollectionListMinimumOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionListNativeMath, "min")?.value;
|
|
860
|
-
var __velarCollectionListJoinOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionListArrayPrototype, "join")?.value;
|
|
861
|
-
var __velarCollectionListSortOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionListArrayPrototype, "sort")?.value;
|
|
862
|
-
var __velarCollectionListReverseOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionListArrayPrototype, "reverse")?.value;
|
|
863
|
-
function __velarCollectionListIsArray(value) {
|
|
864
|
-
return __velarCollectionHostCall2(__velarCollectionArrayIsArray2, __velarCollectionNativeArray2, [value]);
|
|
865
|
-
}
|
|
866
|
-
function __velarCollectionListGetOwnPropertyDescriptor(value, key) {
|
|
867
|
-
return __velarCollectionHostCall2(__velarCollectionGetOwnPropertyDescriptor2, __velarCollectionNativeObject2, [value, key]);
|
|
868
|
-
}
|
|
869
|
-
function __velarCollectionListOwnNames(value) {
|
|
870
|
-
return __velarCollectionHostCall2(__velarCollectionListOwnNamesOperation, __velarCollectionNativeObject2, [value]);
|
|
871
|
-
}
|
|
872
|
-
function __velarCollectionListOwnSymbols(value) {
|
|
873
|
-
return __velarCollectionHostCall2(__velarCollectionListOwnSymbolsOperation, __velarCollectionNativeObject2, [value]);
|
|
874
|
-
}
|
|
875
|
-
function __velarCollectionListDefineProperty(value, key, descriptor) {
|
|
876
|
-
return __velarCollectionHostCall2(__velarCollectionListDefinePropertyOperation, __velarCollectionNativeObject2, [value, key, descriptor]);
|
|
877
|
-
}
|
|
878
|
-
function __velarCollectionListIsInteger(value) {
|
|
879
|
-
return __velarCollectionHostCall2(__velarCollectionListIntegerOperation, __velarCollectionListNativeNumber, [value]);
|
|
880
|
-
}
|
|
881
|
-
var __velarCollectionSetMapNativeRangeError = globalThis.RangeError;
|
|
882
|
-
var __velarCollectionSetMapFreezeOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeObject2, "freeze")?.value;
|
|
883
|
-
var __velarCollectionSetAddOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionSetPrototype2, "add")?.value;
|
|
884
|
-
var __velarCollectionSetHasOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionSetPrototype2, "has")?.value;
|
|
885
|
-
var __velarCollectionSetDeleteOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionSetPrototype2, "delete")?.value;
|
|
886
|
-
var __velarCollectionSetClearOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionSetPrototype2, "clear")?.value;
|
|
887
|
-
var __velarCollectionSetValuesOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionSetPrototype2, "values")?.value;
|
|
888
|
-
var __velarCollectionMapGetOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionMapPrototype2, "get")?.value;
|
|
889
|
-
var __velarCollectionMapSetOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionMapPrototype2, "set")?.value;
|
|
890
|
-
var __velarCollectionMapHasOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionMapPrototype2, "has")?.value;
|
|
891
|
-
var __velarCollectionMapDeleteOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionMapPrototype2, "delete")?.value;
|
|
892
|
-
var __velarCollectionMapClearOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionMapPrototype2, "clear")?.value;
|
|
893
|
-
var __velarCollectionMapKeysOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionMapPrototype2, "keys")?.value;
|
|
894
|
-
var __velarCollectionMapValuesOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionMapPrototype2, "values")?.value;
|
|
895
|
-
var __velarCollectionMapEntriesOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionMapPrototype2, "entries")?.value;
|
|
896
|
-
var __velarCollectionSetMapMapIteratorPrototype = __velarCollectionHostCall2(__velarCollectionGetPrototypeOf2, __velarCollectionNativeObject2, [__velarCollectionHostCall2(__velarCollectionMapEntriesOperation, new __velarCollectionNativeMap2(), [])]);
|
|
897
|
-
var __velarCollectionSetMapSetIteratorPrototype = __velarCollectionHostCall2(__velarCollectionGetPrototypeOf2, __velarCollectionNativeObject2, [__velarCollectionHostCall2(__velarCollectionSetValuesOperation, new __velarCollectionNativeSet2(), [])]);
|
|
898
|
-
var __velarCollectionSetMapMapIteratorNext = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionSetMapMapIteratorPrototype, "next")?.value;
|
|
899
|
-
var __velarCollectionSetMapSetIteratorNext = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionSetMapSetIteratorPrototype, "next")?.value;
|
|
900
|
-
var __velarCollectionRecordNativeRangeError = globalThis.RangeError;
|
|
901
|
-
var __velarCollectionRecordOwnNamesOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeObject2, "getOwnPropertyNames")?.value;
|
|
902
|
-
var __velarCollectionRecordOwnSymbolsOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeObject2, "getOwnPropertySymbols")?.value;
|
|
903
|
-
var __velarCollectionRecordDefinePropertyOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeObject2, "defineProperty")?.value;
|
|
904
|
-
var __velarCollectionRecordObjectIsOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeObject2, "is")?.value;
|
|
905
|
-
var __velarCollectionRecordDeletePropertyOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeReflect2, "deleteProperty")?.value;
|
|
906
|
-
var __velarCollectionRecordFreezeOperation = __velarCollectionGetOwnPropertyDescriptor2(__velarCollectionNativeObject2, "freeze")?.value;
|
|
907
|
-
|
|
908
|
-
// velar-standard:velar/compiler-runtime-collection-lowering-v1
|
|
909
|
-
var __velarMaxCollectionItems = 1e6;
|
|
910
|
-
var __velarCollectionValue = (value) => value === void 0 ? null : value;
|
|
911
|
-
var __velarListNativeWeakMap = globalThis.WeakMap;
|
|
912
|
-
var __velarListWeakMapPrototype = __velarCollectionListGetOwnPropertyDescriptor(__velarListNativeWeakMap, "prototype")?.value;
|
|
913
|
-
var __velarListWeakMapGetOperation = __velarCollectionListGetOwnPropertyDescriptor(__velarListWeakMapPrototype, "get")?.value;
|
|
914
|
-
var __velarListWeakMapSetOperation = __velarCollectionListGetOwnPropertyDescriptor(__velarListWeakMapPrototype, "set")?.value;
|
|
915
|
-
var __velarListMemos = new __velarListNativeWeakMap();
|
|
916
|
-
var __velarListIsFrozenOperation = __velarCollectionListGetOwnPropertyDescriptor(__velarCollectionNativeObject2, "isFrozen")?.value;
|
|
917
|
-
function __velarListRejectFrozen(value, name) {
|
|
918
|
-
if (__velarCollectionHostCall2(__velarListIsFrozenOperation, __velarCollectionNativeObject2, [value])) {
|
|
919
|
-
throw new __velarCollectionNativeTypeError2(name + " received a frozen JavaScript array; copy it on the JavaScript side \u2014 [...values] \u2014 before passing it to VelarScript");
|
|
920
|
-
}
|
|
921
|
-
}
|
|
922
|
-
function __velarListMemo(value) {
|
|
923
|
-
return __velarCollectionHostCall2(__velarListWeakMapGetOperation, __velarListMemos, [value]);
|
|
924
|
-
}
|
|
925
|
-
function __velarListIsOwned(value) {
|
|
926
|
-
const memo = __velarListMemo(value);
|
|
927
|
-
return memo !== void 0 && memo === value.length;
|
|
928
|
-
}
|
|
929
|
-
function __velarAdoptList(value) {
|
|
930
|
-
__velarCollectionHostCall2(__velarListWeakMapSetOperation, __velarListMemos, [value, value.length]);
|
|
931
|
-
return value;
|
|
932
|
-
}
|
|
933
|
-
function __velarMarkCheckedList(value) {
|
|
934
|
-
__velarCollectionHostCall2(__velarListWeakMapSetOperation, __velarListMemos, [value, ~value.length]);
|
|
935
|
-
return value;
|
|
936
|
-
}
|
|
937
|
-
function __velarMarkOwnedList(value) {
|
|
938
|
-
const memo = __velarListMemo(value);
|
|
939
|
-
return memo !== void 0 && memo < 0 ? __velarMarkCheckedList(value) : __velarAdoptList(value);
|
|
940
|
-
}
|
|
941
|
-
function __velarListRequireMutableLength(value, name) {
|
|
942
|
-
const lengthDescriptor = __velarCollectionListGetOwnPropertyDescriptor(value, "length");
|
|
943
|
-
if (!lengthDescriptor || !lengthDescriptor.writable || lengthDescriptor.enumerable || lengthDescriptor.configurable || !("value" in lengthDescriptor)) throw new __velarCollectionNativeTypeError2(name + " requires an ordinary mutable List length");
|
|
944
|
-
}
|
|
945
|
-
function __velarValidateDenseList(value, name) {
|
|
946
|
-
value = __velarReactiveRaw(value);
|
|
947
|
-
if (!__velarCollectionListIsArray(value) || value.length > __velarMaxCollectionItems || __velarCollectionListOwnSymbols(value).length > 0 || __velarCollectionListOwnNames(value).length !== value.length + 1) {
|
|
948
|
-
throw new __velarCollectionNativeTypeError2(name + " requires a dense VelarScript List");
|
|
949
|
-
}
|
|
950
|
-
__velarListRejectFrozen(value, name);
|
|
951
|
-
__velarListRequireMutableLength(value, name);
|
|
952
|
-
for (let index = 0; index < value.length; index += 1) {
|
|
953
|
-
const descriptor = __velarCollectionListGetOwnPropertyDescriptor(value, index);
|
|
954
|
-
if (!descriptor?.enumerable || !descriptor.configurable || !descriptor.writable || !("value" in descriptor)) throw new __velarCollectionNativeTypeError2(name + " requires ordinary mutable List data elements");
|
|
955
|
-
}
|
|
956
|
-
return __velarMarkCheckedList(value);
|
|
957
|
-
}
|
|
958
|
-
function __velarListTier(value) {
|
|
959
|
-
const memo = __velarListMemo(value);
|
|
960
|
-
if (memo === void 0) return 0;
|
|
961
|
-
if (memo === value.length) return 1;
|
|
962
|
-
return ~memo === value.length ? 2 : 0;
|
|
963
|
-
}
|
|
964
|
-
function __velarValidateListTier(value, name, tier) {
|
|
965
|
-
if (tier === 1) return value;
|
|
966
|
-
if (tier === 0) return __velarValidateDenseList(value, name);
|
|
967
|
-
__velarListRequireMutableLength(value, name);
|
|
968
|
-
return value;
|
|
969
|
-
}
|
|
970
|
-
function __velarValidateOwnedList(value, name) {
|
|
971
|
-
value = __velarReactiveRaw(value);
|
|
972
|
-
return __velarValidateListTier(value, name, __velarListTier(value));
|
|
973
|
-
}
|
|
974
|
-
function __velarValidateMutableList(value, name) {
|
|
975
|
-
value = __velarReactiveRaw(value);
|
|
976
|
-
const tier = __velarListTier(value);
|
|
977
|
-
if (tier === 0) return __velarValidateDenseList(value, name);
|
|
978
|
-
__velarListRequireMutableLength(value, name);
|
|
979
|
-
return value;
|
|
980
|
-
}
|
|
981
|
-
function __velarCheckedListElement(value, index, name) {
|
|
982
|
-
const descriptor = __velarCollectionListGetOwnPropertyDescriptor(value, index);
|
|
983
|
-
if (!descriptor?.enumerable || !descriptor.configurable || !descriptor.writable || !("value" in descriptor)) throw new __velarCollectionNativeTypeError2(name + " requires ordinary mutable List data elements");
|
|
984
|
-
return descriptor.value;
|
|
985
|
-
}
|
|
986
|
-
function __velarOwnedListElement(value, index, name) {
|
|
987
|
-
const element = value[index];
|
|
988
|
-
return element === void 0 ? __velarCheckedListElement(value, index, name) : element;
|
|
989
|
-
}
|
|
990
|
-
function __velarListElement(value, index, name, owned) {
|
|
991
|
-
return owned ? __velarOwnedListElement(value, index, name) : __velarCheckedListElement(value, index, name);
|
|
992
|
-
}
|
|
993
|
-
function __velarCopyList(value, name) {
|
|
994
|
-
value = __velarValidateOwnedList(value, name);
|
|
995
|
-
const owned = __velarListIsOwned(value);
|
|
996
|
-
const output = [];
|
|
997
|
-
for (let index = 0; index < value.length; index += 1) output[index] = __velarCollectionValue(__velarListElement(value, index, name, owned));
|
|
998
|
-
return __velarAdoptList(output);
|
|
999
|
-
}
|
|
1000
|
-
var __velarListNativeString = globalThis.String;
|
|
1001
|
-
var __velarListStringPrototype = __velarCollectionListGetOwnPropertyDescriptor(__velarListNativeString, "prototype")?.value;
|
|
1002
|
-
var __velarListStringCharCodeAt = __velarCollectionListGetOwnPropertyDescriptor(__velarListStringPrototype, "charCodeAt")?.value;
|
|
1003
|
-
var __velarListSurrogatePattern = /[\uD800-\uDFFF]/;
|
|
1004
|
-
var __velarListRegExpPrototype = __velarCollectionHostCall2(__velarCollectionGetPrototypeOf2, __velarCollectionNativeObject2, [__velarListSurrogatePattern]);
|
|
1005
|
-
var __velarListSurrogateExecOperation = __velarCollectionListGetOwnPropertyDescriptor(__velarListRegExpPrototype, "exec")?.value;
|
|
1006
|
-
function __velarListSize(value) {
|
|
1007
|
-
value = __velarValidateOwnedList(value, "List size");
|
|
1008
|
-
__velarReactiveCollectionTrack(value, __velarReactiveStructureKey);
|
|
1009
|
-
return value.length;
|
|
1010
|
-
}
|
|
1011
|
-
var __VelarIndexError = class extends __velarCollectionListNativeRangeError {
|
|
1012
|
-
constructor(message) {
|
|
1013
|
-
super(message);
|
|
1014
|
-
this.name = "IndexError";
|
|
1015
|
-
}
|
|
1016
|
-
};
|
|
1017
|
-
__velarCollectionListDefineProperty(__VelarIndexError, "name", { value: "IndexError", writable: false, enumerable: false, configurable: true });
|
|
1018
|
-
function __velarStrictListIndex(value, requested) {
|
|
1019
|
-
if (!__velarCollectionListIsInteger(requested)) throw new __VelarIndexError("List index must be an in-range integer");
|
|
1020
|
-
const index = requested < 0 ? value.length + requested : requested;
|
|
1021
|
-
if (index < 0 || index >= value.length) throw new __VelarIndexError("List index must be an in-range integer");
|
|
1022
|
-
return index;
|
|
1023
|
-
}
|
|
1024
|
-
function __velarListIndexGet(value, index) {
|
|
1025
|
-
value = __velarReactiveRaw(value);
|
|
1026
|
-
const tier = __velarListTier(value);
|
|
1027
|
-
if (tier === 1) {
|
|
1028
|
-
index = __velarStrictListIndex(value, index);
|
|
1029
|
-
return __velarReactiveCollectionRead(value, index, __velarOwnedListElement(value, index, "List index"));
|
|
1030
|
-
}
|
|
1031
|
-
value = __velarValidateListTier(value, "List index", tier);
|
|
1032
|
-
index = __velarStrictListIndex(value, index);
|
|
1033
|
-
return __velarReactiveCollectionRead(value, index, __velarCheckedListElement(value, index, "List index"));
|
|
1034
|
-
}
|
|
1035
|
-
function __velarListAppend(value, item) {
|
|
1036
|
-
value = __velarValidateMutableList(value, "List.append");
|
|
1037
|
-
if (value.length >= __velarMaxCollectionItems) throw new __velarCollectionListNativeRangeError("A List cannot exceed 1000000 items");
|
|
1038
|
-
item = __velarReactiveRaw(item);
|
|
1039
|
-
const index = value.length;
|
|
1040
|
-
__velarCollectionListDefineProperty(value, index, { value: item, writable: true, enumerable: true, configurable: true });
|
|
1041
|
-
__velarReactiveCollectionLink(value, item);
|
|
1042
|
-
__velarReactiveCollectionTrigger(value, index, true, true, index);
|
|
1043
|
-
__velarMarkOwnedList(value);
|
|
1044
|
-
return null;
|
|
1045
|
-
}
|
|
1046
|
-
function __velarListMap(value, transform) {
|
|
1047
|
-
const items = __velarCopyList(value, "List.map");
|
|
1048
|
-
__velarReactiveCollectionTrack(value);
|
|
1049
|
-
const output = new __velarCollectionNativeArray2(items.length);
|
|
1050
|
-
for (let index = 0; index < items.length; index += 1) {
|
|
1051
|
-
const item = transform(__velarReactiveCollectionRead(value, index, items[index]));
|
|
1052
|
-
output[index] = item === void 0 ? null : __velarReactiveRaw(item);
|
|
1053
|
-
}
|
|
1054
|
-
return __velarAdoptList(output);
|
|
1055
|
-
}
|
|
1056
|
-
|
|
1057
|
-
// src/src/index.vel
|
|
1058
|
-
import { DatabaseExecutor, DatabaseStatement, trustedSql } from "@velarscript-labs/database";
|
|
1059
|
-
|
|
1060
|
-
// velar-embedded:src/index.2ibbmz.embedded-1.js
|
|
1061
|
-
import { AsyncLocalStorage } from "node:async_hooks";
|
|
1062
|
-
import { Worker } from "node:worker_threads";
|
|
1063
|
-
var TOKEN = Object.freeze({});
|
|
1064
|
-
var connectionStates = /* @__PURE__ */ new WeakMap();
|
|
1065
|
-
var transactionStates = /* @__PURE__ */ new WeakMap();
|
|
1066
|
-
var transactionContext = new AsyncLocalStorage();
|
|
1067
|
-
var NativeSqliteError = class extends Error {
|
|
1068
|
-
constructor(message = "SQLite operation failed", sqliteCode = null, operation = "unknown", retryable = false) {
|
|
1069
|
-
super(message);
|
|
1070
|
-
this.name = "NativeSqliteError";
|
|
1071
|
-
this.sqliteCode = sqliteCode;
|
|
1072
|
-
this.operation = operation;
|
|
1073
|
-
this.retryable = retryable;
|
|
1074
|
-
}
|
|
1075
|
-
};
|
|
1076
|
-
var NativeSqliteBackpressureError = class extends NativeSqliteError {
|
|
1077
|
-
constructor(message = "SQLite queue is full") {
|
|
1078
|
-
super(message, "SQLITE_BACKPRESSURE", "queue", true);
|
|
1079
|
-
this.name = "NativeSqliteBackpressureError";
|
|
1080
|
-
}
|
|
1081
|
-
};
|
|
1082
|
-
var NativeSqliteConcurrencyError = class extends NativeSqliteError {
|
|
1083
|
-
constructor(message = "SQLite connection cannot be used from its transaction callback") {
|
|
1084
|
-
super(message, "SQLITE_CONCURRENCY", "transaction", true);
|
|
1085
|
-
this.name = "NativeSqliteConcurrencyError";
|
|
1086
|
-
}
|
|
1087
|
-
};
|
|
1088
|
-
function integer(value, fallback, minimum, maximum, label) {
|
|
1089
|
-
const selected = value == null ? fallback : value;
|
|
1090
|
-
if (!Number.isSafeInteger(selected) || selected < minimum || selected > maximum) {
|
|
1091
|
-
throw new TypeError(label + " must be an integer from " + minimum + " through " + maximum);
|
|
1092
|
-
}
|
|
1093
|
-
return selected;
|
|
1094
|
-
}
|
|
1095
|
-
function checkedOptions(value) {
|
|
1096
|
-
if (value === null || typeof value !== "object" || Array.isArray(value)) throw new TypeError("SQLite options must be a record");
|
|
1097
|
-
const allowed = /* @__PURE__ */ new Set(["busyTimeoutMilliseconds", "queueCapacity", "maxRows", "maxResultBytes", "statementCacheCapacity", "journalMode", "readOnly"]);
|
|
1098
|
-
for (const key of Object.keys(value)) if (!allowed.has(key)) throw new TypeError("Unknown SQLite option " + key);
|
|
1099
|
-
const journalModes = /* @__PURE__ */ new Set(["delete", "truncate", "persist", "memory", "wal", "off"]);
|
|
1100
|
-
const journalMode = value.journalMode == null ? null : value.journalMode;
|
|
1101
|
-
if (journalMode !== null && (typeof journalMode !== "string" || !journalModes.has(journalMode))) throw new TypeError("SQLite journalMode must name a supported mode");
|
|
1102
|
-
if (value.readOnly != null && typeof value.readOnly !== "boolean") throw new TypeError("SQLite readOnly must be bool");
|
|
1103
|
-
if (value.readOnly === true && journalMode !== null) throw new TypeError("SQLite readOnly connections cannot change journalMode");
|
|
1104
|
-
return {
|
|
1105
|
-
busyTimeoutMilliseconds: integer(value.busyTimeoutMilliseconds, 2e3, 1, 6e4, "SQLite busy timeout"),
|
|
1106
|
-
queueCapacity: integer(value.queueCapacity, 64, 1, 1024, "SQLite queue capacity"),
|
|
1107
|
-
maxRows: integer(value.maxRows, 1e4, 1, 1e6, "SQLite row limit"),
|
|
1108
|
-
maxResultBytes: integer(value.maxResultBytes, 64 * 1024 * 1024, 1, 128 * 1024 * 1024, "SQLite result byte limit"),
|
|
1109
|
-
statementCacheCapacity: integer(value.statementCacheCapacity, 128, 1, 1024, "SQLite statement cache capacity"),
|
|
1110
|
-
journalMode,
|
|
1111
|
-
readOnly: value.readOnly === true
|
|
1112
|
-
};
|
|
1113
|
-
}
|
|
1114
|
-
function workerMain() {
|
|
1115
|
-
const { Buffer } = (0, globalThis.require)("node:buffer");
|
|
1116
|
-
const { parentPort, workerData } = (0, globalThis.require)("node:worker_threads");
|
|
1117
|
-
const { DatabaseSync, constants } = (0, globalThis.require)("node:sqlite");
|
|
1118
|
-
const { parseStmt } = (0, globalThis.require)("sqlite3-parser");
|
|
1119
|
-
let database = null;
|
|
1120
|
-
let statements = null;
|
|
1121
|
-
let closed = false;
|
|
1122
|
-
function failure(message, code, operation, retryable = false) {
|
|
1123
|
-
const error = new Error(message);
|
|
1124
|
-
error.code = code;
|
|
1125
|
-
error.operation = operation;
|
|
1126
|
-
error.retryable = retryable;
|
|
1127
|
-
return error;
|
|
1128
|
-
}
|
|
1129
|
-
function errorData(error, operation) {
|
|
1130
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
1131
|
-
const rawCode = error && typeof error === "object" ? error.errstr ?? error.code ?? null : null;
|
|
1132
|
-
const code = rawCode == null ? null : String(rawCode);
|
|
1133
|
-
const upper = code == null ? "" : code.toUpperCase();
|
|
1134
|
-
return {
|
|
1135
|
-
message,
|
|
1136
|
-
sqliteCode: code,
|
|
1137
|
-
operation: error && typeof error.operation === "string" ? error.operation : operation,
|
|
1138
|
-
retryable: error && error.retryable === true || upper.includes("BUSY") || upper.includes("LOCKED")
|
|
1139
|
-
};
|
|
1140
|
-
}
|
|
1141
|
-
function parameter(value, budget) {
|
|
1142
|
-
if (value === null) return null;
|
|
1143
|
-
if (typeof value === "boolean") return value ? 1 : 0;
|
|
1144
|
-
if (typeof value === "string") {
|
|
1145
|
-
budget.value += Buffer.byteLength(value, "utf8");
|
|
1146
|
-
return value;
|
|
1147
|
-
}
|
|
1148
|
-
if (typeof value === "number") {
|
|
1149
|
-
if (!Number.isFinite(value)) throw failure("SQLite number parameters must be finite", "SQLITE_INPUT", "params");
|
|
1150
|
-
if (Number.isInteger(value) && !Number.isSafeInteger(value)) throw failure("SQLite integer parameters must be safe integers", "SQLITE_INPUT", "params");
|
|
1151
|
-
budget.value += 8;
|
|
1152
|
-
return value;
|
|
1153
|
-
}
|
|
1154
|
-
if (value instanceof Uint8Array) {
|
|
1155
|
-
budget.value += value.byteLength;
|
|
1156
|
-
return value;
|
|
1157
|
-
}
|
|
1158
|
-
throw failure("SQLite parameters support only null, bool, string, finite number, and Bytes", "SQLITE_INPUT", "params");
|
|
1159
|
-
}
|
|
1160
|
-
function parameters(value) {
|
|
1161
|
-
if (!Array.isArray(value) || value.length > 999) throw failure("SQLite parameters must be a List with at most 999 values", "SQLITE_INPUT", "params");
|
|
1162
|
-
const budget = { value: 0 };
|
|
1163
|
-
const output = value.map((item) => parameter(item, budget));
|
|
1164
|
-
if (budget.value > workerData.maxResultBytes) throw failure("SQLite parameters exceed the connection byte limit", "SQLITE_INPUT", "params");
|
|
1165
|
-
return output;
|
|
1166
|
-
}
|
|
1167
|
-
function statementParts(rawFragments, rawParameters, operation) {
|
|
1168
|
-
if (!Array.isArray(rawFragments) || rawFragments.length !== rawParameters.length + 1 || rawFragments.length > 1e3) {
|
|
1169
|
-
throw failure("SQLite statements require exactly one more SQL fragment than bound parameters", "SQLITE_INPUT", operation);
|
|
1170
|
-
}
|
|
1171
|
-
let sourceBytes = 0;
|
|
1172
|
-
const fragments = rawFragments.map((fragment) => {
|
|
1173
|
-
if (typeof fragment !== "string" || fragment.includes("\0") || fragment.includes("?")) {
|
|
1174
|
-
throw failure("SQLite SQL fragments must be text without NUL or raw parameter placeholders", "SQLITE_INPUT", operation);
|
|
1175
|
-
}
|
|
1176
|
-
sourceBytes += Buffer.byteLength(fragment, "utf8");
|
|
1177
|
-
return fragment;
|
|
1178
|
-
});
|
|
1179
|
-
if (sourceBytes === 0 || sourceBytes > 1024 * 1024) throw failure("SQLite SQL must be non-empty text no longer than 1 MiB", "SQLITE_INPUT", operation);
|
|
1180
|
-
const bound = parameters(rawParameters);
|
|
1181
|
-
const source = fragments.join("?");
|
|
1182
|
-
const parsed = parseStmt(source);
|
|
1183
|
-
if (parsed.status !== "ok") {
|
|
1184
|
-
const message = parsed.errors.length === 0 ? "invalid statement" : parsed.errors[0].message;
|
|
1185
|
-
throw failure("SQLite requires exactly one valid statement: " + message, "SQLITE_INPUT", operation);
|
|
1186
|
-
}
|
|
1187
|
-
return { fragments, bound };
|
|
1188
|
-
}
|
|
1189
|
-
function count(value, label) {
|
|
1190
|
-
const number = typeof value === "bigint" ? Number(value) : value;
|
|
1191
|
-
if (!Number.isSafeInteger(number) || number < 0) throw failure(label + " is outside VelarScript's safe integer range", "SQLITE_INTEGER_RANGE", "result");
|
|
1192
|
-
return number;
|
|
1193
|
-
}
|
|
1194
|
-
function resultValue(value, budget, field) {
|
|
1195
|
-
if (value === null) return null;
|
|
1196
|
-
if (typeof value === "string") {
|
|
1197
|
-
budget.value += Buffer.byteLength(value, "utf8");
|
|
1198
|
-
return value;
|
|
1199
|
-
}
|
|
1200
|
-
if (typeof value === "number") {
|
|
1201
|
-
if (!Number.isFinite(value)) throw failure("SQLite returned a non-finite number in " + field, "SQLITE_RESULT", "result");
|
|
1202
|
-
budget.value += 8;
|
|
1203
|
-
return value;
|
|
1204
|
-
}
|
|
1205
|
-
if (typeof value === "bigint") {
|
|
1206
|
-
const number = Number(value);
|
|
1207
|
-
if (!Number.isSafeInteger(number)) throw failure("SQLite returned an integer outside VelarScript's safe range in " + field, "SQLITE_INTEGER_RANGE", "result");
|
|
1208
|
-
budget.value += 8;
|
|
1209
|
-
return number;
|
|
1210
|
-
}
|
|
1211
|
-
if (value instanceof Uint8Array) {
|
|
1212
|
-
budget.value += value.byteLength;
|
|
1213
|
-
return value;
|
|
1214
|
-
}
|
|
1215
|
-
throw failure("SQLite returned an unsupported value in " + field, "SQLITE_RESULT", "result");
|
|
1216
|
-
}
|
|
1217
|
-
function resultRow(value, budget) {
|
|
1218
|
-
if (value === null || typeof value !== "object" || Array.isArray(value)) throw failure("SQLite returned a non-record row", "SQLITE_RESULT", "result");
|
|
1219
|
-
const output = /* @__PURE__ */ Object.create(null);
|
|
1220
|
-
for (const key of Object.keys(value)) {
|
|
1221
|
-
budget.value += Buffer.byteLength(key, "utf8");
|
|
1222
|
-
output[key] = resultValue(value[key], budget, key);
|
|
1223
|
-
if (budget.value > workerData.maxResultBytes) throw failure("SQLite result exceeds the connection byte limit", "SQLITE_RESULT_LIMIT", "result");
|
|
1224
|
-
}
|
|
1225
|
-
return output;
|
|
1226
|
-
}
|
|
1227
|
-
function execute(message) {
|
|
1228
|
-
const statement = statementParts(message.fragments, message.params, "execute");
|
|
1229
|
-
const result = statements.run(statement.fragments, ...statement.bound);
|
|
1230
|
-
return count(result.changes, "SQLite affected row count");
|
|
1231
|
-
}
|
|
1232
|
-
function one(message) {
|
|
1233
|
-
const statement = statementParts(message.fragments, message.params, "one");
|
|
1234
|
-
const row = statements.get(statement.fragments, ...statement.bound);
|
|
1235
|
-
if (row === void 0) return null;
|
|
1236
|
-
return resultRow(row, { value: 0 });
|
|
1237
|
-
}
|
|
1238
|
-
function all(message) {
|
|
1239
|
-
const statement = statementParts(message.fragments, message.params, "all");
|
|
1240
|
-
const rows = [];
|
|
1241
|
-
const budget = { value: 0 };
|
|
1242
|
-
for (const row of statements.iterate(statement.fragments, ...statement.bound)) {
|
|
1243
|
-
if (rows.length >= workerData.maxRows) throw failure("SQLite result exceeds the connection row limit", "SQLITE_ROW_LIMIT", "all");
|
|
1244
|
-
rows.push(resultRow(row, budget));
|
|
1245
|
-
}
|
|
1246
|
-
return rows;
|
|
1247
|
-
}
|
|
1248
|
-
function dispatch(message) {
|
|
1249
|
-
if (closed) throw failure("SQLite connection is closed", "SQLITE_CLOSED", message.operation);
|
|
1250
|
-
if (message.operation === "execute") return execute(message);
|
|
1251
|
-
if (message.operation === "one") return one(message);
|
|
1252
|
-
if (message.operation === "all") return all(message);
|
|
1253
|
-
if (message.operation === "begin") {
|
|
1254
|
-
if (database.isTransaction) throw failure("SQLite transaction is already active", "SQLITE_TRANSACTION", "begin", true);
|
|
1255
|
-
database.exec("BEGIN IMMEDIATE");
|
|
1256
|
-
return null;
|
|
1257
|
-
}
|
|
1258
|
-
if (message.operation === "commit") {
|
|
1259
|
-
if (!database.isTransaction) throw failure("SQLite transaction is not active", "SQLITE_TRANSACTION", "commit");
|
|
1260
|
-
database.exec("COMMIT");
|
|
1261
|
-
return null;
|
|
1262
|
-
}
|
|
1263
|
-
if (message.operation === "rollback") {
|
|
1264
|
-
if (database.isTransaction) database.exec("ROLLBACK");
|
|
1265
|
-
return null;
|
|
1266
|
-
}
|
|
1267
|
-
if (message.operation === "close") {
|
|
1268
|
-
try {
|
|
1269
|
-
if (database.isTransaction) database.exec("ROLLBACK");
|
|
1270
|
-
} finally {
|
|
1271
|
-
database.close();
|
|
1272
|
-
closed = true;
|
|
1273
|
-
}
|
|
1274
|
-
return null;
|
|
1275
|
-
}
|
|
1276
|
-
throw failure("Unknown SQLite operation", "SQLITE_PROTOCOL", String(message.operation));
|
|
1277
|
-
}
|
|
1278
|
-
try {
|
|
1279
|
-
database = new DatabaseSync(workerData.path, {
|
|
1280
|
-
timeout: workerData.busyTimeoutMilliseconds,
|
|
1281
|
-
readOnly: workerData.readOnly,
|
|
1282
|
-
enableForeignKeyConstraints: true,
|
|
1283
|
-
enableDoubleQuotedStringLiterals: false,
|
|
1284
|
-
allowExtension: false,
|
|
1285
|
-
readBigInts: true,
|
|
1286
|
-
allowBareNamedParameters: false,
|
|
1287
|
-
allowUnknownNamedParameters: false,
|
|
1288
|
-
defensive: true,
|
|
1289
|
-
limits: {
|
|
1290
|
-
length: workerData.maxResultBytes,
|
|
1291
|
-
sqlLength: 1024 * 1024,
|
|
1292
|
-
column: 2e3,
|
|
1293
|
-
exprDepth: 1e3,
|
|
1294
|
-
compoundSelect: 500,
|
|
1295
|
-
vdbeOp: 25e4,
|
|
1296
|
-
functionArg: 1e3,
|
|
1297
|
-
attach: 0,
|
|
1298
|
-
likePatternLength: 5e4,
|
|
1299
|
-
variableNumber: 999,
|
|
1300
|
-
triggerDepth: 100
|
|
1301
|
-
}
|
|
1302
|
-
});
|
|
1303
|
-
database.enableDefensive(true);
|
|
1304
|
-
database.enableLoadExtension(false);
|
|
1305
|
-
database.setAuthorizer((actionCode, arg1, arg2) => {
|
|
1306
|
-
if (actionCode === constants.SQLITE_ATTACH || actionCode === constants.SQLITE_DETACH) return constants.SQLITE_DENY;
|
|
1307
|
-
if (actionCode === constants.SQLITE_FUNCTION && typeof arg2 === "string" && arg2.toLowerCase() === "load_extension") return constants.SQLITE_DENY;
|
|
1308
|
-
return constants.SQLITE_OK;
|
|
1309
|
-
});
|
|
1310
|
-
statements = database.createTagStore(workerData.statementCacheCapacity);
|
|
1311
|
-
if (workerData.journalMode !== null) database.exec("PRAGMA journal_mode = " + workerData.journalMode.toUpperCase());
|
|
1312
|
-
parentPort.postMessage({ kind: "ready" });
|
|
1313
|
-
} catch (error) {
|
|
1314
|
-
parentPort.postMessage({ kind: "ready", error: errorData(error, "open") });
|
|
1315
|
-
parentPort.close();
|
|
1316
|
-
return;
|
|
1317
|
-
}
|
|
1318
|
-
parentPort.on("message", (message) => {
|
|
1319
|
-
try {
|
|
1320
|
-
const value = dispatch(message);
|
|
1321
|
-
parentPort.postMessage({ kind: "response", id: message.id, value });
|
|
1322
|
-
if (message.operation === "close") parentPort.close();
|
|
1323
|
-
} catch (error) {
|
|
1324
|
-
parentPort.postMessage({ kind: "response", id: message.id, error: errorData(error, message.operation) });
|
|
1325
|
-
}
|
|
1326
|
-
});
|
|
1327
|
-
}
|
|
1328
|
-
function nativeError(value) {
|
|
1329
|
-
return new NativeSqliteError(value.message, value.sqliteCode, value.operation, value.retryable);
|
|
1330
|
-
}
|
|
1331
|
-
function failPending(state, error) {
|
|
1332
|
-
if (state.readyReject !== null) {
|
|
1333
|
-
state.readyReject(error);
|
|
1334
|
-
state.readyReject = null;
|
|
1335
|
-
state.readyResolve = null;
|
|
1336
|
-
}
|
|
1337
|
-
for (const pending of state.pending.values()) pending.reject(error);
|
|
1338
|
-
state.pending.clear();
|
|
1339
|
-
}
|
|
1340
|
-
function request(state, operation, fragments = [""], params = []) {
|
|
1341
|
-
if (state.closed) return Promise.reject(new NativeSqliteError("SQLite connection is closed", "SQLITE_CLOSED", operation));
|
|
1342
|
-
const id = state.nextId++;
|
|
1343
|
-
return new Promise((resolve, reject) => {
|
|
1344
|
-
state.pending.set(id, { resolve, reject });
|
|
1345
|
-
try {
|
|
1346
|
-
state.worker.postMessage({ id, operation, fragments, params });
|
|
1347
|
-
} catch (error) {
|
|
1348
|
-
state.pending.delete(id);
|
|
1349
|
-
reject(error);
|
|
1350
|
-
}
|
|
1351
|
-
});
|
|
1352
|
-
}
|
|
1353
|
-
function stateOf(connection) {
|
|
1354
|
-
const state = connectionStates.get(connection);
|
|
1355
|
-
if (!state) throw new TypeError("Invalid SQLite connection");
|
|
1356
|
-
return state;
|
|
1357
|
-
}
|
|
1358
|
-
function transactionStateOf(transaction) {
|
|
1359
|
-
const state = transactionStates.get(transaction);
|
|
1360
|
-
if (!state || !state.active) throw new NativeSqliteConcurrencyError("SQLite transaction is no longer active");
|
|
1361
|
-
return state;
|
|
1362
|
-
}
|
|
1363
|
-
function transactionRequest(transaction, operation, fragments = [""], params = []) {
|
|
1364
|
-
const state = transactionStateOf(transaction);
|
|
1365
|
-
if (state.busy) return Promise.reject(new NativeSqliteConcurrencyError("SQLite transaction operations must be awaited one at a time"));
|
|
1366
|
-
state.busy = true;
|
|
1367
|
-
return request(state.connection, operation, fragments, params).finally(() => {
|
|
1368
|
-
state.busy = false;
|
|
1369
|
-
});
|
|
1370
|
-
}
|
|
1371
|
-
function enqueue(state, operation) {
|
|
1372
|
-
if (state.closed || state.closing) return Promise.reject(new NativeSqliteError("SQLite connection is closed", "SQLITE_CLOSED", "queue"));
|
|
1373
|
-
if (transactionContext.getStore() === state) return Promise.reject(new NativeSqliteConcurrencyError());
|
|
1374
|
-
if (state.queued >= state.queueCapacity) return Promise.reject(new NativeSqliteBackpressureError());
|
|
1375
|
-
state.queued += 1;
|
|
1376
|
-
const running = state.tail.then(operation, operation);
|
|
1377
|
-
state.tail = running.then(() => null, () => null);
|
|
1378
|
-
return running.finally(() => {
|
|
1379
|
-
state.queued -= 1;
|
|
1380
|
-
});
|
|
1381
|
-
}
|
|
1382
|
-
var NativeSqliteTransaction = class {
|
|
1383
|
-
constructor(token, state) {
|
|
1384
|
-
if (token !== TOKEN) throw new TypeError("SQLite transactions are created by connection.transaction");
|
|
1385
|
-
transactionStates.set(this, state);
|
|
1386
|
-
}
|
|
1387
|
-
execute(fragments, params = []) {
|
|
1388
|
-
return transactionRequest(this, "execute", fragments, params);
|
|
1389
|
-
}
|
|
1390
|
-
one(fragments, params = []) {
|
|
1391
|
-
return transactionRequest(this, "one", fragments, params);
|
|
1392
|
-
}
|
|
1393
|
-
all(fragments, params = []) {
|
|
1394
|
-
return transactionRequest(this, "all", fragments, params);
|
|
1395
|
-
}
|
|
1396
|
-
};
|
|
1397
|
-
var NativeSqliteConnection = class {
|
|
1398
|
-
constructor(token, state) {
|
|
1399
|
-
if (token !== TOKEN) throw new TypeError("Use openSqlite to create a SQLite connection");
|
|
1400
|
-
connectionStates.set(this, state);
|
|
1401
|
-
}
|
|
1402
|
-
execute(fragments, params = []) {
|
|
1403
|
-
const state = stateOf(this);
|
|
1404
|
-
return enqueue(state, () => request(state, "execute", fragments, params));
|
|
1405
|
-
}
|
|
1406
|
-
one(fragments, params = []) {
|
|
1407
|
-
const state = stateOf(this);
|
|
1408
|
-
return enqueue(state, () => request(state, "one", fragments, params));
|
|
1409
|
-
}
|
|
1410
|
-
all(fragments, params = []) {
|
|
1411
|
-
const state = stateOf(this);
|
|
1412
|
-
return enqueue(state, () => request(state, "all", fragments, params));
|
|
1413
|
-
}
|
|
1414
|
-
transaction(operation) {
|
|
1415
|
-
if (typeof operation !== "function") return Promise.reject(new TypeError("SQLite transaction requires an async operation"));
|
|
1416
|
-
const state = stateOf(this);
|
|
1417
|
-
return enqueue(state, async () => {
|
|
1418
|
-
await request(state, "begin");
|
|
1419
|
-
const transactionState = { connection: state, active: true, busy: false };
|
|
1420
|
-
const transaction = new NativeSqliteTransaction(TOKEN, transactionState);
|
|
1421
|
-
try {
|
|
1422
|
-
await transactionContext.run(state, () => operation(transaction));
|
|
1423
|
-
await transactionRequest(transaction, "commit");
|
|
1424
|
-
transactionState.active = false;
|
|
1425
|
-
return null;
|
|
1426
|
-
} catch (error) {
|
|
1427
|
-
try {
|
|
1428
|
-
if (transactionState.active) await transactionRequest(transaction, "rollback");
|
|
1429
|
-
} catch {
|
|
1430
|
-
state.closing = true;
|
|
1431
|
-
state.worker.terminate();
|
|
1432
|
-
} finally {
|
|
1433
|
-
transactionState.active = false;
|
|
1434
|
-
}
|
|
1435
|
-
throw error;
|
|
1436
|
-
}
|
|
1437
|
-
});
|
|
1438
|
-
}
|
|
1439
|
-
close() {
|
|
1440
|
-
const state = stateOf(this);
|
|
1441
|
-
if (state.closePromise !== null) return state.closePromise;
|
|
1442
|
-
if (transactionContext.getStore() === state) return Promise.reject(new NativeSqliteConcurrencyError("SQLite connection cannot close inside its transaction callback"));
|
|
1443
|
-
state.closing = true;
|
|
1444
|
-
state.closePromise = state.tail.then(async () => {
|
|
1445
|
-
try {
|
|
1446
|
-
if (!state.closed) await request(state, "close");
|
|
1447
|
-
await state.exited;
|
|
1448
|
-
} finally {
|
|
1449
|
-
state.closed = true;
|
|
1450
|
-
}
|
|
1451
|
-
});
|
|
1452
|
-
return state.closePromise;
|
|
1453
|
-
}
|
|
1454
|
-
};
|
|
1455
|
-
async function openNativeSqlite(path, options = {}) {
|
|
1456
|
-
if (typeof path !== "string" || path.trim() === "" || path.length > 4096 || path.includes("\0")) throw new TypeError("SQLite path must be non-empty bounded text");
|
|
1457
|
-
const checked = checkedOptions(options);
|
|
1458
|
-
const source = "(" + workerMain.toString() + ")()";
|
|
1459
|
-
const worker = new Worker(source, { eval: true, workerData: { path, ...checked } });
|
|
1460
|
-
let readyResolve;
|
|
1461
|
-
let readyReject;
|
|
1462
|
-
let exitResolve;
|
|
1463
|
-
const ready = new Promise((resolve, reject) => {
|
|
1464
|
-
readyResolve = resolve;
|
|
1465
|
-
readyReject = reject;
|
|
1466
|
-
});
|
|
1467
|
-
const exited = new Promise((resolve) => {
|
|
1468
|
-
exitResolve = resolve;
|
|
1469
|
-
});
|
|
1470
|
-
const state = {
|
|
1471
|
-
worker,
|
|
1472
|
-
readyResolve,
|
|
1473
|
-
readyReject,
|
|
1474
|
-
exited,
|
|
1475
|
-
pending: /* @__PURE__ */ new Map(),
|
|
1476
|
-
nextId: 1,
|
|
1477
|
-
queueCapacity: checked.queueCapacity,
|
|
1478
|
-
queued: 0,
|
|
1479
|
-
tail: Promise.resolve(),
|
|
1480
|
-
closing: false,
|
|
1481
|
-
closed: false,
|
|
1482
|
-
closePromise: null
|
|
1483
|
-
};
|
|
1484
|
-
worker.on("message", (message) => {
|
|
1485
|
-
if (message.kind === "ready") {
|
|
1486
|
-
const resolve = state.readyResolve;
|
|
1487
|
-
const reject = state.readyReject;
|
|
1488
|
-
state.readyResolve = null;
|
|
1489
|
-
state.readyReject = null;
|
|
1490
|
-
if (message.error) reject(nativeError(message.error));
|
|
1491
|
-
else resolve();
|
|
1492
|
-
return;
|
|
1493
|
-
}
|
|
1494
|
-
if (message.kind !== "response") return;
|
|
1495
|
-
const pending = state.pending.get(message.id);
|
|
1496
|
-
if (!pending) return;
|
|
1497
|
-
state.pending.delete(message.id);
|
|
1498
|
-
if (message.error) pending.reject(nativeError(message.error));
|
|
1499
|
-
else pending.resolve(message.value);
|
|
1500
|
-
});
|
|
1501
|
-
worker.on("error", (error) => {
|
|
1502
|
-
state.closed = true;
|
|
1503
|
-
failPending(state, new NativeSqliteError(error.message, "SQLITE_WORKER", "worker"));
|
|
1504
|
-
});
|
|
1505
|
-
worker.on("exit", (code) => {
|
|
1506
|
-
exitResolve(code);
|
|
1507
|
-
if (code !== 0 && !state.closed) {
|
|
1508
|
-
state.closed = true;
|
|
1509
|
-
failPending(state, new NativeSqliteError("SQLite Worker exited with code " + code, "SQLITE_WORKER", "worker"));
|
|
1510
|
-
}
|
|
1511
|
-
});
|
|
1512
|
-
await ready;
|
|
1513
|
-
return new NativeSqliteConnection(TOKEN, state);
|
|
1514
|
-
}
|
|
1515
|
-
|
|
1516
|
-
// src/src/index.vel
|
|
1517
|
-
var SqliteJournalMode = __velarRegisterRuntimeType(__velarValidationFreeze({
|
|
1518
|
-
delete: "delete",
|
|
1519
|
-
truncate: "truncate",
|
|
1520
|
-
persist: "persist",
|
|
1521
|
-
memory: "memory",
|
|
1522
|
-
wal: "wal",
|
|
1523
|
-
off: "off",
|
|
1524
|
-
is(value) {
|
|
1525
|
-
return value === "delete" || value === "truncate" || value === "persist" || value === "memory" || value === "wal" || value === "off";
|
|
1526
|
-
},
|
|
1527
|
-
parse(value) {
|
|
1528
|
-
if (!SqliteJournalMode.is(value)) {
|
|
1529
|
-
throw new __VelarValidationError("Value does not match SqliteJournalMode", { path: "SqliteJournalMode" });
|
|
1530
|
-
}
|
|
1531
|
-
return value;
|
|
1532
|
-
},
|
|
1533
|
-
copy(value) {
|
|
1534
|
-
return value;
|
|
1535
|
-
},
|
|
1536
|
-
values() {
|
|
1537
|
-
return ["delete", "truncate", "persist", "memory", "wal", "off"];
|
|
1538
|
-
}
|
|
1539
|
-
}));
|
|
1540
|
-
function __velarTypeExplain_SqliteOptions(value) {
|
|
1541
|
-
if (value === null || typeof value !== "object" || __velarValidationIsArray(value) || !__velarValidationIsPlainObject(value)) {
|
|
1542
|
-
return { path: "SqliteOptions", field: null, reason: "the value is not a record" };
|
|
1543
|
-
}
|
|
1544
|
-
{
|
|
1545
|
-
const __velarExplainField = __velarValidationOwnDescriptor(value, "busyTimeoutMilliseconds");
|
|
1546
|
-
if (__velarExplainField !== void 0 && !(__velarExplainField.enumerable && "value" in __velarExplainField && (__velarExplainField.value == null || typeof __velarExplainField.value === "number"))) {
|
|
1547
|
-
return { path: "SqliteOptions.busyTimeoutMilliseconds", field: "busyTimeoutMilliseconds", reason: "field 'busyTimeoutMilliseconds' does not match number?" };
|
|
1548
|
-
}
|
|
1549
|
-
}
|
|
1550
|
-
{
|
|
1551
|
-
const __velarExplainField = __velarValidationOwnDescriptor(value, "queueCapacity");
|
|
1552
|
-
if (__velarExplainField !== void 0 && !(__velarExplainField.enumerable && "value" in __velarExplainField && (__velarExplainField.value == null || typeof __velarExplainField.value === "number"))) {
|
|
1553
|
-
return { path: "SqliteOptions.queueCapacity", field: "queueCapacity", reason: "field 'queueCapacity' does not match number?" };
|
|
1554
|
-
}
|
|
1555
|
-
}
|
|
1556
|
-
{
|
|
1557
|
-
const __velarExplainField = __velarValidationOwnDescriptor(value, "maxRows");
|
|
1558
|
-
if (__velarExplainField !== void 0 && !(__velarExplainField.enumerable && "value" in __velarExplainField && (__velarExplainField.value == null || typeof __velarExplainField.value === "number"))) {
|
|
1559
|
-
return { path: "SqliteOptions.maxRows", field: "maxRows", reason: "field 'maxRows' does not match number?" };
|
|
1560
|
-
}
|
|
1561
|
-
}
|
|
1562
|
-
{
|
|
1563
|
-
const __velarExplainField = __velarValidationOwnDescriptor(value, "maxResultBytes");
|
|
1564
|
-
if (__velarExplainField !== void 0 && !(__velarExplainField.enumerable && "value" in __velarExplainField && (__velarExplainField.value == null || typeof __velarExplainField.value === "number"))) {
|
|
1565
|
-
return { path: "SqliteOptions.maxResultBytes", field: "maxResultBytes", reason: "field 'maxResultBytes' does not match number?" };
|
|
1566
|
-
}
|
|
1567
|
-
}
|
|
1568
|
-
{
|
|
1569
|
-
const __velarExplainField = __velarValidationOwnDescriptor(value, "statementCacheCapacity");
|
|
1570
|
-
if (__velarExplainField !== void 0 && !(__velarExplainField.enumerable && "value" in __velarExplainField && (__velarExplainField.value == null || typeof __velarExplainField.value === "number"))) {
|
|
1571
|
-
return { path: "SqliteOptions.statementCacheCapacity", field: "statementCacheCapacity", reason: "field 'statementCacheCapacity' does not match number?" };
|
|
1572
|
-
}
|
|
1573
|
-
}
|
|
1574
|
-
{
|
|
1575
|
-
const __velarExplainField = __velarValidationOwnDescriptor(value, "journalMode");
|
|
1576
|
-
if (__velarExplainField !== void 0 && !(__velarExplainField.enumerable && "value" in __velarExplainField && (__velarExplainField.value == null || SqliteJournalMode.is(__velarExplainField.value)))) {
|
|
1577
|
-
return { path: "SqliteOptions.journalMode", field: "journalMode", reason: "field 'journalMode' does not match SqliteJournalMode?" };
|
|
1578
|
-
}
|
|
1579
|
-
}
|
|
1580
|
-
{
|
|
1581
|
-
const __velarExplainField = __velarValidationOwnDescriptor(value, "readOnly");
|
|
1582
|
-
if (__velarExplainField !== void 0 && !(__velarExplainField.enumerable && "value" in __velarExplainField && (__velarExplainField.value == null || typeof __velarExplainField.value === "boolean"))) {
|
|
1583
|
-
return { path: "SqliteOptions.readOnly", field: "readOnly", reason: "field 'readOnly' does not match bool?" };
|
|
1584
|
-
}
|
|
1585
|
-
}
|
|
1586
|
-
return { path: "SqliteOptions", field: null, reason: null };
|
|
1587
|
-
}
|
|
1588
|
-
function __velarTypeCheck_SqliteOptions(value) {
|
|
1589
|
-
if (value === null || typeof value !== "object" || __velarValidationIsArray(value) || !__velarValidationIsPlainObject(value)) return false;
|
|
1590
|
-
const __velarField0 = __velarValidationOwnDescriptor(value, "busyTimeoutMilliseconds");
|
|
1591
|
-
const __velarField1 = __velarValidationOwnDescriptor(value, "queueCapacity");
|
|
1592
|
-
const __velarField2 = __velarValidationOwnDescriptor(value, "maxRows");
|
|
1593
|
-
const __velarField3 = __velarValidationOwnDescriptor(value, "maxResultBytes");
|
|
1594
|
-
const __velarField4 = __velarValidationOwnDescriptor(value, "statementCacheCapacity");
|
|
1595
|
-
const __velarField5 = __velarValidationOwnDescriptor(value, "journalMode");
|
|
1596
|
-
const __velarField6 = __velarValidationOwnDescriptor(value, "readOnly");
|
|
1597
|
-
return !!((__velarField0 === void 0 || __velarField0?.enumerable && "value" in __velarField0 && (__velarField0.value == null || typeof __velarField0.value === "number")) && (__velarField1 === void 0 || __velarField1?.enumerable && "value" in __velarField1 && (__velarField1.value == null || typeof __velarField1.value === "number")) && (__velarField2 === void 0 || __velarField2?.enumerable && "value" in __velarField2 && (__velarField2.value == null || typeof __velarField2.value === "number")) && (__velarField3 === void 0 || __velarField3?.enumerable && "value" in __velarField3 && (__velarField3.value == null || typeof __velarField3.value === "number")) && (__velarField4 === void 0 || __velarField4?.enumerable && "value" in __velarField4 && (__velarField4.value == null || typeof __velarField4.value === "number")) && (__velarField5 === void 0 || __velarField5?.enumerable && "value" in __velarField5 && (__velarField5.value == null || SqliteJournalMode.is(__velarField5.value))) && (__velarField6 === void 0 || __velarField6?.enumerable && "value" in __velarField6 && (__velarField6.value == null || typeof __velarField6.value === "boolean")));
|
|
1598
|
-
}
|
|
1599
|
-
function __velarTypeCopy_SqliteOptions(value, __state, __velarCopyPlan) {
|
|
1600
|
-
const __velarCopySeen = __state.copy.seen(__state, value, __velarCopyPlan);
|
|
1601
|
-
if (__velarCopySeen !== void 0) return __velarCopySeen;
|
|
1602
|
-
const __velarCopy = __state.copy.object(__state, value, __velarCopyPlan);
|
|
1603
|
-
{
|
|
1604
|
-
const __velarCopyField = __velarValidationOwnDescriptor(value, "busyTimeoutMilliseconds");
|
|
1605
|
-
if (__velarCopyField !== void 0) __state.copy.field(__velarCopy, "busyTimeoutMilliseconds", __velarCopyField.value);
|
|
1606
|
-
}
|
|
1607
|
-
{
|
|
1608
|
-
const __velarCopyField = __velarValidationOwnDescriptor(value, "queueCapacity");
|
|
1609
|
-
if (__velarCopyField !== void 0) __state.copy.field(__velarCopy, "queueCapacity", __velarCopyField.value);
|
|
1610
|
-
}
|
|
1611
|
-
{
|
|
1612
|
-
const __velarCopyField = __velarValidationOwnDescriptor(value, "maxRows");
|
|
1613
|
-
if (__velarCopyField !== void 0) __state.copy.field(__velarCopy, "maxRows", __velarCopyField.value);
|
|
1614
|
-
}
|
|
1615
|
-
{
|
|
1616
|
-
const __velarCopyField = __velarValidationOwnDescriptor(value, "maxResultBytes");
|
|
1617
|
-
if (__velarCopyField !== void 0) __state.copy.field(__velarCopy, "maxResultBytes", __velarCopyField.value);
|
|
1618
|
-
}
|
|
1619
|
-
{
|
|
1620
|
-
const __velarCopyField = __velarValidationOwnDescriptor(value, "statementCacheCapacity");
|
|
1621
|
-
if (__velarCopyField !== void 0) __state.copy.field(__velarCopy, "statementCacheCapacity", __velarCopyField.value);
|
|
1622
|
-
}
|
|
1623
|
-
{
|
|
1624
|
-
const __velarCopyField = __velarValidationOwnDescriptor(value, "journalMode");
|
|
1625
|
-
if (__velarCopyField !== void 0) __state.copy.field(__velarCopy, "journalMode", __velarCopyField.value);
|
|
1626
|
-
}
|
|
1627
|
-
{
|
|
1628
|
-
const __velarCopyField = __velarValidationOwnDescriptor(value, "readOnly");
|
|
1629
|
-
if (__velarCopyField !== void 0) __state.copy.field(__velarCopy, "readOnly", __velarCopyField.value);
|
|
1630
|
-
}
|
|
1631
|
-
return __velarCopy;
|
|
1632
|
-
}
|
|
1633
|
-
var SqliteOptions = __velarRegisterRuntimeType(__velarValidationFreeze({
|
|
1634
|
-
is(value) {
|
|
1635
|
-
return __velarTypeCheck_SqliteOptions(value);
|
|
1636
|
-
},
|
|
1637
|
-
parse(value) {
|
|
1638
|
-
if (!__velarTypeCheck_SqliteOptions(value)) {
|
|
1639
|
-
const __velarDetail = __velarTypeExplain_SqliteOptions(value);
|
|
1640
|
-
throw new __VelarValidationError("Value does not match SqliteOptions" + (__velarDetail.reason ? " \u2014 " + __velarDetail.reason : "") + __velarValidationRejectionHint(value), __velarDetail);
|
|
1641
|
-
}
|
|
1642
|
-
return __velarTypeCopy_SqliteOptions(value, __velarValidationState(), __velarTypeCopy_SqliteOptions);
|
|
1643
|
-
},
|
|
1644
|
-
copy(value, __state = __velarValidationState(), __velarCopyPlan = __velarTypeCopy_SqliteOptions) {
|
|
1645
|
-
return __velarTypeCopy_SqliteOptions(value, __state, __velarCopyPlan);
|
|
1646
|
-
}
|
|
1647
|
-
}));
|
|
1648
|
-
var SqliteError = class extends Error {
|
|
1649
|
-
constructor(message, sqliteCode = null, operation = "unknown", retryable = false) {
|
|
1650
|
-
super(message);
|
|
1651
|
-
this.name = "SqliteError";
|
|
1652
|
-
const self = this;
|
|
1653
|
-
self.sqliteCode = sqliteCode ?? null;
|
|
1654
|
-
self.operation = operation;
|
|
1655
|
-
self.retryable = retryable;
|
|
1656
|
-
}
|
|
1657
|
-
};
|
|
1658
|
-
var SqliteBackpressureError = class extends SqliteError {
|
|
1659
|
-
constructor(message = "SQLite queue is full") {
|
|
1660
|
-
super(message, "SQLITE_BACKPRESSURE", "queue", true);
|
|
1661
|
-
this.name = "SqliteBackpressureError";
|
|
1662
|
-
const self = this;
|
|
1663
|
-
}
|
|
1664
|
-
};
|
|
1665
|
-
var SqliteConcurrencyError = class extends SqliteError {
|
|
1666
|
-
constructor(message = "SQLite connection cannot be used from its transaction callback") {
|
|
1667
|
-
super(message, "SQLITE_CONCURRENCY", "transaction", true);
|
|
1668
|
-
this.name = "SqliteConcurrencyError";
|
|
1669
|
-
const self = this;
|
|
1670
|
-
}
|
|
1671
|
-
};
|
|
1672
|
-
function sqliteFailure(error) {
|
|
1673
|
-
if (error instanceof NativeSqliteBackpressureError) {
|
|
1674
|
-
return new SqliteBackpressureError(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteBackpressureError), "NativeSqliteBackpressureError", "error", 24251))(error).message);
|
|
1675
|
-
}
|
|
1676
|
-
if (error instanceof NativeSqliteConcurrencyError) {
|
|
1677
|
-
return new SqliteConcurrencyError(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteConcurrencyError), "NativeSqliteConcurrencyError", "error", 24342))(error).message);
|
|
1678
|
-
}
|
|
1679
|
-
if (error instanceof NativeSqliteError) {
|
|
1680
|
-
return new SqliteError(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 24411))(error).message, ((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 24426))(error).sqliteCode ?? null, ((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 24444))(error).operation, ((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 24461))(error).retryable);
|
|
1681
|
-
}
|
|
1682
|
-
return new SqliteError(error.message);
|
|
1683
|
-
}
|
|
1684
|
-
function sqliteLiteral(value) {
|
|
1685
|
-
if ((value ?? null) === null) {
|
|
1686
|
-
return trustedSql("NULL");
|
|
1687
|
-
}
|
|
1688
|
-
if (typeof (value ?? null) === "boolean") {
|
|
1689
|
-
return trustedSql(((__velarValue) => __velarNarrow(__velarValue, typeof __velarValue === "boolean", "bool", "value", 24887))(value) ? "1" : "0");
|
|
1690
|
-
}
|
|
1691
|
-
if (typeof (value ?? null) === "string") {
|
|
1692
|
-
return trustedSql("'" + __velarStringReplaceAll(((__velarValue) => __velarNarrow(__velarValue, typeof __velarValue === "string", "string", "value", 24954))(value), "'", "''") + "'");
|
|
1693
|
-
}
|
|
1694
|
-
if (typeof (value ?? null) === "number") {
|
|
1695
|
-
if (!__velarNumberIsFinite(((__velarValue) => __velarNarrow(__velarValue, typeof __velarValue === "number", "number", "value", 25028))(value))) {
|
|
1696
|
-
throw new __VelarAssertionError("SQLite numeric literals must be finite");
|
|
1697
|
-
}
|
|
1698
|
-
if (!(!__velarNumberIsInteger(((__velarValue) => __velarNarrow(__velarValue, typeof __velarValue === "number", "number", "value", 25110))(value)) || ((__velarValue) => __velarNarrow(__velarValue, typeof __velarValue === "number", "number", "value", 25132))(value) >= -9007199254740991 && ((__velarValue) => __velarNarrow(__velarValue, typeof __velarValue === "number", "number", "value", 25163))(value) <= 9007199254740991)) {
|
|
1699
|
-
throw new __VelarAssertionError("SQLite integer literals must be safe integers");
|
|
1700
|
-
}
|
|
1701
|
-
return trustedSql(String(((__velarValue) => __velarNarrow(__velarValue, typeof __velarValue === "number", "number", "value", 25273))(value)));
|
|
1702
|
-
}
|
|
1703
|
-
throw new Error("SQLite literals support only null, bool, string, and finite number");
|
|
1704
|
-
}
|
|
1705
|
-
function sqliteIdentifier(value) {
|
|
1706
|
-
if (!(!__velarStringIsBlank(value) && __velarStringSize(value) <= 255 && !__velarStringHas(value, fromCodePoint(0)))) {
|
|
1707
|
-
throw new __VelarAssertionError("SQLite identifiers must be non-blank text with no NUL and no longer than 255 characters");
|
|
1708
|
-
}
|
|
1709
|
-
return trustedSql('"' + __velarStringReplaceAll(value, '"', '""') + '"');
|
|
1710
|
-
}
|
|
1711
|
-
var SqliteTransaction = class {
|
|
1712
|
-
#native;
|
|
1713
|
-
constructor(native) {
|
|
1714
|
-
this.#native = native;
|
|
1715
|
-
const self = this;
|
|
1716
|
-
}
|
|
1717
|
-
async execute(statement) {
|
|
1718
|
-
const self = this;
|
|
1719
|
-
const data = statement.data();
|
|
1720
|
-
try {
|
|
1721
|
-
return await __velarNormalizePromiseValue(__velarReadPrivateField(self.#native, "native").execute(data.fragments, data.parameters));
|
|
1722
|
-
} catch (error) {
|
|
1723
|
-
error = __velarNormalizeError(error);
|
|
1724
|
-
if (error instanceof NativeSqliteError) {
|
|
1725
|
-
throw sqliteFailure(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 26194))(error));
|
|
1726
|
-
}
|
|
1727
|
-
throw new SqliteError(__velarReadInstanceField(error, "message"));
|
|
1728
|
-
}
|
|
1729
|
-
}
|
|
1730
|
-
executor() {
|
|
1731
|
-
const self = this;
|
|
1732
|
-
async function executeStatement(statement) {
|
|
1733
|
-
return await __velarNormalizePromiseValue(self.execute(statement));
|
|
1734
|
-
}
|
|
1735
|
-
async function oneRow(statement) {
|
|
1736
|
-
const data = statement.data();
|
|
1737
|
-
try {
|
|
1738
|
-
return __velarAsyncResolvedValue(await __velarNormalizePromiseValue(__velarReadPrivateField(self.#native, "native").one(data.fragments, data.parameters)));
|
|
1739
|
-
} catch (error) {
|
|
1740
|
-
error = __velarNormalizeError(error);
|
|
1741
|
-
if (error instanceof NativeSqliteError) {
|
|
1742
|
-
throw sqliteFailure(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 26767))(error));
|
|
1743
|
-
}
|
|
1744
|
-
throw new SqliteError(__velarReadInstanceField(error, "message"));
|
|
1745
|
-
}
|
|
1746
|
-
}
|
|
1747
|
-
async function allRows(statement) {
|
|
1748
|
-
const data = statement.data();
|
|
1749
|
-
try {
|
|
1750
|
-
return __velarAsyncResolvedValue(await __velarNormalizePromiseValue(__velarReadPrivateField(self.#native, "native").all(data.fragments, data.parameters)));
|
|
1751
|
-
} catch (error) {
|
|
1752
|
-
error = __velarNormalizeError(error);
|
|
1753
|
-
if (error instanceof NativeSqliteError) {
|
|
1754
|
-
throw sqliteFailure(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 27111))(error));
|
|
1755
|
-
}
|
|
1756
|
-
throw new SqliteError(__velarReadInstanceField(error, "message"));
|
|
1757
|
-
}
|
|
1758
|
-
}
|
|
1759
|
-
return { execute: executeStatement, one: oneRow, all: allRows };
|
|
1760
|
-
}
|
|
1761
|
-
async one(statement, RowType) {
|
|
1762
|
-
const self = this;
|
|
1763
|
-
const data = statement.data();
|
|
1764
|
-
try {
|
|
1765
|
-
const row = await __velarNormalizePromiseValue(__velarReadPrivateField(self.#native, "native").one(data.fragments, data.parameters));
|
|
1766
|
-
if ((row ?? null) === null) {
|
|
1767
|
-
return null;
|
|
1768
|
-
}
|
|
1769
|
-
return __velarAsyncResolvedValue(RowType.parse(row ?? null));
|
|
1770
|
-
} catch (error) {
|
|
1771
|
-
error = __velarNormalizeError(error);
|
|
1772
|
-
if (error instanceof NativeSqliteError) {
|
|
1773
|
-
throw sqliteFailure(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 27607))(error));
|
|
1774
|
-
}
|
|
1775
|
-
throw new SqliteError(__velarReadInstanceField(error, "message"));
|
|
1776
|
-
}
|
|
1777
|
-
}
|
|
1778
|
-
async all(statement, RowType) {
|
|
1779
|
-
const self = this;
|
|
1780
|
-
const data = statement.data();
|
|
1781
|
-
try {
|
|
1782
|
-
const rows = await __velarNormalizePromiseValue(__velarReadPrivateField(self.#native, "native").all(data.fragments, data.parameters));
|
|
1783
|
-
return __velarAsyncResolvedValue(__velarListMap(rows, (row) => RowType.parse(row ?? null)));
|
|
1784
|
-
} catch (error) {
|
|
1785
|
-
error = __velarNormalizeError(error);
|
|
1786
|
-
if (error instanceof NativeSqliteError) {
|
|
1787
|
-
throw sqliteFailure(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 28011))(error));
|
|
1788
|
-
}
|
|
1789
|
-
throw new SqliteError(__velarReadInstanceField(error, "message"));
|
|
1790
|
-
}
|
|
1791
|
-
}
|
|
1792
|
-
};
|
|
1793
|
-
var SqliteConnection = class {
|
|
1794
|
-
#native;
|
|
1795
|
-
constructor(native) {
|
|
1796
|
-
this.#native = native;
|
|
1797
|
-
const self = this;
|
|
1798
|
-
}
|
|
1799
|
-
async execute(statement) {
|
|
1800
|
-
const self = this;
|
|
1801
|
-
const data = statement.data();
|
|
1802
|
-
try {
|
|
1803
|
-
return await __velarNormalizePromiseValue(__velarReadPrivateField(self.#native, "native").execute(data.fragments, data.parameters));
|
|
1804
|
-
} catch (error) {
|
|
1805
|
-
error = __velarNormalizeError(error);
|
|
1806
|
-
if (error instanceof NativeSqliteError) {
|
|
1807
|
-
throw sqliteFailure(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 28428))(error));
|
|
1808
|
-
}
|
|
1809
|
-
throw new SqliteError(__velarReadInstanceField(error, "message"));
|
|
1810
|
-
}
|
|
1811
|
-
}
|
|
1812
|
-
executor() {
|
|
1813
|
-
const self = this;
|
|
1814
|
-
async function executeStatement(statement) {
|
|
1815
|
-
return await __velarNormalizePromiseValue(self.execute(statement));
|
|
1816
|
-
}
|
|
1817
|
-
async function oneRow(statement) {
|
|
1818
|
-
const data = statement.data();
|
|
1819
|
-
try {
|
|
1820
|
-
return __velarAsyncResolvedValue(await __velarNormalizePromiseValue(__velarReadPrivateField(self.#native, "native").one(data.fragments, data.parameters)));
|
|
1821
|
-
} catch (error) {
|
|
1822
|
-
error = __velarNormalizeError(error);
|
|
1823
|
-
if (error instanceof NativeSqliteError) {
|
|
1824
|
-
throw sqliteFailure(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 29e3))(error));
|
|
1825
|
-
}
|
|
1826
|
-
throw new SqliteError(__velarReadInstanceField(error, "message"));
|
|
1827
|
-
}
|
|
1828
|
-
}
|
|
1829
|
-
async function allRows(statement) {
|
|
1830
|
-
const data = statement.data();
|
|
1831
|
-
try {
|
|
1832
|
-
return __velarAsyncResolvedValue(await __velarNormalizePromiseValue(__velarReadPrivateField(self.#native, "native").all(data.fragments, data.parameters)));
|
|
1833
|
-
} catch (error) {
|
|
1834
|
-
error = __velarNormalizeError(error);
|
|
1835
|
-
if (error instanceof NativeSqliteError) {
|
|
1836
|
-
throw sqliteFailure(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 29344))(error));
|
|
1837
|
-
}
|
|
1838
|
-
throw new SqliteError(__velarReadInstanceField(error, "message"));
|
|
1839
|
-
}
|
|
1840
|
-
}
|
|
1841
|
-
return { execute: executeStatement, one: oneRow, all: allRows };
|
|
1842
|
-
}
|
|
1843
|
-
async one(statement, RowType) {
|
|
1844
|
-
const self = this;
|
|
1845
|
-
const data = statement.data();
|
|
1846
|
-
try {
|
|
1847
|
-
const row = await __velarNormalizePromiseValue(__velarReadPrivateField(self.#native, "native").one(data.fragments, data.parameters));
|
|
1848
|
-
if ((row ?? null) === null) {
|
|
1849
|
-
return null;
|
|
1850
|
-
}
|
|
1851
|
-
return __velarAsyncResolvedValue(RowType.parse(row ?? null));
|
|
1852
|
-
} catch (error) {
|
|
1853
|
-
error = __velarNormalizeError(error);
|
|
1854
|
-
if (error instanceof NativeSqliteError) {
|
|
1855
|
-
throw sqliteFailure(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 29840))(error));
|
|
1856
|
-
}
|
|
1857
|
-
throw new SqliteError(__velarReadInstanceField(error, "message"));
|
|
1858
|
-
}
|
|
1859
|
-
}
|
|
1860
|
-
async all(statement, RowType) {
|
|
1861
|
-
const self = this;
|
|
1862
|
-
const data = statement.data();
|
|
1863
|
-
try {
|
|
1864
|
-
const rows = await __velarNormalizePromiseValue(__velarReadPrivateField(self.#native, "native").all(data.fragments, data.parameters));
|
|
1865
|
-
return __velarAsyncResolvedValue(__velarListMap(rows, (row) => RowType.parse(row ?? null)));
|
|
1866
|
-
} catch (error) {
|
|
1867
|
-
error = __velarNormalizeError(error);
|
|
1868
|
-
if (error instanceof NativeSqliteError) {
|
|
1869
|
-
throw sqliteFailure(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 30244))(error));
|
|
1870
|
-
}
|
|
1871
|
-
throw new SqliteError(__velarReadInstanceField(error, "message"));
|
|
1872
|
-
}
|
|
1873
|
-
}
|
|
1874
|
-
async transaction(operation) {
|
|
1875
|
-
const self = this;
|
|
1876
|
-
const results = __velarAdoptList([]);
|
|
1877
|
-
async function run(native) {
|
|
1878
|
-
__velarListAppend(results, await __velarNormalizePromiseValue(operation(new SqliteTransaction(native))));
|
|
1879
|
-
return null;
|
|
1880
|
-
}
|
|
1881
|
-
try {
|
|
1882
|
-
await __velarNormalizePromiseValue(__velarReadPrivateField(self.#native, "native").transaction(run));
|
|
1883
|
-
if (!(__velarListSize(results) === 1)) {
|
|
1884
|
-
throw new __VelarAssertionError("SQLite transaction did not return exactly one result");
|
|
1885
|
-
}
|
|
1886
|
-
return __velarAsyncResolvedValue(__velarListIndexGet(results, 0));
|
|
1887
|
-
} catch (error) {
|
|
1888
|
-
error = __velarNormalizeError(error);
|
|
1889
|
-
if (error instanceof NativeSqliteError) {
|
|
1890
|
-
throw sqliteFailure(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 30803))(error));
|
|
1891
|
-
}
|
|
1892
|
-
throw error;
|
|
1893
|
-
}
|
|
1894
|
-
}
|
|
1895
|
-
async close() {
|
|
1896
|
-
const self = this;
|
|
1897
|
-
try {
|
|
1898
|
-
await __velarNormalizePromiseValue(__velarReadPrivateField(self.#native, "native").close());
|
|
1899
|
-
} catch (error) {
|
|
1900
|
-
error = __velarNormalizeError(error);
|
|
1901
|
-
if (error instanceof NativeSqliteError) {
|
|
1902
|
-
throw sqliteFailure(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 30981))(error));
|
|
1903
|
-
}
|
|
1904
|
-
throw new SqliteError(__velarReadInstanceField(error, "message"));
|
|
1905
|
-
}
|
|
1906
|
-
return null;
|
|
1907
|
-
}
|
|
1908
|
-
async ["__velar:dispose"]() {
|
|
1909
|
-
const self = this;
|
|
1910
|
-
await __velarNormalizePromiseValue(self.close());
|
|
1911
|
-
return null;
|
|
1912
|
-
}
|
|
1913
|
-
};
|
|
1914
|
-
async function openSqlite(path, options = {}) {
|
|
1915
|
-
try {
|
|
1916
|
-
return __velarAsyncResolvedValue(new SqliteConnection(await __velarNormalizePromiseValue(openNativeSqlite(__velarHostRaw(path), __velarHostRaw(options)))));
|
|
1917
|
-
} catch (error) {
|
|
1918
|
-
error = __velarNormalizeError(error);
|
|
1919
|
-
if (error instanceof NativeSqliteError) {
|
|
1920
|
-
throw sqliteFailure(((__velarValue) => __velarNarrow(__velarValue, __velarValidationIsInstance(__velarValue, NativeSqliteError), "NativeSqliteError", "error", 31308))(error));
|
|
1921
|
-
}
|
|
1922
|
-
throw new SqliteError(__velarReadInstanceField(error, "message"));
|
|
1923
|
-
}
|
|
1924
|
-
}
|
|
1925
|
-
export {
|
|
1926
|
-
SqliteBackpressureError,
|
|
1927
|
-
SqliteConcurrencyError,
|
|
1928
|
-
SqliteConnection,
|
|
1929
|
-
SqliteError,
|
|
1930
|
-
SqliteJournalMode,
|
|
1931
|
-
SqliteOptions,
|
|
1932
|
-
SqliteTransaction,
|
|
1933
|
-
openSqlite,
|
|
1934
|
-
sqliteIdentifier,
|
|
1935
|
-
sqliteLiteral
|
|
1936
|
-
};
|
|
1
|
+
var T1=globalThis.RangeError,N1=globalThis.Object.defineProperty,Me=class extends T1{constructor(t){super(t),this.name="IndexError"}};N1(Me,"name",{value:"IndexError",writable:!1,enumerable:!1,configurable:!0});var Mo=16*1024*1024;var Mt=globalThis.Array,De=globalThis.String,Fe=globalThis.Number,Pe=globalThis.Math,z=globalThis.Object,he=globalThis.Map,C1=globalThis.TypeError,Lt=globalThis.RangeError,u=z.getOwnPropertyDescriptor,Rt=u(z,"getPrototypeOf")?.value,At=u(globalThis.Reflect,"apply")?.value,I=u(De,"prototype")?.value,Do=u(Mt,"isArray")?.value,x1=u(Fe,"isSafeInteger")?.value,Fo=u(Fe,"isInteger")?.value,Po=u(Pe,"floor")?.value,Uo=u(Pe,"max")?.value,Bo=u(Pe,"min")?.value,Go=u(I,"indexOf")?.value,Wo=u(I,"slice")?.value,Ho=u(I,"charCodeAt")?.value,zo=u(I,"trim")?.value,jo=u(I,"toUpperCase")?.value,qo=u(I,"toLowerCase")?.value,Vo=u(I,"split")?.value,Qo=u(I,"replaceAll")?.value,Yo=u(I,"repeat")?.value,Y=typeof he=="function"?u(he,"prototype")?.value:null,b1=Y?u(Y,"get")?.value:null,v1=Y?u(Y,"set")?.value:null,I1=Y?u(Y,"clear")?.value:null,L1=/[\u{10000}-\u{10FFFF}\uD800-\uDFFF]/u,Ot=typeof Rt=="function"?Rt(L1):null,Ko=Ot?u(Ot,"exec")?.value:null;function kt(e,t,n){if(typeof e!="function"||typeof At!="function")throw new C1("The JavaScript text runtime is unavailable");return At(e,t,n)}var $o=8*1024*1024,Xo=typeof he=="function"&&typeof b1=="function"&&typeof v1=="function"&&typeof I1=="function"?new he:null;var Jo=Object.getOwnPropertyDescriptor(String.prototype,"charCodeAt")?.value,Zo=Object.getOwnPropertyDescriptor(Reflect,"apply")?.value;var ei=u(z,"getOwnPropertyNames")?.value,ti=u(z,"getOwnPropertySymbols")?.value,R1=u(z,"getPrototypeOf")?.value,ni=u(z,"prototype")?.value,ri=u(z,"create")?.value,oi=u(z,"freeze")?.value,A1=u(Mt,"prototype")?.value,ii=u(A1,"join")?.value,si=u(I,"trimStart")?.value,ai=u(I,"trimEnd")?.value,li=u(I,"normalize")?.value,O1=globalThis.Date,ci=u(O1,"now")?.value,Dt=R1(/(?:)/u),ui=u(Dt,"constructor")?.value,pi=u(Dt,"exec")?.value;var fi=u(I,"codePointAt")?.value,k1=u(De,"fromCodePoint")?.value;var mi=new RegExp("(?<=\\p{Script=Latin})\\p{M}+","gu"),di=new RegExp("(?<![\\p{L}\\p{N}\\p{M}])\\p{M}+","gu");function Ft(e){if(!kt(x1,Fe,[e])||e<0||e>1114111)throw new Lt("fromCodePoint requires a code point from 0 through 1114111");if(e>=55296&&e<=57343)throw new Lt("fromCodePoint refuses surrogate halves; they are not characters on their own");return kt(k1,De,[e])}function ge(e,t,n){return n===void 0?null:n}var ie=globalThis.Array,Ue=globalThis.Map,Be=globalThis.Set,g=globalThis.Object,Ut=globalThis.Reflect,Bt=globalThis.WeakMap,V=globalThis.TypeError,l=g.getOwnPropertyDescriptor,Pt=l(Ut,"apply")?.value,D1=l(ie,"isArray")?.value,ye=l(g,"getPrototypeOf")?.value,F1=l(g,"prototype")?.value,B=l(Ue,"prototype")?.value,K=l(Be,"prototype")?.value,hi=l(B,"size")?.get,gi=l(K,"size")?.get;function x(e,t,n){if(typeof e!="function"||typeof Pt!="function")throw new V("The JavaScript collection runtime is unavailable");return Pt(e,t,n)}var Gt=l(Bt,"prototype")?.value,yi=l(Gt,"get")?.value,Ei=l(Gt,"set")?.value,wi=new Bt;var se=globalThis.Number,Wt=globalThis.Math,Ht=globalThis.RangeError,Ge=l(ie,"prototype")?.value,P1=l(g,"getOwnPropertyNames")?.value,U1=l(g,"getOwnPropertySymbols")?.value,B1=l(g,"defineProperty")?.value,Si=l(g,"is")?.value,G1=l(se,"isInteger")?.value,Ti=l(se,"isSafeInteger")?.value,Ni=l(se,"isNaN")?.value,Ci=l(se,"isFinite")?.value,xi=l(Wt,"max")?.value,bi=l(Wt,"min")?.value,vi=l(Ge,"join")?.value,Ii=l(Ge,"sort")?.value,Li=l(Ge,"reverse")?.value;function zt(e){return x(D1,ie,[e])}function D(e,t){return x(l,g,[e,t])}function jt(e){return x(P1,g,[e])}function qt(e){return x(U1,g,[e])}function Vt(e,t,n){return x(B1,g,[e,t,n])}function Qt(e){return x(G1,se,[e])}var W1=globalThis.RangeError,Ri=l(g,"freeze")?.value,Ai=l(K,"add")?.value,Oi=l(K,"has")?.value,ki=l(K,"delete")?.value,Mi=l(K,"clear")?.value,H1=l(K,"values")?.value,Di=l(B,"get")?.value,Fi=l(B,"set")?.value,Pi=l(B,"has")?.value,Ui=l(B,"delete")?.value,Bi=l(B,"clear")?.value,Gi=l(B,"keys")?.value,Wi=l(B,"values")?.value,z1=l(B,"entries")?.value,j1=x(ye,g,[x(z1,new Ue,[])]),q1=x(ye,g,[x(H1,new Be,[])]),Hi=l(j1,"next")?.value,zi=l(q1,"next")?.value;var V1=globalThis.RangeError,ji=l(g,"getOwnPropertyNames")?.value,qi=l(g,"getOwnPropertySymbols")?.value,Vi=l(g,"defineProperty")?.value,Qi=l(g,"is")?.value,Yi=l(Ut,"deleteProperty")?.value,Ki=l(g,"freeze")?.value;var Y1=globalThis.RangeError,K1=globalThis.Object.defineProperty,$=class extends Y1{constructor(t){super(t),this.name="IndexError"}};K1($,"name",{value:"IndexError",writable:!1,enumerable:!1,configurable:!0});var Kt=1e6,$1=e=>e===void 0?null:e;var $t=globalThis.WeakMap,Xt=D($t,"prototype")?.value,X1=D(Xt,"get")?.value,Jt=D(Xt,"set")?.value,We=new $t,J1=D(g,"isFrozen")?.value;function Z1(e,t){if(x(J1,g,[e]))throw new V(t+" received a frozen JavaScript array; copy it on the JavaScript side \u2014 [...values] \u2014 before passing it to VelarScript")}function He(e){return x(X1,We,[e])}function er(e){let t=He(e);return t!==void 0&&t===e.length}function ae(e){return x(Jt,We,[e,e.length]),e}function Zt(e){return x(Jt,We,[e,~e.length]),e}function tr(e){let t=He(e);return t!==void 0&&t<0?Zt(e):ae(e)}function ze(e,t){let n=D(e,"length");if(!n||!n.writable||n.enumerable||n.configurable||!("value"in n))throw new V(t+" requires an ordinary mutable List length")}function en(e,t){if(e=e,!zt(e)||e.length>Kt||qt(e).length>0||jt(e).length!==e.length+1)throw new V(t+" requires a dense VelarScript List");Z1(e,t),ze(e,t);for(let n=0;n<e.length;n+=1){let r=D(e,n);if(!r?.enumerable||!r.configurable||!r.writable||!("value"in r))throw new V(t+" requires ordinary mutable List data elements")}return Zt(e)}function je(e){let t=He(e);return t===void 0?0:t===e.length?1:~t===e.length?2:0}function tn(e,t,n){return n===1?e:n===0?en(e,t):(ze(e,t),e)}function nn(e,t){return e=e,tn(e,t,je(e))}function nr(e,t){return e=e,je(e)===0?en(e,t):(ze(e,t),e)}function qe(e,t,n){let r=D(e,t);if(!r?.enumerable||!r.configurable||!r.writable||!("value"in r))throw new V(n+" requires ordinary mutable List data elements");return r.value}function rn(e,t,n){let r=e[t];return r===void 0?qe(e,t,n):r}function rr(e,t,n,r){return r?rn(e,t,n):qe(e,t,n)}function or(e,t){e=nn(e,t);let n=er(e),r=[];for(let i=0;i<e.length;i+=1)r[i]=$1(rr(e,i,t,n));return ae(r)}var ir=globalThis.String,sr=D(ir,"prototype")?.value,Hs=D(sr,"charCodeAt")?.value,ar=/[\uD800-\uDFFF]/,lr=x(ye,g,[ar]),zs=D(lr,"exec")?.value;function on(e){return e=nn(e,"List size"),null,e.length}function cr(e){return e===1?"1 element":e+" elements"}function Yt(e,t){if(!Qt(t))throw new $(typeof t=="number"?"List index "+t+" is not an integer":"List index must be an integer");let n=t<0?e.length+t:t;if(n<0||n>=e.length)throw new $("List index "+t+" is out of range for "+cr(e.length));return n}function sn(e,t){e=e;let n=je(e);return n===1?(t=Yt(e,t),ge(e,t,rn(e,t,"List index"))):(e=tn(e,"List index",n),t=Yt(e,t),ge(e,t,qe(e,t,"List index")))}function an(e,t){if(e=nr(e,"List.append"),e.length>=Kt)throw new Ht("A List cannot exceed 1000000 items");t=t;let n=e.length;return Vt(e,n,{value:t,writable:!0,enumerable:!0,configurable:!0}),tr(e),null}function Ve(e,t){let n=or(e,"List.map");let r=new ie(n.length);for(let i=0;i<n.length;i+=1){let o=t(ge(e,i,n[i]),i);r[i]=o===void 0?null:o}return ae(r)}var js=16*1024*1024;var le=16*1024*1024;var hn=globalThis.Array,ur=globalThis.String,gn=globalThis.Number,Te=globalThis.Math,yn=globalThis.Object,Se=globalThis.Map,$e=globalThis.TypeError,Xe=globalThis.RangeError,y=yn.getOwnPropertyDescriptor,ln=y(yn,"getPrototypeOf")?.value,cn=y(globalThis.Reflect,"apply")?.value,G=y(ur,"prototype")?.value,Qs=y(hn,"isArray")?.value,Ys=y(gn,"isSafeInteger")?.value,Ks=y(gn,"isInteger")?.value,pr=y(Te,"floor")?.value,$s=y(Te,"max")?.value,Xs=y(Te,"min")?.value,un=y(G,"indexOf")?.value,Qe=y(G,"slice")?.value,X=y(G,"charCodeAt")?.value,fr=y(G,"trim")?.value,Js=y(G,"toUpperCase")?.value,Zs=y(G,"toLowerCase")?.value,ea=y(G,"split")?.value,mr=y(G,"replaceAll")?.value,ta=y(G,"repeat")?.value,J=typeof Se=="function"?y(Se,"prototype")?.value:null,En=J?y(J,"get")?.value:null,wn=J?y(J,"set")?.value:null,Sn=J?y(J,"clear")?.value:null,Tn=/[\u{10000}-\u{10FFFF}\uD800-\uDFFF]/u,pn=typeof ln=="function"?ln(Tn):null,dr=pn?y(pn,"exec")?.value:null;function T(e,t,n){if(typeof e!="function"||typeof cn!="function")throw new $e("The JavaScript text runtime is unavailable");return cn(e,t,n)}function Ne(e){if(typeof e!="string")throw new $e("String methods require a string receiver");if(e.length>le)throw new Xe("Strings cannot exceed 16 MiB");return e}function Ke(e,t){if(typeof e!="string")throw new $e(t+" must be a string");if(e.length>le)throw new Xe(t+" cannot exceed 16 MiB");return e}function Nn(e,t){let n=T(X,e,[t]);if(n<55296||n>56319||t+1>=e.length)return t+1;let r=T(X,e,[t+1]);return r>=56320&&r<=57343?t+2:t+1}var fn=64,_r=64,hr=512,gr=8*1024*1024,Ee=typeof Se=="function"&&typeof En=="function"&&typeof wn=="function"&&typeof Sn=="function"?new Se:null,we=0,Ye=0;function mn(e){if(T(dr,Tn,[e])===null)return{length:e.length,dense:!0,checkpoints:null};let t=new hn,n=0,r=0;for(;r<e.length;)n%fn===0&&(t[n/fn]=r),r=Nn(e,r),n+=1;return{length:n,dense:n===e.length,checkpoints:t}}function yr(e){if(Ee===null||e.length<_r)return mn(e);let t=T(En,Ee,[e]);if(t!==void 0)return t;let n=mn(e);return(we>=hr||we>0&&Ye+e.length>gr)&&(T(Sn,Ee,[]),we=0,Ye=0),T(wn,Ee,[e,n]),we+=1,Ye+=e.length,n}function Cn(e){return yr(e).length}function dn(e,t){if(t<=0||t>=e.length)return!0;let n=T(X,e,[t-1]);if(n<55296||n>56319)return!0;let r=T(X,e,[t]);return r<56320||r>57343}function xn(e){let t=T(X,e,[0]);if(t>=56320&&t<=57343)return!0;let n=T(X,e,[e.length-1]);return n>=55296&&n<=56319}function Je(e,t,n){if(!xn(t))return T(un,e,[t,n]);for(;n<=e.length;){let r=T(un,e,[t,n]);if(r<0)return-1;if(dn(e,r)&&dn(e,r+t.length))return r;n=r+1}return-1}function Er(e,t,n,r){let i=0;if(t==="")i=r?Cn(e)+1:1;else{let s=0;for(;;){let a=Je(e,t,s);if(a<0||(i+=1,!r))break;s=a+t.length}}if(n.length<=t.length||i===0)return e.length;let o=n.length-t.length;return i>T(pr,Te,[(le-e.length)/o])?le+1:e.length+i*o}function bn(e){return Cn(Ne(e))}function vn(e){return T(fr,Ne(e),[])===""}function In(e,t){return e=Ne(e),t=Ke(t,"String.has text"),t===""||Je(e,t,0)>=0}function Ze(e,t,n){if(e=Ne(e),t=Ke(t,"String.replaceAll from"),n=Ke(n,"String.replaceAll to"),Er(e,t,n,!0)>le)throw new Xe("String.replaceAll output cannot exceed 16 MiB");if(t===""){let o=n,s=0;for(;s<e.length;){let a=Nn(e,s);o+=T(Qe,e,[s,a])+n,s=a}return o}if(!xn(t))return T(mr,e,[t,()=>n]);let r="",i=0;for(;;){let o=Je(e,t,i);if(o<0)break;r+=T(Qe,e,[i,o])+n,i=o+t.length}return r+T(Qe,e,[i])}var Z=globalThis.Math,Q=globalThis.Number,wr=globalThis.Object,Ln=globalThis.TypeError,na=globalThis.RangeError,L=wr.getOwnPropertyDescriptor,_n=L(globalThis.Reflect,"apply")?.value,Sr=L(Q,"prototype")?.value,ra=L(Z,"abs")?.value,oa=L(Z,"round")?.value,ia=L(Z,"floor")?.value,sa=L(Z,"ceil")?.value,aa=L(Z,"sign")?.value,la=L(Z,"trunc")?.value,ca=L(Q,"isSafeInteger")?.value,Tr=L(Q,"isInteger")?.value,ua=L(Q,"isNaN")?.value,Nr=L(Q,"isFinite")?.value,pa=L(Sr,"toFixed")?.value;function Rn(e,t,n){if(typeof e!="function"||typeof _n!="function")throw new Ln("The JavaScript Number runtime is unavailable");return _n(e,t,n)}function An(e){if(typeof e!="number")throw new Ln("Number methods require a number receiver");return e}function On(e){return Rn(Tr,Q,[An(e)])}function kn(e){return Rn(Nr,Q,[An(e)])}var Dn=globalThis.Object,et=globalThis.Reflect,tt=globalThis.TypeError,nt=Dn.getOwnPropertyDescriptor,Mn=nt(et,"apply")?.value,Cr=nt(et,"get")?.value,ma=nt(Dn,"getPrototypeOf")?.value;function xr(e,t,n){if(typeof e!="function"||typeof Mn!="function")throw new tt("The JavaScript class field runtime is unavailable");return Mn(e,t,n)}function R(e,t){let n=xr(Cr,et,[e,t]);if(n===void 0)throw new tt("Field '"+t+"' was read before initialization or contains undefined");return n}function A(e,t){if(e===void 0)throw new tt("Private field '"+t+"' was read before initialization or contains undefined");return e}var br=globalThis.TypeError,vr=globalThis.Object.defineProperty,Ce=class extends br{constructor(t){super(t),this.name="NarrowingError"}};vr(Ce,"name",{value:"NarrowingError",writable:!1,enumerable:!1,configurable:!0});function f(e,t,n,r,i){if(!t)throw new Ce("Flow narrowing for '"+r+"' no longer holds: expected "+n+" at "+i);return e}var Fn=globalThis,j=globalThis.Object,Ir=globalThis.Reflect,Gn=globalThis.WeakMap,ot=globalThis.Promise,Wn=globalThis.Symbol,F=globalThis.TypeError,k=j.getOwnPropertyDescriptor,Hn=k(j,"getPrototypeOf")?.value,Lr=k(j,"defineProperty")?.value,Pn=k(Ir,"apply")?.value,it=k(Gn,"prototype")?.value,Rr=k(it,"has")?.value,Ar=k(it,"get")?.value,Un=k(it,"set")?.value,zn=k(ot,"prototype")?.value,Or=k(zn,"then")?.value,kr=k(Wn,"for")?.value;function P(e,t,n){if(typeof e!="function"||typeof Pn!="function")throw new F("The JavaScript Promise normalization runtime is unavailable");return Pn(e,t,n)}var Bn=P(kr,Wn,["velar.promise.normalization.v1"]),rt=(()=>{let e=P(k,j,[Fn,Bn]);if(e){if(!("value"in e)||e.enumerable||e.configurable||e.writable)throw new F("VelarScript Promise normalization registry ownership is invalid");try{P(Rr,e.value,[e.value])}catch{throw new F("VelarScript Promise normalization registry is invalid")}return e.value}let t=new Gn;return P(Lr,j,[Fn,Bn,{value:t,enumerable:!1,configurable:!1,writable:!1}]),t})();function Mr(e){if(typeof e!="object"&&typeof e!="function"||e===null)return!1;let t;try{t=P(Hn,j,[e])}catch{return!1}return t===zn}function S(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new F("Expected an actual Promise");let t=P(Ar,rt,[e]);if(t)return t;let n,r;try{P(Or,e,[o=>{typeof n=="function"&&n(o??null)},o=>{typeof r=="function"&&r(o)}])}catch{throw new F("Expected an actual Promise")}if(typeof ot!="function")throw new F("The JavaScript Promise normalization runtime is unavailable");let i=new ot((o,s)=>{n=o,r=s});if(typeof n!="function"||typeof r!="function"||!Mr(i))throw new F("The JavaScript Promise normalization runtime is unavailable");return P(Un,rt,[e,i]),P(Un,rt,[i,i]),i}function U(e){if(e===void 0)return null;if(typeof e!="object"&&typeof e!="function"||e===null)return e;try{return S(e)}catch{}let t=e;for(let n=0;t!==null&&n<128;n+=1){let r;try{r=P(k,j,[t,"then"])}catch{throw new F("An async result must not expose a callable 'then' or a 'then' getter")}if(r){if(!("value"in r)||typeof r.value=="function")throw new F("An async result must not expose a callable 'then' or a 'then' getter");return e}try{t=P(Hn,j,[t])}catch{throw new F("An async result must have an inspectable prototype chain")}}if(t!==null)throw new F("An async result prototype chain is too deep");return e}var ft=globalThis.Error,Dr=globalThis.String,qn=globalThis.Object,Fr=globalThis.Reflect,Pr=globalThis.TypeError,Vn=qn.getOwnPropertyDescriptor,ga=qn.getPrototypeOf,jn=Vn(Fr,"apply")?.value,Ur=Vn(ft,"isError")?.value;function Qn(e,t,n,r){if(typeof e!="function"||typeof jn!="function")throw new Pr("The JavaScript "+r+" API is unavailable");return jn(e,t,n)}function Br(e){return Qn(Ur,ft,[e],"Error.isError")}function b(e){if(Br(e))return e;let t=typeof e,n;return t==="string"?n=e:e===null?n="null":t==="undefined"?n="undefined":t==="number"||t==="boolean"||t==="bigint"||t==="symbol"?n=Qn(Dr,globalThis,[e],"String"):n="A non-Error value was thrown by JavaScript",new ft(n,{cause:e})}var Gr=globalThis.Error,Wr=globalThis.Object.defineProperty,W=class extends Gr{constructor(t){super(t),this.name="AssertionError"}};Wr(W,"name",{value:"AssertionError",writable:!1,enumerable:!1,configurable:!0});var ee=globalThis.Error,te=globalThis.Object.defineProperty,st=class extends ee{constructor(t,n=null){super(t),this.name="FileNotFoundError",this.path=n}};te(st,"name",{value:"FileNotFoundError",writable:!1,enumerable:!1,configurable:!0});var at=class extends ee{constructor(t,n=null){super(t),this.name="PermissionError",this.path=n}};te(at,"name",{value:"PermissionError",writable:!1,enumerable:!1,configurable:!0});var lt=class extends ee{constructor(t,n=null){super(t),this.name="NotADirectoryError",this.path=n}};te(lt,"name",{value:"NotADirectoryError",writable:!1,enumerable:!1,configurable:!0});var ct=class extends ee{constructor(t,n=null){super(t),this.name="FileExistsError",this.path=n}};te(ct,"name",{value:"FileExistsError",writable:!1,enumerable:!1,configurable:!0});var ut=class extends ee{constructor(t){super(t),this.name="AddressInUseError"}};te(ut,"name",{value:"AddressInUseError",writable:!1,enumerable:!1,configurable:!0});var pt=class extends ee{constructor(t){super(t),this.name="TimeoutError"}};te(pt,"name",{value:"TimeoutError",writable:!1,enumerable:!1,configurable:!0});var e1=globalThis.Array,xe=globalThis.Map,t1=globalThis.Set,v=globalThis.Object,dt=globalThis.Reflect,n1=globalThis.WeakMap,r1=globalThis.TypeError,p=v.getOwnPropertyDescriptor,Yn=p(dt,"apply")?.value,Hr=p(e1,"isArray")?.value,be=p(v,"getPrototypeOf")?.value,Ea=p(v,"prototype")?.value,Ie=p(xe,"prototype")?.value,o1=p(t1,"prototype")?.value,zr=p(Ie,"size")?.get,jr=p(o1,"size")?.get;function d(e,t,n){if(typeof e!="function"||typeof Yn!="function")throw new r1("The JavaScript collection runtime is unavailable");return Yn(e,t,n)}var i1=p(n1,"prototype")?.value,qr=p(i1,"get")?.value,Vr=p(i1,"set")?.value,Kn=new n1;function s1(e){if(e===null||typeof e!="object"&&typeof e!="function")return 0;let t=d(qr,Kn,[e]);if(t!==void 0)return t;let n=0;try{d(zr,e,[]),n=1}catch{try{d(jr,e,[]),n=2}catch{n=0}}return d(Vr,Kn,[e,n]),n}function Qr(e){return s1(e)===1}function Yr(e){return s1(e)===2}var wa=p(v,"getOwnPropertyNames")?.value,Sa=p(v,"getOwnPropertySymbols")?.value,Kr=p(dt,"ownKeys")?.value,a1=p(Ie,"entries")?.value,l1=p(o1,"values")?.value,$r=d(be,v,[d(a1,new xe,[])]),Xr=d(be,v,[d(l1,new t1,[])]),Jr=p($r,"next")?.value,Zr=p(Xr,"next")?.value;function eo(e){return d(a1,e,[])}function to(e){return d(l1,e,[])}function no(e){return d(Jr,e,[])}function ro(e){return d(Zr,e,[])}var c1=globalThis.WeakSet,_t=globalThis.Object,mt=globalThis.TypeError,ce=_t.getOwnPropertyDescriptor,oo=_t.defineProperty,$n=ce(globalThis.Reflect,"apply")?.value,io=globalThis.Symbol.for,u1=ce(c1,"prototype")?.value,so=ce(u1,"has")?.value,ao=ce(u1,"add")?.value;function ve(e,t,n){if(typeof e!="function"||typeof $n!="function")throw new mt("The JavaScript runtime Type registry API is unavailable");return $n(e,t,n)}var Xn=ve(io,globalThis.Symbol,["velar.type.registry.v1"]),lo=(()=>{let e=ce(globalThis,Xn);if(e){if(!("value"in e)||e.enumerable||e.configurable||e.writable)throw new mt("VelarScript runtime type registry descriptor is invalid");try{ve(so,e.value,[e.value])}catch{throw new mt("VelarScript runtime type registry is invalid")}return e.value}let t=new c1;return ve(oo,_t,[globalThis,Xn,{value:t,enumerable:!1,configurable:!1,writable:!1}]),t})();function ht(e){return ve(ao,lo,[e]),e}var gt=globalThis.WeakMap,p1=globalThis.Set,Ta=globalThis.Promise,co=globalThis.Function,uo=globalThis.Symbol,yt=p(gt,"prototype")?.value,Le=p(p1,"prototype")?.value,po=p(co,"prototype")?.value,fo=p(uo,"hasInstance")?.value,mo=p(yt,"get")?.value,_o=p(yt,"set")?.value,Na=p(yt,"delete")?.value,Ca=p(Le,"has")?.value,ho=p(Le,"add")?.value,xa=p(Le,"delete")?.value,ba=p(Le,"size")?.get,go=p(po,fo)?.value,yo=p(v,"freeze")?.value,Eo=p(v,"defineProperty")?.value,wo=p(Ie,"set")?.value,So=p(Ie,"get")?.value;function Et(){return{active:new gt,depth:0,copies:null,copy:m}}function To(){return new p1}function Jn(e,t){return d(mo,e,[t])}function No(e,t,n){return d(_o,e,[t,n])}function Co(e,t){return d(So,e,[t])}function Zn(e,t,n){return d(wo,e,[t,n])}function xo(e,t){return d(ho,e,[t])}function ue(e){return d(Hr,e1,[e])}function _(e,t){return d(p,v,[e,t])}function w(e,t){return d(go,t,[e])}function wt(e){return d(yo,v,[e])}function pe(e){let t=d(be,v,[e]);return t===null?!0:d(be,v,[t])===null}var m={seen(e,t,n){if(e.copies===null)return;let r=Jn(e.copies,t);return r===void 0?void 0:Co(r,n)},remember(e,t,n,r){e.copies===null&&(e.copies=new gt);let i=Jn(e.copies,t);return i===void 0&&(i=new xe,No(e.copies,t,i)),Zn(i,r,n),n},object(e,t,n){return m.remember(e,t,{},n)},field(e,t,n){d(Eo,v,[e,t,{value:n,writable:!0,enumerable:!0,configurable:!0}])},listOf(e,t,n,r){let i=m.seen(t,e,r);if(i!==void 0)return i;let o=m.remember(t,e,[],r),s=_(e,"length")?.value??0;for(let a=0;a<s;a+=1){let h=_(e,a);o[a]=n===null?h?.value:n(h?.value,t)}return o},setOf(e,t,n,r){let i=m.seen(t,e,r);if(i!==void 0)return i;let o=m.remember(t,e,To(),r),s=to(e);for(;;){let a=ro(s);if(a.done)break;xo(o,n===null?a.value:n(a.value,t))}return o},mapOf(e,t,n,r,i){let o=m.seen(t,e,i);if(o!==void 0)return o;let s=m.remember(t,e,new xe,i),a=eo(e);for(;;){let h=no(a);if(h.done)break;let M=h.value;Zn(s,n===null?M[0]:n(M[0],t),r===null?M[1]:r(M[1],t))}return s},recordOf(e,t,n,r){let i=m.seen(t,e,r);if(i!==void 0)return i;let o=m.remember(t,e,{},r),s=d(Kr,dt,[e]);for(let a=0;a<s.length;a+=1){let h=s[a];if(typeof h!="string")continue;let M=_(e,h);!M?.enumerable||!("value"in M)||m.field(o,h,n===null?M.value:n(M.value,t))}return o},plain(e,t){if(e===null||typeof e!="object")return e;let n=m.seen(t,e,m.plain);return n!==void 0?n:ue(e)?m.listOf(e,t,m.plain,m.plain):Qr(e)?m.mapOf(e,t,m.plain,m.plain,m.plain):Yr(e)?m.setOf(e,t,m.plain,m.plain):pe(e)?m.recordOf(e,t,m.plain,m.plain):e},through(e,t,n){let r=e?.copy;return typeof r!="function"?m.plain(t,n):d(r,e,[t,n])}};function f1(e){return e===null||typeof e!="object"||ue(e)||pe(e)?"":"; a record accepts only plain data objects \u2014 project the fields into a record first, for example {x: instance.x}"}var bo=globalThis.Object.defineProperty,ne=class extends r1{constructor(t,n){super(t),this.name="ValidationError",this.path=n?.path??null,this.field=n?.field??null,this.reason=n?.reason??null}};bo(ne,"name",{value:"ValidationError",writable:!1,enumerable:!1,configurable:!0});import{trustedSql as _e}from"@velarscript-labs/database";var m1='/*!\n * # Third-party notices\n *\n * The generated SQLite Worker contains `sqlite3-parser` 0.7.1.\n *\n * ## sqlite3-parser\n *\n * MIT License\n *\n * Copyright (c) 2026 Jake Teton-Landis\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the "Software"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n *\n * Additional notice regarding vendored SQLite sources:\n *\n * Some files under `vendor/` originate from the SQLite project. SQLite is in the\n * public domain, and those upstream SQLite source files remain available under\n * public-domain terms. Repository-specific modifications and original code in\n * this repository are provided under the MIT license above unless otherwise\n * noted.\n */\nvar Vn=Object.defineProperty;var Zn=(r,o)=>{for(var e in o)Vn(r,e,{get:o[e],enumerable:!0})};import{Buffer as d1}from"node:buffer";import{DatabaseSync as He,constants as i1}from"node:sqlite";import{isMainThread as ve,parentPort as p,workerData as W}from"node:worker_threads";var Q1=r=>r;var $n=new Uint8Array([29,28,28,28,28,28,28,28,28,7,7,28,7,7,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,7,15,8,5,4,22,24,8,17,18,21,20,23,11,26,16,3,3,3,3,3,3,3,3,3,3,5,19,12,14,13,6,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,2,2,9,28,28,28,2,8,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,2,2,28,10,28,25,28,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,30,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27]);function h1(r,o){let e=r.charCodeAt(o);return e!==e?29:e>255?27:$n[e]}function v(r){return r===void 0?!1:r.charCodeAt(0)>=128?!0:r>="0"&&r<="9"||r>="A"&&r<="Z"||r>="a"&&r<="z"||r==="_"||r==="$"}function q(r){return r!==void 0&&r>="0"&&r<="9"}function g1(r){return r===void 0?!1:r>="0"&&r<="9"||r>="A"&&r<="F"||r>="a"&&r<="f"}function V1(r){if(r===" ")return!0;if(r===void 0)return!1;let o=r.charCodeAt(0);return o>=9&&o<=13}var qn="";function Z1(r,o,e={}){let s=e.digitSeparator??qn,m=typeof s=="string"&&s.length===1,n=new Map,t=new Map;for(let u=0;u<r.constants.YYNTOKEN;u++){let f=r.symbols[u],E=u;n.set(f,E),t.set(E,f)}function i(u){let f=n.get(u);if(f===void 0)throw new Error(`tokenize.ts: parser defs are missing terminal token "${u}". This usually means the parser defs and tokenizer are out of sync.`);return f}let a={SPACE:i("SPACE"),COMMENT:i("COMMENT"),ILLEGAL:i("ILLEGAL"),PTR:i("PTR"),MINUS:i("MINUS"),LP:i("LP"),RP:i("RP"),SEMI:i("SEMI"),PLUS:i("PLUS"),STAR:i("STAR"),SLASH:i("SLASH"),REM:i("REM"),EQ:i("EQ"),LE:i("LE"),NE:i("NE"),LT:i("LT"),LSHIFT:i("LSHIFT"),GE:i("GE"),RSHIFT:i("RSHIFT"),GT:i("GT"),BITOR:i("BITOR"),CONCAT:i("CONCAT"),COMMA:i("COMMA"),BITAND:i("BITAND"),BITNOT:i("BITNOT"),DOT:i("DOT"),STRING:i("STRING"),ID:i("ID"),INTEGER:i("INTEGER"),FLOAT:i("FLOAT"),QNUMBER:i("QNUMBER"),VARIABLE:i("VARIABLE"),BLOB:i("BLOB"),CASE:i("CASE"),END:i("END")},c=o.meta.maskFlags,A=Object.keys(c),I=e.flags??A,T=c.ALWAYS??Q1(0);for(let u of I)T=Q1(T|(c[u]??0));let C=[],k=0,M=0;for(let u of o.keywords){if((u.mask&T)===0)continue;M++;let f=u.name.length;f>k&&(k=f);let E=C[f];E===void 0&&(E={names:[],codes:[]},C[f]=E),E.names.push(u.name),E.codes.push(i(u.token))}function X(u,f,E){let l;switch(h1(u,f)){case 7:{for(l=f+1;V1(u[l]);l++);return E[0]=a.SPACE,l-f}case 11:{if(u[f+1]==="-"){for(l=f+2;u[l]!==void 0&&u[l]!==`\n`;l++);return E[0]=a.COMMENT,l-f}return u[f+1]===">"?(E[0]=a.PTR,u[f+2]===">"?3:2):(E[0]=a.MINUS,1)}case 17:return E[0]=a.LP,1;case 18:return E[0]=a.RP,1;case 19:return E[0]=a.SEMI,1;case 20:return E[0]=a.PLUS,1;case 21:return E[0]=a.STAR,1;case 16:{if(u[f+1]!=="*"||u[f+2]===void 0)return E[0]=a.SLASH,1;l=f+3;let N=u[f+2];for(;u[l]!==void 0&&!(N==="*"&&u[l]==="/");)N=u[l],l++;return u[l]!==void 0&&l++,E[0]=a.COMMENT,l-f}case 22:return E[0]=a.REM,1;case 14:return E[0]=a.EQ,u[f+1]==="="?2:1;case 12:{let N=u[f+1];return N==="="?(E[0]=a.LE,2):N===">"?(E[0]=a.NE,2):N==="<"?(E[0]=a.LSHIFT,2):(E[0]=a.LT,1)}case 13:{let N=u[f+1];return N==="="?(E[0]=a.GE,2):N===">"?(E[0]=a.RSHIFT,2):(E[0]=a.GT,1)}case 15:return u[f+1]==="="?(E[0]=a.NE,2):(E[0]=a.ILLEGAL,1);case 10:return u[f+1]==="|"?(E[0]=a.CONCAT,2):(E[0]=a.BITOR,1);case 23:return E[0]=a.COMMA,1;case 24:return E[0]=a.BITAND,1;case 25:return E[0]=a.BITNOT,1;case 8:{let N=u[f],L;for(l=f+1;(L=u[l])!==void 0;l++)if(L===N)if(u[l+1]===N)l++;else break;return L==="\'"?(E[0]=a.STRING,l-f+1):L!==void 0?(E[0]=a.ID,l-f+1):(E[0]=a.ILLEGAL,l-f)}case 26:return q(u[f+1])?H(u,f,E,!0):(E[0]=a.DOT,1);case 3:return H(u,f,E,!1);case 9:{for(l=f+1;u[l]!==void 0;l++)if(u[l]==="]")return E[0]=a.ID,l-f+1;return E[0]=a.ILLEGAL,l-f}case 6:{for(E[0]=a.VARIABLE,l=f+1;q(u[l]);l++);return l-f}case 4:case 5:{let N=0;for(E[0]=a.VARIABLE,l=f+1;u[l]!==void 0;){let L=u[l];if(v(L)){N++,l++;continue}if(L==="("&&N>0){let x;do l++,x=u[l];while(x!==void 0&&!V1(x)&&x!==")");x===")"?l++:E[0]=a.ILLEGAL;break}if(L===":"&&u[l+1]===":"){l+=2;continue}break}return N===0&&(E[0]=a.ILLEGAL),l-f}case 1:{if(h1(u,f+1)>2){if(l=f+1,v(u[l])){for(l++;v(u[l]);)l++;return E[0]=a.ID,l-f}return g(u,f,l,E)}for(l=f+2;h1(u,l)<=2;l++);if(v(u[l])){for(l++;v(u[l]);)l++;return E[0]=a.ID,l-f}return g(u,f,l,E)}case 0:{if(u[f+1]==="\'"){for(E[0]=a.BLOB,l=f+2;g1(u[l]);l++);if(u[l]!=="\'"||(l-f-2)%2)for(E[0]=a.ILLEGAL;u[l]!==void 0&&u[l]!=="\'";)l++;return u[l]!==void 0&&l++,l-f}for(l=f+1;v(u[l]);)l++;return E[0]=a.ID,l-f}case 2:case 27:{for(l=f+1;v(u[l]);)l++;return E[0]=a.ID,l-f}case 30:{if(u.charCodeAt(f+1)===187&&u.charCodeAt(f+2)===191)return E[0]=a.SPACE,3;for(l=f+1;v(u[l]);)l++;return E[0]=a.ID,l-f}case 29:return E[0]=a.ILLEGAL,0;default:return E[0]=a.ILLEGAL,1}}function H(u,f,E,l){let N=f;if(E[0]=a.INTEGER,!l&&u[f]==="0"&&(u[f+1]==="x"||u[f+1]==="X")&&g1(u[f+2])){for(N=f+3;u[N]!==void 0;N++)if(!g1(u[N])){if(m&&u[N]===s){E[0]=a.QNUMBER;continue}break}}else{if(!l){for(N=f;u[N]!==void 0;N++)if(!q(u[N])){if(m&&u[N]===s){E[0]=a.QNUMBER;continue}break}}if(l&&N===f||u[N]==="."){for(E[0]===a.INTEGER&&(E[0]=a.FLOAT),N=l?f+1:N+1;u[N]!==void 0;N++)if(!q(u[N])){if(m&&u[N]===s){E[0]=a.QNUMBER;continue}break}}if((u[N]==="e"||u[N]==="E")&&(q(u[N+1])||(u[N+1]==="+"||u[N+1]==="-")&&q(u[N+2]))){for(E[0]===a.INTEGER&&(E[0]=a.FLOAT),N+=2;u[N]!==void 0;N++)if(!q(u[N])){if(m&&u[N]===s){E[0]=a.QNUMBER;continue}break}}}for(;v(u[N]);)E[0]=a.ILLEGAL,N++;return N-f}function g(u,f,E,l){let N=E-f;if(N>=2&&N<=k){let L=C[N];if(L!==void 0){let x=L.names,O=L.codes,D=x.length;n:for(let U=0;U<D;U++){let S=x[U];for(let F=0;F<N;F++){let Z=u.charCodeAt(f+F),Y=S.charCodeAt(F);if(Z!==Y&&Z!==(Y|32))continue n}return l[0]=O[U],N}}}return l[0]=a.ID,N}let w=a.SPACE,n1=a.COMMENT,e1={done:!0,value:void 0};class l1{sql;len;emitTrivia;offset;line;col;_out=[0];_result={done:!1,value:void 0};constructor(f,E){this.sql=f,this.len=f.length,this.emitTrivia=E,this.offset=0,this.line=1,this.col=0}[Symbol.iterator](){return this}next(){let f=this.sql,E=this.len,l=this.emitTrivia,N=this._out,L=this.offset,x=this.line,O=this.col;for(;L<E;){let D=X(f,L,N),U=N[0];if(D===0)return this.offset=L,this.line=x,this.col=O,e1;let S=L,F=x,Z=O,Y=S+D;for(let $=S;$<Y;$++)f.charCodeAt($)===10?(x++,O=0):O++;if(L=Y,!(!l&&(U===w||U===n1)))return this.offset=L,this.line=x,this.col=O,this._result.value={type:U,text:f.slice(S,Y),span:{offset:S,length:D,line:F,col:Z}},this._result}return this.offset=L,this.line=x,this.col=O,e1}}function L1(u,{emitTrivia:f=!1}={}){return new l1(u,f)}return{tokens:a,tokenName:u=>t.get(u),tokenize:L1,_nextToken:X,_keywordCount:M}}function $1(r){let o=r.constants,e=r.tables,s=e.yyFallback??[];function m(a,c){if(c>o.YY_MAX_SHIFT)return c;let A=a;for(;;){let T=e.yy_shift_ofst[c]+A;if(e.yy_lookahead[T]!==A){if(o.YYFALLBACK&&A<s.length){let C=s[A];if(C!==0){A=C;continue}}if(o.YYWILDCARD>0){let C=T-A+o.YYWILDCARD;if(C>=0&&C<e.yy_lookahead.length&&e.yy_lookahead[C]===o.YYWILDCARD&&A>0)return e.yy_action[C]}return e.yy_default[c]}return e.yy_action[T]}}function n(a,c){if(a>o.YY_REDUCE_COUNT)return e.yy_default[a];let A=e.yy_reduce_ofst[a]+c;return A<0||A>=o.YY_ACTTAB_COUNT||e.yy_lookahead[A]!==c?e.yy_default[a]:e.yy_action[A]}class t{#n=[{stateno:0,major:0,minor:void 0,span:{offset:0,length:0,line:1,col:0}}];#t=[];#e="running";#r;#s;#o=0;#i;constructor(c,A){this.#i=c,this.#s=A}get phase(){return this.#e}get root(){return this.#r}get stack(){return this.#n}get errors(){return this.#t}get state(){return this.#s}next(c,A,I){if(this.#e!=="running")return;let T=this.#n,C=T[T.length-1].stateno;for(;;){let k=C;if(C=m(c,C),C>=o.YY_MIN_REDUCE){this.#a(C-o.YY_MIN_REDUCE),C=T[T.length-1].stateno;continue}if(C<=o.YY_MAX_SHIFTREDUCE){let M=C;M>o.YY_MAX_SHIFT&&(M+=o.YY_MIN_REDUCE-o.YY_MIN_SHIFTREDUCE),T.push({stateno:M,major:c,minor:A,span:I}),this.#o++;return}if(C===o.YY_ACCEPT_ACTION){this.#r=T[T.length-1].minor,this.#e="accepted";return}this.#t.push({stateno:k,major:c,minor:A,tokenIndex:this.#o}),this.#e="errored";return}}#a(c){let A=e.yyRuleInfoNRhs[c],I=e.yyRuleInfoLhs[c],T=this.#n,C=[];for(let g=0;g<A;g++){let w=T.pop();C.push({major:w.major,minor:w.minor,span:w.span})}C.reverse();let k;if(C.length===0){let g=T[T.length-1].span;k={offset:g.offset+g.length,length:0,line:g.line,col:g.col}}else{let g=C[0].span,w=C[C.length-1].span;k={offset:g.offset,length:w.offset+w.length-g.offset,line:g.line,col:g.col}}let M=this.#i(this.#s,c,C,k),X=T[T.length-1].stateno,H=n(X,I);T.push({stateno:H,major:I,minor:M,span:k})}}function i(a,c){return new t(a,c)}return i}function jn(r,o){let{filename:e}=r,{message:s,span:m,hints:n}=o,t=e?`At ${e}:${m.line}:${m.col}:`:`At ${m.line}:${m.col}:`,i=[s,"",t,J1(r,m,{indent:" "})];return n?.forEach(({message:a,span:c},A)=>{(A===0||c)&&i.push(""),i.push(` hint: ${a}`),c&&i.push(J1(r,c,{indent:" ",contextBefore:0,contextAfter:0}))}),i.join(`\n`)}var O1=class{#n;#t;#e;#r;constructor(o,e){if(!o)throw new TypeError(`Expected a ParseErrorContext, got ${typeof o} (${o})`);this.#n=e,this.#t=o,this.#r=o.filename}get message(){return this.#n.message}get span(){return this.#n.span}get token(){return this.#n.token}get hints(){return this.#n.hints}get filename(){return this.#r}format(){if(this.#e!==void 0)return this.#e;if(!this.#t)throw new Error("ParserDiagnostic: context is required to format a diagnostic");return this.#e=jn(this.#t,this.#n),this.#t=void 0,this.#e}toString(){return this.format()}toJSON(){return{message:this.message,span:this.span,token:this.token,hints:this.hints,filename:this.filename}}};function j(r,o){return o.map(e=>new O1(r,e))}function q1(r,o,e){let s=e?.line??1,m=e?.col??0;for(let n=e?.offset??0;n<o;n++)r.charCodeAt(n)===10?(s++,m=0):m++;return{line:s,col:m}}var j1="\\u2502 ";function J1(r,o,e){let{source:s}=r,m=Math.max(0,e?.contextBefore??1),n=Math.max(0,e?.contextAfter??1),t=e?.indent??"",i=Math.max(0,Math.min(o.offset,s.length)),a=Math.max(i,Math.min(o.offset+o.length,s.length)),c=s.split(`\n`),A=o.offset===i?o:q1(s,i),I=q1(s,a,o),T=Math.max(1,A.line-m),C=Math.min(c.length,I.line+n),k=Math.max(2,String(C).length),M=[];for(let X=T;X<=C;X++){let H=c[X-1]??"";if(M.push(`${t}${String(X).padStart(k," ")}${j1}${H}`),X<A.line||X>I.line)continue;let g=X===A.line?A.col:0,w=X===I.line?I.col:H.length,n1=Math.max(1,w-g),e1=" ".repeat(k)+j1+" ".repeat(g);M.push(t+e1+"^".repeat(n1))}return M.join(`\n`)}function z1(r){let o=[{message:Jn(r.text)}],e=JSON.stringify(r.text);return e.slice(1,-1)!==String(r.text)&&o.push({message:`escaped token text: ${e}`}),{message:`unrecognized token: "${r.text}"`,span:r.span,token:r,hints:o}}function Jn(r){return r.startsWith("\'")?"unterminated string literal":r.startsWith(\'"\')||r.startsWith("`")||r.startsWith("[")?"unterminated quoted identifier":/^[0-9.]/.test(r)?"malformed numeric literal":"the tokenizer could not classify this input"}var y;(function(r){r[r.ExprStart=1]="ExprStart",r[r.ItemStart=2]="ItemStart",r[r.ItemEnd=4]="ItemEnd",r[r.ClauseBoundary=8]="ClauseBoundary",r[r.TableNameContext=16]="TableNameContext",r[r.Hidden=32]="Hidden",r[r.KeywordLike=64]="KeywordLike",r[r.FallbackToId=128]="FallbackToId"})(y||(y={}));var zn=["ID","STRING","ILLEGAL","SPACE","COMMENT","COMMA","SEMI","LP","RP","CASE","END","FROM","FILTER","OVER"],B=y.ExprStart|y.ItemStart|y.ItemEnd,K=y.ExprStart|y.ItemStart,h=y.ClauseBoundary,E1=y.TableNameContext,pn={$:{display:"end of input"},SPACE:{flags:y.Hidden},COMMENT:{flags:y.Hidden},ILLEGAL:{flags:y.Hidden},ID:{display:"identifier",flags:B},STRING:{display:"string literal",flags:B},INTEGER:{display:"integer literal",flags:B},FLOAT:{display:"float literal",flags:B},QNUMBER:{display:"numeric literal",flags:B},BLOB:{display:"blob literal",flags:B},VARIABLE:{display:"bind parameter",flags:B},LP:{display:"(",flags:K},RP:{display:")",flags:y.ItemEnd},COMMA:{display:","},SEMI:{display:";"},STAR:{display:"*",flags:K},DOT:{display:"."},PLUS:{display:"+",flags:K},MINUS:{display:"-",flags:K},SLASH:{display:"/"},REM:{display:"%"},EQ:{display:"="},LT:{display:"<"},LE:{display:"<="},GT:{display:">"},GE:{display:">="},NE:{display:"!="},CONCAT:{display:"||"},BITAND:{display:"&"},BITOR:{display:"|"},BITNOT:{display:"~",flags:K},LSHIFT:{display:"<<"},RSHIFT:{display:">>"},PTR:{display:"->"},NULL:{flags:B},CASE:{flags:K},CAST:{flags:K},EXISTS:{flags:K},NOT:{flags:K},CURRENT:{flags:B},CTIME_KW:{display:"date/time literal",flags:B},TRUEFALSE:{flags:y.ItemEnd},SELECT:{flags:y.ItemStart},VALUES:{flags:y.ItemStart|h},END:{flags:y.ItemEnd},FROM:{flags:h|E1},WHERE:{flags:h},GROUP:{flags:h},HAVING:{flags:h},WINDOW:{flags:h},ORDER:{flags:h},LIMIT:{flags:h},FILTER:{flags:h},OVER:{flags:h},JOIN:{flags:h|E1},ON:{flags:h},USING:{flags:h},UNION:{flags:h},INTERSECT:{flags:h},EXCEPT:{flags:h},THEN:{flags:h},ELSE:{flags:h},WHEN:{flags:h},DO:{flags:h},SET:{flags:h},RETURNING:{flags:h},INTO:{flags:E1},UPDATE:{flags:E1},JOIN_KW:{display:"join operator"}};function p1(r,o){let e=ee(r,o);return s=>te(e,s)}function ne(r){return r.text.length>0?`near "${r.text}": syntax error`:"incomplete input"}function ee(r,o){let e=r.constants.YYNTOKEN,s=new Map,m=new Array(e),n=new Uint16Array(e);for(let a=0;a<e;a++){let c=a,A=r.symbols[a],I=pn[A];s.set(A,c),m[a]=re(A,I),n[a]=I?.flags??0}let t=oe(s),i=r.tables.yyFallback??[];for(let a=0;a<e;a++)a!==t.ID&&(i[a]??0)===t.ID&&(n[a]|=y.FallbackToId);for(let a of o.keywords){let c=s.get(a.token);c!==void 0&&(c===t.ID||c===t.STRING||c===t.ILLEGAL||(n[c]|=y.KeywordLike))}return{defs:r,tok:t,displayById:m,flagsById:n}}function te(r,o){let{token:e,state:s,previousToken:m,sawOverSinceLastFilterOrSemi:n,openers:t}=o,i=ne(e),a=ie(r,s),c=le(r,{token:e,canonical:i,expected:a,previousToken:m,openers:t,sawOverSinceLastFilterOrSemi:n})??(a.length>0?[{message:`expected ${ue(r,a)}`}]:void 0);return c?{message:i,span:e.span,token:e,hints:c}:{message:i,span:e.span,token:e}}function re(r,o){if(!((o?.flags??0)&y.Hidden))return o?.display?o.display:/^[A-Z_]+$/.test(r)?r.replace(/_KW$/,"").toLowerCase():r}function se(r,o){let e=r.get(o);if(e===void 0)throw new Error(`errors.ts: missing terminal token "${o}"`);return e}function oe(r){return Object.fromEntries(zn.map(o=>[o,se(r,o)]))}function ie(r,o){let e=r.defs.tables.yy_expected?.[o]??[],s=[];for(let m of e)nn(r,m)||s.push(m);return s}function nn(r,o){return Q(r,o,y.Hidden)}function en(r,o){return Q(r,o,y.FallbackToId)}function ae(r,o){for(let e of o)if(e===r.tok.ID||en(r,e))return!0;return!1}function A1(r,o){return r.includes(o)}function tn(r,o,e){for(let s of o)if(Q(r,s,e))return!0;return!1}function ce(r,o){if(!nn(r,o))return en(r,o)?x1(r,r.tok.ID):x1(r,o)}function me(r,o){let e=/^[^a-z0-9]/i.test(r),s=/^[^a-z0-9]/i.test(o);return e!==s?e?-1:1:r.localeCompare(o)}function ue(r,o){let e=new Set,s=[];for(let a of o){let c=ce(r,a);c===void 0||e.has(c)||(e.add(c),s.push(c))}s.sort(me);let m=s.slice(0,5);if(m.length===1)return m[0];if(m.length===2)return`${m[0]} or ${m[1]}`;let n=m.slice(0,-1).join(", "),t=m[m.length-1],i=s.length>m.length?", ...":"";return`${n}, or ${t}${i}`}function le(r,o){let{token:e,canonical:s,expected:m,previousToken:n,openers:t,sawOverSinceLastFilterOrSemi:i}=o,a=t[t.length-1],c=fe(r,e,n);if(c)return[{message:c}];if(s==="incomplete input")return rn(r,e,a)??[{message:"query ended before a complete statement was formed"}];let A=Ee(r,e,t);if(A)return[{message:A}];let I=Ae(r,e,i);if(I)return[{message:I}];let T=Ne(r,e,a);if(T)return T;let C=Ce(r,e,m,n);if(C)return[{message:C}];if(e.type===r.tok.FROM&&tn(r,m,y.ExprStart))return[{message:"expected a result expression before FROM"}];let k=Te(r,e,m);if(k)return[{message:k}]}function t1(r){return r.text.length===0?"end of input":`"${r.text}"`}function fe(r,o,e){if(!e||!Q(r,e.type,y.TableNameContext))return;let s=x1(r,e.type);if(b1(r,o))return`expected a table name after ${s}`;if(!(o.type===r.tok.ID||o.type===r.tok.STRING))return`expected a table name after ${s}`}function rn(r,o,e){if(!e)return;let s;if(e.type===r.tok.LP)s=`missing ")" before ${t1(o)}`;else if(e.type===r.tok.CASE)s=`missing END before ${t1(o)}`;else return;return[{message:s},{message:"opened here",span:e.span}]}function Ee(r,o,e){if(o.type===r.tok.RP&&!e.some(s=>s.type===r.tok.LP))return\'unexpected ")" with no matching "("\'}function Ae(r,o,e){if(o.type===r.tok.FILTER)return e?"FILTER clauses must appear before OVER clauses":void 0}function Ne(r,o,e){if(!(!e||!sn(r,o)))return rn(r,o,e)}function Ce(r,o,e,s){if(o.type===r.tok.COMMA&&A1(e,r.tok.RP))return\'remove this comma or add another list item before ")"\';if(b1(r,o)&&s?.type===r.tok.COMMA)return"remove the trailing comma or add another list item before end of input";if(s?.type===r.tok.COMMA&&sn(r,o))return`remove the trailing comma or add another list item before ${t1(o)}`;if(!(!s||!Ie(r,o)||!de(r,s))){if(A1(e,r.tok.COMMA))return`missing comma before ${t1(o)}`;if(A1(e,r.tok.RP)||A1(e,r.tok.SEMI)||tn(r,e,y.ClauseBoundary))return`possible missing comma or operator before ${t1(o)}`}}function Te(r,o,e){if(ae(r,e)&&ye(r,o))return`if you intended ${t1(o)} as an identifier here, quote it`}function Q(r,o,e){return(r.flagsById[o]&e)!==0}function b1(r,o){return o.type===0||o.type===r.tok.SEMI&&o.synthetic===!0}function sn(r,o){return b1(r,o)||Q(r,o.type,y.ClauseBoundary)}function Ie(r,o){return Q(r,o.type,y.ItemStart)}function de(r,o){return Q(r,o.type,y.ItemEnd)}function ye(r,o){return o.type===r.tok.ID||o.type===r.tok.STRING||o.type===r.tok.ILLEGAL?!1:Q(r,o.type,y.KeywordLike)}function x1(r,o){return r.displayById[o]??Le(r.defs,o)}function Le(r,o){return r.symbols[o]??String(o)}var Re=Symbol("Sqlite3ParserError"),S1=class r extends Error{name="Sqlite3ParserError";static wrap(o){return o instanceof r?o:new r(o.stack??`${o.name}: ${o.message}`,{cause:o})}[Re]=!0;toJSON(){return Object.assign({name:this.name,message:this.message,stack:this.stack,cause:this.cause},this)}},a1=class extends S1{name="Sqlite3ParserDiagnosticError";constructor(o){let e="";switch(o.length){case 0:e="No diagnostics provided when constructing error";break;case 1:e=o[0].format();break;default:e=`${o.length} diagnostics:\n${o.map(s=>s.format()).join(`\n`)}`}super(e),this.errors=o}};function ke(r){return r!==void 0&&r>="0"&&r<="9"}function he(r){return r===void 0?!1:r>="0"&&r<="9"||r>="A"&&r<="F"||r>="a"&&r<="f"}function ge(r){return r==="\'"||r===\'"\'||r==="`"||r==="["}function V(r){if(r.length===0||!ge(r[0]))return r;let o=r[0]==="["?"]":r[0],e="";for(let s=1;s<r.length;s++){let m=r[s];if(m===o)if(r[s+1]===o)e+=o,s++;else break;else e+=m}return e}function an(r,o={}){let e=o.digitSeparator??"_",s=r[0]==="0"&&(r[1]==="x"||r[1]==="X"),m=s?he:ke,n="INTEGER",t="",i;for(let a=0;a<r.length;a++){let c=r[a];if(c!==e){t+=c,!s&&(c==="e"||c==="E"||c===".")&&(n="FLOAT");continue}(!m(r[a-1])||!m(r[a+1]))&&(i=`unrecognized token: "${r}"`)}return i?{op:n,text:t,error:i}:{op:n,text:t}}function on(r){if(r===void 0)return NaN;let o=typeof r=="string"?r.charCodeAt(0):r|0;return o>=48&&o<=57?o-48:o>=65&&o<=70?o-65+10:o>=97&&o<=102?o-97+10:NaN}function cn(r){if(r[0]!=="x"&&r[0]!=="X"||r[1]!=="\'"||r[r.length-1]!=="\'")throw new Error(`not a blob literal: ${JSON.stringify(r)}`);let o=r.slice(2,r.length-1);if(o.length%2!==0)throw new Error(`blob literal has odd hex digit count: ${JSON.stringify(r)}`);let e=new Uint8Array(o.length/2);for(let s=0;s<o.length;s+=2)e[s/2]=on(o[s])<<4|on(o[s+1]);return e}function G(r,o,...e){return e.length>0?{message:r,span:o,hints:e}:{message:r,span:o}}function N1(r,o,e){return G(r,o,{message:"first specified here",span:e})}var Oe={offset:0,length:0,line:0,col:0};function xe(r,o){let e=mn(r),s=mn(o);return e&&s?Oe:e?o:s?r:{offset:r.offset,length:o.offset+o.length-r.offset,line:r.line,col:r.col}}function mn(r){return r.line===0&&r.offset===0&&r.length===0}var c1=r=>({type:"Name",text:V(r.text),span:r.span}),r1=r=>({type:"Id",name:V(r.text),span:r.span});function ln(r){let o=r.span,e=r.text.toUpperCase();if(e==="CURRENT_DATE")return{type:"CurrentDateLiteral",span:o};if(e==="CURRENT_TIME")return{type:"CurrentTimeLiteral",span:o};if(e==="CURRENT_TIMESTAMP")return{type:"CurrentTimestampLiteral",span:o};throw new Error(`unreachable CTIME_KW: ${r.text}`)}var fn=r=>({type:"NullLiteral",span:r.span}),En=r=>({type:"StringLiteral",value:V(r.text),span:r.span}),An=r=>({type:"BlobLiteral",bytes:cn(r.text),span:r.span}),m1=r=>({type:"NumericLiteral",value:r.text,span:r.span}),Nn=r=>({type:"KeywordLiteral",value:r.text,span:r.span});function _1(r,o){if(r.type===o.MATCH)return"Match";let e=r.text.toUpperCase();if(e==="LIKE")return"Like";if(e==="GLOB")return"Glob";if(e==="REGEXP")return"Regexp";throw new Error(`unreachable LIKE_KW: ${r.text}`)}function Cn(r,o){switch(r){case o.AND:return"And";case o.OR:return"Or";case o.LT:return"Less";case o.GT:return"Greater";case o.GE:return"GreaterEquals";case o.LE:return"LessEquals";case o.EQ:return"Equals";case o.NE:return"NotEquals";case o.BITAND:return"BitwiseAnd";case o.BITOR:return"BitwiseOr";case o.LSHIFT:return"LeftShift";case o.RSHIFT:return"RightShift";case o.PLUS:return"Add";case o.MINUS:return"Subtract";case o.STAR:return"Multiply";case o.SLASH:return"Divide";case o.REM:return"Modulus";case o.CONCAT:return"Concat";case o.IS:return"Is";case o.NOT:return"IsNot";default:throw new Error(`unreachable binary op token: ${r}`)}}function Tn(r,o){switch(r){case o.BITNOT:return"BitwiseNot";case o.MINUS:return"Negative";case o.NOT:return"Not";case o.PLUS:return"Positive";default:throw new Error(`unreachable unary op token: ${r}`)}}var In=r=>r.text==="->>"?"ArrowRightShift":"ArrowRight",D1=(r,o)=>({type:"ParenthesizedExpr",exprs:[r],span:o}),dn=r=>({type:"VariableExpr",name:r.text,span:r.span}),yn=(r,o,e)=>({type:"CollateExpr",expr:r,collation:V(o.text),span:e}),Ln=(r,o,e)=>({type:"CastExpr",expr:r,typeName:o,span:e}),J=(r,o,e,s)=>({type:"BinaryExpr",left:r,op:o,right:e,span:s}),s1=(r,o,e)=>({type:"UnaryExpr",op:r,expr:o,span:e}),Rn=(r,o,e,s,m)=>({type:"BetweenExpr",lhs:r,not:o,start:e,end:s,span:m}),kn=(r,o,e,s)=>({type:"InListExpr",lhs:r,not:o,rhs:e,span:s}),hn=(r,o,e,s)=>({type:"InSelectExpr",lhs:r,not:o,rhs:e,span:s}),gn=(r,o,e,s,m)=>({type:"InTableExpr",lhs:r,not:o,rhs:e,args:s,span:m}),On=(r,o)=>({type:"SubqueryExpr",select:r,span:o}),xn=(r,o)=>({type:"ExistsExpr",select:r,span:o});function bn(r,o,e,s){if(o===e.ISNULL)return{type:"IsNullExpr",expr:r,span:s};if(o===e.NOTNULL)return{type:"NotNullExpr",expr:r,span:s};throw new Error(`unreachable NULL-test token: ${o}`)}function U1(r,o,e,s,m,n){return{type:"LikeExpr",lhs:r,not:o,op:e,rhs:s,escape:m,span:n}}function z(r,o,e,s,m,n,t){return e==="Distinct"&&(s?.length??0)!==1&&r.errors.push({message:"DISTINCT aggregates must have exactly one argument",span:o.span}),{type:"FunctionCallExpr",name:r1(o),distinctness:e,args:s,orderBy:m,filterOver:n,span:t}}var X1=(r,o,e)=>({type:"FunctionCallStarExpr",name:r1(r),filterOver:o,span:e}),M1=(r,o)=>({type:"QualifiedName",dbName:void 0,objName:r,alias:void 0,span:o}),w1=(r,o,e)=>({type:"QualifiedName",dbName:r,objName:o,alias:void 0,span:e}),Sn=(r,o,e)=>({type:"QualifiedName",dbName:void 0,objName:r,alias:o,span:e}),_n=(r,o,e,s)=>({type:"QualifiedName",dbName:r,objName:o,alias:e,span:s});function un(r){switch(r.toUpperCase()){case"CROSS":return 3;case"FULL":return 56;case"INNER":return 1;case"LEFT":return 40;case"NATURAL":return 4;case"RIGHT":return 48;case"OUTER":return 32;default:return}}function C1(r,o,e,s,m){let n=un(o.text);if(n===void 0)return r.errors.push({message:`unknown join type: ${o.text}`,span:o.span}),{type:"TypedJoinJoinOperator",joinType:void 0,span:m};for(let A of[e,s]){if(A===void 0)continue;let I=un(A.text);if(I===void 0){r.errors.push({message:`unknown join type: ${A.text}`,span:A.span});continue}n|=I}let t=1,i=8,a=16,c=32;return((n&(t|c))===(t|c)||(n&(c|i|a))===c)&&r.errors.push({message:`unknown join type: ${o.text} ${e?.text??""} ${s?.text??""}`.trimEnd(),span:o.span}),{type:"TypedJoinJoinOperator",joinType:n,span:m}}var Dn=()=>({select:void 0,joins:[],pendingOp:void 0});function F1(r,o){return{type:"FromClause",select:r.select,joins:r.joins.length>0?r.joins.map(e=>({type:"JoinedSelectTable",operator:e.operator,table:e.table,constraint:e.constraint,span:e.operator.span})):void 0,span:o}}function u1(r,o,e,s){let m=o.pendingOp;o.pendingOp=void 0,m?(m.type==="TypedJoinJoinOperator"&&m.joinType!==void 0&&(m.joinType&4)!==0&&s&&r.errors.push({message:"a NATURAL join may not have an ON or USING clause",span:s.span}),o.joins.push({operator:m,table:e,constraint:s})):(s&&r.errors.push({message:"a JOIN clause is required before ON",span:s.span}),o.select=e)}function T1(r,o,e,s,m){return{type:"Select",with:r,select:o.select,compounds:o.compounds,orderBy:e,limit:s,span:m}}function Un(r,o){let e=r;e.compounds?e.compounds.push(o):e.compounds=[o]}function P1(r,o,e,s,m,n,t,i,a){let c=s===void 0?e.find(A=>A.type==="StarResultColumn"||A.type==="TableStarResultColumn"):void 0;return c&&r.errors.push({message:"no tables specified",span:c.span}),{type:"SelectFrom",distinctness:o,columns:e,from:s,whereClause:m,groupBy:n,having:t,windowClause:i,span:a}}function Xn(r,o,e,s){let m=o[0]?.values;if(m&&m.length!==e.length){let n=m.length>0?xe(m[0].span,m[m.length-1].span):void 0;r.errors.push(n?G("all VALUES must have the same number of terms",s,{message:`first row has ${m.length} terms`,span:n}):G("all VALUES must have the same number of terms",s))}o.push({type:"ValuesRow",values:e,span:s})}function I1(r,o,e,s){let m=0;for(let n of e){let t=n.constraint;switch(t.type){case"CollateColumnConstraint":m|=512;break;case"GeneratedColumnConstraint":{m|=32,t.typ&&t.typ.name.toUpperCase()==="STORED"&&(m|=64);break}case"PrimaryKeyColumnConstraint":m|=9;break;case"UniqueColumnConstraint":m|=8;break;default:break}}return o&&o.name.length>0&&(m|=4),{type:"ColumnDefinition",colName:r,colType:o,constraints:e,flags:m,span:s}}function Y1(r,o,e){let s=e.colName.text;for(let m=0;m<o.length;m++){let n=o[m];if(n.colName.text===s){r.errors.push(N1(`duplicate column name: ${s}`,e.colName.span,n.colName.span));return}}o.push(e)}function Mn(r,o,e,s){let m=e;for(let n of r)(n.flags&1)!==0&&(m|=4);return{type:"ColumnsAndConstraintsCreateTableBody",columns:r,constraints:o,flags:m,span:s}}function wn(r,o,e){let s=e.tblName.text;for(let m=0;m<o.length;m++){let n=o[m];if(n.tblName.text===s){r.errors.push(N1(`duplicate WITH table name: ${s}`,e.tblName.span,n.tblName.span));return}}o.push(e)}function B1(r,o,e,s){for(let m of o)m.nulls&&r.errors.push({message:`unsupported use of NULLS ${m.nulls==="First"?"FIRST":"LAST"}`,span:m.span});return{type:"UpsertIndex",targets:o,whereClause:e,span:s}}function Fn(r){let o=r.stmt;if(o===void 0)return;let e=r.explain===void 0?o:{type:"ExplainStmt",queryPlan:r.explain==="QueryPlan",stmt:o,span:o.span};r.cmds.push(e),r.stmt=void 0,r.explain=void 0}function Pn(r){let o=r.cmds,e=o[0]?.span,s=o[o.length-1]?.span,m=e!==void 0&&s!==void 0?{offset:e.offset,length:s.offset+s.length-e.offset,line:e.line,col:e.col}:{offset:0,length:0,line:1,col:1};return{type:"CmdList",cmds:o,span:m}}function G1(r,o,e){let{reduce:s,createState:m}=r,n=Z1(r,o,e),t=$1(r),i=p1(r,o),{CASE:a,COMMENT:c,END:A,ILLEGAL:I,LP:T,RP:C,SEMI:k,SPACE:M}=n.tokens,X=Yn(r,"FILTER"),H=Yn(r,"OVER"),g=0;function w(u,f,E){let{filename:l,emitTokens:N,...L}=f,x={source:u,filename:l},O=[],D=N?[]:void 0,U=m(),S=t(s,U),F=[],Z,Y=!1;function $(d){let R=S.errors[S.errors.length-1];return O.push(i({token:d,state:R.stateno,previousToken:Z,openers:F,sawOverSinceLastFilterOrSemi:Y})),O.push(...U.errors),{ok:!1,errors:j(x,O),tokens:D}}function Qn(d){let R=d.type;if(R===T||R===a)F.push(d);else if(R===C||R===A){let k1=F[F.length-1];k1&&(k1.type===T&&R===C||k1.type===a&&R===A)&&F.pop()}R===H?Y=!0:(R===X||R===k)&&(Y=!1),Z=d,K1=R}let K1,R1=u.length,f1=n.tokenize(u,L);for(let d of f1){if(d.type===M||d.type===c)continue;if(d.type===I)return D?.push(d),O.push(z1(d)),O.push(...U.errors),{ok:!1,errors:j(x,O),tokens:D};D?.push(d),S.next(d.type,d,d.span);let R=U.cmds.length>=1&&d.type!==k;if(R&&E.rejectTrailing)return O.push({message:"expected end of input after single statement",token:d,span:{offset:d.span.offset,length:u.length-d.span.offset,line:d.span.line,col:d.span.col}}),O.push(...U.errors),{ok:!1,errors:j(x,O),tokens:D};if(R&&E.firstStatement)return R1=d.span.offset,{ok:!0,state:U,tail:R1,tokens:D};if(S.phase==="errored")return $(d);if(Qn(d),S.phase!=="running")break}if(S.phase==="running"){let d={offset:f1.offset,length:0,line:f1.line,col:f1.col};if(K1!==k){let R={type:k,text:"",span:d,synthetic:!0};if(D?.push(R),S.next(k,R,d),S.errors.length>0)return $(R)}if(S.phase==="running"){let R={type:g,text:"",span:d,synthetic:!0};if(D?.push(R),S.next(g,R,d),S.errors.length>0)return $(R)}}return O.push(...U.errors),O.length>0?{ok:!1,errors:j(x,O),tokens:D}:S.phase==="accepted"?{ok:!0,state:U,tail:R1,tokens:D}:{ok:!1,errors:j(x,[{message:"parse did not accept input",span:{offset:0,length:0,line:1,col:0}}]),tokens:D}}function n1(u,f={}){let E=w(u,f,{firstStatement:!1,rejectTrailing:!!e.singleStatement});return E.ok?{status:"ok",root:Pn(E.state),tokens:E.tokens}:{status:"error",errors:E.errors,tokens:E.tokens}}function e1(u,f){let E=n1(u,f);if(E.status==="error")throw new a1(E.errors);return E}function l1(u,f={}){let{allowTrailing:E=!1,...l}=f,N=w(u,l,{firstStatement:!0,rejectTrailing:!E});if(!N.ok)return{status:"error",errors:N.errors,tokens:N.tokens};let L=N.state.cmds[0];return L?{status:"ok",root:L,tail:N.tail,tokens:N.tokens}:{status:"error",errors:j({source:u,filename:f.filename},[{message:"no SQL statement in input",span:{offset:0,length:0,line:1,col:0}}]),tokens:N.tokens}}function L1(u,f={}){let E=l1(u,f);if(E.status==="error")throw new a1(E.errors);return E}return{parse:n1,parseOrThrow:e1,parseStmt:l1,parseStmtOrThrow:L1,tokenize:n.tokenize,tokenName:n.tokenName,createEngine:t,reduce:s,createState:m,withOptions:u=>G1(r,o,{...e,...u}),parserDefs:r,keywordDefs:o}}function Yn(r,o){let e=r.symbols.indexOf(o);if(e<0)throw new Error(`parser.ts: missing terminal token "${o}"`);return e}var W1={};Zn(W1,{constants:()=>be,createState:()=>We,reduce:()=>Ge,symbols:()=>Ye,tables:()=>Be,tokens:()=>o1});function Bn(){return{stmt:void 0,explain:void 0,cmds:[],constraintName:void 0,vtabArgs:[],vtabArgCurrent:"",errors:[]}}var o1={SEMI:1,EXPLAIN:2,QUERY:3,PLAN:4,BEGIN:5,TRANSACTION:6,DEFERRED:7,IMMEDIATE:8,EXCLUSIVE:9,COMMIT:10,END:11,ROLLBACK:12,SAVEPOINT:13,RELEASE:14,TO:15,TABLE:16,CREATE:17,IF:18,NOT:19,EXISTS:20,TEMP:21,LP:22,RP:23,AS:24,COMMA:25,WITHOUT:26,ABORT:27,ACTION:28,AFTER:29,ANALYZE:30,ASC:31,ATTACH:32,BEFORE:33,BY:34,CASCADE:35,CAST:36,CONFLICT:37,DATABASE:38,DESC:39,DETACH:40,EACH:41,FAIL:42,OR:43,AND:44,IS:45,MATCH:46,LIKE_KW:47,BETWEEN:48,IN:49,ISNULL:50,NOTNULL:51,NE:52,EQ:53,GT:54,LE:55,LT:56,GE:57,ESCAPE:58,ID:59,COLUMNKW:60,DO:61,FOR:62,IGNORE:63,INITIALLY:64,INSTEAD:65,NO:66,KEY:67,OF:68,OFFSET:69,PRAGMA:70,RAISE:71,RECURSIVE:72,REPLACE:73,RESTRICT:74,ROW:75,ROWS:76,TRIGGER:77,VACUUM:78,VIEW:79,VIRTUAL:80,WITH:81,NULLS:82,FIRST:83,LAST:84,CURRENT:85,FOLLOWING:86,PARTITION:87,PRECEDING:88,RANGE:89,UNBOUNDED:90,EXCLUDE:91,GROUPS:92,OTHERS:93,TIES:94,WITHIN:95,GENERATED:96,ALWAYS:97,MATERIALIZED:98,REINDEX:99,RENAME:100,CTIME_KW:101,ANY:102,BITAND:103,BITOR:104,LSHIFT:105,RSHIFT:106,PLUS:107,MINUS:108,STAR:109,SLASH:110,REM:111,CONCAT:112,PTR:113,COLLATE:114,BITNOT:115,ON:116,INDEXED:117,STRING:118,JOIN_KW:119,CONSTRAINT:120,DEFAULT:121,NULL:122,PRIMARY:123,UNIQUE:124,CHECK:125,REFERENCES:126,AUTOINCR:127,INSERT:128,DELETE:129,UPDATE:130,SET:131,DEFERRABLE:132,FOREIGN:133,DROP:134,UNION:135,ALL:136,EXCEPT:137,INTERSECT:138,SELECT:139,VALUES:140,DISTINCT:141,DOT:142,FROM:143,JOIN:144,USING:145,ORDER:146,GROUP:147,HAVING:148,LIMIT:149,WHERE:150,RETURNING:151,INTO:152,NOTHING:153,BLOB:154,FLOAT:155,INTEGER:156,VARIABLE:157,CASE:158,WHEN:159,THEN:160,ELSE:161,INDEX:162,ALTER:163,ADD:164,WINDOW:165,OVER:166,FILTER:167,COLUMN:168,AGG_FUNCTION:169,AGG_COLUMN:170,TRUEFALSE:171,ISNOT:172,FUNCTION:173,UPLUS:174,UMINUS:175,TRUTH:176,REGISTER:177,VECTOR:178,SELECT_COLUMN:179,IF_NULL_ROW:180,ASTERISK:181,SPAN:182,ERROR:183,QNUMBER:184,SPACE:185,COMMENT:186,ILLEGAL:187},be={YYNSTATE:586,YYNRULE:413,YYNTOKEN:188,YYNSYMBOL:314,YY_MAX_SHIFT:585,YY_MIN_SHIFTREDUCE:858,YY_MAX_SHIFTREDUCE:1270,YY_ERROR_ACTION:1271,YY_ACCEPT_ACTION:1272,YY_NO_ACTION:1273,YY_MIN_REDUCE:1274,YY_MAX_REDUCE:1686,YY_ACTTAB_COUNT:2353,YY_SHIFT_COUNT:585,YY_REDUCE_COUNT:405,YYWILDCARD:102,YYFALLBACK:1},Se=[490,230,579,133,130,188,579,1363,391,1337,579,382,579,402,579,383,579,1361,378,406,1396,579,48,48,274,1317,48,48,187,538,48,48,83,83,148,148,83,83,133,130,188,81,81,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,1320,984,335,223,1379,406,579,133,130,188,539,133,130,188,539,378,567,1015,560,533,1314,271,186,540,1319,1016,83,83,1328,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,384,137,137,137,137,136,136,135,135,135,134,131,445,1640,381,45,984,1642,539,380,1624,1640,553,570,570,570,1302,433,139,139,139,139,132,445,521,1632,406,1300,8,187,139,139,139,139,1549,137,137,137,137,136,136,135,135,135,134,131,445,133,130,188,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,1623,1592,137,137,137,137,136,136,135,135,135,134,131,445,137,137,137,137,136,136,135,135,135,134,131,445,1199,1681,1230,1681,1228,137,137,137,137,136,136,135,135,135,134,131,445,579,282,137,137,137,137,136,136,135,135,135,134,131,445,1272,1,1,585,3,1278,21,21,406,218,226,376,431,890,111,573,1632,364,1375,8,890,417,1585,136,136,135,135,135,134,131,445,1264,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,426,1302,1197,223,1379,244,520,223,1379,230,581,142,581,1354,443,442,567,1558,560,579,567,405,560,1143,890,891,890,896,1145,157,256,890,891,890,460,459,1144,486,1472,83,83,313,512,1355,249,137,137,137,137,136,136,135,135,135,134,131,445,6,478,449,428,537,1147,1147,579,406,281,239,372,515,367,514,269,376,534,545,327,561,363,298,1633,20,20,8,83,83,896,327,561,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,460,437,223,1379,488,436,406,223,1379,95,331,1662,585,3,1278,567,539,560,1658,226,567,1052,560,1199,1682,535,1682,1375,578,157,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,137,137,137,137,136,136,135,135,135,134,131,445,327,561,223,1379,579,577,579,443,442,264,275,1076,509,506,505,567,526,560,300,353,479,352,504,544,150,150,61,61,1063,256,327,561,1061,137,137,137,137,136,136,135,135,135,134,131,445,890,1197,488,223,1379,444,444,444,406,890,1147,1147,332,449,1683,399,567,527,560,1062,1064,1064,159,135,135,135,134,131,445,1367,1367,378,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,1365,1365,1244,890,536,406,967,968,425,274,96,890,891,890,264,557,161,509,506,505,890,891,890,401,412,890,305,504,47,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,984,137,137,137,137,136,136,135,135,135,134,131,445,584,1149,1278,1472,890,891,890,226,216,1379,1305,412,309,127,568,1375,4,337,982,928,525,567,1373,560,577,575,890,891,890,379,571,1623,137,137,137,137,136,136,135,135,135,134,131,445,223,1379,984,223,1379,374,513,171,406,446,223,1379,378,567,929,560,567,1298,560,1052,157,564,25,567,890,560,474,157,569,412,256,157,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,244,520,223,1379,1076,488,134,131,445,44,125,125,449,461,418,567,1630,560,126,8,446,580,446,890,429,1061,890,353,479,352,528,327,561,558,209,890,891,890,327,561,576,1625,327,561,484,137,137,137,137,136,136,135,135,135,134,131,445,1062,1064,1064,1065,36,223,1379,1631,223,1379,8,579,1623,406,890,7,255,360,567,308,560,567,236,560,890,891,890,890,891,890,1244,83,83,1155,1154,475,234,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,890,1222,1003,1222,406,413,117,98,510,1264,1052,1472,549,577,1221,323,1221,1223,407,1223,890,891,890,579,12,378,274,2,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,83,83,137,137,137,137,136,136,135,135,135,134,131,445,1222,890,891,890,984,224,1379,890,353,466,338,1264,46,1221,548,890,1223,575,567,406,560,422,439,910,210,1087,1087,1101,1104,472,246,137,137,137,137,136,136,135,135,135,134,131,445,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,406,577,579,890,902,984,1599,890,891,890,392,879,415,251,1623,890,891,890,454,462,579,41,50,50,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,579,51,51,1002,1091,579,137,137,137,137,136,136,135,135,135,134,131,445,579,890,21,21,890,891,890,21,21,1626,242,1380,1604,469,356,406,358,420,1602,1243,83,83,427,567,456,560,163,137,137,137,137,136,136,135,135,135,134,131,445,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,406,425,440,1124,170,890,891,890,342,897,868,869,870,267,266,265,577,1629,577,579,8,1597,579,416,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,83,83,1541,21,21,1488,137,137,137,137,136,136,135,135,135,134,131,445,312,1257,488,579,577,389,425,171,1558,1591,301,897,339,1628,341,406,8,237,441,1077,229,373,1655,83,83,1554,1556,137,137,137,137,136,136,135,135,135,134,131,445,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,406,291,579,1e3,1057,324,1151,1015,577,577,1150,371,501,1548,1374,1016,398,1269,303,310,144,370,66,66,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,268,579,1554,473,340,406,137,137,137,137,136,136,135,135,135,134,131,445,905,577,577,67,67,577,1370,468,237,1490,471,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,579,137,137,137,137,136,136,135,135,135,134,131,445,1270,247,555,1076,373,1655,1603,21,21,241,240,398,1198,411,414,190,425,1489,1472,905,1063,554,432,390,1061,171,1001,579,425,363,1236,1585,137,137,137,137,136,136,135,135,135,134,131,445,890,1172,579,21,21,530,579,373,1655,297,1172,1472,1062,1064,1064,425,1173,1222,220,223,1379,517,21,21,124,1173,23,23,572,1491,1221,1174,567,1223,560,464,579,221,304,1235,1174,423,1244,296,90,118,579,1270,977,486,350,114,952,976,1341,579,21,21,890,891,890,563,953,373,1655,406,52,52,457,1171,495,556,330,287,577,68,68,577,424,355,543,311,289,577,1204,406,579,547,357,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,579,406,53,53,541,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,69,69,579,293,186,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,579,557,70,70,268,137,137,137,137,136,136,135,135,135,134,131,445,579,577,579,71,71,579,328,1600,137,137,137,137,136,136,135,135,135,134,131,445,72,72,73,73,1340,54,54,579,137,137,137,137,136,136,135,135,135,134,131,445,579,465,579,1611,481,542,579,55,55,579,90,470,579,90,579,485,579,411,579,1580,56,56,58,58,90,122,59,59,579,60,60,326,74,74,146,146,147,147,75,75,90,117,579,99,233,406,492,1414,76,76,231,1353,977,940,123,1415,120,976,1194,494,400,242,77,77,451,406,579,453,359,140,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,1339,406,22,22,579,140,129,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,165,579,17,579,78,78,141,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,260,62,62,79,79,137,137,137,137,136,136,135,135,135,134,131,445,480,579,919,493,579,344,579,117,137,137,137,137,136,136,135,135,135,134,131,445,579,63,63,348,80,80,64,64,137,137,137,137,136,136,135,135,135,134,131,445,82,82,579,913,579,115,579,1357,406,579,482,579,1e3,349,1054,117,273,1338,487,39,273,366,174,174,175,175,87,87,377,65,65,149,149,306,91,1086,1086,1100,1103,1090,1090,138,138,139,139,139,139,1248,448,579,40,295,579,489,579,273,396,396,395,284,393,262,913,1251,579,502,361,270,117,84,84,294,172,172,151,151,193,1404,334,927,926,934,935,166,145,145,333,579,169,579,117,1425,137,137,137,137,136,136,135,135,135,134,131,445,1471,579,247,173,173,167,167,1131,127,568,1399,4,195,579,1127,579,270,1018,1019,579,179,155,155,156,1066,571,579,1001,127,568,579,4,579,154,154,152,152,10,579,153,153,194,579,1148,1148,571,86,86,446,322,88,88,85,85,1006,975,273,124,49,49,564,1648,57,57,562,972,1131,124,446,974,1411,124,1146,1146,551,894,408,162,1476,550,564,327,561,1066,497,1316,1301,1306,1290,252,1076,1289,1291,1282,551,288,125,125,318,552,319,13,518,320,126,458,446,580,446,397,1076,1061,299,250,254,1452,125,125,463,127,568,1457,4,302,126,346,446,580,446,1445,1462,1061,1461,507,491,1583,571,243,369,1337,1545,347,1544,1062,1064,1064,1065,36,307,351,565,388,227,228,1292,516,1264,1261,1408,446,1409,1606,1407,1062,1064,1064,1065,36,321,295,1406,564,238,1244,396,396,395,284,393,98,1608,1251,1607,207,235,551,184,1458,197,1550,550,14,248,1244,193,94,334,97,467,500,199,1076,203,200,333,201,202,125,125,115,204,1464,1463,127,568,126,4,446,580,446,1539,1584,1061,483,15,1582,211,1467,100,477,571,496,354,217,195,213,498,214,403,1360,1359,1358,179,430,106,156,1348,404,1331,1330,919,244,1325,446,1062,1064,1064,1065,36,1661,1248,448,368,194,295,564,1323,1324,1347,396,396,395,284,393,1322,143,1251,434,1654,435,1377,529,316,375,1244,317,11,1524,276,193,438,334,1430,1636,1635,1076,119,164,408,333,1429,125,125,327,561,1386,116,325,386,126,385,446,580,446,387,546,1061,1378,1376,43,582,127,568,1249,4,225,283,458,285,195,286,583,160,1287,1279,532,176,179,571,409,156,191,410,177,314,861,447,232,1062,1064,1064,1065,36,178,329,450,1189,452,194,92,455,446,93,253,336,192,196,1141,1139,180,198,1257,955,564,257,343,24,258,1244,345,1152,273,205,1159,1163,206,181,182,476,419,421,208,101,408,183,102,1165,259,327,561,261,1162,5,1076,103,212,16,878,104,125,125,981,499,89,568,370,4,126,263,446,580,446,458,215,1061,503,105,26,508,362,571,27,917,127,568,365,4,107,930,315,185,168,28,108,519,522,1241,511,523,110,571,109,524,446,1106,1206,1062,1064,1064,1065,36,18,1205,112,113,564,1122,1107,1105,966,290,245,272,446,124,292,219,1010,1004,1225,29,1227,30,1233,31,564,1244,32,1229,117,33,1234,1109,34,1110,1076,35,559,121,9,1170,125,125,277,37,566,19,278,1067,126,895,446,580,446,128,1076,1061,1211,42,574,38,125,125,222,189,158,279,280,1307,126,394,446,580,446,859,531,1061,858,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1062,1064,1064,1065,36,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1062,1064,1064,1065,36,1273,1273,1273,1273,1273,1244,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1244],_e=[196,196,196,273,274,275,196,223,203,225,196,219,196,208,196,219,196,233,196,19,255,196,216,217,24,216,216,217,196,206,216,217,216,217,216,217,216,217,273,274,275,216,217,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,216,59,196,238,239,19,196,273,274,275,252,273,274,275,252,196,251,31,253,261,215,256,257,261,216,39,216,217,223,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,277,103,104,105,106,107,108,109,110,111,112,113,114,309,310,240,118,309,252,311,300,309,310,212,213,214,196,261,54,55,56,57,58,114,304,305,19,207,308,196,54,55,56,57,282,103,104,105,106,107,108,109,110,111,112,113,114,273,274,275,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,300,292,103,104,105,106,107,108,109,110,111,112,113,114,103,104,105,106,107,108,109,110,111,112,113,114,22,23,86,25,88,103,104,105,106,107,108,109,110,111,112,113,114,196,26,103,104,105,106,107,108,109,110,111,112,113,114,188,189,190,191,192,193,216,217,19,25,198,196,19,59,25,304,305,24,206,308,59,231,206,107,108,109,110,111,112,113,114,60,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,232,196,102,238,239,166,167,238,239,196,205,69,207,230,107,108,251,196,253,196,251,208,253,116,117,118,119,59,121,81,265,117,118,119,213,214,129,268,196,216,217,228,96,230,120,103,104,105,106,107,108,109,110,111,112,113,114,288,289,294,114,196,155,156,196,19,120,121,122,123,124,125,126,196,206,252,139,140,132,206,305,216,217,308,216,217,118,139,140,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,283,263,238,239,196,232,19,238,239,67,23,190,191,192,193,251,252,253,196,198,251,73,253,22,23,261,25,206,196,81,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114,139,140,238,239,196,196,196,107,108,120,201,101,123,124,125,251,206,253,267,128,129,130,133,196,216,217,216,217,118,265,139,140,122,103,104,105,106,107,108,109,110,111,112,113,114,59,102,196,238,239,212,213,214,19,59,155,156,23,294,297,298,251,252,253,154,155,156,72,109,110,111,112,113,114,235,236,196,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,235,236,184,59,135,19,137,138,196,24,24,117,118,119,120,146,72,123,124,125,117,118,119,210,211,59,267,133,240,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,59,103,104,105,106,107,108,109,110,111,112,113,114,191,11,193,196,117,118,119,198,238,239,210,211,206,19,20,206,22,262,109,35,95,251,206,253,196,196,117,118,119,201,36,300,103,104,105,106,107,108,109,110,111,112,113,114,238,239,118,238,239,241,66,243,19,59,238,239,196,251,74,253,251,206,253,73,81,71,22,251,59,253,263,81,210,211,265,81,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,166,167,238,239,101,196,112,113,114,240,107,108,294,121,61,251,305,253,115,308,117,118,119,59,131,122,59,128,129,130,206,139,140,206,22,117,118,119,139,140,302,303,139,140,116,103,104,105,106,107,108,109,110,111,112,113,114,154,155,156,157,158,238,239,305,238,239,308,196,300,19,59,22,15,23,251,267,253,251,151,253,117,118,119,117,118,119,184,216,217,128,129,130,151,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,59,76,144,76,19,199,25,152,23,60,73,196,87,196,89,252,89,92,201,92,117,118,119,196,22,196,24,22,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,216,217,103,104,105,106,107,108,109,110,111,112,113,114,76,117,118,119,59,238,239,59,128,129,130,60,240,89,146,59,92,196,251,19,253,263,252,23,22,46,47,48,49,280,196,103,104,105,106,107,108,109,110,111,112,113,114,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,19,196,196,59,23,118,201,117,118,119,16,21,196,120,300,117,118,119,125,268,196,22,216,217,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,196,216,217,144,122,196,103,104,105,106,107,108,109,110,111,112,113,114,196,59,216,217,117,118,119,216,217,303,25,239,196,80,77,19,79,231,196,23,216,217,231,251,196,253,22,103,104,105,106,107,108,109,110,111,112,113,114,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,19,196,252,124,23,117,118,119,16,59,7,8,9,128,129,130,196,305,196,196,308,201,196,201,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,216,217,162,216,217,272,103,104,105,106,107,108,109,110,111,112,113,114,231,25,196,196,196,241,196,243,196,201,262,118,77,305,79,19,308,143,252,23,196,306,307,216,217,213,214,103,104,105,106,107,108,109,110,111,112,113,114,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,19,23,196,25,23,252,29,31,196,196,33,122,19,201,201,39,22,23,262,267,22,132,216,217,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,46,196,283,65,162,19,103,104,105,106,107,108,109,110,111,112,113,114,59,196,196,216,217,196,201,201,143,272,201,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,196,103,104,105,106,107,108,109,110,111,112,113,114,102,119,66,101,306,307,196,216,217,107,108,22,23,116,295,296,196,272,196,117,118,85,231,241,122,243,144,196,196,132,94,206,103,104,105,106,107,108,109,110,111,112,113,114,59,12,196,216,217,19,196,306,307,100,12,196,154,155,156,196,27,76,231,238,239,109,216,217,25,27,216,217,87,272,89,42,251,92,253,245,196,231,262,147,42,263,184,134,254,160,196,102,136,268,262,116,63,141,226,196,216,217,117,118,119,63,73,306,307,19,216,217,196,23,289,231,163,164,196,216,217,196,263,201,145,262,201,196,98,19,196,146,201,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,196,19,216,217,19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,216,217,196,256,257,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,196,146,216,217,46,103,104,105,106,107,108,109,110,111,112,113,114,196,196,196,216,217,196,201,196,103,104,105,106,107,108,109,110,111,112,113,114,216,217,216,217,226,216,217,196,103,104,105,106,107,108,109,110,111,112,113,114,196,245,196,196,245,117,196,216,217,196,254,196,196,254,196,245,196,116,196,196,216,217,216,217,254,160,216,217,196,216,217,245,216,217,216,217,216,217,216,217,254,25,196,150,151,19,19,196,216,217,24,23,136,25,159,196,161,141,23,196,25,25,216,217,131,19,196,134,196,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,226,19,216,217,196,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,22,196,24,196,216,217,44,45,46,47,48,49,50,51,52,53,54,55,56,57,24,216,217,216,217,103,104,105,106,107,108,109,110,111,112,113,114,130,196,127,117,196,23,196,25,103,104,105,106,107,108,109,110,111,112,113,114,196,216,217,153,216,217,216,217,103,104,105,106,107,108,109,110,111,112,113,114,216,217,196,59,196,150,196,196,19,196,130,196,25,23,23,25,25,196,23,22,25,196,216,217,216,217,216,217,196,216,217,216,217,153,45,46,47,48,49,50,51,52,53,54,55,56,57,1,2,196,53,5,196,23,196,25,10,11,12,13,14,142,118,17,196,23,23,25,25,216,217,22,216,217,216,217,30,258,32,121,122,7,8,23,216,217,40,196,23,196,25,196,103,104,105,106,107,108,109,110,111,112,113,114,196,196,119,216,217,216,217,59,19,20,196,22,70,196,23,196,25,83,84,196,78,216,217,81,59,36,196,144,19,20,196,22,196,216,217,216,217,48,196,216,217,99,196,155,156,36,216,217,59,255,216,217,216,217,23,23,25,25,216,217,71,313,216,217,236,23,118,25,59,23,196,25,155,156,85,23,134,25,196,90,71,139,140,118,285,196,196,142,196,293,101,196,196,196,85,284,107,108,255,90,255,244,146,255,115,163,117,118,119,194,101,122,246,293,293,266,107,108,259,19,20,270,22,259,115,290,117,118,119,266,270,122,270,220,290,270,36,229,219,225,219,247,219,154,155,156,157,158,247,246,279,246,241,241,202,116,60,38,260,59,260,218,260,154,155,156,157,158,259,5,260,71,244,184,10,11,12,13,14,152,218,17,218,22,151,85,43,271,234,282,90,269,293,184,30,291,32,291,18,18,237,101,200,237,40,237,237,107,108,150,200,271,271,19,20,115,22,117,118,119,247,247,122,247,269,247,234,234,159,62,36,287,286,22,70,200,221,200,221,218,218,218,78,64,22,81,227,221,224,224,127,166,218,59,154,155,156,157,158,0,1,2,218,99,5,71,218,220,227,10,11,12,13,14,218,149,17,24,307,114,242,301,281,221,184,281,22,276,91,30,82,32,264,312,312,101,159,165,134,40,264,107,108,139,140,250,148,278,248,115,249,117,118,119,247,147,122,242,242,25,204,19,20,13,22,200,197,163,197,70,6,195,222,195,195,141,209,78,36,299,81,296,299,209,222,4,3,22,154,155,156,157,158,209,122,19,122,19,99,22,125,59,22,15,140,16,152,23,23,131,143,25,20,71,145,16,22,116,184,162,68,25,68,75,1,143,131,131,41,61,37,152,53,134,131,53,117,34,139,140,24,1,5,101,53,116,24,20,53,107,108,109,19,19,20,132,22,115,126,117,118,119,163,22,122,67,22,22,67,23,36,22,59,19,20,24,22,22,28,67,37,23,34,150,22,146,23,97,22,25,36,34,147,59,23,23,154,155,156,157,158,22,98,143,143,71,23,23,23,136,23,142,34,59,25,23,22,117,144,88,34,86,34,93,34,71,184,34,75,25,34,75,23,22,11,101,22,25,25,44,23,107,108,22,22,25,22,142,23,115,23,117,118,119,22,101,122,23,22,24,34,107,108,25,25,23,142,142,142,115,15,117,118,119,1,141,122,1,314,314,314,314,314,314,314,314,314,314,154,155,156,157,158,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,154,155,156,157,158,314,314,314,314,314,184,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,184,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,314,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188],De=[1696,2013,585,1918,585,333,581,229,1743,1763,1854,2168,2168,2168,574,229,229,229,229,229,0,44,44,327,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,188,188,1209,1209,428,218,218,218,218,119,223,372,476,520,624,733,776,848,887,959,998,1070,1109,1153,1314,1334,1495,1354,1354,1354,1354,1354,1354,1354,1354,1354,1354,1354,1354,1354,1354,1354,1354,1354,1354,1515,1354,1535,1639,1639,1948,2056,2148,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,2168,76,88,88,88,88,88,88,88,105,150,401,437,478,195,600,1121,600,342,342,600,600,516,576,120,120,120,303,21,21,2353,2353,227,227,227,646,694,694,694,694,1257,1257,732,716,796,195,181,386,600,600,600,600,600,600,600,600,600,600,600,600,600,600,600,600,600,600,600,600,600,600,600,600,403,600,600,600,772,772,600,403,403,600,896,718,718,249,249,249,2353,2353,2353,2353,2353,2353,2353,1126,352,352,850,331,905,500,649,804,600,600,600,600,600,600,600,600,728,600,600,600,600,600,600,600,600,575,575,575,600,600,600,1106,600,600,600,793,1160,1266,600,600,600,600,600,600,600,600,600,799,644,1105,519,519,519,1637,1180,1020,205,740,610,1362,948,1357,1362,1357,1496,1505,610,610,1505,610,948,1496,1485,1497,1370,1104,1104,1104,1203,1203,1203,1203,1357,1267,1267,1364,1050,1385,1551,1793,1850,1793,1793,1873,1873,1781,1787,1915,1897,1934,1934,1934,1934,1935,1813,1935,1813,1787,1787,1813,1915,1813,1897,1897,1823,1921,1935,1965,1935,1965,1793,1793,1793,1933,1976,1976,1965,1793,1877,1793,1933,1793,1793,1839,1880,2007,1919,1919,1965,2018,1951,1951,1962,1962,1891,1886,1912,1922,1813,1880,1880,2048,1935,2064,2064,2078,2078,2078,2353,2353,2353,2353,2353,2353,2353,2353,827,1177,1009,1122,1213,902,967,900,1504,1402,1647,1592,1480,1530,1640,635,1641,1645,1680,1569,1692,1693,1594,1608,1724,1017,1715,1710,1254,1702,1745,1785,1688,1786,1796,1800,1642,1671,1806,1719,1699,2095,2097,2079,1986,2090,1988,2092,2091,2094,1989,2102,2103,2098,2099,1978,1968,1992,2100,2100,1981,2106,1983,2113,2108,2015,1971,2066,2110,2068,2062,2101,2137,1996,2009,2100,2010,2082,2107,2100,1993,2093,2096,2105,2109,2017,2033,2117,2130,2154,2151,2043,2136,2141,2147,2037,2046,2155,2112,2158,2159,2160,2163,2115,2127,2165,2104,2164,2169,2126,2157,2172,2162,2047,2176,2177,2171,2053,2180,2059,2185,2178,2186,2193,2118,2074,2075,2197,2198,2199,2087,2083,2201,2203,2206,2114,2192,2208,2088,2203,2200,2202,2204,2207,2145,2167,2149,2209,2170,2144,2218,2210,2223,2225,2226,2228,2227,2231,2235,2237,2236,2234,2238,2239,2241,2246,2240,2248,2250,2249,2252,2119,2138,2139,2140,2253,2256,2269,2287,2290],Ue=[46,206,149,400,252,50,1049,-177,-194,-190,-186,-184,-180,-132,154,397,407,446,506,509,-235,-208,-204,-114,24,749,754,843,1015,104,1055,1074,554,1108,618,767,-175,840,881,102,886,-168,-55,94,361,615,361,615,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-182,146,250,712,730,934,972,1078,1118,1127,1158,1176,1198,1216,1233,1235,1238,1260,1273,1275,1279,1282,1285,1287,1289,1291,1301,1315,1339,1361,1378,1380,1415,1418,1420,1434,1456,1458,1460,1463,1465,1503,1506,1508,1518,1541,1543,1559,1571,1573,1577,1584,1588,1590,1596,1600,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-270,-123,322,86,451,-216,620,-87,280,420,-195,789,-270,922,969,1025,735,-270,-270,-270,-270,-137,-137,-137,-136,193,293,491,880,281,299,251,56,419,-68,204,204,608,711,837,839,346,822,884,882,940,941,990,991,994,398,1044,606,1056,1046,1083,1087,1146,1149,1155,49,399,158,-178,123,393,441,669,838,1006,1234,597,729,782,347,391,453,943,1058,1225,1228,1239,1139,1255,-191,-158,-134,-196,64,207,217,269,682,722,779,785,791,898,1034,1140,1240,657,1276,1284,1292,1320,1328,1332,1341,1461,1096,1227,1327,1471,1475,1482,1469,1545,1558,1568,1548,1502,1582,1628,1636,217,1643,1644,1646,1649,1650,1651,1550,1553,1565,1597,1599,1602,1469,1611,1669,1574,1575,1605,1603,1620,1613,1617,1618,1589,1648,1614,1616,1655,1619,1657,1598,1667,1662,1668,1673,1675,1677,1652,1654,1656,1664,1663,1665,1666,1625,1659,1682,1706,1697,1653,1716,1718,1658,1660,1661,1670,1676,1708,1717,1720,1722,1723,1756,1727,1764,1728,1694,1695,1730,1709,1732,1746,1747,1698,1700,1789,1769,1791,1771,1775,1776,1777,1773,1778,1779,1780,1788,1801,1798,1795,1802,1810,1725,1792,1734,1755,1758,1816,1765,1735,1736,1782,1790,1783,1809,1815,1814,1821,1829,1830,1870,1879,1883,1885,1890,1892,1893,1794,1797,1799,1881,1888,1864,1876,1898],Xe=[1616,1616,1534,1616,1271,1271,1271,1405,1271,1271,1271,1534,1534,1534,1271,1271,1271,1271,1271,1271,1401,1433,1433,1594,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1532,1271,1271,1271,1271,1634,1634,1271,1618,1617,1271,1271,1271,1442,1271,1271,1271,1449,1271,1271,1271,1271,1271,1271,1535,1536,1271,1271,1271,1271,1593,1595,1551,1577,1456,1455,1454,1453,1444,1421,1447,1440,1528,1529,1527,1531,1535,1536,1271,1443,1495,1512,1494,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1504,1511,1510,1509,1518,1508,1505,1497,1496,1498,1499,1271,1271,1299,1271,1362,1271,1271,1271,1271,1271,1484,1500,1486,1485,1487,1271,1515,1501,1514,1513,1601,1304,1303,1552,1271,1271,1271,1271,1271,1271,1271,1634,1271,1271,1271,1271,1271,1598,1596,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1427,1271,1271,1271,1634,1634,1271,1427,1427,1271,1296,1634,1634,1308,1308,1308,1612,1395,1395,1395,1395,1405,1395,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1401,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1281,1679,1271,1569,1401,1401,1401,1403,1394,1283,1679,1679,1459,1448,1402,1424,1448,1424,1676,1446,1459,1459,1446,1459,1402,1676,1334,1671,1327,1433,1433,1433,1423,1423,1423,1423,1424,1427,1427,1530,1402,1394,1271,1364,1679,1364,1364,1678,1678,1552,1466,1469,1366,1372,1372,1372,1372,1293,1446,1293,1446,1466,1466,1446,1469,1446,1366,1366,1576,1574,1293,1542,1293,1542,1364,1364,1364,1349,1271,1271,1542,1364,1334,1364,1349,1364,1364,1656,1441,1271,1546,1546,1542,1537,1647,1647,1436,1436,1271,1385,1439,1437,1446,1441,1441,1352,1293,1666,1666,1280,1280,1280,1684,1684,1612,1315,1315,1336,1336,1315,1271,1271,1271,1271,1271,1271,1309,1271,1271,1271,1553,1271,1271,1271,1271,1271,1271,1271,1271,1412,1271,1271,1271,1271,1271,1271,1271,1271,1619,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1474,1271,1276,1609,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1450,1451,1271,1271,1271,1271,1271,1271,1271,1271,1573,1572,1271,1271,1271,1271,1271,1465,1271,1271,1271,1460,1271,1271,1271,1271,1271,1271,1271,1271,1413,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1332,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1381,1271,1271,1533,1271,1271,1271,1271,1271,1438,1271,1271,1271,1271,1271,1271,1271,1271,1271,1271,1428,1271,1271,1271,1389,1271,1271,1271,1271,1271,1271,1387,1271,1271,1271,1271,1271,1271,1271,1271,1653,1410,1475,1271,1479,1297,1271,1288,1271,1271],Me=[0,0,59,59,59,59,0,59,59,59,0,59,59,59,59,0,0,0,59,0,0,59,0,0,0,0,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,0,0,0,59,59,0,0,0,0,0,0,0,0,0,0,0,0,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],we=[190,190,192,192,191,193,195,195,195,194,194,194,194,193,193,193,193,193,193,200,200,199,199,202,202,205,205,207,207,203,203,208,196,196,210,210,210,210,211,211,209,209,215,215,215,215,215,215,215,215,215,215,215,215,215,215,215,215,224,224,220,220,222,222,225,225,225,225,226,226,226,226,226,223,223,227,227,227,204,204,228,228,229,230,230,230,230,230,233,233,218,218,234,234,235,235,193,237,237,193,193,193,206,206,206,238,238,243,243,243,243,239,239,239,251,239,253,253,244,244,244,254,245,245,245,255,255,255,246,246,257,257,256,256,256,256,201,201,262,262,262,262,258,258,258,258,258,260,260,260,259,259,259,241,241,231,231,219,219,219,264,264,264,248,248,249,249,242,242,242,242,193,247,247,266,266,266,266,193,267,267,267,267,193,193,270,270,270,270,270,270,271,271,268,268,269,269,263,263,217,217,217,217,216,216,216,216,217,217,217,217,217,217,217,217,217,217,217,216,217,217,217,217,217,217,217,217,217,273,273,217,217,217,217,217,217,217,217,217,217,217,217,274,274,217,275,275,217,217,217,217,217,217,278,278,279,279,277,277,261,261,252,252,276,276,193,280,280,221,221,232,232,281,281,193,193,193,282,282,193,193,193,193,193,283,283,283,283,213,213,214,193,284,284,284,284,285,285,285,285,286,286,287,287,288,288,290,290,289,289,289,289,217,217,236,236,236,193,193,193,292,292,193,193,193,193,193,193,193,193,193,193,193,193,193,193,193,294,296,297,297,298,265,265,265,301,301,301,300,240,240,302,302,303,304,304,304,304,304,304,305,305,305,308,308,308,310,310,311,311,309,309,309,312,312,313,313,313,313,250,272,272,272,307,307,306,216,188,189,189,190,197,197,198,205,212,212,229,235,254,217,283,290,291,291,293,293,295,295,296,299,299,299],Fe=[2,3,1,3,1,3,0,1,2,0,1,1,1,2,2,2,3,5,6,0,3,1,0,5,2,0,3,2,1,4,2,2,1,1,0,1,4,6,1,2,2,0,2,2,4,3,3,2,2,3,5,2,4,4,1,2,4,2,3,4,0,1,0,2,2,3,3,3,2,2,1,1,2,3,2,0,2,2,0,2,3,1,1,2,7,5,5,10,0,1,0,3,0,2,1,1,4,2,0,8,4,1,5,6,3,1,3,1,2,1,1,7,8,1,4,1,5,5,1,1,0,0,3,2,4,2,1,0,0,2,2,0,5,7,6,6,1,3,1,3,3,5,1,1,2,3,4,2,4,0,0,3,2,0,3,5,3,1,1,0,2,2,0,0,3,0,2,0,2,4,4,6,0,2,0,2,2,4,9,5,7,3,5,7,8,0,2,12,9,5,8,2,0,2,1,0,3,3,1,3,1,3,5,1,1,1,1,1,3,6,5,8,4,12,6,9,5,13,1,5,3,3,3,3,3,3,3,3,1,2,3,5,2,3,3,4,6,5,2,2,2,3,1,2,5,1,2,5,3,5,4,4,5,5,4,2,0,1,0,1,0,3,1,0,3,11,1,0,0,3,5,3,0,2,4,2,3,2,0,2,4,5,4,5,1,1,1,1,2,1,2,14,1,1,2,0,1,1,1,3,0,3,0,2,3,2,3,2,8,6,5,1,4,6,1,1,1,4,6,3,0,2,1,2,1,2,6,8,6,8,6,9,10,11,9,1,4,7,0,1,3,1,0,2,3,1,2,3,6,1,3,1,3,5,5,6,4,5,1,2,0,3,6,1,1,1,1,2,1,2,2,2,2,0,2,2,2,1,1,2,2,1,1,4,2,5,1,1,2,1,1,1,0,1,1,1,1,0,1,2,1,1,0,1,0,0,1,1,3,2,0,4,2],Pe=[[1,2,5,10,11,12,13,14,17,30,32,40,70,78,81,99,134,139,140,163],[0,1,2,5,10,11,12,13,14,17,30,32,40,70,78,81,99,134,139,140,163],[19,20,22,36,59,71,81,101,107,108,115,117,118,119,122,139,140,154,155,156,157,158,184],[5,10,11,12,13,14,17,30,32,40,70,78,81,99,134,139,140,163],[19,20,22,36,59,71,81,101,107,108,115,117,118,119,122,139,140,154,155,156,157,158,184],[73,81,128,129,130,139,140],[11,73,81,128,129,130,139,140],[81,139,140],[19,20,22,36,48,59,71,85,90,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,85,90,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,85,90,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[81,121,139,140],[81,139,140],[81,139,140],[81,139,140],[81,139,140],[81,139,140],[19,24,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,59,103,104,105,106,107,108,109,110,111,112,113,114,118],[19,31,39,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,31,39,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,67,103,104,105,106,107,108,109,110,111,112,113,114],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[59,107,108,116,117,118,119,121,129,155,156],[59,107,108,116,117,118,119,121,129,155,156],[59,76,87,89,92,117,118,119,146],[59,76,87,89,92,117,118,119,146],[59,117,118,119,120,123,124,125,133],[25,139,140],[25,139,140],[25,139,140],[25,139,140],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,86,88,103,104,105,106,107,108,109,110,111,112,113,114],[19,25,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,69,103,104,105,106,107,108,109,110,111,112,113,114],[19,23,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,23,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,24,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114,151],[19,23,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,23,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,23,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,23,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,23,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,23,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,23,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,23,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114,160],[19,23,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114,160],[19,24,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,44,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,45,46,47,48,49,50,51,52,53,54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,141,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,109,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,141,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[19,20,22,36,59,71,101,107,108,115,117,118,119,122,154,155,156,157,158,184],[54,55,56,57,58,103,104,105,106,107,108,109,110,111,112,113,114],[54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[54,55,56,57,103,104,105,106,107,108,109,110,111,112,113,114],[103,104,105,106,107,108,109,110,111,112,113,114],[107,108,109,110,111,112,113,114],[109,110,111,112,113,114],[59,72,117,118,119],[59,72,117,118,119],[26,59,117,118,119],[59,117,118,119],[19,46,116,132],[59,117,118,119],[107,108,155,156],[107,108,155,156],[59,117,118,119],[59,117,118,119],[95,166,167],[112,113,114],[166,167],[166,167],[166,167],[139,140],[114],[114],[],[],[19,24,96,114,120,121,122,123,124,125,126,132],[19,24,96,114,120,121,122,123,124,125,126,132],[19,24,96,114,120,121,122,123,124,125,126,132],[59,117,118,119,152],[22,59,117,118,119],[22,59,117,118,119],[22,59,117,118,119],[22,59,117,118,119],[12,27,42,63,73],[12,27,42,63,73],[22,59,117,118,119],[76,87,89,92,146],[22,59,117,118,119],[26,59,117,118,119],[22,23,25,102],[22,23,25,102],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[135,137,138,146],[59,117,118,119],[59,117,118,119],[59,117,118,119],[25,76,89,92],[25,76,89,92],[59,117,118,119],[135,137,138,146],[135,137,138,146],[59,117,118,119],[21,80,124,162],[76,89,92],[76,89,92],[59,118],[59,118],[59,118],[],[],[],[],[],[],[],[22,59,101,107,108,117,118,122,154,155,156,184],[101,118,122,154,155,156,184],[101,118,122,154,155,156,184],[22,59,117,118,119],[120,123,124,125,133],[22,59,117,118,119],[59,109,117,118,119],[59,117,118,119,144],[59,117,118,119,144],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[73,128,129,130],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[35,66,74,131],[35,66,74,131],[35,66,74,131],[59,117,118,119],[59,117,118,119],[59,117,118,119],[23,25,119,144],[59,117,118,119],[59,117,118,119],[59,117,118,119],[22,24,59,118],[66,85,94,147],[12,27,42,63],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[59,117,118,119],[60,120,125],[128,129,130],[29,33,65],[24,59,118],[24,59,118],[24,59,118],[25,119,144],[109,136,141],[7,8,9],[60,120],[15,60],[116,151],[150,151],[25,143],[19,117],[150,151],[19,117],[19,117],[25,150],[116,151],[116,151],[25,150],[116,151],[25,143],[19,117],[25,127],[23,25],[46,116],[31,39],[31,39],[31,39],[116,145],[116,145],[116,145],[116,145],[19,117],[25,146],[25,146],[159,161],[25,143],[136,141],[22,24],[116],[60],[116],[116],[38],[38],[152],[151],[22],[43],[18],[18],[18],[18],[18],[150],[18],[150],[151],[151],[150],[22],[150],[43],[43],[159],[62],[18],[22],[18],[22],[116],[116],[116],[64],[22],[22],[22],[116],[127],[116],[64],[116],[116],[166],[149],[24],[114],[114],[22],[22],[91],[91],[82],[82],[159],[165],[148],[147],[150],[149],[149],[25],[18],[13],[13],[6],[6],[6],[],[],[],[],[],[],[],[],[46,47,48,49,122],[100,134,163,164],[16,77,79,162],[22,23,102],[22,23,102],[128,129,130],[22,59,118],[16,77,79],[23,25],[131,134],[22,53],[23,25],[130,153],[130,153],[23,25],[22,61],[23,25],[23,25],[23,25],[24,142],[23,25],[23,25],[59,118],[121,122],[7,8],[122,132],[23,25],[23,146],[19,98],[59,118],[23,25],[23,25],[83,84],[23,25],[23,25],[23,25],[155,156],[155,156],[23,25],[59,118],[22,142],[4],[3],[22],[122],[19],[122],[19],[22],[22],[125],[15],[16],[23],[23],[140],[152],[131],[25],[25],[143],[20],[145],[16],[22],[116],[162],[68],[25],[68],[75],[41],[1],[143],[131],[25],[131],[61],[37],[25],[152],[53],[53],[53],[53],[131],[117],[34],[24],[1],[5],[116],[24],[20],[19],[132],[126],[22],[67],[22],[22],[23],[22],[67],[59],[24],[97],[28],[22],[67],[37],[23],[34],[150],[22],[23],[34],[146],[22],[147],[23],[25],[23],[22],[98],[143],[143],[23],[23],[23],[136],[142],[23],[25],[23],[117],[34],[22],[144],[25],[34],[34],[34],[34],[88],[75],[86],[44],[75],[93],[25],[34],[23],[22],[25],[22],[25],[23],[22],[11],[22],[25],[22],[23],[23],[22],[34],[23],[22],[24],[25],[142],[142],[142],[142],[25],[23],[15],[1],[1]],Ye=["$","SEMI","EXPLAIN","QUERY","PLAN","BEGIN","TRANSACTION","DEFERRED","IMMEDIATE","EXCLUSIVE","COMMIT","END","ROLLBACK","SAVEPOINT","RELEASE","TO","TABLE","CREATE","IF","NOT","EXISTS","TEMP","LP","RP","AS","COMMA","WITHOUT","ABORT","ACTION","AFTER","ANALYZE","ASC","ATTACH","BEFORE","BY","CASCADE","CAST","CONFLICT","DATABASE","DESC","DETACH","EACH","FAIL","OR","AND","IS","MATCH","LIKE_KW","BETWEEN","IN","ISNULL","NOTNULL","NE","EQ","GT","LE","LT","GE","ESCAPE","ID","COLUMNKW","DO","FOR","IGNORE","INITIALLY","INSTEAD","NO","KEY","OF","OFFSET","PRAGMA","RAISE","RECURSIVE","REPLACE","RESTRICT","ROW","ROWS","TRIGGER","VACUUM","VIEW","VIRTUAL","WITH","NULLS","FIRST","LAST","CURRENT","FOLLOWING","PARTITION","PRECEDING","RANGE","UNBOUNDED","EXCLUDE","GROUPS","OTHERS","TIES","WITHIN","GENERATED","ALWAYS","MATERIALIZED","REINDEX","RENAME","CTIME_KW","ANY","BITAND","BITOR","LSHIFT","RSHIFT","PLUS","MINUS","STAR","SLASH","REM","CONCAT","PTR","COLLATE","BITNOT","ON","INDEXED","STRING","JOIN_KW","CONSTRAINT","DEFAULT","NULL","PRIMARY","UNIQUE","CHECK","REFERENCES","AUTOINCR","INSERT","DELETE","UPDATE","SET","DEFERRABLE","FOREIGN","DROP","UNION","ALL","EXCEPT","INTERSECT","SELECT","VALUES","DISTINCT","DOT","FROM","JOIN","USING","ORDER","GROUP","HAVING","LIMIT","WHERE","RETURNING","INTO","NOTHING","BLOB","FLOAT","INTEGER","VARIABLE","CASE","WHEN","THEN","ELSE","INDEX","ALTER","ADD","WINDOW","OVER","FILTER","COLUMN","AGG_FUNCTION","AGG_COLUMN","TRUEFALSE","ISNOT","FUNCTION","UPLUS","UMINUS","TRUTH","REGISTER","VECTOR","SELECT_COLUMN","IF_NULL_ROW","ASTERISK","SPAN","ERROR","QNUMBER","SPACE","COMMENT","ILLEGAL","input","cmdlist","ecmd","cmdx","explain","cmd","transtype","trans_opt","nm","savepoint_opt","createkw","temp","ifnotexists","fullname","create_table_args","columnlist","conslist_opt","table_option_set","select","table_option","columnname","carglist","typetoken","typename","signed","plus_num","minus_num","ccons","term","expr","onconf","sortorder","autoinc","eidlist_opt","refargs","defer_subclause","generated","refarg","refact","init_deferred_pred_opt","conslist","tconscomma","tcons","sortlist","eidlist","defer_subclause_opt","orconf","resolvetype","raisetype","ifexists","selectnowith","oneselect","wqlist","orderby_opt","limit_opt","multiselect_op","distinct","selcollist","from","where_opt","groupby_opt","having_opt","window_clause","values","nexprlist","mvalues","sclp","as","seltablist","stl_prefix","joinop","indexed_opt","on_using","exprlist","xfullname","idlist","nulls","with","where_opt_ret","setlist","insert_cmd","idlist_opt","upsert","returning","filter_over","likeop","between_op","in_op","paren_exprlist","case_operand","case_exprlist","case_else","uniqueflag","collate","vinto","nmnum","trigger_time","trigger_event","foreach_clause","when_clause","trigger_cmd_list","trigger_cmd","tridxby","database_kw_opt","key_opt","kwcolumn_opt","create_vtab","vtabarglist","vtabarg","vtabargtoken","lp","anylist","wqitem","wqas","windowdefn_list","windowdefn","window","frame_opt","filter_clause","over_clause","range_or_rows","frame_bound","frame_bound_s","frame_bound_e","frame_exclude_opt","frame_exclude"],Be={yy_action:Se,yy_lookahead:_e,yy_shift_ofst:De,yy_reduce_ofst:Ue,yy_default:Xe,yyFallback:Me,yyRuleInfoLhs:we,yyRuleInfoNRhs:Fe,yy_expected:Pe},Ge=(r,o,e,s)=>{let m=(n,t,...i)=>{r.errors.push({message:n,span:t,hints:i})};switch(o){case 0:case 1:{Fn(r);return}case 2:{r.explain="Explain";return}case 3:{r.explain="QueryPlan";return}case 4:return;case 5:{let n=e[1].minor,t=e[2].minor;r.stmt={type:"BeginStmt",tx:n,txName:t,span:s};return}case 6:case 7:{let n;return n=void 0,n}case 8:{let n=e[1].minor,t;return t=n,t}case 9:{let n;return n=void 0,n}case 10:{let n;return n="Deferred",n}case 11:{let n;return n="Immediate",n}case 12:{let n;return n="Exclusive",n}case 13:{let n=e[1].minor;r.stmt={type:"CommitStmt",txName:n,span:s};return}case 14:{let n=e[1].minor;r.stmt={type:"RollbackStmt",txName:n,savepointName:void 0,span:s};return}case 15:{let n=e[1].minor;r.stmt={type:"SavepointStmt",savepointName:n,span:s};return}case 16:{let n=e[2].minor;r.stmt={type:"ReleaseStmt",savepointName:n,span:s};return}case 17:{let n=e[1].minor,t=e[4].minor;r.stmt={type:"RollbackStmt",txName:n,savepointName:t,span:s};return}case 18:{let n=e[1].minor,t=e[3].minor,i=e[4].minor,a=e[5].minor;r.stmt={type:"CreateTableStmt",temporary:n,ifNotExists:t,tblName:i,body:a,span:s};return}case 19:{let n;return n=!1,n}case 20:case 21:{let n;return n=!0,n}case 22:{let n;return n=!1,n}case 23:{let n=e[1].minor,t=e[2].minor,i=e[4].minor,a;return a=Mn(n,t,i,s),a}case 24:{let n=e[1].minor,t;return t={type:"AsSelectCreateTableBody",select:n,span:s},t}case 25:{let n;return n=0,n}case 26:{let n=e[0].minor,t=e[2].minor,i;return i=n|t,i}case 27:{let n=e[1].minor,t;return n.text.toLowerCase()==="rowid"?t=128:(r.errors.push(G(`unknown table option: ${n.text}`,n.span,{message:"expected WITHOUT ROWID",span:void 0})),t=0),t}case 28:{let n=e[0].minor,t;return n.text.toLowerCase()==="strict"?t=65536:(r.errors.push(G(`unknown table option: ${n.text}`,n.span,{message:"expected STRICT or WITHOUT ROWID",span:void 0})),t=0),t}case 29:{let n=e[2].minor,t=e[3].minor,i=e[0].minor,a=I1(n.colName,n.colType,t,s);return Y1(r,i,a),i}case 30:{let n=e[0].minor,t=e[1].minor,i,a=I1(n.colName,n.colType,t,s);return i=[],Y1(r,i,a),i}case 31:{let n=e[0].minor,t=e[1].minor,i;return i={colName:n,colType:t,span:s},i}case 32:case 33:{let n=e[0].minor,t;return t=c1(n),t}case 34:{let n;return n=void 0,n}case 35:{let n=e[0].minor,t;return t={type:"Type",name:n,size:void 0,span:s},t}case 36:{let n=e[0].minor,t=e[2].minor,i;return i={type:"Type",name:n,size:{type:"MaxSizeTypeSize",size:t,span:s},span:s},i}case 37:{let n=e[0].minor,t=e[2].minor,i=e[4].minor,a;return a={type:"Type",name:n,size:{type:"TypeSizeTypeSize",size1:t,size2:i,span:s},span:s},a}case 38:{let n=e[0].minor,t;return t=V(n.text),t}case 39:{let n=e[1].minor,t=e[0].minor;return t=t+" "+V(n.text),t}case 40:{let n=e[1].minor,t=e[0].minor;return n&&t.push(n),t}case 41:{let n;return n=[],n}case 42:{let n=e[1].minor,t;return r.constraintName=n,t=void 0,t}case 43:{let n=e[1].minor,t;return t={type:"NamedColumnConstraint",name:r.constraintName,constraint:{type:"DefaultColumnConstraint",expr:n,span:s},span:s},r.constraintName=void 0,t}case 44:{let n=e[2].minor,t;return t={type:"NamedColumnConstraint",name:r.constraintName,constraint:{type:"DefaultColumnConstraint",expr:D1(n,s),span:s},span:s},r.constraintName=void 0,t}case 45:{let n=e[2].minor,t;return t={type:"NamedColumnConstraint",name:r.constraintName,constraint:{type:"DefaultColumnConstraint",expr:s1("Positive",n,s),span:s},span:s},r.constraintName=void 0,t}case 46:{let n=e[2].minor,t;return t={type:"NamedColumnConstraint",name:r.constraintName,constraint:{type:"DefaultColumnConstraint",expr:s1("Negative",n,s),span:s},span:s},r.constraintName=void 0,t}case 47:{let n=e[1].minor,t;return t={type:"NamedColumnConstraint",name:r.constraintName,constraint:{type:"DefaultColumnConstraint",expr:r1(n),span:s},span:s},r.constraintName=void 0,t}case 48:{let n=e[1].minor,t;return t={type:"NamedColumnConstraint",name:r.constraintName,constraint:{type:"NotNullColumnConstraint",nullable:!0,conflictClause:n,span:s},span:s},r.constraintName=void 0,t}case 49:{let n=e[2].minor,t;return t={type:"NamedColumnConstraint",name:r.constraintName,constraint:{type:"NotNullColumnConstraint",nullable:!1,conflictClause:n,span:s},span:s},r.constraintName=void 0,t}case 50:{let n=e[2].minor,t=e[3].minor,i=e[4].minor,a;return a={type:"NamedColumnConstraint",name:r.constraintName,constraint:{type:"PrimaryKeyColumnConstraint",order:n,conflictClause:t,autoIncrement:i,span:s},span:s},r.constraintName=void 0,a}case 51:{let n=e[1].minor,t;return t={type:"NamedColumnConstraint",name:r.constraintName,constraint:{type:"UniqueColumnConstraint",conflictClause:n,span:s},span:s},r.constraintName=void 0,t}case 52:{let n=e[2].minor,t;return t={type:"NamedColumnConstraint",name:r.constraintName,constraint:{type:"CheckColumnConstraint",expr:n,span:s},span:s},r.constraintName=void 0,t}case 53:{let n=e[1].minor,t=e[2].minor,i=e[3].minor,a;return a={type:"NamedColumnConstraint",name:r.constraintName,constraint:{type:"ForeignKeyColumnConstraint",clause:{type:"ForeignKeyClause",tblName:n,columns:t,args:i,span:s},deferClause:void 0,span:s},span:s},r.constraintName=void 0,a}case 54:{let n=e[0].minor,t;return t={type:"NamedColumnConstraint",name:void 0,constraint:{type:"DeferColumnConstraint",clause:n,span:s},span:s},t}case 55:{let n=e[1].minor,t;return t={type:"NamedColumnConstraint",name:r.constraintName,constraint:{type:"CollateColumnConstraint",collationName:c1(n),span:s},span:s},r.constraintName=void 0,t}case 56:{let n=e[3].minor,t;return t={type:"NamedColumnConstraint",name:r.constraintName,constraint:n,span:s},r.constraintName=void 0,t}case 57:{let n=e[1].minor,t;return t={type:"NamedColumnConstraint",name:r.constraintName,constraint:n,span:s},r.constraintName=void 0,t}case 58:{let n=e[1].minor,t;return t={type:"GeneratedColumnConstraint",expr:n,typ:void 0,span:s},t}case 59:{let n=e[1].minor,t=e[3].minor,i;return i={type:"GeneratedColumnConstraint",expr:n,typ:r1(t),span:s},i}case 60:{let n;return n=!1,n}case 61:{let n;return n=!0,n}case 62:{let n;return n=[],n}case 63:{let n=e[1].minor,t=e[0].minor;return t.push(n),t}case 64:{let n=e[1].minor,t;return t={type:"MatchRefArg",name:n,span:s},t}case 65:{let n=e[2].minor,t;return t={type:"OnInsertRefArg",action:n,span:s},t}case 66:{let n=e[2].minor,t;return t={type:"OnDeleteRefArg",action:n,span:s},t}case 67:{let n=e[2].minor,t;return t={type:"OnUpdateRefArg",action:n,span:s},t}case 68:{let n;return n="SetNull",n}case 69:{let n;return n="SetDefault",n}case 70:{let n;return n="Cascade",n}case 71:{let n;return n="Restrict",n}case 72:{let n;return n="NoAction",n}case 73:{let n=e[2].minor,t;return t={type:"DeferSubclause",deferrable:!1,initDeferred:n,span:s},t}case 74:{let n=e[1].minor,t;return t={type:"DeferSubclause",deferrable:!0,initDeferred:n,span:s},t}case 75:{let n;return n=void 0,n}case 76:{let n;return n="InitiallyDeferred",n}case 77:{let n;return n="InitiallyImmediate",n}case 78:{let n;return n=void 0,n}case 79:{let n=e[1].minor,t;return t=n,t}case 80:{let n=e[2].minor,t=e[0].minor;return n&&t.push(n),t}case 81:{let n=e[0].minor,t;return t=n?[n]:[],t}case 82:{r.constraintName=void 0;return}case 83:{let n=e[1].minor,t;return r.constraintName=n,t=void 0,t}case 84:{let n=e[3].minor,t=e[4].minor,i=e[6].minor,a;return a={type:"NamedTableConstraint",name:r.constraintName,constraint:{type:"PrimaryKeyTableConstraint",columns:n,autoIncrement:t,conflictClause:i,span:s},span:s},r.constraintName=void 0,a}case 85:{let n=e[2].minor,t=e[4].minor,i;return i={type:"NamedTableConstraint",name:r.constraintName,constraint:{type:"UniqueTableConstraint",columns:n,conflictClause:t,span:s},span:s},r.constraintName=void 0,i}case 86:{let n=e[2].minor,t=e[4].minor,i;return i={type:"NamedTableConstraint",name:r.constraintName,constraint:{type:"CheckTableConstraint",expr:n,conflictClause:t,span:s},span:s},r.constraintName=void 0,i}case 87:{let n=e[3].minor,t=e[6].minor,i=e[7].minor,a=e[8].minor,c=e[9].minor,A;return A={type:"NamedTableConstraint",name:r.constraintName,constraint:{type:"ForeignKeyTableConstraint",columns:n,clause:{type:"ForeignKeyClause",tblName:t,columns:i,args:a,span:s},deferClause:c,span:s},span:s},r.constraintName=void 0,A}case 88:{let n;return n=void 0,n}case 89:{let n=e[0].minor,t;return t=n,t}case 90:{let n;return n=void 0,n}case 91:{let n=e[2].minor,t;return t=n,t}case 92:{let n;return n=void 0,n}case 93:{let n=e[1].minor,t;return t=n,t}case 94:{let n;return n="Ignore",n}case 95:{let n;return n="Replace",n}case 96:{let n=e[2].minor,t=e[3].minor;r.stmt={type:"DropTableStmt",ifExists:n,tblName:t,span:s};return}case 97:{let n;return n=!0,n}case 98:{let n;return n=!1,n}case 99:{let n=e[1].minor,t=e[3].minor,i=e[4].minor,a=e[5].minor,c=e[7].minor;r.stmt={type:"CreateViewStmt",temporary:n,ifNotExists:t,viewName:i,columns:a,select:c,span:s};return}case 100:{let n=e[2].minor,t=e[3].minor;r.stmt={type:"DropViewStmt",ifExists:n,viewName:t,span:s};return}case 101:{let n=e[0].minor;r.stmt={type:"SelectStmt",body:n,span:s};return}case 102:{let n=e[1].minor,t=e[2].minor,i=e[3].minor,a=e[4].minor,c;return c=T1({type:"With",recursive:!1,ctes:n,span:s},t,i,a,s),c}case 103:{let n=e[2].minor,t=e[3].minor,i=e[4].minor,a=e[5].minor,c;return c=T1({type:"With",recursive:!0,ctes:n,span:s},t,i,a,s),c}case 104:{let n=e[0].minor,t=e[1].minor,i=e[2].minor,a;return a=T1(void 0,n,t,i,s),a}case 105:{let n=e[0].minor,t;return t={select:n,compounds:void 0},t}case 106:{let n=e[1].minor,t=e[2].minor,i=e[0].minor;return Un(i,{type:"CompoundSelect",operator:n,select:t,span:s}),i}case 107:{let n;return n="Union",n}case 108:{let n;return n="UnionAll",n}case 109:{let n;return n="Except",n}case 110:{let n;return n="Intersect",n}case 111:{let n=e[1].minor,t=e[2].minor,i=e[3].minor,a=e[4].minor,c=e[5].minor,A=e[6].minor,I;return I=P1(r,n,t,i,a,c,A,void 0,s),I}case 112:{let n=e[1].minor,t=e[2].minor,i=e[3].minor,a=e[4].minor,c=e[5].minor,A=e[6].minor,I=e[7].minor,T;return T=P1(r,n,t,i,a,c,A,I,s),T}case 113:{let n=e[0].minor,t;return t={type:"SelectValues",values:n,span:s},t}case 114:{let n=e[2].minor,t;return t=[{type:"ValuesRow",values:n,span:s}],t}case 115:{let n=e[0].minor,t;return t={type:"SelectValues",values:n,span:s},t}case 116:case 117:{let n=e[3].minor,t=e[0].minor;return Xn(r,t,n,s),t}case 118:{let n;return n="Distinct",n}case 119:{let n;return n="All",n}case 120:{let n;return n=void 0,n}case 121:{let n;return n=[],n}case 122:{let n=e[1].minor,t=e[2].minor,i=e[0].minor;return i.push({type:"ExprResultColumn",expr:n,alias:t,span:s}),i}case 123:{let n=e[0].minor;return n.push({type:"StarResultColumn",span:s}),n}case 124:{let n=e[1].minor,t=e[0].minor;return t.push({type:"TableStarResultColumn",table:n,span:s}),t}case 125:{let n=e[1].minor,t;return t={type:"AsAs",name:n,span:s},t}case 126:{let n=e[0].minor,t;return t={type:"ElidedAs",name:c1(n),span:s},t}case 127:{let n;return n=void 0,n}case 128:{let n;return n=void 0,n}case 129:{let n=e[1].minor,t;return t=F1(n,s),t}case 130:{let n=e[1].minor,t=e[0].minor;return t.pendingOp=n,t}case 131:{let n;return n=Dn(),n}case 132:{let n=e[1].minor,t=e[2].minor,i=e[3].minor,a=e[4].minor,c=e[0].minor;return u1(r,c,{type:"TableSelectTable",tblName:n,alias:t,indexed:i,span:s},a),c}case 133:{let n=e[1].minor,t=e[3].minor,i=e[5].minor,a=e[6].minor,c=e[0].minor;return u1(r,c,{type:"TableCallSelectTable",tblName:n,args:t,alias:i,span:s},a),c}case 134:{let n=e[2].minor,t=e[4].minor,i=e[5].minor,a=e[0].minor;return u1(r,a,{type:"SelectSelectTable",select:n,alias:t,span:s},i),a}case 135:{let n=e[2].minor,t=e[4].minor,i=e[5].minor,a=e[0].minor;return u1(r,a,{type:"SubSelectTable",from:F1(n,s),alias:t,span:s},i),a}case 136:{let n=e[0].minor,t;return t=M1(n,s),t}case 137:{let n=e[0].minor,t=e[2].minor,i;return i=w1(n,t,s),i}case 138:{let n=e[0].minor,t;return t=M1(n,s),t}case 139:{let n=e[0].minor,t=e[2].minor,i;return i=w1(n,t,s),i}case 140:{let n=e[0].minor,t=e[2].minor,i;return i=Sn(n,t,s),i}case 141:{let n=e[0].minor,t=e[2].minor,i=e[4].minor,a;return a=_n(n,t,i,s),a}case 142:{let n;return n={type:"CommaJoinOperator",span:s},n}case 143:{let n;return n={type:"TypedJoinJoinOperator",joinType:void 0,span:s},n}case 144:{let n=e[0].minor,t;return t=C1(r,n,void 0,void 0,s),t}case 145:{let n=e[0].minor,t=e[1].minor,i;return i=C1(r,n,t,void 0,s),i}case 146:{let n=e[0].minor,t=e[1].minor,i=e[2].minor,a;return a=C1(r,n,t,i,s),a}case 147:{let n=e[1].minor,t;return t={type:"OnJoinConstraint",expr:n,span:s},t}case 148:{let n=e[2].minor,t;return t={type:"UsingJoinConstraint",columns:n,span:s},t}case 149:{let n;return n=void 0,n}case 150:{let n;return n=void 0,n}case 151:{let n=e[2].minor,t;return t={type:"IndexedByIndexed",idxName:n,span:s},t}case 152:{let n;return n={type:"NotIndexedIndexed",span:s},n}case 153:{let n;return n=void 0,n}case 154:{let n=e[2].minor,t;return t=n,t}case 155:{let n=e[2].minor,t=e[3].minor,i=e[4].minor,a=e[0].minor;return a.push({type:"SortedColumn",expr:n,order:t,nulls:i,span:s}),a}case 156:{let n=e[0].minor,t=e[1].minor,i=e[2].minor,a;return a=[{type:"SortedColumn",expr:n,order:t,nulls:i,span:s}],a}case 157:{let n;return n="Asc",n}case 158:{let n;return n="Desc",n}case 159:{let n;return n=void 0,n}case 160:{let n;return n="First",n}case 161:{let n;return n="Last",n}case 162:{let n;return n=void 0,n}case 163:{let n;return n=void 0,n}case 164:{let n=e[2].minor,t;return t=n,t}case 165:{let n;return n=void 0,n}case 166:{let n=e[1].minor,t;return t=n,t}case 167:{let n;return n=void 0,n}case 168:{let n=e[1].minor,t;return t={type:"Limit",expr:n,offset:void 0,span:s},t}case 169:{let n=e[1].minor,t=e[3].minor,i;return i={type:"Limit",expr:n,offset:t,span:s},i}case 170:{let n=e[1].minor,t=e[3].minor,i;return i={type:"Limit",expr:t,offset:n,span:s},i}case 171:{let n=e[0].minor,t=e[3].minor,i=e[4].minor,a=e[5].minor;r.stmt={type:"DeleteStmt",with:n,tblName:t,indexed:i,whereClause:a.where,returning:a.returning,orderBy:void 0,limit:void 0,span:s};return}case 172:{let n;return n=void 0,n}case 173:{let n=e[1].minor,t;return t=n,t}case 174:{let n;return n={where:void 0,returning:void 0,span:s},n}case 175:{let n=e[1].minor,t;return t={where:n,returning:void 0,span:s},t}case 176:{let n=e[1].minor,t;return t={where:void 0,returning:n,span:s},t}case 177:{let n=e[1].minor,t=e[3].minor,i;return i={where:n,returning:t,span:s},i}case 178:{let n=e[0].minor,t=e[2].minor,i=e[3].minor,a=e[4].minor,c=e[6].minor,A=e[7].minor,I=e[8].minor;r.stmt={type:"UpdateStmt",with:n,orConflict:t,tblName:i,indexed:a,sets:c,from:A,whereClause:I.where,returning:I.returning,orderBy:void 0,limit:void 0,span:s};return}case 179:{let n=e[2].minor,t=e[4].minor,i=e[0].minor;return i.push({type:"SetAssignment",colNames:[n],expr:t,span:s}),i}case 180:{let n=e[3].minor,t=e[6].minor,i=e[0].minor;return i.push({type:"SetAssignment",colNames:n,expr:t,span:s}),i}case 181:{let n=e[0].minor,t=e[2].minor,i;return i=[{type:"SetAssignment",colNames:[n],expr:t,span:s}],i}case 182:{let n=e[1].minor,t=e[4].minor,i;return i=[{type:"SetAssignment",colNames:n,expr:t,span:s}],i}case 183:{let n=e[0].minor,t=e[1].minor,i=e[3].minor,a=e[4].minor,c=e[5].minor,A=e[6].minor;r.stmt={type:"InsertStmt",with:n,orConflict:t,tblName:i,columns:a,body:{type:"SelectInsertBody",select:c,upsert:A.upsert,span:s},returning:A.returning,span:s};return}case 184:{let n=e[0].minor,t=e[1].minor,i=e[3].minor,a=e[4].minor,c=e[7].minor;r.stmt={type:"InsertStmt",with:n,orConflict:t,tblName:i,columns:a,body:{type:"DefaultValuesInsertBody",span:s},returning:c.columns,span:s};return}case 185:{let n;return n={upsert:void 0,returning:void 0,returningSpan:void 0,span:s},n}case 186:{let n=e[1].minor,t;return t={upsert:void 0,returning:n,returningSpan:s,span:s},t}case 187:{let n=e[3].minor,t=e[5].minor,i=e[9].minor,a=e[10].minor,c=e[11].minor,A;return A={upsert:{type:"Upsert",index:B1(r,n,t,s),doClause:{type:"SetUpsertDo",sets:i,whereClause:a,span:s},next:c.upsert,span:s},returning:c.returning,returningSpan:c.returningSpan,span:s},A}case 188:{let n=e[3].minor,t=e[5].minor,i=e[8].minor,a;return a={upsert:{type:"Upsert",index:B1(r,n,t,s),doClause:{type:"NothingUpsertDo",span:s},next:i.upsert,span:s},returning:i.returning,returningSpan:i.returningSpan,span:s},a}case 189:{let n=e[4].minor,t;return t={upsert:{type:"Upsert",index:void 0,doClause:{type:"NothingUpsertDo",span:s},next:void 0,span:s},returning:n.columns,returningSpan:n.span,span:s},t}case 190:{let n=e[5].minor,t=e[6].minor,i=e[7].minor,a;return a={upsert:{type:"Upsert",index:void 0,doClause:{type:"SetUpsertDo",sets:n,whereClause:t,span:s},next:void 0,span:s},returning:i.columns,returningSpan:i.span,span:s},a}case 191:{let n=e[1].minor,t;return t={columns:n,span:s},t}case 192:{let n;return n={columns:void 0,span:void 0},n}case 193:{let n=e[1].minor,t;return t=n,t}case 194:{let n;return n="Replace",n}case 195:{let n;return n=void 0,n}case 196:{let n=e[1].minor,t;return t=n,t}case 197:{let n=e[2].minor,t=e[0].minor,i=t.find(a=>a.text===n.text);return i?r.errors.push(N1(`column "${n.text}" specified more than once`,n.span,i.span)):t.push(n),t}case 198:{let n=e[0].minor,t;return t=[n],t}case 199:{let n=e[1].minor,t;return t=D1(n,s),t}case 200:{let n=e[0].minor,t;return t=r1(n),t}case 201:{let n=e[0].minor,t=e[2].minor,i;return i={type:"QualifiedExpr",schema:void 0,table:n,column:t,span:s},i}case 202:{let n=e[0].minor,t=e[2].minor,i=e[4].minor,a;return a={type:"QualifiedExpr",schema:n,table:t,column:i,span:s},a}case 203:{let n=e[0].minor,t;return t=fn(n),t}case 204:{let n=e[0].minor,t;return t=An(n),t}case 205:{let n=e[0].minor,t;return t=En(n),t}case 206:{let n=e[0].minor,t;return t=m1(n),t}case 207:{let n=e[0].minor,t;return t=dn(n),t}case 208:{let n=e[0].minor,t=e[2].minor,i;return i=yn(n,t,s),i}case 209:{let n=e[2].minor,t=e[4].minor,i;return i=Ln(n,t,s),i}case 210:{let n=e[0].minor,t=e[2].minor,i=e[3].minor,a;return a=z(r,n,t,i,void 0,void 0,s),a}case 211:{let n=e[0].minor,t=e[2].minor,i=e[3].minor,a=e[6].minor,c;return c=z(r,n,t,i,{type:"SortListFunctionCallOrder",columns:a,span:s},void 0,s),c}case 212:{let n=e[0].minor,t;return t=X1(n,void 0,s),t}case 213:{let n=e[0].minor,t=e[2].minor,i=e[3].minor,a=e[10].minor,c;return c=z(r,n,t,i,{type:"WithinGroupFunctionCallOrder",expr:a,span:s},void 0,s),c}case 214:{let n=e[0].minor,t=e[2].minor,i=e[3].minor,a=e[5].minor,c;return c=z(r,n,t,i,void 0,a,s),c}case 215:{let n=e[0].minor,t=e[2].minor,i=e[3].minor,a=e[6].minor,c=e[8].minor,A;return A=z(r,n,t,i,{type:"SortListFunctionCallOrder",columns:a,span:s},c,s),A}case 216:{let n=e[0].minor,t=e[4].minor,i;return i=X1(n,t,s),i}case 217:{let n=e[0].minor,t=e[2].minor,i=e[3].minor,a=e[10].minor,c=e[12].minor,A;return A=z(r,n,t,i,{type:"WithinGroupFunctionCallOrder",expr:a,span:s},c,s),A}case 218:{let n=e[0].minor,t;return t=ln(n),t}case 219:{let n=e[1].minor,t=e[3].minor,i;return i={type:"ParenthesizedExpr",exprs:[...n,t],span:s},i}case 220:case 221:case 222:case 223:case 224:case 225:case 226:case 227:{let n=e[0].minor,t=e[1].minor,i=e[2].minor,a;return a=J(n,Cn(t.type,o1),i,s),a}case 228:{let n=e[0].minor,t;return t={not:!1,op:_1(n,o1),span:s},t}case 229:{let n=e[1].minor,t;return t={not:!0,op:_1(n,o1),span:s},t}case 230:{let n=e[0].minor,t=e[1].minor,i=e[2].minor,a;return a=U1(n,t.not,t.op,i,void 0,s),a}case 231:{let n=e[0].minor,t=e[1].minor,i=e[2].minor,a=e[4].minor,c;return c=U1(n,t.not,t.op,i,a,s),c}case 232:{let n=e[0].minor,t=e[1].minor,i;return i=bn(n,t.type,o1,s),i}case 233:{let n=e[0].minor,t;return t={type:"NotNullExpr",expr:n,span:s},t}case 234:{let n=e[0].minor,t=e[2].minor,i;return i=J(n,"Is",t,s),i}case 235:{let n=e[0].minor,t=e[3].minor,i;return i=J(n,"IsNot",t,s),i}case 236:{let n=e[0].minor,t=e[5].minor,i;return i=J(n,"Is",t,s),i}case 237:{let n=e[0].minor,t=e[4].minor,i;return i=J(n,"IsNot",t,s),i}case 238:case 239:case 240:{let n=e[0].minor,t=e[1].minor,i;return i=s1(Tn(n.type,o1),t,s),i}case 241:{let n=e[0].minor,t=e[1].minor,i=e[2].minor,a;return a=J(n,In(t),i,s),a}case 242:{let n;return n=!1,n}case 243:{let n;return n=!0,n}case 244:{let n=e[0].minor,t=e[1].minor,i=e[2].minor,a=e[4].minor,c;return c=Rn(n,t,i,a,s),c}case 245:{let n;return n=!1,n}case 246:{let n;return n=!0,n}case 247:{let n=e[0].minor,t=e[1].minor,i=e[3].minor,a;return a=kn(n,t,i,s),a}case 248:{let n=e[1].minor,t;return t=On(n,s),t}case 249:{let n=e[0].minor,t=e[1].minor,i=e[3].minor,a;return a=hn(n,t,i,s),a}case 250:{let n=e[0].minor,t=e[1].minor,i=e[2].minor,a=e[3].minor,c;return c=gn(n,t,i,a,s),c}case 251:{let n=e[2].minor,t;return t=xn(n,s),t}case 252:{let n=e[1].minor,t=e[2].minor,i=e[3].minor,a;return a={type:"CaseExpr",base:n,whenThenPairs:t,elseExpr:i,span:s},a}case 253:{let n=e[2].minor,t=e[4].minor,i=e[0].minor;return i.push({type:"WhenThen",when:n,then:t,span:s}),i}case 254:{let n=e[1].minor,t=e[3].minor,i;return i=[{type:"WhenThen",when:n,then:t,span:s}],i}case 255:{let n=e[1].minor,t;return t=n,t}case 256:{let n;return n=void 0,n}case 257:{let n=e[0].minor,t;return t=n,t}case 258:{let n;return n=void 0,n}case 259:{let n=e[0].minor,t;return t=n,t}case 260:{let n;return n=void 0,n}case 261:{let n=e[2].minor,t=e[0].minor;return t.push(n),t}case 262:{let n=e[0].minor,t;return t=[n],t}case 263:{let n;return n=void 0,n}case 264:{let n=e[1].minor,t;return t=n,t}case 265:{let n=e[1].minor,t=e[3].minor,i=e[4].minor,a=e[6].minor,c=e[8].minor,A=e[10].minor;r.stmt={type:"CreateIndexStmt",unique:n,ifNotExists:t,idxName:i,tblName:a,columns:c,whereClause:A,span:s};return}case 266:{let n;return n=!0,n}case 267:{let n;return n=!1,n}case 268:{let n;return n=void 0,n}case 269:{let n=e[1].minor,t;return t=n,t}case 270:{let n=e[2].minor,t=e[3].minor,i=e[4].minor,a=e[0].minor;return a.push({type:"IndexedColumn",colName:n,collationName:t,order:i,span:s}),a}case 271:{let n=e[0].minor,t=e[1].minor,i=e[2].minor,a;return a=[{type:"IndexedColumn",colName:n,collationName:t,order:i,span:s}],a}case 272:{let n;return n=void 0,n}case 273:{let n=e[1].minor,t;return t=c1(n),t}case 274:{let n=e[2].minor,t=e[3].minor;r.stmt={type:"DropIndexStmt",ifExists:n,idxName:t,span:s};return}case 275:{let n=e[1].minor;r.stmt={type:"VacuumStmt",dbName:void 0,into:n,span:s};return}case 276:{let n=e[1].minor,t=e[2].minor;r.stmt={type:"VacuumStmt",dbName:n,into:t,span:s};return}case 277:{let n=e[1].minor,t;return t=n,t}case 278:{let n;return n=void 0,n}case 279:{let n=e[1].minor;r.stmt={type:"PragmaStmt",name:n,body:void 0,span:s};return}case 280:{let n=e[1].minor,t=e[3].minor;r.stmt={type:"PragmaStmt",name:n,body:{type:"EqualsPragmaBody",value:t,span:s},span:s};return}case 281:{let n=e[1].minor,t=e[3].minor;r.stmt={type:"PragmaStmt",name:n,body:{type:"CallPragmaBody",value:t,span:s},span:s};return}case 282:{let n=e[1].minor,t=e[3].minor;r.stmt={type:"PragmaStmt",name:n,body:{type:"EqualsPragmaBody",value:t,span:s},span:s};return}case 283:{let n=e[1].minor,t=e[3].minor;r.stmt={type:"PragmaStmt",name:n,body:{type:"CallPragmaBody",value:t,span:s},span:s};return}case 284:{let n=e[0].minor,t;return t={type:"NameExpr",name:n,span:s},t}case 285:case 286:case 287:{let n=e[0].minor,t;return t=Nn(n),t}case 288:{let n=e[1].minor,t;return t=s1("Positive",m1(n),s),t}case 289:{let n=e[0].minor,t;return t=m1(n),t}case 290:{let n=e[1].minor,t;return t=s1("Negative",m1(n),s),t}case 291:{let n=e[1].minor,t=e[3].minor,i=e[4].minor,a=e[5].minor,c=e[6].minor,A=e[8].minor,I=e[9].minor,T=e[10].minor,C=e[12].minor;r.stmt={type:"CreateTriggerStmt",temporary:n,ifNotExists:t,triggerName:i,time:a,event:c,tblName:A,forEachRow:I,whenClause:T,commands:C,span:s};return}case 292:{let n;return n="Before",n}case 293:{let n;return n="After",n}case 294:{let n;return n="InsteadOf",n}case 295:{let n;return n=void 0,n}case 296:{let n;return n={type:"DeleteTriggerEvent",span:s},n}case 297:{let n;return n={type:"InsertTriggerEvent",span:s},n}case 298:{let n;return n={type:"UpdateTriggerEvent",span:s},n}case 299:{let n=e[2].minor,t;return t={type:"UpdateOfTriggerEvent",columns:n,span:s},t}case 300:{let n;return n=!1,n}case 301:{let n;return n=!0,n}case 302:{let n;return n=void 0,n}case 303:{let n=e[1].minor,t;return t=n,t}case 304:{let n=e[1].minor,t=e[0].minor;return t.push(n),t}case 305:{let n=e[0].minor,t;return t=[n],t}case 306:{r.errors.push(G("the INDEXED BY clause is not allowed on UPDATE or DELETE statements within triggers",s));return}case 307:{r.errors.push(G("the NOT INDEXED clause is not allowed on UPDATE or DELETE statements within triggers",s));return}case 308:{let n=e[1].minor,t=e[2].minor,i=e[5].minor,a=e[6].minor,c=e[7].minor,A;return A={type:"UpdateTriggerCmd",orConflict:n,tblName:t,sets:i,from:a,whereClause:c,span:s},A}case 309:{let n=e[0].minor,t=e[2].minor,i=e[3].minor,a=e[4].minor,c=e[5].minor,A;return c.returning&&r.errors.push(G("cannot use RETURNING in a trigger",c.returningSpan??s)),A={type:"InsertTriggerCmd",orConflict:n,tblName:t,colNames:i,select:a,upsert:c.upsert,span:s},A}case 310:{let n=e[2].minor,t=e[4].minor,i;return i={type:"DeleteTriggerCmd",tblName:n,whereClause:t,span:s},i}case 311:{let n=e[0].minor,t;return t={type:"SelectTriggerCmd",select:n,span:s},t}case 312:{let n;return n={type:"RaiseExpr",resolve:"Ignore",message:void 0,span:s},n}case 313:{let n=e[2].minor,t=e[4].minor,i;return i={type:"RaiseExpr",resolve:n,message:t,span:s},i}case 314:{let n;return n="Rollback",n}case 315:{let n;return n="Abort",n}case 316:{let n;return n="Fail",n}case 317:{let n=e[2].minor,t=e[3].minor;r.stmt={type:"DropTriggerStmt",ifExists:n,triggerName:t,span:s};return}case 318:{let n=e[2].minor,t=e[4].minor,i=e[5].minor;r.stmt={type:"AttachStmt",expr:n,dbName:t,key:i,span:s};return}case 319:{let n=e[2].minor;r.stmt={type:"DetachStmt",expr:n,span:s};return}case 320:{let n;return n=void 0,n}case 321:{let n=e[1].minor,t;return t=n,t}case 322:{r.stmt={type:"ReindexStmt",objName:void 0,span:s};return}case 323:{let n=e[1].minor;r.stmt={type:"ReindexStmt",objName:n,span:s};return}case 324:{r.stmt={type:"AnalyzeStmt",objName:void 0,span:s};return}case 325:{let n=e[1].minor;r.stmt={type:"AnalyzeStmt",objName:n,span:s};return}case 326:{let n=e[2].minor,t=e[5].minor;r.stmt={type:"AlterTableStmt",tblName:n,body:{type:"RenameToAlterTableBody",name:t,span:s},span:s};return}case 327:{let n=e[2].minor,t=e[5].minor,i=e[6].minor,a=e[7].minor,c=I1(t,i,a,s);r.stmt={type:"AlterTableStmt",tblName:n,body:{type:"AddColumnAlterTableBody",column:c,span:s},span:s};return}case 328:{let n=e[2].minor,t=e[5].minor;r.stmt={type:"AlterTableStmt",tblName:n,body:{type:"DropColumnAlterTableBody",column:t,span:s},span:s};return}case 329:{let n=e[2].minor,t=e[5].minor,i=e[7].minor;r.stmt={type:"AlterTableStmt",tblName:n,body:{type:"RenameColumnAlterTableBody",old:t,new:i,span:s},span:s};return}case 330:{let n=e[2].minor,t=e[5].minor;r.stmt={type:"AlterTableStmt",tblName:n,body:{type:"DropConstraintAlterTableBody",name:t,span:s},span:s};return}case 331:{let n=e[2].minor,t=e[5].minor;r.stmt={type:"AlterTableStmt",tblName:n,body:{type:"DropColumnNotNullAlterTableBody",column:t,span:s},span:s};return}case 332:{let n=e[2].minor,t=e[5].minor,i=e[9].minor;r.stmt={type:"AlterTableStmt",tblName:n,body:{type:"SetColumnNotNullAlterTableBody",column:t,onConflict:i,span:s},span:s};return}case 333:{let n=e[2].minor,t=e[5].minor,i=e[8].minor,a=e[10].minor,c={type:"CheckTableConstraint",expr:i,conflictClause:a,span:s};r.stmt={type:"AlterTableStmt",tblName:n,body:{type:"AddConstraintAlterTableBody",constraint:{type:"NamedTableConstraint",name:t,constraint:c,span:s},span:s},span:s};return}case 334:{let n=e[2].minor,t=e[6].minor,i=e[8].minor,a={type:"CheckTableConstraint",expr:t,conflictClause:i,span:s};r.stmt={type:"AlterTableStmt",tblName:n,body:{type:"AddConstraintAlterTableBody",constraint:{type:"NamedTableConstraint",name:void 0,constraint:a,span:s},span:s},span:s};return}case 335:{let n=e[0].minor;r.stmt=n;return}case 336:{let n=e[0].minor;r.vtabArgCurrent.length>0&&(r.vtabArgs.push(r.vtabArgCurrent),r.vtabArgCurrent=""),n.type==="CreateVirtualTableStmt"?r.stmt={...n,args:r.vtabArgs.slice(),span:s}:r.stmt=n,r.vtabArgs=[];return}case 337:{let n=e[3].minor,t=e[4].minor,i=e[6].minor,a;return a={type:"CreateVirtualTableStmt",ifNotExists:n,tblName:t,moduleName:i,args:void 0,span:s},a}case 338:{r.vtabArgCurrent.length>0&&r.vtabArgs.push(r.vtabArgCurrent),r.vtabArgCurrent="";return}case 339:{let n=e[0].minor;r.vtabArgCurrent+=n.text;return}case 340:{let n=e[2].minor;r.vtabArgCurrent+=n.text;return}case 341:{let n=e[0].minor;r.vtabArgCurrent+=n.text;return}case 342:{let n;return n=void 0,n}case 343:{let n=e[1].minor,t;return t={type:"With",recursive:!1,ctes:n,span:s},t}case 344:{let n=e[2].minor,t;return t={type:"With",recursive:!0,ctes:n,span:s},t}case 345:{let n;return n="Any",n}case 346:{let n;return n="Yes",n}case 347:{let n;return n="No",n}case 348:{let n=e[0].minor,t=e[1].minor,i=e[2].minor,a=e[4].minor,c;return c={type:"CommonTableExpr",tblName:n,columns:t,materialized:i,select:a,span:s},c}case 349:{let n=e[0].minor,t;return t=[n],t}case 350:{let n=e[2].minor,t=e[0].minor;return wn(r,t,n),t}case 351:{let n=e[0].minor,t;return t=[n],t}case 352:{let n=e[2].minor,t=e[0].minor;return t.push(n),t}case 353:{let n=e[0].minor,t=e[3].minor,i;return i={type:"WindowDef",name:n,window:t,span:s},i}case 354:{let n=e[2].minor,t=e[3].minor,i=e[4].minor,a;return a={type:"Window",base:void 0,partitionBy:n,orderBy:t,frameClause:i,span:s},a}case 355:{let n=e[0].minor,t=e[3].minor,i=e[4].minor,a=e[5].minor,c;return c={type:"Window",base:n,partitionBy:t,orderBy:i,frameClause:a,span:s},c}case 356:{let n=e[2].minor,t=e[3].minor,i;return i={type:"Window",base:void 0,partitionBy:void 0,orderBy:n,frameClause:t,span:s},i}case 357:{let n=e[0].minor,t=e[3].minor,i=e[4].minor,a;return a={type:"Window",base:n,partitionBy:void 0,orderBy:t,frameClause:i,span:s},a}case 358:{let n=e[0].minor,t;return t={type:"Window",base:void 0,partitionBy:void 0,orderBy:void 0,frameClause:n,span:s},t}case 359:{let n=e[0].minor,t=e[1].minor,i;return i={type:"Window",base:n,partitionBy:void 0,orderBy:void 0,frameClause:t,span:s},i}case 360:{let n;return n=void 0,n}case 361:{let n=e[0].minor,t=e[1].minor,i=e[2].minor,a;return a={type:"FrameClause",mode:n,start:t,end:void 0,exclude:i,span:s},a}case 362:{let n=e[0].minor,t=e[2].minor,i=e[4].minor,a=e[5].minor,c;return c={type:"FrameClause",mode:n,start:t,end:i,exclude:a,span:s},c}case 363:{let n;return n="Range",n}case 364:{let n;return n="Rows",n}case 365:{let n;return n="Groups",n}case 366:{let n=e[0].minor,t;return t=n,t}case 367:{let n;return n={type:"UnboundedPrecedingFrameBound",span:s},n}case 368:{let n=e[0].minor,t;return t=n,t}case 369:{let n;return n={type:"UnboundedFollowingFrameBound",span:s},n}case 370:{let n=e[0].minor,t;return t={type:"PrecedingFrameBound",expr:n,span:s},t}case 371:{let n;return n={type:"CurrentRowFrameBound",span:s},n}case 372:{let n=e[0].minor,t;return t={type:"FollowingFrameBound",expr:n,span:s},t}case 373:{let n;return n=void 0,n}case 374:{let n=e[1].minor,t;return t=n,t}case 375:{let n;return n="NoOthers",n}case 376:{let n;return n="CurrentRow",n}case 377:{let n;return n="Group",n}case 378:{let n;return n="Ties",n}case 379:{let n=e[1].minor,t;return t=n,t}case 380:{let n=e[0].minor,t=e[1].minor,i;return i={type:"FunctionTail",filterClause:n,overClause:t,span:s},i}case 381:{let n=e[0].minor,t;return t={type:"FunctionTail",filterClause:void 0,overClause:n,span:s},t}case 382:{let n=e[0].minor,t;return t={type:"FunctionTail",filterClause:n,overClause:void 0,span:s},t}case 383:{let n=e[2].minor,t;return t={type:"WindowOver",window:n,span:s},t}case 384:{let n=e[1].minor,t;return t={type:"NameOver",name:n,span:s},t}case 385:{let n=e[3].minor,t;return t=n,t}case 386:{let n=e[0].minor,t,i=an(n.text,{digitSeparator:r.digitSeparator});return i.error&&r.errors.push(G(i.error,n.span,{message:"digit separators must sit between two digits (e.g. 1_000, 0xDE_AD)",span:void 0})),t={type:"NumericLiteral",value:i.text,span:n.span},t}case 387:case 388:case 389:case 390:case 391:return e[0].minor;case 392:return;case 393:return e[0].minor;case 394:return e[0].minor;case 395:case 396:return e[0].minor;case 397:return;case 398:return e[0].minor;case 399:return e[0].minor;case 400:case 401:return e[0].minor;case 402:return;case 403:return e[0].minor;case 404:case 405:return;case 406:case 407:case 408:case 409:return e[0].minor;case 410:return;case 411:case 412:return e[0].minor;default:return}},We=Bn;var Gn={meta:{maskFlags:{ALTER:1,ALWAYS:2,ANALYZE:4,ATTACH:8,AUTOINCR:16,CAST:32,COMPOUND:64,CONFLICT:128,EXPLAIN:256,FKEY:512,PRAGMA:1024,REINDEX:2048,SUBQUERY:4096,TRIGGER:8192,VACUUM:16384,VIEW:32768,VTAB:65536,AUTOVACUUM:131072,CTE:262144,UPSERT:524288,WINDOWFUNC:1048576,GENCOL:2097152,RETURNING:4194304,ORDERSET:8388608}},keywords:[{name:"ABORT",token:"ABORT",mask:8320},{name:"ACTION",token:"ACTION",mask:512},{name:"ADD",token:"ADD",mask:1},{name:"AFTER",token:"AFTER",mask:8192},{name:"ALL",token:"ALL",mask:2},{name:"ALTER",token:"ALTER",mask:1},{name:"ALWAYS",token:"ALWAYS",mask:2097152},{name:"ANALYZE",token:"ANALYZE",mask:4},{name:"AND",token:"AND",mask:2},{name:"AS",token:"AS",mask:2},{name:"ASC",token:"ASC",mask:2},{name:"ATTACH",token:"ATTACH",mask:8},{name:"AUTOINCREMENT",token:"AUTOINCR",mask:16},{name:"BEFORE",token:"BEFORE",mask:8192},{name:"BEGIN",token:"BEGIN",mask:2},{name:"BETWEEN",token:"BETWEEN",mask:2},{name:"BY",token:"BY",mask:2},{name:"CASCADE",token:"CASCADE",mask:512},{name:"CASE",token:"CASE",mask:2},{name:"CAST",token:"CAST",mask:32},{name:"CHECK",token:"CHECK",mask:2},{name:"COLLATE",token:"COLLATE",mask:2},{name:"COLUMN",token:"COLUMNKW",mask:1},{name:"COMMIT",token:"COMMIT",mask:2},{name:"CONFLICT",token:"CONFLICT",mask:128},{name:"CONSTRAINT",token:"CONSTRAINT",mask:2},{name:"CREATE",token:"CREATE",mask:2},{name:"CROSS",token:"JOIN_KW",mask:2},{name:"CURRENT",token:"CURRENT",mask:1048576},{name:"CURRENT_DATE",token:"CTIME_KW",mask:2},{name:"CURRENT_TIME",token:"CTIME_KW",mask:2},{name:"CURRENT_TIMESTAMP",token:"CTIME_KW",mask:2},{name:"DATABASE",token:"DATABASE",mask:8},{name:"DEFAULT",token:"DEFAULT",mask:2},{name:"DEFERRED",token:"DEFERRED",mask:2},{name:"DEFERRABLE",token:"DEFERRABLE",mask:512},{name:"DELETE",token:"DELETE",mask:2},{name:"DESC",token:"DESC",mask:2},{name:"DETACH",token:"DETACH",mask:8},{name:"DISTINCT",token:"DISTINCT",mask:2},{name:"DO",token:"DO",mask:524288},{name:"DROP",token:"DROP",mask:2},{name:"END",token:"END",mask:2},{name:"EACH",token:"EACH",mask:8192},{name:"ELSE",token:"ELSE",mask:2},{name:"ESCAPE",token:"ESCAPE",mask:2},{name:"EXCEPT",token:"EXCEPT",mask:64},{name:"EXCLUSIVE",token:"EXCLUSIVE",mask:2},{name:"EXCLUDE",token:"EXCLUDE",mask:1048576},{name:"EXISTS",token:"EXISTS",mask:2},{name:"EXPLAIN",token:"EXPLAIN",mask:256},{name:"FAIL",token:"FAIL",mask:8320},{name:"FILTER",token:"FILTER",mask:1048576},{name:"FIRST",token:"FIRST",mask:2},{name:"FOLLOWING",token:"FOLLOWING",mask:1048576},{name:"FOR",token:"FOR",mask:8192},{name:"FOREIGN",token:"FOREIGN",mask:512},{name:"FROM",token:"FROM",mask:2},{name:"FULL",token:"JOIN_KW",mask:2},{name:"GENERATED",token:"GENERATED",mask:2},{name:"GLOB",token:"LIKE_KW",mask:2},{name:"GROUP",token:"GROUP",mask:2},{name:"GROUPS",token:"GROUPS",mask:1048576},{name:"HAVING",token:"HAVING",mask:2},{name:"IF",token:"IF",mask:2},{name:"IGNORE",token:"IGNORE",mask:8320},{name:"IMMEDIATE",token:"IMMEDIATE",mask:2},{name:"IN",token:"IN",mask:2},{name:"INDEX",token:"INDEX",mask:2},{name:"INDEXED",token:"INDEXED",mask:2},{name:"INITIALLY",token:"INITIALLY",mask:512},{name:"INNER",token:"JOIN_KW",mask:2},{name:"INSERT",token:"INSERT",mask:2},{name:"INSTEAD",token:"INSTEAD",mask:8192},{name:"INTERSECT",token:"INTERSECT",mask:64},{name:"INTO",token:"INTO",mask:2},{name:"IS",token:"IS",mask:2},{name:"ISNULL",token:"ISNULL",mask:2},{name:"JOIN",token:"JOIN",mask:2},{name:"KEY",token:"KEY",mask:2},{name:"LAST",token:"LAST",mask:2},{name:"LEFT",token:"JOIN_KW",mask:2},{name:"LIKE",token:"LIKE_KW",mask:2},{name:"LIMIT",token:"LIMIT",mask:2},{name:"MATCH",token:"MATCH",mask:2},{name:"MATERIALIZED",token:"MATERIALIZED",mask:262144},{name:"NATURAL",token:"JOIN_KW",mask:2},{name:"NO",token:"NO",mask:1049088},{name:"NOT",token:"NOT",mask:2},{name:"NOTHING",token:"NOTHING",mask:524288},{name:"NOTNULL",token:"NOTNULL",mask:2},{name:"NULL",token:"NULL",mask:2},{name:"NULLS",token:"NULLS",mask:2},{name:"OF",token:"OF",mask:2},{name:"OFFSET",token:"OFFSET",mask:2},{name:"ON",token:"ON",mask:2},{name:"OR",token:"OR",mask:2},{name:"ORDER",token:"ORDER",mask:2},{name:"OTHERS",token:"OTHERS",mask:1048576},{name:"OUTER",token:"JOIN_KW",mask:2},{name:"OVER",token:"OVER",mask:1048576},{name:"PARTITION",token:"PARTITION",mask:1048576},{name:"PLAN",token:"PLAN",mask:256},{name:"PRAGMA",token:"PRAGMA",mask:1024},{name:"PRECEDING",token:"PRECEDING",mask:1048576},{name:"PRIMARY",token:"PRIMARY",mask:2},{name:"QUERY",token:"QUERY",mask:256},{name:"RAISE",token:"RAISE",mask:8192},{name:"RANGE",token:"RANGE",mask:1048576},{name:"RECURSIVE",token:"RECURSIVE",mask:262144},{name:"REFERENCES",token:"REFERENCES",mask:512},{name:"REGEXP",token:"LIKE_KW",mask:2},{name:"REINDEX",token:"REINDEX",mask:2048},{name:"RELEASE",token:"RELEASE",mask:2},{name:"RENAME",token:"RENAME",mask:1},{name:"REPLACE",token:"REPLACE",mask:128},{name:"RESTRICT",token:"RESTRICT",mask:512},{name:"RETURNING",token:"RETURNING",mask:4194304},{name:"RIGHT",token:"JOIN_KW",mask:2},{name:"ROLLBACK",token:"ROLLBACK",mask:2},{name:"ROW",token:"ROW",mask:8192},{name:"ROWS",token:"ROWS",mask:2},{name:"SAVEPOINT",token:"SAVEPOINT",mask:2},{name:"SELECT",token:"SELECT",mask:2},{name:"SET",token:"SET",mask:2},{name:"TABLE",token:"TABLE",mask:2},{name:"TEMP",token:"TEMP",mask:2},{name:"TEMPORARY",token:"TEMP",mask:2},{name:"THEN",token:"THEN",mask:2},{name:"TIES",token:"TIES",mask:1048576},{name:"TO",token:"TO",mask:2},{name:"TRANSACTION",token:"TRANSACTION",mask:2},{name:"TRIGGER",token:"TRIGGER",mask:8192},{name:"UNBOUNDED",token:"UNBOUNDED",mask:1048576},{name:"UNION",token:"UNION",mask:64},{name:"UNIQUE",token:"UNIQUE",mask:2},{name:"UPDATE",token:"UPDATE",mask:2},{name:"USING",token:"USING",mask:2},{name:"VACUUM",token:"VACUUM",mask:16384},{name:"VALUES",token:"VALUES",mask:2},{name:"VIEW",token:"VIEW",mask:32768},{name:"VIRTUAL",token:"VIRTUAL",mask:65536},{name:"WHEN",token:"WHEN",mask:2},{name:"WHERE",token:"WHERE",mask:2},{name:"WINDOW",token:"WINDOW",mask:1048576},{name:"WITH",token:"WITH",mask:262144},{name:"WITHIN",token:"WITHIN",mask:8388608},{name:"WITHOUT",token:"WITHOUT",mask:2}]};var P=G1(W1,Gn,{}),Rt=P.parse,kt=P.parseOrThrow,Wn=P.parseStmt,ht=P.parseStmtOrThrow,gt=P.tokenize,Ot=P.tokenName,xt=P.createEngine,bt=P.withOptions,St=P.reduce,_t=P.createState,Dt=P.parserDefs,Ut=P.keywordDefs;if(ve||p===null)throw new Error("SQLite runtime must execute inside its owned Worker");var _=null,y1=null,H1=!1,Hn=!1;function b(r,o,e,s=!1){let m=new Error(r);return m.code=o,m.operation=e,m.retryable=s,m}function vn(r,o){let e=r instanceof Error?r.message:String(r),s=r&&typeof r=="object"?r.errstr??r.code??null:null,m=s==null?null:String(s),n=m==null?"":m.toUpperCase();return{message:e,sqliteCode:m,operation:r&&typeof r.operation=="string"?r.operation:o,retryable:r&&r.retryable===!0||n.includes("BUSY")||n.includes("LOCKED")}}function Ke(r,o){if(r===null)return null;if(typeof r=="boolean")return r?1:0;if(typeof r=="string")return o.value+=d1.byteLength(r,"utf8"),r;if(typeof r=="number"){if(!Number.isFinite(r))throw b("SQLite number parameters must be finite","SQLITE_INPUT","params");if(Number.isInteger(r)&&!Number.isSafeInteger(r))throw b("SQLite integer parameters must be safe integers","SQLITE_INPUT","params");return o.value+=8,r}if(r instanceof Uint8Array)return o.value+=r.byteLength,r;throw b("SQLite parameters support only null, bool, string, finite number, and Bytes","SQLITE_INPUT","params")}function Qe(r){if(!Array.isArray(r)||r.length>999)throw b("SQLite parameters must be a List with at most 999 values","SQLITE_INPUT","params");let o={value:0},e=r.map(s=>Ke(s,o));if(o.value>W.maxResultBytes)throw b("SQLite parameters exceed the connection byte limit","SQLITE_INPUT","params");return e}function v1(r,o,e){if(!Array.isArray(r)||r.length!==o.length+1||r.length>1e3)throw b("SQLite statements require exactly one more SQL fragment than bound parameters","SQLITE_INPUT",e);let s=0,m=r.map(a=>{if(typeof a!="string"||a.includes("\\0")||a.includes("?"))throw b("SQLite SQL fragments must be text without NUL or raw parameter placeholders","SQLITE_INPUT",e);return s+=d1.byteLength(a,"utf8"),a});if(s===0||s>1024*1024)throw b("SQLite SQL must be non-empty text no longer than 1 MiB","SQLITE_INPUT",e);let n=Qe(o),t=m.join("?"),i=Wn(t);if(i.status!=="ok"){let a=i.errors.length===0?"invalid statement":i.errors[0].message;throw b("SQLite requires exactly one valid statement: "+a,"SQLITE_INPUT",e)}return{fragments:m,bound:n}}function Ve(r,o){let e=typeof r=="bigint"?Number(r):r;if(!Number.isSafeInteger(e)||e<0)throw b(o+" is outside VelarScript\'s safe integer range","SQLITE_INTEGER_RANGE","result");return e}function Ze(r,o,e){if(r===null)return null;if(typeof r=="string")return o.value+=d1.byteLength(r,"utf8"),r;if(typeof r=="number"){if(!Number.isFinite(r))throw b("SQLite returned a non-finite number in "+e,"SQLITE_RESULT","result");return o.value+=8,r}if(typeof r=="bigint"){let s=Number(r);if(!Number.isSafeInteger(s))throw b("SQLite returned an integer outside VelarScript\'s safe range in "+e,"SQLITE_INTEGER_RANGE","result");return o.value+=8,s}if(r instanceof Uint8Array)return o.value+=r.byteLength,r;throw b("SQLite returned an unsupported value in "+e,"SQLITE_RESULT","result")}function Kn(r,o){if(r===null||typeof r!="object"||Array.isArray(r))throw b("SQLite returned a non-record row","SQLITE_RESULT","result");let e=Object.create(null);for(let s of Object.keys(r))if(o.value+=d1.byteLength(s,"utf8"),e[s]=Ze(r[s],o,s),o.value>W.maxResultBytes)throw b("SQLite result exceeds the connection byte limit","SQLITE_RESULT_LIMIT","result");return e}function $e(r){let o=v1(r.fragments,r.params,"execute"),e=y1.run(o.fragments,...o.bound);return Ve(e.changes,"SQLite affected row count")}function qe(r){let o=v1(r.fragments,r.params,"one"),e=y1.get(o.fragments,...o.bound);return e===void 0?null:Kn(e,{value:0})}function je(r){let o=v1(r.fragments,r.params,"all"),e=[],s={value:0};for(let m of y1.iterate(o.fragments,...o.bound)){if(e.length>=W.maxRows)throw b("SQLite result exceeds the connection row limit","SQLITE_ROW_LIMIT","all");e.push(Kn(m,s))}return e}function Je(r){if(H1)throw b("SQLite connection is closed","SQLITE_CLOSED",r.operation);if(r.operation==="execute")return $e(r);if(r.operation==="one")return qe(r);if(r.operation==="all")return je(r);if(r.operation==="begin"){if(_.isTransaction)throw b("SQLite transaction is already active","SQLITE_TRANSACTION","begin",!0);return _.exec("BEGIN IMMEDIATE"),null}if(r.operation==="commit"){if(!_.isTransaction)throw b("SQLite transaction is not active","SQLITE_TRANSACTION","commit");return _.exec("COMMIT"),null}if(r.operation==="rollback")return _.isTransaction&&_.exec("ROLLBACK"),null;if(r.operation==="close"){let o=null;try{_.isTransaction&&_.exec("ROLLBACK")}catch(e){o=e}try{_.close()}catch(e){o===null&&(o=e)}if(H1=!0,o!==null)throw o;return null}throw b("Unknown SQLite operation","SQLITE_PROTOCOL",String(r.operation))}try{_=new He(W.path,{timeout:W.busyTimeoutMilliseconds,readOnly:W.readOnly,enableForeignKeyConstraints:!0,enableDoubleQuotedStringLiterals:!1,allowExtension:!1,readBigInts:!0,allowBareNamedParameters:!1,allowUnknownNamedParameters:!1,defensive:!0,limits:{length:W.maxResultBytes,sqlLength:1024*1024,column:2e3,exprDepth:1e3,compoundSelect:500,vdbeOp:25e4,functionArg:1e3,attach:0,likePatternLength:5e4,variableNumber:999,triggerDepth:100}}),_.enableDefensive(!0),_.enableLoadExtension(!1),_.setAuthorizer((r,o,e)=>r===i1.SQLITE_ATTACH||r===i1.SQLITE_DETACH?i1.SQLITE_DENY:r===i1.SQLITE_FUNCTION&&typeof e=="string"&&e.toLowerCase()==="load_extension"?i1.SQLITE_DENY:i1.SQLITE_OK),y1=_.createTagStore(W.statementCacheCapacity),W.journalMode!==null&&_.exec("PRAGMA journal_mode = "+W.journalMode.toUpperCase()),Hn=!0,p.postMessage({kind:"ready"})}catch(r){let o=vn(r,"open");try{_?.isTransaction===!0&&_.exec("ROLLBACK")}catch{}try{_?.close()}catch{}H1=!0;try{p.postMessage({kind:"ready",error:o})}finally{p.close()}}Hn&&p.on("message",r=>{let o;try{let e=Je(r);o={kind:"response",id:r.id,value:e}}catch(e){o={kind:"response",id:r.id,error:vn(e,r.operation)}}try{p.postMessage(o)}finally{r.operation==="close"&&p.close()}});\n';import{AsyncLocalStorage as vo}from"node:async_hooks";import{Worker as Io}from"node:worker_threads";var Ae=Object.freeze({}),h1=new WeakMap,g1=new WeakMap,St=new vo,c=class extends Error{constructor(t="SQLite operation failed",n=null,r="unknown",i=!1){super(t),this.name="NativeSqliteError",this.sqliteCode=n,this.operation=r,this.retryable=i}},oe=class extends c{constructor(t="SQLite queue is full"){super(t,"SQLITE_BACKPRESSURE","queue",!0),this.name="NativeSqliteBackpressureError"}},H=class extends c{constructor(t="SQLite connection cannot be used from its transaction callback"){super(t,"SQLITE_CONCURRENCY","transaction",!0),this.name="NativeSqliteConcurrencyError"}};function fe(e,t,n,r,i){let o=e??t;if(!Number.isSafeInteger(o)||o<n||o>r)throw new TypeError(i+" must be an integer from "+n+" through "+r);return o}function Lo(e){if(e===null||typeof e!="object"||Array.isArray(e))throw new TypeError("SQLite options must be a record");let t=new Set(["busyTimeoutMilliseconds","queueCapacity","maxRows","maxResultBytes","statementCacheCapacity","journalMode","readOnly"]);for(let i of Object.keys(e))if(!t.has(i))throw new TypeError("Unknown SQLite option "+i);let n=new Set(["delete","truncate","persist","memory","wal","off"]),r=e.journalMode==null?null:e.journalMode;if(r!==null&&(typeof r!="string"||!n.has(r)))throw new TypeError("SQLite journalMode must name a supported mode");if(e.readOnly!=null&&typeof e.readOnly!="boolean")throw new TypeError("SQLite readOnly must be bool");if(e.readOnly===!0&&r!==null)throw new TypeError("SQLite readOnly connections cannot change journalMode");return{busyTimeoutMilliseconds:fe(e.busyTimeoutMilliseconds,2e3,1,6e4,"SQLite busy timeout"),queueCapacity:fe(e.queueCapacity,64,1,1024,"SQLite queue capacity"),maxRows:fe(e.maxRows,1e4,1,1e6,"SQLite row limit"),maxResultBytes:fe(e.maxResultBytes,64*1024*1024,1,128*1024*1024,"SQLite result byte limit"),statementCacheCapacity:fe(e.statementCacheCapacity,128,1,1024,"SQLite statement cache capacity"),journalMode:r,readOnly:e.readOnly===!0}}function d1(e){return new c(e.message,e.sqliteCode,e.operation,e.retryable)}function Ro(e,t){e.readyReject!==null&&(e.readyReject(t),e.readyReject=null,e.readyResolve=null);for(let n of e.pending.values())n.reject(t);e.pending.clear()}function _1(e,t){e.workerFailure===null&&(e.workerFailure=t,e.closed=!0,Ro(e,t))}function re(e,t,n=[""],r=[]){if(e.closed)return Promise.reject(new c("SQLite connection is closed","SQLITE_CLOSED",t));let i=e.nextId++;return new Promise((o,s)=>{e.pending.set(i,{resolve:o,reject:s,operation:t});try{e.worker.postMessage({id:i,operation:t,fragments:n,params:r})}catch(a){e.pending.delete(i),s(a)}})}function me(e){let t=h1.get(e);if(!t)throw new TypeError("Invalid SQLite connection");return t}function Ao(e){let t=g1.get(e);if(!t||!t.active)throw new H("SQLite transaction is no longer active");return t}function de(e,t,n=[""],r=[]){let i=Ao(e);return i.busy?Promise.reject(new H("SQLite transaction operations must be awaited one at a time")):(i.busy=!0,re(i.connection,t,n,r).finally(()=>{i.busy=!1}))}function Re(e,t){if(e.closed||e.closing)return Promise.reject(new c("SQLite connection is closed","SQLITE_CLOSED","queue"));if(St.getStore()===e)return Promise.reject(new H);if(e.queued>=e.queueCapacity)return Promise.reject(new oe);e.queued+=1;let n=e.tail.then(t,t);return e.tail=n.then(()=>null,()=>null),n.finally(()=>{e.queued-=1})}var Tt=class{constructor(t,n){if(t!==Ae)throw new TypeError("SQLite transactions are created by connection.transaction");g1.set(this,n)}execute(t,n=[]){return de(this,"execute",t,n)}one(t,n=[]){return de(this,"one",t,n)}all(t,n=[]){return de(this,"all",t,n)}},Nt=class{constructor(t,n){if(t!==Ae)throw new TypeError("Use openSqlite to create a SQLite connection");h1.set(this,n)}execute(t,n=[]){let r=me(this);return Re(r,()=>re(r,"execute",t,n))}one(t,n=[]){let r=me(this);return Re(r,()=>re(r,"one",t,n))}all(t,n=[]){let r=me(this);return Re(r,()=>re(r,"all",t,n))}transaction(t){if(typeof t!="function")return Promise.reject(new TypeError("SQLite transaction requires an async operation"));let n=me(this);return Re(n,async()=>{await re(n,"begin");let r={connection:n,active:!0,busy:!1},i=new Tt(Ae,r);try{return await St.run(n,()=>t(i)),await de(i,"commit"),r.active=!1,null}catch(o){try{r.active&&await de(i,"rollback")}catch{n.closing=!0,n.worker.terminate()}finally{r.active=!1}throw o}})}close(){let t=me(this);return t.closePromise!==null?t.closePromise:St.getStore()===t?Promise.reject(new H("SQLite connection cannot close inside its transaction callback")):(t.closing=!0,t.closePromise=t.tail.then(async()=>{let n=null;try{t.closed||await re(t,"close")}catch(r){n=r}try{if(await t.exited,n!==null)throw n;if(t.workerFailure!==null)throw t.workerFailure}finally{t.closed=!0}}),t.closePromise)}};async function y1(e,t={},n=""){if(typeof e!="string"||e.trim()===""||e.length>4096||e.includes("\0"))throw new TypeError("SQLite path must be non-empty bounded text");if(typeof n!="string")throw new TypeError("SQLite Worker source must be text");if(n.length===0||n.length>4*1024*1024)throw new TypeError("SQLite Worker source must be non-empty bounded text");let r=Lo(t),i=new URL("data:text/javascript;charset=utf-8,"+encodeURIComponent(n)),o=new Io(i,{type:"module",workerData:{path:e,...r}}),s,a,h,M=new Promise((E,q)=>{s=E,a=q}),It=new Promise(E=>{h=E}),C={worker:o,readyResolve:s,readyReject:a,exited:It,pending:new Map,nextId:1,queueCapacity:r.queueCapacity,queued:0,tail:Promise.resolve(),closing:!1,closed:!1,closeAcknowledged:!1,workerFailure:null,exitCode:null,closePromise:null};o.on("message",E=>{if(E.kind==="ready"){if(C.readyResolve===null)return;let w1=C.readyResolve,S1=C.readyReject;C.readyResolve=null,C.readyReject=null,E.error?S1(d1(E.error)):w1();return}if(E.kind!=="response")return;let q=C.pending.get(E.id);q&&(C.pending.delete(E.id),q.operation==="close"&&(C.closeAcknowledged=!0),E.error?q.reject(d1(E.error)):q.resolve(E.value))}),o.on("error",E=>{_1(C,new c(E.message,"SQLITE_WORKER","worker"))}),o.on("exit",E=>{C.exitCode=E,E===0&&C.closeAcknowledged&&C.workerFailure===null||_1(C,new c("SQLite Worker exited unexpectedly with code "+E,"SQLITE_WORKER","worker")),C.closed=!0,h(E)});try{await M}catch(E){throw C.exitCode===null&&await o.terminate(),await It,E}return new Nt(Ae,C)}if(!1)throw new W("SQLite Worker source module has an unsupported format");var vt=ht(wt({delete:"delete",truncate:"truncate",persist:"persist",memory:"memory",wal:"wal",off:"off",is(e){return e==="delete"||e==="truncate"||e==="persist"||e==="memory"||e==="wal"||e==="off"},parse(e){if(!vt.is(e))throw new ne("Value does not match SqliteJournalMode",{path:"SqliteJournalMode"});return e},copy(e){return e},values(){return["delete","truncate","persist","memory","wal","off"]}}));function ko(e){if(e===null||typeof e!="object"||ue(e)||!pe(e))return{path:"SqliteOptions",field:null,reason:"the value is not a record"};{let t=_(e,"busyTimeoutMilliseconds");if(t!==void 0&&!(t.enumerable&&"value"in t&&(t.value==null||typeof t.value=="number")))return{path:"SqliteOptions.busyTimeoutMilliseconds",field:"busyTimeoutMilliseconds",reason:"field 'busyTimeoutMilliseconds' does not match number?"}}{let t=_(e,"queueCapacity");if(t!==void 0&&!(t.enumerable&&"value"in t&&(t.value==null||typeof t.value=="number")))return{path:"SqliteOptions.queueCapacity",field:"queueCapacity",reason:"field 'queueCapacity' does not match number?"}}{let t=_(e,"maxRows");if(t!==void 0&&!(t.enumerable&&"value"in t&&(t.value==null||typeof t.value=="number")))return{path:"SqliteOptions.maxRows",field:"maxRows",reason:"field 'maxRows' does not match number?"}}{let t=_(e,"maxResultBytes");if(t!==void 0&&!(t.enumerable&&"value"in t&&(t.value==null||typeof t.value=="number")))return{path:"SqliteOptions.maxResultBytes",field:"maxResultBytes",reason:"field 'maxResultBytes' does not match number?"}}{let t=_(e,"statementCacheCapacity");if(t!==void 0&&!(t.enumerable&&"value"in t&&(t.value==null||typeof t.value=="number")))return{path:"SqliteOptions.statementCacheCapacity",field:"statementCacheCapacity",reason:"field 'statementCacheCapacity' does not match number?"}}{let t=_(e,"journalMode");if(t!==void 0&&!(t.enumerable&&"value"in t&&(t.value==null||vt.is(t.value))))return{path:"SqliteOptions.journalMode",field:"journalMode",reason:"field 'journalMode' does not match SqliteJournalMode?"}}{let t=_(e,"readOnly");if(t!==void 0&&!(t.enumerable&&"value"in t&&(t.value==null||typeof t.value=="boolean")))return{path:"SqliteOptions.readOnly",field:"readOnly",reason:"field 'readOnly' does not match bool?"}}return{path:"SqliteOptions",field:null,reason:null}}function E1(e){if(e===null||typeof e!="object"||ue(e)||!pe(e))return!1;let t=_(e,"busyTimeoutMilliseconds"),n=_(e,"queueCapacity"),r=_(e,"maxRows"),i=_(e,"maxResultBytes"),o=_(e,"statementCacheCapacity"),s=_(e,"journalMode"),a=_(e,"readOnly");return!!((t===void 0||t?.enumerable&&"value"in t&&(t.value==null||typeof t.value=="number"))&&(n===void 0||n?.enumerable&&"value"in n&&(n.value==null||typeof n.value=="number"))&&(r===void 0||r?.enumerable&&"value"in r&&(r.value==null||typeof r.value=="number"))&&(i===void 0||i?.enumerable&&"value"in i&&(i.value==null||typeof i.value=="number"))&&(o===void 0||o?.enumerable&&"value"in o&&(o.value==null||typeof o.value=="number"))&&(s===void 0||s?.enumerable&&"value"in s&&(s.value==null||vt.is(s.value)))&&(a===void 0||a?.enumerable&&"value"in a&&(a.value==null||typeof a.value=="boolean")))}function Oe(e,t,n){let r=t.copy.seen(t,e,n);if(r!==void 0)return r;let i=t.copy.object(t,e,n);{let o=_(e,"busyTimeoutMilliseconds");o!==void 0&&t.copy.field(i,"busyTimeoutMilliseconds",o.value)}{let o=_(e,"queueCapacity");o!==void 0&&t.copy.field(i,"queueCapacity",o.value)}{let o=_(e,"maxRows");o!==void 0&&t.copy.field(i,"maxRows",o.value)}{let o=_(e,"maxResultBytes");o!==void 0&&t.copy.field(i,"maxResultBytes",o.value)}{let o=_(e,"statementCacheCapacity");o!==void 0&&t.copy.field(i,"statementCacheCapacity",o.value)}{let o=_(e,"journalMode");o!==void 0&&t.copy.field(i,"journalMode",o.value)}{let o=_(e,"readOnly");o!==void 0&&t.copy.field(i,"readOnly",o.value)}return i}var ja=ht(wt({is(e){return E1(e)},parse(e){if(!E1(e)){let t=ko(e);throw new ne("Value does not match SqliteOptions"+(t.reason?" \u2014 "+t.reason:"")+f1(e),t)}return Oe(e,Et(),Oe)},copy(e,t=Et(),n=Oe){return Oe(e,t,n)}})),N=class extends Error{constructor(t,n=null,r="unknown",i=!1){super(t),this.name="SqliteError";let o=this;o.sqliteCode=n??null,o.operation=r,o.retryable=i}},Ct=class extends N{constructor(t="SQLite queue is full"){super(t,"SQLITE_BACKPRESSURE","queue",!0),this.name="SqliteBackpressureError";let n=this}},xt=class extends N{constructor(t="SQLite connection cannot be used from its transaction callback"){super(t,"SQLITE_CONCURRENCY","transaction",!0),this.name="SqliteConcurrencyError";let n=this}};function O(e){return e instanceof oe?new Ct((t=>f(t,w(t,oe),"NativeSqliteBackpressureError","error","index.vel:349:79"))(e).message):e instanceof H?new xt((t=>f(t,w(t,H),"NativeSqliteConcurrencyError","error","index.vel:350:77"))(e).message):e instanceof c?new N((t=>f(t,w(t,c),"NativeSqliteError","error","index.vel:351:55"))(e).message,(t=>f(t,w(t,c),"NativeSqliteError","error","index.vel:351:70"))(e).sqliteCode??null,(t=>f(t,w(t,c),"NativeSqliteError","error","index.vel:351:88"))(e).operation,(t=>f(t,w(t,c),"NativeSqliteError","error","index.vel:351:105"))(e).retryable):new N(e.message)}function Ya(e){if((e??null)===null)return _e("NULL");if(typeof(e??null)=="boolean")return _e((t=>f(t,typeof t=="boolean","bool","value","index.vel:359:41"))(e)?"1":"0");if(typeof(e??null)=="string")return _e("'"+Ze((t=>f(t,typeof t=="string","string","value","index.vel:360:49"))(e),"'","''")+"'");if(typeof(e??null)=="number"){if(!kn((t=>f(t,typeof t=="number","number","value","index.vel:362:16"))(e)))throw new W("SQLite numeric literals must be finite");if(!(!On((t=>f(t,typeof t=="number","number","value","index.vel:363:20"))(e))||(t=>f(t,typeof t=="number","number","value","index.vel:363:42"))(e)>=-9007199254740991&&(t=>f(t,typeof t=="number","number","value","index.vel:363:73"))(e)<=9007199254740991))throw new W("SQLite integer literals must be safe integers");return _e(String((t=>f(t,typeof t=="number","number","value","index.vel:364:31"))(e)))}throw new Error("SQLite literals support only null, bool, string, and finite number")}function Ka(e){if(!(!vn(e)&&bn(e)<=255&&!In(e,Ft(0))))throw new W("SQLite identifiers must be non-blank text with no NUL and no longer than 255 characters");return _e('"'+Ze(e,'"','""')+'"')}var bt=class{#e;constructor(t){this.#e=t;let n=this}async execute(t){let n=this,r=t.data();try{return await S(A(n.#e,"native").execute(r.fragments,r.parameters))}catch(i){throw i=b(i),i instanceof c?O((o=>f(o,w(o,c),"NativeSqliteError","error","index.vel:380:64"))(i)):new N(R(i,"message"))}}executor(){let t=this;async function n(o){return await S(t.execute(o))}async function r(o){let s=o.data();try{return U(await S(A(t.#e,"native").one(s.fragments,s.parameters)))}catch(a){throw a=b(a),a instanceof c?O((h=>f(h,w(h,c),"NativeSqliteError","error","index.vel:391:68"))(a)):new N(R(a,"message"))}}async function i(o){let s=o.data();try{return U(await S(A(t.#e,"native").all(s.fragments,s.parameters)))}catch(a){throw a=b(a),a instanceof c?O((h=>f(h,w(h,c),"NativeSqliteError","error","index.vel:398:68"))(a)):new N(R(a,"message"))}}return{execute:n,one:r,all:i}}async one(t,n){let r=this,i=t.data();try{let o=await S(A(r.#e,"native").one(i.fragments,i.parameters));return(o??null)===null?null:U(n.parse(o??null))}catch(o){throw o=b(o),o instanceof c?O((s=>f(s,w(s,c),"NativeSqliteError","error","index.vel:410:64"))(o)):new N(R(o,"message"))}}async all(t,n){let r=this,i=t.data();try{let o=await S(A(r.#e,"native").all(i.fragments,i.parameters));return U(Ve(o,s=>n.parse(s??null)))}catch(o){throw o=b(o),o instanceof c?O((s=>f(s,w(s,c),"NativeSqliteError","error","index.vel:419:64"))(o)):new N(R(o,"message"))}}},ke=class{#e;constructor(t){this.#e=t;let n=this}async execute(t){let n=this,r=t.data();try{return await S(A(n.#e,"native").execute(r.fragments,r.parameters))}catch(i){throw i=b(i),i instanceof c?O((o=>f(o,w(o,c),"NativeSqliteError","error","index.vel:429:64"))(i)):new N(R(i,"message"))}}executor(){let t=this;async function n(o){return await S(t.execute(o))}async function r(o){let s=o.data();try{return U(await S(A(t.#e,"native").one(s.fragments,s.parameters)))}catch(a){throw a=b(a),a instanceof c?O((h=>f(h,w(h,c),"NativeSqliteError","error","index.vel:440:68"))(a)):new N(R(a,"message"))}}async function i(o){let s=o.data();try{return U(await S(A(t.#e,"native").all(s.fragments,s.parameters)))}catch(a){throw a=b(a),a instanceof c?O((h=>f(h,w(h,c),"NativeSqliteError","error","index.vel:447:68"))(a)):new N(R(a,"message"))}}return{execute:n,one:r,all:i}}async one(t,n){let r=this,i=t.data();try{let o=await S(A(r.#e,"native").one(i.fragments,i.parameters));return(o??null)===null?null:U(n.parse(o??null))}catch(o){throw o=b(o),o instanceof c?O((s=>f(s,w(s,c),"NativeSqliteError","error","index.vel:459:64"))(o)):new N(R(o,"message"))}}async all(t,n){let r=this,i=t.data();try{let o=await S(A(r.#e,"native").all(i.fragments,i.parameters));return U(Ve(o,s=>n.parse(s??null)))}catch(o){throw o=b(o),o instanceof c?O((s=>f(s,w(s,c),"NativeSqliteError","error","index.vel:468:64"))(o)):new N(R(o,"message"))}}async transaction(t){let n=this,r=ae([]);async function i(o){return an(r,await S(t(new bt(o)))),null}try{if(await S(A(n.#e,"native").transaction(i)),on(r)!==1)throw new W("SQLite transaction did not return exactly one result");return U(sn(r,0))}catch(o){throw o=b(o),o instanceof c?O((s=>f(s,w(s,c),"NativeSqliteError","error","index.vel:479:64"))(o)):o}}async close(){let t=this;try{await S(A(t.#e,"native").close())}catch(n){throw n=b(n),n instanceof c?O((r=>f(r,w(r,c),"NativeSqliteError","error","index.vel:485:64"))(n)):new N(R(n,"message"))}return null}async"__velar:dispose"(){return await S(this.close()),null}};try{Object.defineProperty(ke.prototype["__velar:dispose"],"name",{value:"dispose",configurable:!0})}catch{}async function $a(e,t={}){try{return U(new ke(await S(y1(e,t,m1))))}catch(n){throw n=b(n),n instanceof c?O((r=>f(r,w(r,c),"NativeSqliteError","error","index.vel:493:60"))(n)):new N(R(n,"message"))}}export{Ct as SqliteBackpressureError,xt as SqliteConcurrencyError,ke as SqliteConnection,N as SqliteError,vt as SqliteJournalMode,ja as SqliteOptions,bt as SqliteTransaction,$a as openSqlite,Ka as sqliteIdentifier,Ya as sqliteLiteral};
|
|
2
|
+
//# sourceMappingURL=index.js.map
|