@sap/cds 5.6.3 → 5.6.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/lib/log/format/kibana.js +1 -1
- package/lib/ql/Whereable.js +1 -0
- package/libx/_runtime/cds-services/adapter/odata-v4/odata-to-cqn/readToCQN.js +5 -5
- package/libx/_runtime/cds-services/adapter/rest/rest-to-cqn/index.js +2 -2
- package/libx/_runtime/cds-services/services/utils/compareJson.js +1 -1
- package/libx/_runtime/common/generic/paging.js +2 -2
- package/libx/_runtime/db/generic/arrayed.js +3 -1
- package/libx/_runtime/db/sql-builder/ExpressionBuilder.js +2 -2
- package/libx/_runtime/fiori/uiflex/extensibility/index.js +3 -1
- package/libx/_runtime/fiori/uiflex/handler/transformRESULT.js +0 -4
- package/libx/odata/index.js +2 -1
- package/libx/odata/odata2cqn/afterburner.js +9 -1
- package/libx/odata/odata2cqn/grammar.pegjs +30 -7
- package/libx/odata/odata2cqn/parser.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,17 @@
|
|
|
4
4
|
- The format is based on [Keep a Changelog](http://keepachangelog.com/).
|
|
5
5
|
- This project adheres to [Semantic Versioning](http://semver.org/).
|
|
6
6
|
|
|
7
|
+
## Version 5.6.4 - 2021-11-23
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- Preserve log level in Kibana formatter
|
|
12
|
+
- RFC 3986 compliant segment recognition in beta URL to CQN parser (`cds.env.features.odata_new_parser`)
|
|
13
|
+
- Support for `$skiptoken` OData query option when using beta URL to CQN parser (`cds.env.features.odata_new_parser`)
|
|
14
|
+
- OData requests with `$skip` and without `$top` query option to services with defined default limit (`cds.query.limit.default`)
|
|
15
|
+
- Creating entities with binary keys. Currently the binary keys may be provided only as Node.js `Buffer` instances using a custom handler.
|
|
16
|
+
- Requests with payload containing nested arrayed elements no longer crash the application
|
|
17
|
+
|
|
7
18
|
## Version 5.6.3 - 2021-11-15
|
|
8
19
|
|
|
9
20
|
### Fixed
|
package/lib/log/format/kibana.js
CHANGED
|
@@ -35,7 +35,7 @@ module.exports = (module, level, ...args) => {
|
|
|
35
35
|
const err = args.shift()
|
|
36
36
|
toLog.msg = err.message
|
|
37
37
|
if (err instanceof Error) toLog.stacktrace = err.stack.split(/\s*\r?\n\s*/)
|
|
38
|
-
Object.assign(toLog, err)
|
|
38
|
+
Object.assign(toLog, err, { level: toLog.level })
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
// append remaining args via util.format()
|
package/lib/ql/Whereable.js
CHANGED
|
@@ -77,6 +77,7 @@ const _object_predicate = ([arg], _clause) => { // e.g. .where ({ID:4711, stock:
|
|
|
77
77
|
else if (x.SELECT || x.list) pred.push('in', x)
|
|
78
78
|
else if (is_array(x)) pred.push('in', {list:x.map(val)})
|
|
79
79
|
else if (is_cqn(x)) pred.push('=', x)
|
|
80
|
+
else if (x instanceof Buffer) pred.push('=', {val:x})
|
|
80
81
|
else if (x instanceof RegExp) pred.push('like', {val:x})
|
|
81
82
|
else if (typeof x === 'object') for (let op in x) pred.push(op, val(x[op]))
|
|
82
83
|
else if (_clause === 'on' && typeof x === 'string') pred.push('=', { ref: x.split('.') })
|
|
@@ -14,7 +14,7 @@ const { _expand } = require('../utils/handlerUtils')
|
|
|
14
14
|
const { resolveStructuredName } = require('../utils/handlerUtils')
|
|
15
15
|
const { isStreaming } = require('../utils/stream')
|
|
16
16
|
const { convertUrlPathToCqn, getAllKeys } = require('./utils')
|
|
17
|
-
const { getMaxPageSize } = require('../../../../common/utils/page')
|
|
17
|
+
const { getMaxPageSize, getDefaultPageSize } = require('../../../../common/utils/page')
|
|
18
18
|
const { isAsteriskColumn } = require('../../../../common/utils/rewriteAsterisks')
|
|
19
19
|
|
|
20
20
|
const {
|
|
@@ -137,11 +137,11 @@ const _apply = (uriInfo, queryOptions, entity, model) => {
|
|
|
137
137
|
return {}
|
|
138
138
|
}
|
|
139
139
|
|
|
140
|
-
const _topSkip = (queryOptions,
|
|
140
|
+
const _topSkip = (queryOptions, target, cqn) => {
|
|
141
141
|
if (queryOptions && (queryOptions.$top || queryOptions.$skip || queryOptions.$skiptoken)) {
|
|
142
|
-
const top = queryOptions.$top ? parseInt(queryOptions.$top) :
|
|
142
|
+
const top = queryOptions.$top ? parseInt(queryOptions.$top) : getDefaultPageSize(target)
|
|
143
143
|
const skip = parseInt(queryOptions.$skip || 0) + parseInt(queryOptions.$skiptoken || 0)
|
|
144
|
-
cqn.limit(Math.min(top,
|
|
144
|
+
cqn.limit(Math.min(top, getMaxPageSize(target)), skip)
|
|
145
145
|
}
|
|
146
146
|
}
|
|
147
147
|
|
|
@@ -400,7 +400,7 @@ const readToCQN = (service, target, odataReq) => {
|
|
|
400
400
|
}
|
|
401
401
|
|
|
402
402
|
if (isCollectionOrToMany) {
|
|
403
|
-
_topSkip(queryOptions,
|
|
403
|
+
_topSkip(queryOptions, target, cqn)
|
|
404
404
|
_orderby(uriInfo, cqn)
|
|
405
405
|
}
|
|
406
406
|
|
|
@@ -4,7 +4,7 @@ const { INSERT, SELECT, UPDATE, DELETE } = cds.ql
|
|
|
4
4
|
|
|
5
5
|
const { createCqlString } = require('./utils')
|
|
6
6
|
const { getColumns } = require('../../../services/utils/columns')
|
|
7
|
-
const { getMaxPageSize } = require('../../../../common/utils/page')
|
|
7
|
+
const { getMaxPageSize, getDefaultPageSize } = require('../../../../common/utils/page')
|
|
8
8
|
|
|
9
9
|
const _readToCQN = ({ isCollection, segments }, target, restReq) => {
|
|
10
10
|
const key = Object.keys(target.keys)[0]
|
|
@@ -20,7 +20,7 @@ const _readToCQN = ({ isCollection, segments }, target, restReq) => {
|
|
|
20
20
|
if (!isCollection) cqn.SELECT.one = true
|
|
21
21
|
|
|
22
22
|
if (isCollection && (restReq.query.$top || restReq.query.$skip)) {
|
|
23
|
-
const top = restReq.query.$top ? parseInt(restReq.query.$top) :
|
|
23
|
+
const top = restReq.query.$top ? parseInt(restReq.query.$top) : getDefaultPageSize(target)
|
|
24
24
|
cqn.limit(Math.min(top, getMaxPageSize(target)), parseInt(restReq.query.$skip) || 0)
|
|
25
25
|
}
|
|
26
26
|
|
|
@@ -268,7 +268,7 @@ const compareJson = (newValue, oldValue, entity) => {
|
|
|
268
268
|
return Array.isArray(newValue) ? result : result[0]
|
|
269
269
|
}
|
|
270
270
|
|
|
271
|
-
const _isObject = item => item && typeof item === 'object' && !Array.isArray(item)
|
|
271
|
+
const _isObject = item => item && typeof item === 'object' && !Array.isArray(item) && !Buffer.isBuffer(item)
|
|
272
272
|
|
|
273
273
|
const _mergeArrays = (entity, oldValue, newValue) => {
|
|
274
274
|
const merged = []
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const cds = require('../../cds')
|
|
2
|
-
const { getDefaultPageSize } = require('../utils/page')
|
|
2
|
+
const { getDefaultPageSize, getMaxPageSize } = require('../utils/page')
|
|
3
3
|
|
|
4
4
|
const _handler = function (req) {
|
|
5
5
|
// only if http request
|
|
@@ -11,7 +11,7 @@ const _handler = function (req) {
|
|
|
11
11
|
let { rows, offset } = req.query.SELECT.limit || {}
|
|
12
12
|
rows = rows && 'val' in rows ? rows.val : getDefaultPageSize(req.target)
|
|
13
13
|
offset = offset && 'val' in offset ? offset.val : 0
|
|
14
|
-
req.query.limit(...[rows, offset])
|
|
14
|
+
req.query.limit(...[Math.min(rows, getMaxPageSize(req.target)), offset])
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
/**
|
|
@@ -7,7 +7,9 @@ const _pick = element => {
|
|
|
7
7
|
}
|
|
8
8
|
|
|
9
9
|
const _processFn = ({ row, key, plain }) => {
|
|
10
|
-
if (plain === 'arrayed' && row && row[key]
|
|
10
|
+
if (plain === 'arrayed' && row && row[key] && (typeof row[key] === 'string' || Buffer.isBuffer(row[key]))) {
|
|
11
|
+
row[key] = JSON.parse(row[key])
|
|
12
|
+
}
|
|
11
13
|
}
|
|
12
14
|
|
|
13
15
|
/**
|
|
@@ -87,11 +87,11 @@ class ExpressionBuilder extends BaseBuilder {
|
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
_isStructured(op1, comp, op2) {
|
|
90
|
-
if (op1.ref && comp === '=' && op2.val && typeof op2.val === 'object') {
|
|
90
|
+
if (op1.ref && comp === '=' && op2.val && typeof op2.val === 'object' && !(op2.val instanceof Buffer)) {
|
|
91
91
|
return true
|
|
92
92
|
}
|
|
93
93
|
// also check reverse
|
|
94
|
-
if (op1.val && typeof op1.val === 'object' && comp === '=' && op2.ref) {
|
|
94
|
+
if (op1.val && typeof op1.val === 'object' && comp === '=' && op2.ref && !(op1.val instanceof Buffer)) {
|
|
95
95
|
return true
|
|
96
96
|
}
|
|
97
97
|
|
|
@@ -55,13 +55,15 @@ const _addViews = csn => {
|
|
|
55
55
|
})
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
+
const _needsQuotations = t => t instanceof cds.builtin.classes.string || t instanceof cds.builtin.classes.date
|
|
59
|
+
|
|
58
60
|
const _handleDefaults = async (extension, dbEntity, req, cds, draftEntity) => {
|
|
59
61
|
const ext = Object.keys(extension.elements)
|
|
60
62
|
.filter(key => extension.elements[key].default)
|
|
61
63
|
.map(key => {
|
|
62
64
|
const element = extension.elements[key]
|
|
63
65
|
const t = cds.model.definitions[element.type] || cds.builtin.types[element.type]
|
|
64
|
-
const value = t && t
|
|
66
|
+
const value = t && _needsQuotations(t) ? `"${element.default.val}"` : element.default.val
|
|
65
67
|
return `"${key}":${value}`
|
|
66
68
|
})
|
|
67
69
|
|
package/libx/odata/index.js
CHANGED
|
@@ -39,6 +39,7 @@ module.exports = {
|
|
|
39
39
|
if (url.url) url = url.url
|
|
40
40
|
// REVISIT: for okra, remove when no longer needed
|
|
41
41
|
else if (url.getIncomingRequest) url = url.getIncomingRequest().url
|
|
42
|
+
|
|
42
43
|
url = decodeURIComponent(url)
|
|
43
44
|
|
|
44
45
|
options = options === 'strict' ? { strict } : options.strict ? { ...options, strict } : options
|
|
@@ -63,7 +64,7 @@ module.exports = {
|
|
|
63
64
|
throw err
|
|
64
65
|
}
|
|
65
66
|
|
|
66
|
-
if (
|
|
67
|
+
if (options.afterburner) cqn = options.afterburner(cqn)
|
|
67
68
|
|
|
68
69
|
const query = cqn.SELECT.one ? SELECT.one(cqn.SELECT.from) : SELECT.from(cqn.SELECT.from)
|
|
69
70
|
Object.assign(query.SELECT, cqn.SELECT)
|
|
@@ -59,7 +59,15 @@ function _processSegments(cqn, model) {
|
|
|
59
59
|
let base = ref[i - keyCount]
|
|
60
60
|
if (!base.id) base = { id: base, where: [] }
|
|
61
61
|
if (base.where.length) base.where.push('and')
|
|
62
|
-
|
|
62
|
+
if (ref[i].id) {
|
|
63
|
+
// > fix case key value parsed to collection with filter
|
|
64
|
+
const val = `${ref[i].id}(${Object.keys(params)
|
|
65
|
+
.map(k => `${k}='${params[k]}'`)
|
|
66
|
+
.join(',')})`
|
|
67
|
+
base.where.push({ ref: [key] }, '=', { val })
|
|
68
|
+
} else {
|
|
69
|
+
base.where.push({ ref: [key] }, '=', { val: element.type === 'cds.Integer' ? Number(seg) : seg })
|
|
70
|
+
}
|
|
63
71
|
ref[i] = null
|
|
64
72
|
ref[i - keyCount] = base
|
|
65
73
|
incompleteKeys = keyCount < keys.length
|
|
@@ -115,6 +115,22 @@
|
|
|
115
115
|
const _compareRefs = col => exp => col === exp ||
|
|
116
116
|
(col.as && exp.as && col.as === exp.as) ||
|
|
117
117
|
(col.ref && exp.ref && col.ref.join('') === exp.ref.join(''))
|
|
118
|
+
|
|
119
|
+
const _getMergedPath = (head, filter, segment) => {
|
|
120
|
+
if (!head) head = ''
|
|
121
|
+
if (filter) {
|
|
122
|
+
head += filter.reduce((acc, cur) => {
|
|
123
|
+
for (const c of cur) {
|
|
124
|
+
if (typeof c === 'string') acc += c
|
|
125
|
+
else acc += c.val ? typeof c.val === 'string' ? `'${c.val}'` : c.val : c.ref[0]
|
|
126
|
+
}
|
|
127
|
+
return acc
|
|
128
|
+
}, '')
|
|
129
|
+
filter = undefined
|
|
130
|
+
}
|
|
131
|
+
head += segment
|
|
132
|
+
return [head, filter, segment]
|
|
133
|
+
}
|
|
118
134
|
}
|
|
119
135
|
|
|
120
136
|
// ---------- Entity Paths ---------------
|
|
@@ -149,7 +165,9 @@
|
|
|
149
165
|
path
|
|
150
166
|
= "$count" {count = true}
|
|
151
167
|
/ rv:$("$ref"/"$value") {return !TECHNICAL_OPTS.includes(rv) && {from: {ref: [rv]}}}
|
|
152
|
-
/ head:(identifier/val) filter:(OPEN CLOSE/OPEN args CLOSE)? tail:( '/' p:path {return p} )? {
|
|
168
|
+
/ head:(identifier/val)? filter:(OPEN CLOSE/OPEN args CLOSE)? segment:(segment)? tail:( '/' p:path {return p} )? {
|
|
169
|
+
// OData vs. REST style
|
|
170
|
+
if (segment) [head, filter, segment] = _getMergedPath(head, filter, segment)
|
|
153
171
|
// minimal: val also as path segment
|
|
154
172
|
const ref = [
|
|
155
173
|
filter
|
|
@@ -187,6 +205,7 @@
|
|
|
187
205
|
"$orderby=" o orderby ( COMMA orderby )* /
|
|
188
206
|
"$top=" o top /
|
|
189
207
|
"$skip=" o skip /
|
|
208
|
+
"$skiptoken=" o skip /
|
|
190
209
|
"$search=" o search /
|
|
191
210
|
"$count=" o count /
|
|
192
211
|
"$apply=" o apply /
|
|
@@ -241,6 +260,9 @@
|
|
|
241
260
|
|
|
242
261
|
skip
|
|
243
262
|
= val:integer {
|
|
263
|
+
if (SELECT.limit && SELECT.limit.offset && SELECT.limit.offset.val) {
|
|
264
|
+
val += SELECT.limit.offset.val
|
|
265
|
+
}
|
|
244
266
|
(SELECT.limit || (SELECT.limit={})).offset = {val}
|
|
245
267
|
}
|
|
246
268
|
|
|
@@ -506,18 +528,19 @@
|
|
|
506
528
|
)?)
|
|
507
529
|
|
|
508
530
|
number
|
|
509
|
-
= s:$( [+-]? [0-9]+ ("."[0-9]+)? ("e"[0-9]+)? )
|
|
510
|
-
{return safeNumber(s)}
|
|
531
|
+
= s:$( [+-]? [0-9]+ ("."[0-9]+)? ("e"[0-9]+)? ) {return safeNumber(s)}
|
|
511
532
|
|
|
512
533
|
integer
|
|
513
|
-
= s:$( [+-]? [0-9]+ )
|
|
514
|
-
{return parseInt(s)}
|
|
534
|
+
= s:$( [+-]? [0-9]+ ) {return parseInt(s)}
|
|
515
535
|
|
|
516
536
|
identifier
|
|
517
537
|
= !bool !guid s:$([_a-zA-Z][_a-zA-Z0-9"."]*) {return s}
|
|
518
538
|
|
|
519
|
-
guid
|
|
520
|
-
{return {val}}
|
|
539
|
+
guid
|
|
540
|
+
= val:$([0-9a-zA-Z]+ "-" ([0-9a-zA-Z]+ "-"?)+) {return {val}}
|
|
541
|
+
|
|
542
|
+
segment
|
|
543
|
+
= s:$([a-zA-Z0-9-"."_~!$&'()*+,;=:@]+)
|
|
521
544
|
|
|
522
545
|
//
|
|
523
546
|
// ---------- Punctuation ----------
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function peg$subclass(t,r){function e(){this.constructor=t}e.prototype=r.prototype,t.prototype=new e}function peg$SyntaxError(t,r,e,n){this.message=t,this.expected=r,this.found=e,this.location=n,this.name="SyntaxError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,peg$SyntaxError)}function peg$parse(t,r){r=void 0!==r?r:{};var e,n={},s={ODataRelativeURI:we},u=we,a="/",c=ve("/",!1),o=ve("?",!1),i=ve("&",!1),f="$count",l=ve("$count",!1),h="$ref",p=ve("$ref",!1),A="$value",d=ve("$value",!1),g=ve("=",!1),v="$select=",b=ve("$select=",!1),m="$expand=",x=ve("$expand=",!1),C="$filter=",y=ve("$filter=",!1),$="$orderby=",w=ve("$orderby=",!1),E="$top=",S=ve("$top=",!1),z="$skip=",Z=ve("$skip=",!1),j="$search=",O=ve("$search=",!1),B="$count=",R=ve("$count=",!1),F="$apply=",T=ve("$apply=",!1),L=ve("*",!1),N=ve(";",!1),k=function(t){return t?[t]:[]},q=function(t,r){t.push({xpr:r})},I=function(t,r){t.push({val:r})},_=function(t,r,e){t.push(r,...e)},D=function(t,r){t.push(r)},U=function(t,r,e){t.push(r,...e)},M=":",P=ve(":",!1),J="any",G=ve("any",!1),H="all",K=ve("all",!1),Q=ve("asc",!1),V="desc",W=ve("desc",!1),X=/^[a-zA-Z]/,Y=be([["a","z"],["A","Z"]],!1,!1),tt=/^[a-zA-Z0-9\-]/,rt=be([["a","z"],["A","Z"],["0","9"],"-"],!1,!1),et=/^[^&]/,nt=be(["&"],!0,!1),st=me("a comparison"),ut=ve("eq",!1),at=ve("ne",!1),ct=ve("lt",!1),ot=ve("gt",!1),it=ve("le",!1),ft=ve("ge",!1),lt=(ve("add",!1),ve("sub",!1),ve("mul",!1),ve("div",!1),ve("mod",!1),me("an operand")),ht=me("a reference"),pt=function(t,r){return r},At=function(t){return{val:t}},dt=ve("{",!1),gt=/^[^}]/,vt=be(["}"],!0,!1),bt=ve("}",!1),mt="[",xt=ve("[",!1),Ct="]",yt=ve("]",!1),$t=/^[^\]]/,wt=be(["]"],!0,!1),Et=me("a function call"),St=/^[a-z]/,zt=be([["a","z"]],!1,!1),Zt=function(t,r,e){return e},jt=me("a boolean function"),Ot="contains",Bt=ve("contains",!1),Rt="endswith",Ft=ve("endswith",!1),Tt="startswith",Lt=ve("startswith",!1),Nt=ve("NOT",!0),kt=ve("AND",!0),qt=ve("OR",!0),It="aggregate",_t=ve("aggregate",!1),Dt="groupby",Ut=ve("groupby",!1),Mt="filter",Pt=ve("filter",!1),Jt="expand",Gt=ve("expand",!1),Ht="search",Kt=ve("search",!1),Qt="concat",Vt=ve("concat",!1),Wt="compute",Xt=ve("compute",!1),Yt="bottompercent",tr=ve("bottompercent",!1),rr="bottomsum",er=ve("bottomsum",!1),nr="toppercent",sr=ve("toppercent",!1),ur="topsum",ar=ve("topsum",!1),cr="with",or=ve("with",!1),ir="from",fr=ve("from",!1),lr=ve("as",!1),hr="rollup",pr=ve("rollup",!1),Ar="$all",dr=ve("$all",!1),gr="topcount",vr=ve("topcount",!1),br="bottomcount",mr=ve("bottomcount",!1),xr="identity",Cr=ve("identity",!1),yr="true",$r=ve("true",!1),wr="false",Er=ve("false",!1),Sr=me("Edm.String"),zr=ve("'",!1),Zr="''",jr=ve("''",!1),Or=/^[^']/,Br=be(["'"],!0,!1),Rr='"',Fr=ve('"',!1),Tr='\\"',Lr=ve('\\"',!1),Nr=/^[^"]/,kr=be(['"'],!0,!1),qr=/^[a-zA-Z0-9.+\-]/,Ir=be([["a","z"],["A","Z"],["0","9"],".","+","-"],!1,!1),_r=/^[0-9]/,Dr=be([["0","9"]],!1,!1),Ur="-",Mr=ve("-",!1),Pr=ve("T",!1),Jr=ve(".",!1),Gr=ve("Z",!1),Hr=ve("+",!1),Kr=/^[+\-]/,Qr=be(["+","-"],!1,!1),Vr=ve("e",!1),Wr=/^[_a-zA-Z]/,Xr=be(["_",["a","z"],["A","Z"]],!1,!1),Yr=/^[_a-zA-Z0-9"."]/,te=be(["_",["a","z"],["A","Z"],["0","9"],'"',".",'"'],!1,!1),re=/^[0-9a-zA-Z]/,ee=be([["0","9"],["a","z"],["A","Z"]],!1,!1),ne=ve(",",!1),se=ve("(",!1),ue=ve(")",!1),ae=me("optional whitespaces"),ce=/^[ \t\n]/,oe=be([" ","\t","\n"],!1,!1),ie=me("mandatory whitespaces"),fe=0,le=0,he=[{line:1,column:1}],pe=0,Ae=[],de=0;if("startRule"in r){if(!(r.startRule in s))throw new Error("Can't start parsing from rule \""+r.startRule+'".');u=s[r.startRule]}function ge(t,r){throw function(t,r){return new peg$SyntaxError(t,null,null,r)}(t,r=void 0!==r?r:Ce(le,fe))}function ve(t,r){return{type:"literal",text:t,ignoreCase:r}}function be(t,r,e){return{type:"class",parts:t,inverted:r,ignoreCase:e}}function me(t){return{type:"other",description:t}}function xe(r){var e,n=he[r];if(n)return n;for(e=r-1;!he[e];)e--;for(n={line:(n=he[e]).line,column:n.column};e<r;)10===t.charCodeAt(e)?(n.line++,n.column=1):n.column++,e++;return he[r]=n,n}function Ce(t,r){var e=xe(t),n=xe(r);return{start:{offset:t,line:e.line,column:e.column},end:{offset:r,line:n.line,column:n.column}}}function ye(t){fe<pe||(fe>pe&&(pe=fe,Ae=[]),Ae.push(t))}function $e(t,r,e){return new peg$SyntaxError(peg$SyntaxError.buildMessage(t,r),t,r,e)}function we(){var r,e,s,u,f,l,h,p,A,d,g,v,b,m;if(r=fe,47===t.charCodeAt(fe)?(e=a,fe++):(e=n,0===de&&ye(c)),e===n&&(e=null),e!==n)if(s=fe,(u=Ee())!==n&&(le=s,u=void(En=u)),(s=u)!==n){if(u=fe,(f=bn())!==n)if(63===t.charCodeAt(fe)?(l="?",fe++):(l=n,0===de&&ye(o)),l!==n)if((h=bn())!==n)if((p=ze())!==n){for(A=[],d=fe,(g=bn())!==n?(38===t.charCodeAt(fe)?(v="&",fe++):(v=n,0===de&&ye(i)),v!==n&&(b=bn())!==n&&(m=ze())!==n?d=g=[g,v,b,m]:(fe=d,d=n)):(fe=d,d=n);d!==n;)A.push(d),d=fe,(g=bn())!==n?(38===t.charCodeAt(fe)?(v="&",fe++):(v=n,0===de&&ye(i)),v!==n&&(b=bn())!==n&&(m=ze())!==n?d=g=[g,v,b,m]:(fe=d,d=n)):(fe=d,d=n);A!==n?u=f=[f,l,h,p,A]:(fe=u,u=n)}else fe=u,u=n;else fe=u,u=n;else fe=u,u=n;else fe=u,u=n;u===n&&(u=null),u!==n&&(f=bn())!==n?(le=r,r=e=function(){if(Sn)return En.columns=[{args:[{val:1}],as:"$count",func:"count"}],delete En.expand,delete En.limit,delete En.orderBy,{SELECT:En};if(En.expand){En.columns||(En.columns=["*"]);for(const t of En.expand){const r=En.columns.findIndex(Bn(t));r>-1&&En.columns.splice(r,1),En.columns.push(t)}delete En.expand}return En=On(En),{SELECT:En}}()):(fe=r,r=n)}else fe=r,r=n;else fe=r,r=n;return r}function Ee(){var r,e,s,u,o,i,g;return r=fe,t.substr(fe,6)===f?(e=f,fe+=6):(e=n,0===de&&ye(l)),e!==n&&(le=r,e=void(Sn=!0)),(r=e)===n&&(r=fe,e=fe,t.substr(fe,4)===h?(s=h,fe+=4):(s=n,0===de&&ye(p)),s===n&&(t.substr(fe,6)===A?(s=A,fe+=6):(s=n,0===de&&ye(d))),(e=s!==n?t.substring(e,fe):s)!==n&&(le=r,g=e,e=!zn.includes(g)&&{from:{ref:[g]}}),(r=e)===n&&(r=fe,(e=pn())===n&&(e=Ue()),e!==n?(s=fe,(u=gn())!==n&&(o=vn())!==n?s=u=[u,o]:(fe=s,s=n),s===n&&(s=fe,(u=gn())!==n&&(o=Se())!==n&&(i=vn())!==n?s=u=[u,o,i]:(fe=s,s=n)),s===n&&(s=null),s!==n?(u=fe,47===t.charCodeAt(fe)?(o=a,fe++):(o=n,0===de&&ye(c)),o!==n&&(i=Ee())!==n?(le=u,u=o=i):(fe=u,u=n),u===n&&(u=null),u!==n?(le=r,r=e=function(t,r,e){const n=[r?r.length>2?{id:t,where:r[1].map((t=>t.val&&t.val.match&&t.val.match(/^"(.*)"$/)?{val:t.val.match(/^"(.*)"$/)[1]}:t))}:{id:t,where:[]}:$n?`${Object.prototype.hasOwnProperty.call(t,"val")?t.val:t}`:t];if(e&&e.from){const t=e.from.ref;Object.prototype.hasOwnProperty.call(t[0],"val")&&(n[n.length-1]={id:n[n.length-1],where:[t.shift()]}),n.push(...t)}const s={from:{ref:n}};return e&&e.columns&&(s.columns=e.columns),s}(e,s,u)):(fe=r,r=n)):(fe=r,r=n)):(fe=r,r=n))),r}function Se(){var r,e,s,u,a,c,o;return r=fe,(e=Ue())!==n&&(le=r,e=[e]),(r=e)===n&&(r=fe,(e=De())!==n&&bn()!==n?(61===t.charCodeAt(fe)?(s="=",fe++):(s=n,0===de&&ye(g)),s!==n&&bn()!==n?((u=Ue())===n&&(u=fe,(a=fn())!==n&&(le=u,a={val:a}),u=a),u!==n?(a=fe,(c=dn())!==n&&(o=Se())!==n?a=c=[c,o]:(fe=a,a=n),a===n&&(a=null),a!==n?(le=r,e=function(t,r,e){const n=[t,"=",r];return e&&n.push("and",...e[1]),n}(e,u,a),r=e):(fe=r,r=n)):(fe=r,r=n)):(fe=r,r=n)):(fe=r,r=n)),r}function ze(){var r,e,s,u,a,c,o,i;if(r=fe,t.substr(fe,8)===v?(e=v,fe+=8):(e=n,0===de&&ye(b)),e!==n)if((s=bn())!==n)if((u=Ze())!==n){for(a=[],c=fe,(o=dn())!==n&&(i=Ze())!==n?c=o=[o,i]:(fe=c,c=n);c!==n;)a.push(c),c=fe,(o=dn())!==n&&(i=Ze())!==n?c=o=[o,i]:(fe=c,c=n);a!==n?r=e=[e,s,u,a]:(fe=r,r=n)}else fe=r,r=n;else fe=r,r=n;else fe=r,r=n;if(r===n){if(r=fe,t.substr(fe,8)===m?(e=m,fe+=8):(e=n,0===de&&ye(x)),e!==n)if((s=bn())!==n)if((u=je())!==n){for(a=[],c=fe,(o=dn())!==n&&(i=je())!==n?c=o=[o,i]:(fe=c,c=n);c!==n;)a.push(c),c=fe,(o=dn())!==n&&(i=je())!==n?c=o=[o,i]:(fe=c,c=n);a!==n?r=e=[e,s,u,a]:(fe=r,r=n)}else fe=r,r=n;else fe=r,r=n;else fe=r,r=n;if(r===n&&(r=fe,t.substr(fe,8)===C?(e=C,fe+=8):(e=n,0===de&&ye(y)),e!==n&&(s=bn())!==n&&(u=Re())!==n?r=e=[e,s,u]:(fe=r,r=n),r===n)){if(r=fe,t.substr(fe,9)===$?(e=$,fe+=9):(e=n,0===de&&ye(w)),e!==n)if((s=bn())!==n)if((u=ke())!==n){for(a=[],c=fe,(o=dn())!==n&&(i=ke())!==n?c=o=[o,i]:(fe=c,c=n);c!==n;)a.push(c),c=fe,(o=dn())!==n&&(i=ke())!==n?c=o=[o,i]:(fe=c,c=n);a!==n?r=e=[e,s,u,a]:(fe=r,r=n)}else fe=r,r=n;else fe=r,r=n;else fe=r,r=n;r===n&&(r=fe,t.substr(fe,5)===E?(e=E,fe+=5):(e=n,0===de&&ye(S)),e!==n&&(s=bn())!==n?(u=function(){var t,r;t=fe,(r=hn())!==n&&(le=t,e=r,r=void((En.limit||(En.limit={})).rows={val:e}));var e;return t=r}(),u!==n?r=e=[e,s,u]:(fe=r,r=n)):(fe=r,r=n),r===n&&(r=fe,t.substr(fe,6)===z?(e=z,fe+=6):(e=n,0===de&&ye(Z)),e!==n&&(s=bn())!==n?(u=function(){var t,r;t=fe,(r=hn())!==n&&(le=t,e=r,r=void((En.limit||(En.limit={})).offset={val:e}));var e;return t=r}(),u!==n?r=e=[e,s,u]:(fe=r,r=n)):(fe=r,r=n),r===n&&(r=fe,t.substr(fe,8)===j?(e=j,fe+=8):(e=n,0===de&&ye(O)),e!==n&&(s=bn())!==n&&(u=Oe())!==n?r=e=[e,s,u]:(fe=r,r=n),r===n&&(r=fe,t.substr(fe,7)===B?(e=B,fe+=7):(e=n,0===de&&ye(R)),e!==n&&(s=bn())!==n?(u=function(){var t,r;t=fe,(r=cn())!==n&&(le=t,r=void(r&&(En.count=!0)));return t=r}(),u!==n?r=e=[e,s,u]:(fe=r,r=n)):(fe=r,r=n),r===n&&(r=fe,t.substr(fe,7)===F?(e=F,fe+=7):(e=n,0===de&&ye(T)),e!==n&&(s=bn())!==n&&(u=qe())!==n?r=e=[e,s,u]:(fe=r,r=n),r===n&&(r=function(){var r,e,s,u,a,c;r=fe,X.test(t.charAt(fe))?(e=t.charAt(fe),fe++):(e=n,0===de&&ye(Y));if(e!==n){for(s=[],tt.test(t.charAt(fe))?(u=t.charAt(fe),fe++):(u=n,0===de&&ye(rt));u!==n;)s.push(u),tt.test(t.charAt(fe))?(u=t.charAt(fe),fe++):(u=n,0===de&&ye(rt));if(s!==n)if(61===t.charCodeAt(fe)?(u="=",fe++):(u=n,0===de&&ye(g)),u!==n){for(a=[],et.test(t.charAt(fe))?(c=t.charAt(fe),fe++):(c=n,0===de&&ye(nt));c!==n;)a.push(c),et.test(t.charAt(fe))?(c=t.charAt(fe),fe++):(c=n,0===de&&ye(nt));a!==n?r=e=[e,s,u,a]:(fe=r,r=n)}else fe=r,r=n;else fe=r,r=n}else fe=r,r=n;return r}()))))))}}return r}function Ze(){var r,e,s;return r=fe,42===t.charCodeAt(fe)?(e="*",fe++):(e=n,0===de&&ye(L)),e===n&&(e=De()),e!==n&&(le=r,s=e,En.columns=Array.isArray(En.columns)?En.columns:[],En.columns.find(Bn(s))||En.columns.push(s),e=s),r=e}function je(){var r,e,s,u,a,c,o,i,f,l,h;if(r=fe,e=fe,42===t.charCodeAt(fe)?(s="*",fe++):(s=n,0===de&&ye(L)),s===n&&(s=De()),s!==n&&(le=e,s=function(t){const r="*"===t?{}:t;return r.expand="*",Array.isArray(En.expand)||(En.expand=[]),En.expand.find(Bn(r))||En.expand.push(r),r}(s)),(e=s)!==n){if(s=fe,u=fe,(a=gn())!==n&&(le=u,wn.push(En),En=En.expand[En.expand.length-1],a=void(En.expand="*")),(u=a)!==n){for(a=fe,c=[],o=fe,(i=bn())!==n?(59===t.charCodeAt(fe)?(f=";",fe++):(f=n,0===de&&ye(N)),f===n&&(f=null),f!==n&&(l=bn())!==n&&(h=ze())!==n?o=i=[i,f,l,h]:(fe=o,o=n)):(fe=o,o=n);o!==n;)c.push(o),o=fe,(i=bn())!==n?(59===t.charCodeAt(fe)?(f=";",fe++):(f=n,0===de&&ye(N)),f===n&&(f=null),f!==n&&(l=bn())!==n&&(h=ze())!==n?o=i=[i,f,l,h]:(fe=o,o=n)):(fe=o,o=n);c!==n&&(le=a,c=function(t){if(En.columns){"*"===En.expand&&(En.expand=[]);for(const t of En.columns)En.expand.find(Bn(t))||En.expand.push(t);delete En.columns}else Array.isArray(En.expand)&&-1===En.expand.indexOf("*")&&En.expand.unshift("*")}()),(a=c)!==n?(c=fe,(o=vn())!==n&&(le=c,o=void(En=wn.pop())),(c=o)!==n?s=u=[u,a,c]:(fe=s,s=n)):(fe=s,s=n)}else fe=s,s=n;s===n&&(s=null),s!==n?(u=fe,(a=dn())!==n&&(c=je())!==n?u=a=[a,c]:(fe=u,u=n),u===n&&(u=null),u!==n?r=e=[e,s,u]:(fe=r,r=n)):(fe=r,r=n)}else fe=r,r=n;return r}function Oe(){var t,r,e;return t=fe,(r=Be())!==n&&(le=t,e=r,r=void(En.search=e)),t=r}function Be(){var r,e,s,u,a,c,o;if(r=fe,e=fe,(s=Ge())===n&&(s=null),s!==n&&(le=e,s=k(s)),(e=s)!==n)if(s=fe,(u=gn())!==n&&(a=Be())!==n&&(c=vn())!==n?(le=s,s=u=q(e,a)):(fe=s,s=n),s===n&&(s=fe,u=function(){var r,e,s,u,a;r=fe,34===t.charCodeAt(fe)?(e=Rr,fe++):(e=n,0===de&&ye(Fr));if(e!==n){for(s=fe,u=[],t.substr(fe,2)===Tr?(a=Tr,fe+=2):(a=n,0===de&&ye(Lr)),a===n&&(Nr.test(t.charAt(fe))?(a=t.charAt(fe),fe++):(a=n,0===de&&ye(kr)));a!==n;)u.push(a),t.substr(fe,2)===Tr?(a=Tr,fe+=2):(a=n,0===de&&ye(Lr)),a===n&&(Nr.test(t.charAt(fe))?(a=t.charAt(fe),fe++):(a=n,0===de&&ye(kr)));(s=u!==n?t.substring(s,fe):u)!==n?(34===t.charCodeAt(fe)?(u=Rr,fe++):(u=n,0===de&&ye(Fr)),u!==n?(le=r,r=e=s.replace(/\\\\/g,"\\").replace(/\\"/g,'"')):(fe=r,r=n)):(fe=r,r=n)}else fe=r,r=n;return r}(),u!==n&&(le=s,u=I(e,u)),(s=u)===n&&(s=fe,(u=on())!==n&&(le=s,u=I(e,u)),(s=u)===n&&(s=fe,(u=fn())!==n&&(le=s,u=I(e,u)),s=u))),s!==n){for(u=[],a=fe,(c=He())===n&&(c=Qe())===n&&(c=Ke()),c!==n&&(o=Be())!==n?(le=a,a=c=_(e,c,o)):(fe=a,a=n);a!==n;)u.push(a),a=fe,(c=He())===n&&(c=Qe())===n&&(c=Ke()),c!==n&&(o=Be())!==n?(le=a,a=c=_(e,c,o)):(fe=a,a=n);u!==n?(le=r,r=e=e):(fe=r,r=n)}else fe=r,r=n;else fe=r,r=n;return r}function Re(){var t,r,e;return t=fe,(r=Fe())!==n&&(le=t,e=r,r=void(En.where=e)),t=r}function Fe(){var r,e,s,u,a,c,o,i;if(r=fe,e=fe,(s=Ge())===n&&(s=null),s!==n&&(le=e,s=k(s)),(e=s)!==n)if(s=fe,(u=gn())!==n&&(a=Fe())!==n&&(c=vn())!==n?(le=s,s=u=q(e,a)):(fe=s,s=n),s===n&&(s=fe,(u=Ie())!==n&&(le=s,i=u,u=void e.push(...i)),(s=u)===n&&(s=fe,(u=Te())!==n&&(le=s,u=function(t,r){t.push(...r)}(e,u)),(s=u)===n&&(s=fe,u=function(){var r,e,s,u;de++,r=fe,t.substr(fe,8)===Ot?(e=Ot,fe+=8):(e=n,0===de&&ye(Bt));e===n&&(t.substr(fe,8)===Rt?(e=Rt,fe+=8):(e=n,0===de&&ye(Ft)),e===n&&(t.substr(fe,10)===Tt?(e=Tt,fe+=10):(e=n,0===de&&ye(Lt))));e!==n&&gn()!==n&&(s=_e())!==n&&dn()!==n&&(u=_e())!==n&&vn()!==n?(le=r,r=e={func:e,args:[s,u]}):(fe=r,r=n);de--,r===n&&(e=n,0===de&&ye(jt));return r}(),u!==n&&(le=s,u=function(t,r){t.push(r)}(e,u)),(s=u)===n&&(s=fe,(u=cn())!==n&&(le=s,u=I(e,u)),s=u)))),s!==n){for(u=[],a=fe,(c=He())===n&&(c=Qe()),c!==n&&(o=Fe())!==n?(le=a,a=c=_(e,c,o)):(fe=a,a=n);a!==n;)u.push(a),a=fe,(c=He())===n&&(c=Qe()),c!==n&&(o=Fe())!==n?(le=a,a=c=_(e,c,o)):(fe=a,a=n);u!==n?(le=r,r=e=e):(fe=r,r=n)}else fe=r,r=n;else fe=r,r=n;return r}function Te(){var r,e,s,u,o,i,f;if(r=fe,e=fe,(s=pn())!==n&&(le=e,s=[s]),(e=s)!==n)if(47===t.charCodeAt(fe)?(s=a,fe++):(s=n,0===de&&ye(c)),s!==n){for(u=[],o=fe,(i=pn())!==n?(47===t.charCodeAt(fe)?(f=a,fe++):(f=n,0===de&&ye(c)),f!==n?(le=o,o=i=D(e,i)):(fe=o,o=n)):(fe=o,o=n);o!==n;)u.push(o),o=fe,(i=pn())!==n?(47===t.charCodeAt(fe)?(f=a,fe++):(f=n,0===de&&ye(c)),f!==n?(le=o,o=i=D(e,i)):(fe=o,o=n)):(fe=o,o=n);u!==n?(o=fe,i=function(){var r,e,s;r=fe,t.substr(fe,3)===J?(e=J,fe+=3):(e=n,0===de&&ye(G));e!==n&&gn()!==n?((s=Ne())===n&&(s=null),s!==n&&vn()!==n?(le=r,r=e=s):(fe=r,r=n)):(fe=r,r=n);return r}(),i!==n&&(le=o,i=function(t,r){let e=t.pop();if(!r)return["exists",{ref:[...t,{id:e}]}];let n=[];for(let t=0,s=0;t<r.length;++t){let u=r[t];u.ref&&0===u.ref.length&&"="===r[t+1]?n[s++]={func:"contains",args:[{ref:e},r[t+=2]]}:n[s++]=u}return n.length<r.length?(e=t.pop(),["exists",{ref:[...t,{id:e,where:n}]}]):["exists",{ref:[...t,{id:e,where:r}]}]}(e,i)),(o=i)===n&&(o=fe,i=function(){var r,e,s;r=fe,t.substr(fe,3)===H?(e=H,fe+=3):(e=n,0===de&&ye(K));e!==n&&gn()!==n&&(s=Ne())!==n&&vn()!==n?(le=r,r=e=s):(fe=r,r=n);return r}(),i!==n&&(le=o,i=function(t,r){let e=t.pop();return["not","exists",{ref:[...t,{id:e,where:["not",{xpr:[...r]}]}]}]}(e,i)),o=i),o!==n?(le=r,r=e=o):(fe=r,r=n)):(fe=r,r=n)}else fe=r,r=n;else fe=r,r=n;return r}function Le(){var t,r,e,s,u,a,c,o,i;if(t=fe,r=fe,(e=Ge())===n&&(e=null),e!==n&&(le=r,e=(o=e)?[o]:[]),(r=e)!==n)if(e=fe,(s=gn())!==n&&(u=Le())!==n&&(a=vn())!==n?(le=e,i=u,e=s=void r.push("(",...i,")")):(fe=e,e=n),e===n&&(e=fe,(s=Ie())!==n&&(le=e,s=function(t,r){t.push(...r)}(r,s)),(e=s)===n&&(e=fe,(s=Te())!==n&&(le=e,s=function(t,r){t.push(...r)}(r,s)),e=s)),e!==n){for(s=[],u=fe,(a=He())===n&&(a=Qe()),a!==n&&(c=Le())!==n?(le=u,u=a=U(r,a,c)):(fe=u,u=n);u!==n;)s.push(u),u=fe,(a=He())===n&&(a=Qe()),a!==n&&(c=Le())!==n?(le=u,u=a=U(r,a,c)):(fe=u,u=n);s!==n?(le=t,t=r=r):(fe=t,t=n)}else fe=t,t=n;else fe=t,t=n;return t}function Ne(){var r,e,s,u;return r=fe,(e=pn())!==n?(58===t.charCodeAt(fe)?(s=M,fe++):(s=n,0===de&&ye(P)),s!==n&&(u=Le())!==n?(le=r,r=e=function(t,r){for(const e of r)e.ref&&e.ref[0]===t&&e.ref.shift();return r}(e,u)):(fe=r,r=n)):(fe=r,r=n),r}function ke(){var r,e,s,u,a;return r=fe,(e=Je())===n&&(e=De()),e!==n?(s=fe,mn()!==n?(u=fe,"asc"===t.substr(fe,3)?(a="asc",fe+=3):(a=n,0===de&&ye(Q)),a===n&&(t.substr(fe,4)===V?(a=V,fe+=4):(a=n,0===de&&ye(W))),(u=a!==n?t.substring(u,fe):a)!==n?(le=s,s=u):(fe=s,s=n)):(fe=s,s=n),s===n&&(s=null),s!==n?(le=r,r=e=function(t,r){const e=Cn(t,r&&{sort:r});En.orderBy=En.orderBy?[...En.orderBy,e]:[e]}(e,s)):(fe=r,r=n)):(fe=r,r=n),r}function qe(){var r,e,s,u,o,i;if(r=fe,(e=Ve())!==n){for(s=[],u=fe,47===t.charCodeAt(fe)?(o=a,fe++):(o=n,0===de&&ye(c)),o!==n&&(i=Ve())!==n?u=o=[o,i]:(fe=u,u=n);u!==n;)s.push(u),u=fe,47===t.charCodeAt(fe)?(o=a,fe++):(o=n,0===de&&ye(c)),o!==n&&(i=Ve())!==n?u=o=[o,i]:(fe=u,u=n);s!==n?r=e=[e,s]:(fe=r,r=n)}else fe=r,r=n;return r}function Ie(){var r,e,s,u,a,c;return de++,r=fe,(e=_e())!==n&&mn()!==n?(s=fe,"eq"===t.substr(fe,2)?(u="eq",fe+=2):(u=n,0===de&&ye(ut)),u===n&&("ne"===t.substr(fe,2)?(u="ne",fe+=2):(u=n,0===de&&ye(at)),u===n&&("lt"===t.substr(fe,2)?(u="lt",fe+=2):(u=n,0===de&&ye(ct)),u===n&&("gt"===t.substr(fe,2)?(u="gt",fe+=2):(u=n,0===de&&ye(ot)),u===n&&("le"===t.substr(fe,2)?(u="le",fe+=2):(u=n,0===de&&ye(it)),u===n&&("ge"===t.substr(fe,2)?(u="ge",fe+=2):(u=n,0===de&&ye(ft))))))),(s=u!==n?t.substring(s,fe):u)!==n&&(u=mn())!==n&&(a=_e())!==n?(le=r,r=e=[e,{eq:"=",ne:"!=",lt:"<",gt:">",le:"<=",ge:">="}[c=s]||c,a]):(fe=r,r=n)):(fe=r,r=n),de--,r===n&&(e=n,0===de&&ye(st)),r}function _e(){var r;return de++,(r=Je())===n&&(r=De())===n&&(r=Ue())===n&&(r=Me())===n&&(r=Pe())===n&&(r=function(){var r,e,s,u,a;r=fe,91===t.charCodeAt(fe)?(e=mt,fe++):(e=n,0===de&&ye(xt));if(e!==n){for(s=fe,u=[],$t.test(t.charAt(fe))?(a=t.charAt(fe),fe++):(a=n,0===de&&ye(wt));a!==n;)u.push(a),$t.test(t.charAt(fe))?(a=t.charAt(fe),fe++):(a=n,0===de&&ye(wt));(s=u!==n?t.substring(s,fe):u)!==n?(93===t.charCodeAt(fe)?(u=Ct,fe++):(u=n,0===de&&ye(yt)),u!==n?(le=r,r=e={list:s.replace(/"/g,"").split(",").map((t=>({val:t})))}):(fe=r,r=n)):(fe=r,r=n)}else fe=r,r=n;return r}()),de--,r===n&&(n,0===de&&ye(lt)),r}function De(){var r,e,s,u,o,i,f,l;if(de++,r=fe,(e=pn())!==n){for(s=[],u=fe,47===t.charCodeAt(fe)?(o=a,fe++):(o=n,0===de&&ye(c)),o!==n&&(i=pn())!==n?(le=u,u=o=pt(0,i)):(fe=u,u=n);u!==n;)s.push(u),u=fe,47===t.charCodeAt(fe)?(o=a,fe++):(o=n,0===de&&ye(c)),o!==n&&(i=pn())!==n?(le=u,u=o=pt(0,i)):(fe=u,u=n);s!==n?(le=r,l=s,r=e="null"===(f=e)?{val:null}:{ref:[f,...l]}):(fe=r,r=n)}else fe=r,r=n;return de--,r===n&&(e=n,0===de&&ye(ht)),r}function Ue(){var r,e,s;return r=fe,(e=cn())===n&&(e=function(){var r,e,s,u,a,c,o,i,f,l,h,p,A,d,g,v,b,m,x,C,y,$,w,E;r=fe,e=fe,s=[],_r.test(t.charAt(fe))?(u=t.charAt(fe),fe++):(u=n,0===de&&ye(Dr));if(u!==n)for(;u!==n;)s.push(u),_r.test(t.charAt(fe))?(u=t.charAt(fe),fe++):(u=n,0===de&&ye(Dr));else s=n;if(s!==n)if(45===t.charCodeAt(fe)?(u=Ur,fe++):(u=n,0===de&&ye(Mr)),u!==n)if(_r.test(t.charAt(fe))?(a=t.charAt(fe),fe++):(a=n,0===de&&ye(Dr)),a!==n)if(_r.test(t.charAt(fe))?(c=t.charAt(fe),fe++):(c=n,0===de&&ye(Dr)),c!==n)if(45===t.charCodeAt(fe)?(o=Ur,fe++):(o=n,0===de&&ye(Mr)),o!==n)if(_r.test(t.charAt(fe))?(i=t.charAt(fe),fe++):(i=n,0===de&&ye(Dr)),i!==n)if(_r.test(t.charAt(fe))?(f=t.charAt(fe),fe++):(f=n,0===de&&ye(Dr)),f!==n){if(l=fe,84===t.charCodeAt(fe)?(h="T",fe++):(h=n,0===de&&ye(Pr)),h!==n)if(_r.test(t.charAt(fe))?(p=t.charAt(fe),fe++):(p=n,0===de&&ye(Dr)),p!==n)if(_r.test(t.charAt(fe))?(A=t.charAt(fe),fe++):(A=n,0===de&&ye(Dr)),A!==n)if(58===t.charCodeAt(fe)?(d=M,fe++):(d=n,0===de&&ye(P)),d!==n)if(_r.test(t.charAt(fe))?(g=t.charAt(fe),fe++):(g=n,0===de&&ye(Dr)),g!==n)if(_r.test(t.charAt(fe))?(v=t.charAt(fe),fe++):(v=n,0===de&&ye(Dr)),v!==n){if(b=fe,58===t.charCodeAt(fe)?(m=M,fe++):(m=n,0===de&&ye(P)),m!==n)if(_r.test(t.charAt(fe))?(x=t.charAt(fe),fe++):(x=n,0===de&&ye(Dr)),x!==n)if(_r.test(t.charAt(fe))?(C=t.charAt(fe),fe++):(C=n,0===de&&ye(Dr)),C!==n){if(y=fe,46===t.charCodeAt(fe)?($=".",fe++):($=n,0===de&&ye(Jr)),$!==n){if(w=[],_r.test(t.charAt(fe))?(E=t.charAt(fe),fe++):(E=n,0===de&&ye(Dr)),E!==n)for(;E!==n;)w.push(E),_r.test(t.charAt(fe))?(E=t.charAt(fe),fe++):(E=n,0===de&&ye(Dr));else w=n;w!==n?y=$=[$,w]:(fe=y,y=n)}else fe=y,y=n;y===n&&(y=null),y!==n?b=m=[m,x,C,y]:(fe=b,b=n)}else fe=b,b=n;else fe=b,b=n;else fe=b,b=n;b===n&&(b=null),b!==n?(90===t.charCodeAt(fe)?(m="Z",fe++):(m=n,0===de&&ye(Gr)),m===n&&(m=fe,43===t.charCodeAt(fe)?(x="+",fe++):(x=n,0===de&&ye(Hr)),x===n&&(45===t.charCodeAt(fe)?(x=Ur,fe++):(x=n,0===de&&ye(Mr))),x!==n?(_r.test(t.charAt(fe))?(C=t.charAt(fe),fe++):(C=n,0===de&&ye(Dr)),C!==n?(_r.test(t.charAt(fe))?(y=t.charAt(fe),fe++):(y=n,0===de&&ye(Dr)),y!==n?(58===t.charCodeAt(fe)?($=M,fe++):($=n,0===de&&ye(P)),$!==n?(_r.test(t.charAt(fe))?(w=t.charAt(fe),fe++):(w=n,0===de&&ye(Dr)),w!==n?(_r.test(t.charAt(fe))?(E=t.charAt(fe),fe++):(E=n,0===de&&ye(Dr)),E!==n?m=x=[x,C,y,$,w,E]:(fe=m,m=n)):(fe=m,m=n)):(fe=m,m=n)):(fe=m,m=n)):(fe=m,m=n)):(fe=m,m=n)),m===n&&(m=null),m!==n?l=h=[h,p,A,d,g,v,b,m]:(fe=l,l=n)):(fe=l,l=n)}else fe=l,l=n;else fe=l,l=n;else fe=l,l=n;else fe=l,l=n;else fe=l,l=n;else fe=l,l=n;l===n&&(l=null),l!==n?e=s=[s,u,a,c,o,i,f,l]:(fe=e,e=n)}else fe=e,e=n;else fe=e,e=n;else fe=e,e=n;else fe=e,e=n;else fe=e,e=n;else fe=e,e=n;else fe=e,e=n;r=e!==n?t.substring(r,fe):e;return r}()),e!==n&&(le=r,e=At(e)),(r=e)===n&&(r=An())===n&&(r=fe,(e=ln())!==n&&(le=r,e="number"==typeof(s=e)?{val:s}:{val:s,literal:"number"}),(r=e)===n&&(r=fe,(e=on())!==n&&(le=r,e=At(e)),r=e)),r}function Me(){var r,e,s,u,a,c;if(r=fe,e=fe,s=fe,123===t.charCodeAt(fe)?(u="{",fe++):(u=n,0===de&&ye(dt)),u!==n){for(a=[],(c=Me())===n&&(gt.test(t.charAt(fe))?(c=t.charAt(fe),fe++):(c=n,0===de&&ye(vt)));c!==n;)a.push(c),(c=Me())===n&&(gt.test(t.charAt(fe))?(c=t.charAt(fe),fe++):(c=n,0===de&&ye(vt)));a!==n?(125===t.charCodeAt(fe)?(c="}",fe++):(c=n,0===de&&ye(bt)),c!==n?s=u=[u,a,c]:(fe=s,s=n)):(fe=s,s=n)}else fe=s,s=n;return(e=s!==n?t.substring(e,fe):s)!==n&&(le=r,e=At(e)),r=e}function Pe(){var r,e,s,u,a,c,o,i;if(r=fe,e=fe,s=fe,91===t.charCodeAt(fe)?(u=mt,fe++):(u=n,0===de&&ye(xt)),u!==n&&(a=bn())!==n?(93===t.charCodeAt(fe)?(c=Ct,fe++):(c=n,0===de&&ye(yt)),c!==n?s=u=[u,a,c]:(fe=s,s=n)):(fe=s,s=n),s===n)if(s=fe,91===t.charCodeAt(fe)?(u=mt,fe++):(u=n,0===de&&ye(xt)),u!==n)if((a=bn())!==n)if(123===t.charCodeAt(fe)?(c="{",fe++):(c=n,0===de&&ye(dt)),c!==n){for(o=[],(i=Pe())===n&&($t.test(t.charAt(fe))?(i=t.charAt(fe),fe++):(i=n,0===de&&ye(wt)));i!==n;)o.push(i),(i=Pe())===n&&($t.test(t.charAt(fe))?(i=t.charAt(fe),fe++):(i=n,0===de&&ye(wt)));o!==n?(93===t.charCodeAt(fe)?(i=Ct,fe++):(i=n,0===de&&ye(yt)),i!==n?s=u=[u,a,c,o,i]:(fe=s,s=n)):(fe=s,s=n)}else fe=s,s=n;else fe=s,s=n;else fe=s,s=n;return(e=s!==n?t.substring(e,fe):s)!==n&&(le=r,e=At(e)),r=e}function Je(){var r,e,s,u,a,c,o,i,f,l;if(de++,r=fe,e=fe,s=[],St.test(t.charAt(fe))?(u=t.charAt(fe),fe++):(u=n,0===de&&ye(zt)),u!==n)for(;u!==n;)s.push(u),St.test(t.charAt(fe))?(u=t.charAt(fe),fe++):(u=n,0===de&&ye(zt));else s=n;if((e=s!==n?t.substring(e,fe):s)!==n)if((s=gn())!==n)if((u=_e())!==n){for(a=[],c=fe,dn()!==n&&(o=_e())!==n?(le=c,c=Zt(0,0,o)):(fe=c,c=n);c!==n;)a.push(c),c=fe,dn()!==n&&(o=_e())!==n?(le=c,c=Zt(0,0,o)):(fe=c,c=n);a!==n&&(c=vn())!==n?(le=r,i=e,f=u,l=a,yn&&!(i in yn.functions)&&xn("'"+i+"' is an unknown function in OData URL spec (strict mode)"),r=e={func:i,args:[f,...l]}):(fe=r,r=n)}else fe=r,r=n;else fe=r,r=n;else fe=r,r=n;return de--,r===n&&(e=n,0===de&&ye(Et)),r}function Ge(){var r,e;return r=fe,bn()!==n?("not"===t.substr(fe,3).toLowerCase()?(e=t.substr(fe,3),fe+=3):(e=n,0===de&&ye(Nt)),e!==n&&mn()!==n?(le=r,r="not"):(fe=r,r=n)):(fe=r,r=n),r}function He(){var r,e;return r=fe,mn()!==n?("and"===t.substr(fe,3).toLowerCase()?(e=t.substr(fe,3),fe+=3):(e=n,0===de&&ye(kt)),e!==n&&mn()!==n?(le=r,r="and"):(fe=r,r=n)):(fe=r,r=n),r}function Ke(){var t,r;return t=fe,(r=mn())!==n&&(le=t,r="and"),t=r}function Qe(){var r,e;return r=fe,mn()!==n?("or"===t.substr(fe,2).toLowerCase()?(e=t.substr(fe,2),fe+=2):(e=n,0===de&&ye(qt)),e!==n&&mn()!==n?(le=r,r="or"):(fe=r,r=n)):(fe=r,r=n),r}function Ve(){var r,e,s;return r=fe,t.substr(fe,9)===It?(e=It,fe+=9):(e=n,0===de&&ye(_t)),e!==n?(s=function(){var t,r,e,s,u,a,c,o,i,f;if(t=fe,(r=gn())!==n)if((e=bn())!==n)if((s=We())!==n){for(u=[],a=fe,(c=bn())!==n&&(o=dn())!==n&&(i=bn())!==n&&(f=We())!==n?a=c=[c,o,i,f]:(fe=a,a=n);a!==n;)u.push(a),a=fe,(c=bn())!==n&&(o=dn())!==n&&(i=bn())!==n&&(f=We())!==n?a=c=[c,o,i,f]:(fe=a,a=n);u!==n&&(a=bn())!==n&&(c=vn())!==n?t=r=[r,e,s,u,a,c]:(fe=t,t=n)}else fe=t,t=n;else fe=t,t=n;else fe=t,t=n;return t}(),s!==n?r=e=[e,s]:(fe=r,r=n)):(fe=r,r=n),r===n&&(r=fe,t.substr(fe,7)===Dt?(e=Dt,fe+=7):(e=n,0===de&&ye(Ut)),e!==n?(s=function(){var t,r,e,s,u,a,c,o,i,f,l;if(t=fe,(r=gn())!==n)if((e=bn())!==n){if(s=fe,(u=gn())!==n)if((a=en())!==n){for(c=[],o=fe,(i=dn())!==n&&(f=bn())!==n&&(l=en())!==n?o=i=[i,f,l]:(fe=o,o=n);o!==n;)c.push(o),o=fe,(i=dn())!==n&&(f=bn())!==n&&(l=en())!==n?o=i=[i,f,l]:(fe=o,o=n);c!==n&&(o=vn())!==n?s=u=[u,a,c,o]:(fe=s,s=n)}else fe=s,s=n;else fe=s,s=n;s!==n?(u=fe,(a=dn())!==n&&(c=bn())!==n&&(o=qe())!==n?u=a=[a,c,o]:(fe=u,u=n),u===n&&(u=null),u!==n&&(a=bn())!==n&&(c=vn())!==n?t=r=[r,e,s,u,a,c]:(fe=t,t=n)):(fe=t,t=n)}else fe=t,t=n;else fe=t,t=n;return t}(),s!==n?r=e=[e,s]:(fe=r,r=n)):(fe=r,r=n),r===n&&(r=fe,t.substr(fe,6)===Mt?(e=Mt,fe+=6):(e=n,0===de&&ye(Pt)),e!==n&&(s=nn())!==n?r=e=[e,s]:(fe=r,r=n),r===n&&(r=function(){var r,e,s,u;r=fe,t.substr(fe,8)===gr?(e=gr,fe+=8):(e=n,0===de&&ye(vr));e===n&&(t.substr(fe,11)===br?(e=br,fe+=11):(e=n,0===de&&ye(mr)));e!==n&&gn()!==n&&bn()!==n&&(s=ln())!==n&&bn()!==n&&dn()!==n&&bn()!==n&&(u=De())!==n&&bn()!==n&&vn()!==n?(le=r,r=e=function(t,r,e){const n={...e,sort:"topcount"===t?"desc":"asc"};En.orderBy=En.orderBy?[...En.orderBy,n]:[n],(En.limit||(En.limit={})).rows={val:r}}(e,s,u)):(fe=r,r=n);return r}(),r===n&&(r=fe,t.substr(fe,6)===Jt?(e=Jt,fe+=6):(e=n,0===de&&ye(Gt)),e!==n&&(s=sn())!==n?r=e=[e,s]:(fe=r,r=n),r===n&&(r=fe,t.substr(fe,6)===Ht?(e=Ht,fe+=6):(e=n,0===de&&ye(Kt)),e!==n?(s=function(){var t,r,e,s,u,a;t=fe,(r=gn())!==n&&(e=bn())!==n&&(s=Oe())!==n&&(u=bn())!==n&&(a=vn())!==n?t=r=[r,e,s,u,a]:(fe=t,t=n);return t}(),s!==n?r=e=[e,s]:(fe=r,r=n)):(fe=r,r=n),r===n&&(r=fe,t.substr(fe,6)===Qt?(e=Qt,fe+=6):(e=n,0===de&&ye(Vt)),e!==n?(s=function(){var t,r,e,s,u,a,c,o,i,f;if(t=fe,(r=gn())!==n)if((e=bn())!==n)if((s=qe())!==n){if(u=[],a=fe,(c=bn())!==n&&(o=dn())!==n&&(i=bn())!==n&&(f=qe())!==n?a=c=[c,o,i,f]:(fe=a,a=n),a!==n)for(;a!==n;)u.push(a),a=fe,(c=bn())!==n&&(o=dn())!==n&&(i=bn())!==n&&(f=qe())!==n?a=c=[c,o,i,f]:(fe=a,a=n);else u=n;u!==n&&(a=bn())!==n&&(c=vn())!==n?t=r=[r,e,s,u,a,c]:(fe=t,t=n)}else fe=t,t=n;else fe=t,t=n;else fe=t,t=n;return t}(),s!==n?r=e=[e,s]:(fe=r,r=n)):(fe=r,r=n),r===n&&(r=fe,t.substr(fe,7)===Wt?(e=Wt,fe+=7):(e=n,0===de&&ye(Xt)),e!==n?(s=function(){var t,r,e,s,u,a,c,o,i,f;if(t=fe,(r=gn())!==n)if((e=bn())!==n)if((s=un())!==n){for(u=[],a=fe,(c=bn())!==n&&(o=dn())!==n&&(i=bn())!==n&&(f=un())!==n?a=c=[c,o,i,f]:(fe=a,a=n);a!==n;)u.push(a),a=fe,(c=bn())!==n&&(o=dn())!==n&&(i=bn())!==n&&(f=un())!==n?a=c=[c,o,i,f]:(fe=a,a=n);u!==n&&(a=bn())!==n&&(c=vn())!==n?t=r=[r,e,s,u,a,c]:(fe=t,t=n)}else fe=t,t=n;else fe=t,t=n;else fe=t,t=n;return t}(),s!==n?r=e=[e,s]:(fe=r,r=n)):(fe=r,r=n),r===n&&(r=fe,t.substr(fe,13)===Yt?(e=Yt,fe+=13):(e=n,0===de&&ye(tr)),e!==n&&(s=an())!==n?r=e=[e,s]:(fe=r,r=n),r===n&&(r=fe,t.substr(fe,9)===rr?(e=rr,fe+=9):(e=n,0===de&&ye(er)),e!==n&&(s=an())!==n?r=e=[e,s]:(fe=r,r=n),r===n&&(r=fe,t.substr(fe,10)===nr?(e=nr,fe+=10):(e=n,0===de&&ye(sr)),e!==n&&(s=an())!==n?r=e=[e,s]:(fe=r,r=n),r===n&&(r=fe,t.substr(fe,6)===ur?(e=ur,fe+=6):(e=n,0===de&&ye(ar)),e!==n&&(s=an())!==n?r=e=[e,s]:(fe=r,r=n),r===n&&(r=function(){var r;t.substr(fe,8)===xr?(r=xr,fe+=8):(r=n,0===de&&ye(Cr));return r}())))))))))))),r}function We(){var r,e,s,u,a;return r=fe,e=fe,t.substr(fe,6)===f?(s=f,fe+=6):(s=n,0===de&&ye(l)),s!==n&&(u=rn())!==n?(le=e,e=s={func:"count",args:["*"],as:u}):(fe=e,e=n),e===n&&(e=Xe()),e!==n&&(le=r,a=e,En.columns=Array.isArray(En.columns)?En.columns:[],En.columns.find(Bn(a))||En.columns.push(a),e=a),r=e}function Xe(){var t,r,e,s,u;return t=fe,(r=De())!==n&&(e=Ye())!==n?((s=tn())===n&&(s=null),s!==n&&(u=rn())!==n?(le=t,t=r={func:e,args:[r],as:u}):(fe=t,t=n)):(fe=t,t=n),t===n&&(t=fe,(r=pn())!==n&&(e=gn())!==n&&(s=Xe())!==n&&(u=vn())!==n?t=r=[r,e,s,u]:(fe=t,t=n)),t}function Ye(){var r,e,s,u,a;if(r=fe,mn()!==n)if(t.substr(fe,4)===cr?(e=cr,fe+=4):(e=n,0===de&&ye(or)),e!==n)if(mn()!==n){if(s=fe,u=[],St.test(t.charAt(fe))?(a=t.charAt(fe),fe++):(a=n,0===de&&ye(zt)),a!==n)for(;a!==n;)u.push(a),St.test(t.charAt(fe))?(a=t.charAt(fe),fe++):(a=n,0===de&&ye(zt));else u=n;(s=u!==n?t.substring(s,fe):u)!==n?(le=r,r=s):(fe=r,r=n)}else fe=r,r=n;else fe=r,r=n;else fe=r,r=n;return r}function tn(){var r,e,s,u,a,c,o;return r=fe,(e=mn())!==n?(t.substr(fe,4)===ir?(s=ir,fe+=4):(s=n,0===de&&ye(fr)),s!==n&&(u=mn())!==n&&(a=De())!==n&&(c=Ye())!==n?((o=tn())===n&&(o=null),o!==n?r=e=[e,s,u,a,c,o]:(fe=r,r=n)):(fe=r,r=n)):(fe=r,r=n),r}function rn(){var r,e,s;return r=fe,mn()!==n?("as"===t.substr(fe,2)?(e="as",fe+=2):(e=n,0===de&&ye(lr)),e!==n&&mn()!==n&&(s=pn())!==n?(le=r,r=s):(fe=r,r=n)):(fe=r,r=n),r}function en(){var r,e,s;return r=fe,e=function(){var r,e,s,u,a,c,o,i,f,l,h;r=fe,e=fe,t.substr(fe,6)===hr?(s=hr,fe+=6):(s=n,0===de&&ye(pr));if(s!==n)if((u=gn())!==n)if((a=bn())!==n)if(t.substr(fe,4)===Ar?(c=Ar,fe+=4):(c=n,0===de&&ye(dr)),c===n&&(c=De()),c!==n){if(o=[],i=fe,(f=bn())!==n&&(l=dn())!==n&&(h=De())!==n?i=f=[f,l,h]:(fe=i,i=n),i!==n)for(;i!==n;)o.push(i),i=fe,(f=bn())!==n&&(l=dn())!==n&&(h=De())!==n?i=f=[f,l,h]:(fe=i,i=n);else o=n;o!==n&&(i=bn())!==n&&(f=vn())!==n?e=s=[s,u,a,c,o,i,f]:(fe=e,e=n)}else fe=e,e=n;else fe=e,e=n;else fe=e,e=n;else fe=e,e=n;e!==n&&(le=r,e=function(t){const r=new Error("Rollup in groupby is not supported yet.");throw r.statusCode=501,r}());return r=e}(),e===n&&(e=De()),e!==n&&(le=r,s=e,e=void(En.groupBy||(En.groupBy=[])).push(s)),r=e}function nn(){var t,r,e,s,u,a;return t=fe,(r=gn())!==n&&(e=bn())!==n&&(s=Re())!==n&&(u=bn())!==n&&(a=vn())!==n?t=r=[r,e,s,u,a]:(fe=t,t=n),t}function sn(){var t,r,e,s,u,a,c,o,i,f,l,h,p,A;if(t=fe,(r=gn())!==n)if((e=bn())!==n)if((s=De())!==n)if((u=bn())!==n)if((a=dn())!==n)if((c=bn())!==n){if(o=fe,(i=sn())!==n){for(f=[],l=fe,(h=bn())!==n&&(p=dn())!==n&&(A=sn())!==n?l=h=[h,p,A]:(fe=l,l=n);l!==n;)f.push(l),l=fe,(h=bn())!==n&&(p=dn())!==n&&(A=sn())!==n?l=h=[h,p,A]:(fe=l,l=n);f!==n?o=i=[i,f]:(fe=o,o=n)}else fe=o,o=n;if(o===n)if(o=fe,(i=nn())!==n){for(f=[],l=fe,(h=bn())!==n&&(p=dn())!==n&&(A=sn())!==n?l=h=[h,p,A]:(fe=l,l=n);l!==n;)f.push(l),l=fe,(h=bn())!==n&&(p=dn())!==n&&(A=sn())!==n?l=h=[h,p,A]:(fe=l,l=n);f!==n?o=i=[i,f]:(fe=o,o=n)}else fe=o,o=n;o!==n&&(i=bn())!==n&&(f=vn())!==n?t=r=[r,e,s,u,a,c,o,i,f]:(fe=t,t=n)}else fe=t,t=n;else fe=t,t=n;else fe=t,t=n;else fe=t,t=n;else fe=t,t=n;else fe=t,t=n;return t}function un(){var t,r,e;return t=fe,(r=Fe())!==n&&(e=rn())!==n?t=r=[r,e]:(fe=t,t=n),t}function an(){var t,r,e,s,u,a,c,o,i,f;return t=fe,(r=gn())!==n&&(e=bn())!==n&&(s=_e())!==n&&(u=bn())!==n&&(a=dn())!==n&&(c=bn())!==n&&(o=_e())!==n&&(i=bn())!==n&&(f=vn())!==n?t=r=[r,e,s,u,a,c,o,i,f]:(fe=t,t=n),t}function cn(){var r,e;return r=fe,t.substr(fe,4)===yr?(e=yr,fe+=4):(e=n,0===de&&ye($r)),e===n&&(t.substr(fe,5)===wr?(e=wr,fe+=5):(e=n,0===de&&ye(Er))),e!==n&&(le=r,e="true"===e),r=e}function on(){var r,e,s,u,a;if(de++,r=fe,39===t.charCodeAt(fe)?(e="'",fe++):(e=n,0===de&&ye(zr)),e!==n){for(s=fe,u=[],t.substr(fe,2)===Zr?(a=Zr,fe+=2):(a=n,0===de&&ye(jr)),a===n&&(Or.test(t.charAt(fe))?(a=t.charAt(fe),fe++):(a=n,0===de&&ye(Br)));a!==n;)u.push(a),t.substr(fe,2)===Zr?(a=Zr,fe+=2):(a=n,0===de&&ye(jr)),a===n&&(Or.test(t.charAt(fe))?(a=t.charAt(fe),fe++):(a=n,0===de&&ye(Br)));(s=u!==n?t.substring(s,fe):u)!==n?(39===t.charCodeAt(fe)?(u="'",fe++):(u=n,0===de&&ye(zr)),u!==n?(le=r,r=e=s.replace(/''/g,"'")):(fe=r,r=n)):(fe=r,r=n)}else fe=r,r=n;return de--,r===n&&(e=n,0===de&&ye(Sr)),r}function fn(){var r,e,s;if(r=fe,e=[],qr.test(t.charAt(fe))?(s=t.charAt(fe),fe++):(s=n,0===de&&ye(Ir)),s!==n)for(;s!==n;)e.push(s),qr.test(t.charAt(fe))?(s=t.charAt(fe),fe++):(s=n,0===de&&ye(Ir));else e=n;return r=e!==n?t.substring(r,fe):e}function ln(){var r,e,s,u,a,c,o,i,f,l;if(r=fe,e=fe,s=fe,Kr.test(t.charAt(fe))?(u=t.charAt(fe),fe++):(u=n,0===de&&ye(Qr)),u===n&&(u=null),u!==n){if(a=[],_r.test(t.charAt(fe))?(c=t.charAt(fe),fe++):(c=n,0===de&&ye(Dr)),c!==n)for(;c!==n;)a.push(c),_r.test(t.charAt(fe))?(c=t.charAt(fe),fe++):(c=n,0===de&&ye(Dr));else a=n;if(a!==n){if(c=fe,46===t.charCodeAt(fe)?(o=".",fe++):(o=n,0===de&&ye(Jr)),o!==n){if(i=[],_r.test(t.charAt(fe))?(f=t.charAt(fe),fe++):(f=n,0===de&&ye(Dr)),f!==n)for(;f!==n;)i.push(f),_r.test(t.charAt(fe))?(f=t.charAt(fe),fe++):(f=n,0===de&&ye(Dr));else i=n;i!==n?c=o=[o,i]:(fe=c,c=n)}else fe=c,c=n;if(c===n&&(c=null),c!==n){if(o=fe,101===t.charCodeAt(fe)?(i="e",fe++):(i=n,0===de&&ye(Vr)),i!==n){if(f=[],_r.test(t.charAt(fe))?(l=t.charAt(fe),fe++):(l=n,0===de&&ye(Dr)),l!==n)for(;l!==n;)f.push(l),_r.test(t.charAt(fe))?(l=t.charAt(fe),fe++):(l=n,0===de&&ye(Dr));else f=n;f!==n?o=i=[i,f]:(fe=o,o=n)}else fe=o,o=n;o===n&&(o=null),o!==n?s=u=[u,a,c,o]:(fe=s,s=n)}else fe=s,s=n}else fe=s,s=n}else fe=s,s=n;return(e=s!==n?t.substring(e,fe):s)!==n&&(le=r,e=Zn(e)),r=e}function hn(){var r,e,s,u,a,c;if(r=fe,e=fe,s=fe,Kr.test(t.charAt(fe))?(u=t.charAt(fe),fe++):(u=n,0===de&&ye(Qr)),u===n&&(u=null),u!==n){if(a=[],_r.test(t.charAt(fe))?(c=t.charAt(fe),fe++):(c=n,0===de&&ye(Dr)),c!==n)for(;c!==n;)a.push(c),_r.test(t.charAt(fe))?(c=t.charAt(fe),fe++):(c=n,0===de&&ye(Dr));else a=n;a!==n?s=u=[u,a]:(fe=s,s=n)}else fe=s,s=n;return(e=s!==n?t.substring(e,fe):s)!==n&&(le=r,e=parseInt(e)),r=e}function pn(){var r,e,s,u,a,c,o,i;if(r=fe,e=fe,de++,s=cn(),de--,s===n?e=void 0:(fe=e,e=n),e!==n)if(s=fe,de++,u=An(),de--,u===n?s=void 0:(fe=s,s=n),s!==n){if(u=fe,a=fe,Wr.test(t.charAt(fe))?(c=t.charAt(fe),fe++):(c=n,0===de&&ye(Xr)),c!==n){for(o=[],Yr.test(t.charAt(fe))?(i=t.charAt(fe),fe++):(i=n,0===de&&ye(te));i!==n;)o.push(i),Yr.test(t.charAt(fe))?(i=t.charAt(fe),fe++):(i=n,0===de&&ye(te));o!==n?a=c=[c,o]:(fe=a,a=n)}else fe=a,a=n;(u=a!==n?t.substring(u,fe):a)!==n?(le=r,r=e=u):(fe=r,r=n)}else fe=r,r=n;else fe=r,r=n;return r}function An(){var r,e,s,u,a,c,o,i,f;if(r=fe,e=fe,s=fe,u=[],re.test(t.charAt(fe))?(a=t.charAt(fe),fe++):(a=n,0===de&&ye(ee)),a!==n)for(;a!==n;)u.push(a),re.test(t.charAt(fe))?(a=t.charAt(fe),fe++):(a=n,0===de&&ye(ee));else u=n;if(u!==n)if(45===t.charCodeAt(fe)?(a=Ur,fe++):(a=n,0===de&&ye(Mr)),a!==n){if(c=[],o=fe,i=[],re.test(t.charAt(fe))?(f=t.charAt(fe),fe++):(f=n,0===de&&ye(ee)),f!==n)for(;f!==n;)i.push(f),re.test(t.charAt(fe))?(f=t.charAt(fe),fe++):(f=n,0===de&&ye(ee));else i=n;if(i!==n?(45===t.charCodeAt(fe)?(f=Ur,fe++):(f=n,0===de&&ye(Mr)),f===n&&(f=null),f!==n?o=i=[i,f]:(fe=o,o=n)):(fe=o,o=n),o!==n)for(;o!==n;){if(c.push(o),o=fe,i=[],re.test(t.charAt(fe))?(f=t.charAt(fe),fe++):(f=n,0===de&&ye(ee)),f!==n)for(;f!==n;)i.push(f),re.test(t.charAt(fe))?(f=t.charAt(fe),fe++):(f=n,0===de&&ye(ee));else i=n;i!==n?(45===t.charCodeAt(fe)?(f=Ur,fe++):(f=n,0===de&&ye(Mr)),f===n&&(f=null),f!==n?o=i=[i,f]:(fe=o,o=n)):(fe=o,o=n)}else c=n;c!==n?s=u=[u,a,c]:(fe=s,s=n)}else fe=s,s=n;else fe=s,s=n;return(e=s!==n?t.substring(e,fe):s)!==n&&(le=r,e=At(e)),r=e}function dn(){var r,e,s,u;return r=fe,(e=bn())!==n?(44===t.charCodeAt(fe)?(s=",",fe++):(s=n,0===de&&ye(ne)),s!==n&&(u=bn())!==n?r=e=[e,s,u]:(fe=r,r=n)):(fe=r,r=n),r}function gn(){var r,e,s,u;return r=fe,(e=bn())!==n?(40===t.charCodeAt(fe)?(s="(",fe++):(s=n,0===de&&ye(se)),s!==n&&(u=bn())!==n?r=e=[e,s,u]:(fe=r,r=n)):(fe=r,r=n),r}function vn(){var r,e,s;return r=fe,(e=bn())!==n?(41===t.charCodeAt(fe)?(s=")",fe++):(s=n,0===de&&ye(ue)),s!==n?r=e=[e,s]:(fe=r,r=n)):(fe=r,r=n),r}function bn(){var r,e,s;for(de++,r=fe,e=[],ce.test(t.charAt(fe))?(s=t.charAt(fe),fe++):(s=n,0===de&&ye(oe));s!==n;)e.push(s),ce.test(t.charAt(fe))?(s=t.charAt(fe),fe++):(s=n,0===de&&ye(oe));return r=e!==n?t.substring(r,fe):e,de--,r===n&&(e=n,0===de&&ye(ae)),r}function mn(){var r,e,s;if(de++,r=fe,e=[],ce.test(t.charAt(fe))?(s=t.charAt(fe),fe++):(s=n,0===de&&ye(oe)),s!==n)for(;s!==n;)e.push(s),ce.test(t.charAt(fe))?(s=t.charAt(fe),fe++):(s=n,0===de&&ye(oe));else e=n;return r=e!==n?t.substring(r,fe):e,de--,r===n&&(e=n,0===de&&ye(ie)),r}const xn=(t,r=400)=>{ge(JSON.stringify({code:r,message:t}))},Cn=Object.assign,{strict:yn,minimal:$n}=r,wn=[];let En,Sn;const zn=["$value"],Zn=r.safeNumber||function(t){const r=Number(t);return Number.isSafeInteger(r)?r:t},jn=(t,r)=>{const e=[...t];for(const t of e)t.xpr&&(t.xpr=jn(t.xpr,r)),t.args&&(t.args=jn(t.args,r)),t.ref&&r.includes(t.ref.join(""));return e},On=t=>{const r=t.groupBy,e=t.where,n=t.columns||[],s=n.filter((t=>t.as));let u=[],a=[];if(0!==s.length&&(u=n.filter((t=>!t.ref||s.includes(t.ref.join(""))))),r){const t=r.map((({ref:t})=>t&&t.join(""))),e=n.filter((r=>r.ref&&t.includes(r.ref.join(""))));a=0===e.length?[...r]:e}const c=0!==u.length||0!==a.length?[...a,...u]:t.columns;let o={...t};c&&(o.columns=c);if(e&&(r||0!==s.length)){const t=n.map((t=>t.ref&&t.ref.join("")||t.as));o={...o,where:jn(e,t)}}return o},Bn=t=>r=>t===r||t.as&&r.as&&t.as===r.as||t.ref&&r.ref&&t.ref.join("")===r.ref.join("");if((e=u())!==n&&fe===t.length)return e;throw e!==n&&fe<t.length&&ye({type:"end"}),$e(Ae,pe<t.length?t.charAt(pe):null,pe<t.length?Ce(pe,pe+1):Ce(pe,pe))}peg$subclass(peg$SyntaxError,Error),peg$SyntaxError.buildMessage=function(t,r){var e={literal:function(t){return'"'+s(t.text)+'"'},class:function(t){var r,e="";for(r=0;r<t.parts.length;r++)e+=t.parts[r]instanceof Array?u(t.parts[r][0])+"-"+u(t.parts[r][1]):u(t.parts[r]);return"["+(t.inverted?"^":"")+e+"]"},any:function(t){return"any character"},end:function(t){return"end of input"},other:function(t){return t.description}};function n(t){return t.charCodeAt(0).toString(16).toUpperCase()}function s(t){return t.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,(function(t){return"\\x0"+n(t)})).replace(/[\x10-\x1F\x7F-\x9F]/g,(function(t){return"\\x"+n(t)}))}function u(t){return t.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,(function(t){return"\\x0"+n(t)})).replace(/[\x10-\x1F\x7F-\x9F]/g,(function(t){return"\\x"+n(t)}))}return"Expected "+function(t){var r,n,s,u=new Array(t.length);for(r=0;r<t.length;r++)u[r]=(s=t[r],e[s.type](s));if(u.sort(),u.length>0){for(r=1,n=1;r<u.length;r++)u[r-1]!==u[r]&&(u[n]=u[r],n++);u.length=n}switch(u.length){case 1:return u[0];case 2:return u[0]+" or "+u[1];default:return u.slice(0,-1).join(", ")+", or "+u[u.length-1]}}(t)+" but "+function(t){return t?'"'+s(t)+'"':"end of input"}(r)+" found."},module.exports={SyntaxError:peg$SyntaxError,parse:peg$parse};
|
|
1
|
+
"use strict";function peg$subclass(t,r){function e(){this.constructor=t}e.prototype=r.prototype,t.prototype=new e}function peg$SyntaxError(t,r,e,n){this.message=t,this.expected=r,this.found=e,this.location=n,this.name="SyntaxError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,peg$SyntaxError)}function peg$parse(t,r){r=void 0!==r?r:{};var e,n={},s={ODataRelativeURI:Ze},u=Ze,a="/",o=ye("/",!1),c=ye("?",!1),i=ye("&",!1),f="$count",l=ye("$count",!1),h="$ref",p=ye("$ref",!1),A="$value",d=ye("$value",!1),v=ye("=",!1),g="$select=",b=ye("$select=",!1),m="$expand=",x=ye("$expand=",!1),y="$filter=",C=ye("$filter=",!1),$="$orderby=",w=ye("$orderby=",!1),E="$top=",S=ye("$top=",!1),z="$skip=",Z=ye("$skip=",!1),j="$skiptoken=",O=ye("$skiptoken=",!1),B="$search=",k=ye("$search=",!1),R="$count=",F=ye("$count=",!1),T="$apply=",L=ye("$apply=",!1),N=ye("*",!1),_=ye(";",!1),q=function(t){return t?[t]:[]},I=function(t,r){t.push({xpr:r})},D=function(t,r){t.push({val:r})},U=function(t,r,e){t.push(r,...e)},M=function(t,r){t.push(r)},P=function(t,r,e){t.push(r,...e)},J=":",G=ye(":",!1),H="any",K=ye("any",!1),Q="all",V=ye("all",!1),W=ye("asc",!1),X="desc",Y=ye("desc",!1),tt=/^[a-zA-Z]/,rt=Ce([["a","z"],["A","Z"]],!1,!1),et=/^[a-zA-Z0-9\-]/,nt=Ce([["a","z"],["A","Z"],["0","9"],"-"],!1,!1),st=/^[^&]/,ut=Ce(["&"],!0,!1),at=$e("a comparison"),ot=ye("eq",!1),ct=ye("ne",!1),it=ye("lt",!1),ft=ye("gt",!1),lt=ye("le",!1),ht=ye("ge",!1),pt=(ye("add",!1),ye("sub",!1),ye("mul",!1),ye("div",!1),ye("mod",!1),$e("an operand")),At=$e("a reference"),dt=function(t,r){return r},vt=function(t){return{val:t}},gt=ye("{",!1),bt=/^[^}]/,mt=Ce(["}"],!0,!1),xt=ye("}",!1),yt="[",Ct=ye("[",!1),$t="]",wt=ye("]",!1),Et=/^[^\]]/,St=Ce(["]"],!0,!1),zt=$e("a function call"),Zt=/^[a-z]/,jt=Ce([["a","z"]],!1,!1),Ot=function(t,r,e){return e},Bt=$e("a boolean function"),kt="contains",Rt=ye("contains",!1),Ft="endswith",Tt=ye("endswith",!1),Lt="startswith",Nt=ye("startswith",!1),_t=ye("NOT",!0),qt=ye("AND",!0),It=ye("OR",!0),Dt="aggregate",Ut=ye("aggregate",!1),Mt="groupby",Pt=ye("groupby",!1),Jt="filter",Gt=ye("filter",!1),Ht="expand",Kt=ye("expand",!1),Qt="search",Vt=ye("search",!1),Wt="concat",Xt=ye("concat",!1),Yt="compute",tr=ye("compute",!1),rr="bottompercent",er=ye("bottompercent",!1),nr="bottomsum",sr=ye("bottomsum",!1),ur="toppercent",ar=ye("toppercent",!1),or="topsum",cr=ye("topsum",!1),ir="with",fr=ye("with",!1),lr="from",hr=ye("from",!1),pr=ye("as",!1),Ar="rollup",dr=ye("rollup",!1),vr="$all",gr=ye("$all",!1),br="topcount",mr=ye("topcount",!1),xr="bottomcount",yr=ye("bottomcount",!1),Cr="identity",$r=ye("identity",!1),wr="true",Er=ye("true",!1),Sr="false",zr=ye("false",!1),Zr=$e("Edm.String"),jr=ye("'",!1),Or="''",Br=ye("''",!1),kr=/^[^']/,Rr=Ce(["'"],!0,!1),Fr='"',Tr=ye('"',!1),Lr='\\"',Nr=ye('\\"',!1),_r=/^[^"]/,qr=Ce(['"'],!0,!1),Ir=/^[a-zA-Z0-9.+\-]/,Dr=Ce([["a","z"],["A","Z"],["0","9"],".","+","-"],!1,!1),Ur=/^[0-9]/,Mr=Ce([["0","9"]],!1,!1),Pr="-",Jr=ye("-",!1),Gr=ye("T",!1),Hr=ye(".",!1),Kr=ye("Z",!1),Qr=ye("+",!1),Vr=/^[+\-]/,Wr=Ce(["+","-"],!1,!1),Xr=ye("e",!1),Yr=/^[_a-zA-Z]/,te=Ce(["_",["a","z"],["A","Z"]],!1,!1),re=/^[_a-zA-Z0-9"."]/,ee=Ce(["_",["a","z"],["A","Z"],["0","9"],'"',".",'"'],!1,!1),ne=/^[0-9a-zA-Z]/,se=Ce([["0","9"],["a","z"],["A","Z"]],!1,!1),ue=/^[a-zA-Z0-9\-"."_~!$&'()*+,;=:@]/,ae=Ce([["a","z"],["A","Z"],["0","9"],"-",'"',".",'"',"_","~","!","$","&","'","(",")","*","+",",",";","=",":","@"],!1,!1),oe=ye(",",!1),ce=ye("(",!1),ie=ye(")",!1),fe=$e("optional whitespaces"),le=/^[ \t\n]/,he=Ce([" ","\t","\n"],!1,!1),pe=$e("mandatory whitespaces"),Ae=0,de=0,ve=[{line:1,column:1}],ge=0,be=[],me=0;if("startRule"in r){if(!(r.startRule in s))throw new Error("Can't start parsing from rule \""+r.startRule+'".');u=s[r.startRule]}function xe(t,r){throw function(t,r){return new peg$SyntaxError(t,null,null,r)}(t,r=void 0!==r?r:Ee(de,Ae))}function ye(t,r){return{type:"literal",text:t,ignoreCase:r}}function Ce(t,r,e){return{type:"class",parts:t,inverted:r,ignoreCase:e}}function $e(t){return{type:"other",description:t}}function we(r){var e,n=ve[r];if(n)return n;for(e=r-1;!ve[e];)e--;for(n={line:(n=ve[e]).line,column:n.column};e<r;)10===t.charCodeAt(e)?(n.line++,n.column=1):n.column++,e++;return ve[r]=n,n}function Ee(t,r){var e=we(t),n=we(r);return{start:{offset:t,line:e.line,column:e.column},end:{offset:r,line:n.line,column:n.column}}}function Se(t){Ae<ge||(Ae>ge&&(ge=Ae,be=[]),be.push(t))}function ze(t,r,e){return new peg$SyntaxError(peg$SyntaxError.buildMessage(t,r),t,r,e)}function Ze(){var r,e,s,u,f,l,h,p,A,d,v,g,b,m;if(r=Ae,47===t.charCodeAt(Ae)?(e=a,Ae++):(e=n,0===me&&Se(o)),e===n&&(e=null),e!==n)if(s=Ae,(u=je())!==n&&(de=s,u=void(On=u)),(s=u)!==n){if(u=Ae,(f=$n())!==n)if(63===t.charCodeAt(Ae)?(l="?",Ae++):(l=n,0===me&&Se(c)),l!==n)if((h=$n())!==n)if((p=Be())!==n){for(A=[],d=Ae,(v=$n())!==n?(38===t.charCodeAt(Ae)?(g="&",Ae++):(g=n,0===me&&Se(i)),g!==n&&(b=$n())!==n&&(m=Be())!==n?d=v=[v,g,b,m]:(Ae=d,d=n)):(Ae=d,d=n);d!==n;)A.push(d),d=Ae,(v=$n())!==n?(38===t.charCodeAt(Ae)?(g="&",Ae++):(g=n,0===me&&Se(i)),g!==n&&(b=$n())!==n&&(m=Be())!==n?d=v=[v,g,b,m]:(Ae=d,d=n)):(Ae=d,d=n);A!==n?u=f=[f,l,h,p,A]:(Ae=u,u=n)}else Ae=u,u=n;else Ae=u,u=n;else Ae=u,u=n;else Ae=u,u=n;u===n&&(u=null),u!==n&&(f=$n())!==n?(de=r,r=e=function(){if(Bn)return On.columns=[{args:[{val:1}],as:"$count",func:"count"}],delete On.expand,delete On.limit,delete On.orderBy,{SELECT:On};if(On.expand){On.columns||(On.columns=["*"]);for(const t of On.expand){const r=On.columns.findIndex(Ln(t));r>-1&&On.columns.splice(r,1),On.columns.push(t)}delete On.expand}return On=Tn(On),{SELECT:On}}()):(Ae=r,r=n)}else Ae=r,r=n;else Ae=r,r=n;return r}function je(){var r,e,s,u,c,i,v,g;return r=Ae,t.substr(Ae,6)===f?(e=f,Ae+=6):(e=n,0===me&&Se(l)),e!==n&&(de=r,e=void(Bn=!0)),(r=e)===n&&(r=Ae,e=Ae,t.substr(Ae,4)===h?(s=h,Ae+=4):(s=n,0===me&&Se(p)),s===n&&(t.substr(Ae,6)===A?(s=A,Ae+=6):(s=n,0===me&&Se(d))),(e=s!==n?t.substring(e,Ae):s)!==n&&(de=r,g=e,e=!kn.includes(g)&&{from:{ref:[g]}}),(r=e)===n&&(r=Ae,(e=bn())===n&&(e=He()),e===n&&(e=null),e!==n?(s=Ae,(u=yn())!==n&&(c=Cn())!==n?s=u=[u,c]:(Ae=s,s=n),s===n&&(s=Ae,(u=yn())!==n&&(c=Oe())!==n&&(i=Cn())!==n?s=u=[u,c,i]:(Ae=s,s=n)),s===n&&(s=null),s!==n?(u=function(){var r,e,s;r=Ae,e=[],ue.test(t.charAt(Ae))?(s=t.charAt(Ae),Ae++):(s=n,0===me&&Se(ae));if(s!==n)for(;s!==n;)e.push(s),ue.test(t.charAt(Ae))?(s=t.charAt(Ae),Ae++):(s=n,0===me&&Se(ae));else e=n;r=e!==n?t.substring(r,Ae):e;return r}(),u===n&&(u=null),u!==n?(c=Ae,47===t.charCodeAt(Ae)?(i=a,Ae++):(i=n,0===me&&Se(o)),i!==n&&(v=je())!==n?(de=c,c=i=v):(Ae=c,c=n),c===n&&(c=null),c!==n?(de=r,r=e=function(t,r,e,n){e&&([t,r,e]=Nn(t,r,e));const s=[r?r.length>2?{id:t,where:r[1].map((t=>t.val&&t.val.match&&t.val.match(/^"(.*)"$/)?{val:t.val.match(/^"(.*)"$/)[1]}:t))}:{id:t,where:[]}:Zn?`${Object.prototype.hasOwnProperty.call(t,"val")?t.val:t}`:t];if(n&&n.from){const t=n.from.ref;Object.prototype.hasOwnProperty.call(t[0],"val")&&(s[s.length-1]={id:s[s.length-1],where:[t.shift()]}),s.push(...t)}const u={from:{ref:s}};return n&&n.columns&&(u.columns=n.columns),u}(e,s,u,c)):(Ae=r,r=n)):(Ae=r,r=n)):(Ae=r,r=n)):(Ae=r,r=n))),r}function Oe(){var r,e,s,u,a,o,c;return r=Ae,(e=He())!==n&&(de=r,e=[e]),(r=e)===n&&(r=Ae,(e=Ge())!==n&&$n()!==n?(61===t.charCodeAt(Ae)?(s="=",Ae++):(s=n,0===me&&Se(v)),s!==n&&$n()!==n?((u=He())===n&&(u=Ae,(a=dn())!==n&&(de=u,a={val:a}),u=a),u!==n?(a=Ae,(o=xn())!==n&&(c=Oe())!==n?a=o=[o,c]:(Ae=a,a=n),a===n&&(a=null),a!==n?(de=r,e=function(t,r,e){const n=[t,"=",r];return e&&n.push("and",...e[1]),n}(e,u,a),r=e):(Ae=r,r=n)):(Ae=r,r=n)):(Ae=r,r=n)):(Ae=r,r=n)),r}function Be(){var r,e,s,u,a,o,c,i;if(r=Ae,t.substr(Ae,8)===g?(e=g,Ae+=8):(e=n,0===me&&Se(b)),e!==n)if((s=$n())!==n)if((u=ke())!==n){for(a=[],o=Ae,(c=xn())!==n&&(i=ke())!==n?o=c=[c,i]:(Ae=o,o=n);o!==n;)a.push(o),o=Ae,(c=xn())!==n&&(i=ke())!==n?o=c=[c,i]:(Ae=o,o=n);a!==n?r=e=[e,s,u,a]:(Ae=r,r=n)}else Ae=r,r=n;else Ae=r,r=n;else Ae=r,r=n;if(r===n){if(r=Ae,t.substr(Ae,8)===m?(e=m,Ae+=8):(e=n,0===me&&Se(x)),e!==n)if((s=$n())!==n)if((u=Re())!==n){for(a=[],o=Ae,(c=xn())!==n&&(i=Re())!==n?o=c=[c,i]:(Ae=o,o=n);o!==n;)a.push(o),o=Ae,(c=xn())!==n&&(i=Re())!==n?o=c=[c,i]:(Ae=o,o=n);a!==n?r=e=[e,s,u,a]:(Ae=r,r=n)}else Ae=r,r=n;else Ae=r,r=n;else Ae=r,r=n;if(r===n&&(r=Ae,t.substr(Ae,8)===y?(e=y,Ae+=8):(e=n,0===me&&Se(C)),e!==n&&(s=$n())!==n&&(u=Ne())!==n?r=e=[e,s,u]:(Ae=r,r=n),r===n)){if(r=Ae,t.substr(Ae,9)===$?(e=$,Ae+=9):(e=n,0===me&&Se(w)),e!==n)if((s=$n())!==n)if((u=Ue())!==n){for(a=[],o=Ae,(c=xn())!==n&&(i=Ue())!==n?o=c=[c,i]:(Ae=o,o=n);o!==n;)a.push(o),o=Ae,(c=xn())!==n&&(i=Ue())!==n?o=c=[c,i]:(Ae=o,o=n);a!==n?r=e=[e,s,u,a]:(Ae=r,r=n)}else Ae=r,r=n;else Ae=r,r=n;else Ae=r,r=n;r===n&&(r=Ae,t.substr(Ae,5)===E?(e=E,Ae+=5):(e=n,0===me&&Se(S)),e!==n&&(s=$n())!==n?(u=function(){var t,r;t=Ae,(r=gn())!==n&&(de=t,e=r,r=void((On.limit||(On.limit={})).rows={val:e}));var e;return t=r}(),u!==n?r=e=[e,s,u]:(Ae=r,r=n)):(Ae=r,r=n),r===n&&(r=Ae,t.substr(Ae,6)===z?(e=z,Ae+=6):(e=n,0===me&&Se(Z)),e!==n&&(s=$n())!==n&&(u=Fe())!==n?r=e=[e,s,u]:(Ae=r,r=n),r===n&&(r=Ae,t.substr(Ae,11)===j?(e=j,Ae+=11):(e=n,0===me&&Se(O)),e!==n&&(s=$n())!==n&&(u=Fe())!==n?r=e=[e,s,u]:(Ae=r,r=n),r===n&&(r=Ae,t.substr(Ae,8)===B?(e=B,Ae+=8):(e=n,0===me&&Se(k)),e!==n&&(s=$n())!==n&&(u=Te())!==n?r=e=[e,s,u]:(Ae=r,r=n),r===n&&(r=Ae,t.substr(Ae,7)===R?(e=R,Ae+=7):(e=n,0===me&&Se(F)),e!==n&&(s=$n())!==n?(u=function(){var t,r;t=Ae,(r=pn())!==n&&(de=t,r=void(r&&(On.count=!0)));return t=r}(),u!==n?r=e=[e,s,u]:(Ae=r,r=n)):(Ae=r,r=n),r===n&&(r=Ae,t.substr(Ae,7)===T?(e=T,Ae+=7):(e=n,0===me&&Se(L)),e!==n&&(s=$n())!==n&&(u=Me())!==n?r=e=[e,s,u]:(Ae=r,r=n),r===n&&(r=function(){var r,e,s,u,a,o;r=Ae,tt.test(t.charAt(Ae))?(e=t.charAt(Ae),Ae++):(e=n,0===me&&Se(rt));if(e!==n){for(s=[],et.test(t.charAt(Ae))?(u=t.charAt(Ae),Ae++):(u=n,0===me&&Se(nt));u!==n;)s.push(u),et.test(t.charAt(Ae))?(u=t.charAt(Ae),Ae++):(u=n,0===me&&Se(nt));if(s!==n)if(61===t.charCodeAt(Ae)?(u="=",Ae++):(u=n,0===me&&Se(v)),u!==n){for(a=[],st.test(t.charAt(Ae))?(o=t.charAt(Ae),Ae++):(o=n,0===me&&Se(ut));o!==n;)a.push(o),st.test(t.charAt(Ae))?(o=t.charAt(Ae),Ae++):(o=n,0===me&&Se(ut));a!==n?r=e=[e,s,u,a]:(Ae=r,r=n)}else Ae=r,r=n;else Ae=r,r=n}else Ae=r,r=n;return r}())))))))}}return r}function ke(){var r,e,s;return r=Ae,42===t.charCodeAt(Ae)?(e="*",Ae++):(e=n,0===me&&Se(N)),e===n&&(e=Ge()),e!==n&&(de=r,s=e,On.columns=Array.isArray(On.columns)?On.columns:[],On.columns.find(Ln(s))||On.columns.push(s),e=s),r=e}function Re(){var r,e,s,u,a,o,c,i,f,l,h;if(r=Ae,e=Ae,42===t.charCodeAt(Ae)?(s="*",Ae++):(s=n,0===me&&Se(N)),s===n&&(s=Ge()),s!==n&&(de=e,s=function(t){const r="*"===t?{}:t;return r.expand="*",Array.isArray(On.expand)||(On.expand=[]),On.expand.find(Ln(r))||On.expand.push(r),r}(s)),(e=s)!==n){if(s=Ae,u=Ae,(a=yn())!==n&&(de=u,jn.push(On),On=On.expand[On.expand.length-1],a=void(On.expand="*")),(u=a)!==n){for(a=Ae,o=[],c=Ae,(i=$n())!==n?(59===t.charCodeAt(Ae)?(f=";",Ae++):(f=n,0===me&&Se(_)),f===n&&(f=null),f!==n&&(l=$n())!==n&&(h=Be())!==n?c=i=[i,f,l,h]:(Ae=c,c=n)):(Ae=c,c=n);c!==n;)o.push(c),c=Ae,(i=$n())!==n?(59===t.charCodeAt(Ae)?(f=";",Ae++):(f=n,0===me&&Se(_)),f===n&&(f=null),f!==n&&(l=$n())!==n&&(h=Be())!==n?c=i=[i,f,l,h]:(Ae=c,c=n)):(Ae=c,c=n);o!==n&&(de=a,o=function(t){if(On.columns){"*"===On.expand&&(On.expand=[]);for(const t of On.columns)On.expand.find(Ln(t))||On.expand.push(t);delete On.columns}else Array.isArray(On.expand)&&-1===On.expand.indexOf("*")&&On.expand.unshift("*")}()),(a=o)!==n?(o=Ae,(c=Cn())!==n&&(de=o,c=void(On=jn.pop())),(o=c)!==n?s=u=[u,a,o]:(Ae=s,s=n)):(Ae=s,s=n)}else Ae=s,s=n;s===n&&(s=null),s!==n?(u=Ae,(a=xn())!==n&&(o=Re())!==n?u=a=[a,o]:(Ae=u,u=n),u===n&&(u=null),u!==n?r=e=[e,s,u]:(Ae=r,r=n)):(Ae=r,r=n)}else Ae=r,r=n;return r}function Fe(){var t,r,e;return t=Ae,(r=gn())!==n&&(de=t,e=r,On.limit&&On.limit.offset&&On.limit.offset.val&&(e+=On.limit.offset.val),r=void((On.limit||(On.limit={})).offset={val:e})),t=r}function Te(){var t,r,e;return t=Ae,(r=Le())!==n&&(de=t,e=r,r=void(On.search=e)),t=r}function Le(){var r,e,s,u,a,o,c;if(r=Ae,e=Ae,(s=We())===n&&(s=null),s!==n&&(de=e,s=q(s)),(e=s)!==n)if(s=Ae,(u=yn())!==n&&(a=Le())!==n&&(o=Cn())!==n?(de=s,s=u=I(e,a)):(Ae=s,s=n),s===n&&(s=Ae,u=function(){var r,e,s,u,a;r=Ae,34===t.charCodeAt(Ae)?(e=Fr,Ae++):(e=n,0===me&&Se(Tr));if(e!==n){for(s=Ae,u=[],t.substr(Ae,2)===Lr?(a=Lr,Ae+=2):(a=n,0===me&&Se(Nr)),a===n&&(_r.test(t.charAt(Ae))?(a=t.charAt(Ae),Ae++):(a=n,0===me&&Se(qr)));a!==n;)u.push(a),t.substr(Ae,2)===Lr?(a=Lr,Ae+=2):(a=n,0===me&&Se(Nr)),a===n&&(_r.test(t.charAt(Ae))?(a=t.charAt(Ae),Ae++):(a=n,0===me&&Se(qr)));(s=u!==n?t.substring(s,Ae):u)!==n?(34===t.charCodeAt(Ae)?(u=Fr,Ae++):(u=n,0===me&&Se(Tr)),u!==n?(de=r,r=e=s.replace(/\\\\/g,"\\").replace(/\\"/g,'"')):(Ae=r,r=n)):(Ae=r,r=n)}else Ae=r,r=n;return r}(),u!==n&&(de=s,u=D(e,u)),(s=u)===n&&(s=Ae,(u=An())!==n&&(de=s,u=D(e,u)),(s=u)===n&&(s=Ae,(u=dn())!==n&&(de=s,u=D(e,u)),s=u))),s!==n){for(u=[],a=Ae,(o=Xe())===n&&(o=tn())===n&&(o=Ye()),o!==n&&(c=Le())!==n?(de=a,a=o=U(e,o,c)):(Ae=a,a=n);a!==n;)u.push(a),a=Ae,(o=Xe())===n&&(o=tn())===n&&(o=Ye()),o!==n&&(c=Le())!==n?(de=a,a=o=U(e,o,c)):(Ae=a,a=n);u!==n?(de=r,r=e=e):(Ae=r,r=n)}else Ae=r,r=n;else Ae=r,r=n;return r}function Ne(){var t,r,e;return t=Ae,(r=_e())!==n&&(de=t,e=r,r=void(On.where=e)),t=r}function _e(){var r,e,s,u,a,o,c,i;if(r=Ae,e=Ae,(s=We())===n&&(s=null),s!==n&&(de=e,s=q(s)),(e=s)!==n)if(s=Ae,(u=yn())!==n&&(a=_e())!==n&&(o=Cn())!==n?(de=s,s=u=I(e,a)):(Ae=s,s=n),s===n&&(s=Ae,(u=Pe())!==n&&(de=s,i=u,u=void e.push(...i)),(s=u)===n&&(s=Ae,(u=qe())!==n&&(de=s,u=function(t,r){t.push(...r)}(e,u)),(s=u)===n&&(s=Ae,u=function(){var r,e,s,u;me++,r=Ae,t.substr(Ae,8)===kt?(e=kt,Ae+=8):(e=n,0===me&&Se(Rt));e===n&&(t.substr(Ae,8)===Ft?(e=Ft,Ae+=8):(e=n,0===me&&Se(Tt)),e===n&&(t.substr(Ae,10)===Lt?(e=Lt,Ae+=10):(e=n,0===me&&Se(Nt))));e!==n&&yn()!==n&&(s=Je())!==n&&xn()!==n&&(u=Je())!==n&&Cn()!==n?(de=r,r=e={func:e,args:[s,u]}):(Ae=r,r=n);me--,r===n&&(e=n,0===me&&Se(Bt));return r}(),u!==n&&(de=s,u=function(t,r){t.push(r)}(e,u)),(s=u)===n&&(s=Ae,(u=pn())!==n&&(de=s,u=D(e,u)),s=u)))),s!==n){for(u=[],a=Ae,(o=Xe())===n&&(o=tn()),o!==n&&(c=_e())!==n?(de=a,a=o=U(e,o,c)):(Ae=a,a=n);a!==n;)u.push(a),a=Ae,(o=Xe())===n&&(o=tn()),o!==n&&(c=_e())!==n?(de=a,a=o=U(e,o,c)):(Ae=a,a=n);u!==n?(de=r,r=e=e):(Ae=r,r=n)}else Ae=r,r=n;else Ae=r,r=n;return r}function qe(){var r,e,s,u,c,i,f;if(r=Ae,e=Ae,(s=bn())!==n&&(de=e,s=[s]),(e=s)!==n)if(47===t.charCodeAt(Ae)?(s=a,Ae++):(s=n,0===me&&Se(o)),s!==n){for(u=[],c=Ae,(i=bn())!==n?(47===t.charCodeAt(Ae)?(f=a,Ae++):(f=n,0===me&&Se(o)),f!==n?(de=c,c=i=M(e,i)):(Ae=c,c=n)):(Ae=c,c=n);c!==n;)u.push(c),c=Ae,(i=bn())!==n?(47===t.charCodeAt(Ae)?(f=a,Ae++):(f=n,0===me&&Se(o)),f!==n?(de=c,c=i=M(e,i)):(Ae=c,c=n)):(Ae=c,c=n);u!==n?(c=Ae,i=function(){var r,e,s;r=Ae,t.substr(Ae,3)===H?(e=H,Ae+=3):(e=n,0===me&&Se(K));e!==n&&yn()!==n?((s=De())===n&&(s=null),s!==n&&Cn()!==n?(de=r,r=e=s):(Ae=r,r=n)):(Ae=r,r=n);return r}(),i!==n&&(de=c,i=function(t,r){let e=t.pop();if(!r)return["exists",{ref:[...t,{id:e}]}];let n=[];for(let t=0,s=0;t<r.length;++t){let u=r[t];u.ref&&0===u.ref.length&&"="===r[t+1]?n[s++]={func:"contains",args:[{ref:e},r[t+=2]]}:n[s++]=u}return n.length<r.length?(e=t.pop(),["exists",{ref:[...t,{id:e,where:n}]}]):["exists",{ref:[...t,{id:e,where:r}]}]}(e,i)),(c=i)===n&&(c=Ae,i=function(){var r,e,s;r=Ae,t.substr(Ae,3)===Q?(e=Q,Ae+=3):(e=n,0===me&&Se(V));e!==n&&yn()!==n&&(s=De())!==n&&Cn()!==n?(de=r,r=e=s):(Ae=r,r=n);return r}(),i!==n&&(de=c,i=function(t,r){let e=t.pop();return["not","exists",{ref:[...t,{id:e,where:["not",{xpr:[...r]}]}]}]}(e,i)),c=i),c!==n?(de=r,r=e=c):(Ae=r,r=n)):(Ae=r,r=n)}else Ae=r,r=n;else Ae=r,r=n;return r}function Ie(){var t,r,e,s,u,a,o,c,i;if(t=Ae,r=Ae,(e=We())===n&&(e=null),e!==n&&(de=r,e=(c=e)?[c]:[]),(r=e)!==n)if(e=Ae,(s=yn())!==n&&(u=Ie())!==n&&(a=Cn())!==n?(de=e,i=u,e=s=void r.push("(",...i,")")):(Ae=e,e=n),e===n&&(e=Ae,(s=Pe())!==n&&(de=e,s=function(t,r){t.push(...r)}(r,s)),(e=s)===n&&(e=Ae,(s=qe())!==n&&(de=e,s=function(t,r){t.push(...r)}(r,s)),e=s)),e!==n){for(s=[],u=Ae,(a=Xe())===n&&(a=tn()),a!==n&&(o=Ie())!==n?(de=u,u=a=P(r,a,o)):(Ae=u,u=n);u!==n;)s.push(u),u=Ae,(a=Xe())===n&&(a=tn()),a!==n&&(o=Ie())!==n?(de=u,u=a=P(r,a,o)):(Ae=u,u=n);s!==n?(de=t,t=r=r):(Ae=t,t=n)}else Ae=t,t=n;else Ae=t,t=n;return t}function De(){var r,e,s,u;return r=Ae,(e=bn())!==n?(58===t.charCodeAt(Ae)?(s=J,Ae++):(s=n,0===me&&Se(G)),s!==n&&(u=Ie())!==n?(de=r,r=e=function(t,r){for(const e of r)e.ref&&e.ref[0]===t&&e.ref.shift();return r}(e,u)):(Ae=r,r=n)):(Ae=r,r=n),r}function Ue(){var r,e,s,u,a;return r=Ae,(e=Ve())===n&&(e=Ge()),e!==n?(s=Ae,wn()!==n?(u=Ae,"asc"===t.substr(Ae,3)?(a="asc",Ae+=3):(a=n,0===me&&Se(W)),a===n&&(t.substr(Ae,4)===X?(a=X,Ae+=4):(a=n,0===me&&Se(Y))),(u=a!==n?t.substring(u,Ae):a)!==n?(de=s,s=u):(Ae=s,s=n)):(Ae=s,s=n),s===n&&(s=null),s!==n?(de=r,r=e=function(t,r){const e=Sn(t,r&&{sort:r});On.orderBy=On.orderBy?[...On.orderBy,e]:[e]}(e,s)):(Ae=r,r=n)):(Ae=r,r=n),r}function Me(){var r,e,s,u,c,i;if(r=Ae,(e=rn())!==n){for(s=[],u=Ae,47===t.charCodeAt(Ae)?(c=a,Ae++):(c=n,0===me&&Se(o)),c!==n&&(i=rn())!==n?u=c=[c,i]:(Ae=u,u=n);u!==n;)s.push(u),u=Ae,47===t.charCodeAt(Ae)?(c=a,Ae++):(c=n,0===me&&Se(o)),c!==n&&(i=rn())!==n?u=c=[c,i]:(Ae=u,u=n);s!==n?r=e=[e,s]:(Ae=r,r=n)}else Ae=r,r=n;return r}function Pe(){var r,e,s,u,a,o;return me++,r=Ae,(e=Je())!==n&&wn()!==n?(s=Ae,"eq"===t.substr(Ae,2)?(u="eq",Ae+=2):(u=n,0===me&&Se(ot)),u===n&&("ne"===t.substr(Ae,2)?(u="ne",Ae+=2):(u=n,0===me&&Se(ct)),u===n&&("lt"===t.substr(Ae,2)?(u="lt",Ae+=2):(u=n,0===me&&Se(it)),u===n&&("gt"===t.substr(Ae,2)?(u="gt",Ae+=2):(u=n,0===me&&Se(ft)),u===n&&("le"===t.substr(Ae,2)?(u="le",Ae+=2):(u=n,0===me&&Se(lt)),u===n&&("ge"===t.substr(Ae,2)?(u="ge",Ae+=2):(u=n,0===me&&Se(ht))))))),(s=u!==n?t.substring(s,Ae):u)!==n&&(u=wn())!==n&&(a=Je())!==n?(de=r,r=e=[e,{eq:"=",ne:"!=",lt:"<",gt:">",le:"<=",ge:">="}[o=s]||o,a]):(Ae=r,r=n)):(Ae=r,r=n),me--,r===n&&(e=n,0===me&&Se(at)),r}function Je(){var r;return me++,(r=Ve())===n&&(r=Ge())===n&&(r=He())===n&&(r=Ke())===n&&(r=Qe())===n&&(r=function(){var r,e,s,u,a;r=Ae,91===t.charCodeAt(Ae)?(e=yt,Ae++):(e=n,0===me&&Se(Ct));if(e!==n){for(s=Ae,u=[],Et.test(t.charAt(Ae))?(a=t.charAt(Ae),Ae++):(a=n,0===me&&Se(St));a!==n;)u.push(a),Et.test(t.charAt(Ae))?(a=t.charAt(Ae),Ae++):(a=n,0===me&&Se(St));(s=u!==n?t.substring(s,Ae):u)!==n?(93===t.charCodeAt(Ae)?(u=$t,Ae++):(u=n,0===me&&Se(wt)),u!==n?(de=r,r=e={list:s.replace(/"/g,"").split(",").map((t=>({val:t})))}):(Ae=r,r=n)):(Ae=r,r=n)}else Ae=r,r=n;return r}()),me--,r===n&&(n,0===me&&Se(pt)),r}function Ge(){var r,e,s,u,c,i,f,l;if(me++,r=Ae,(e=bn())!==n){for(s=[],u=Ae,47===t.charCodeAt(Ae)?(c=a,Ae++):(c=n,0===me&&Se(o)),c!==n&&(i=bn())!==n?(de=u,u=c=dt(0,i)):(Ae=u,u=n);u!==n;)s.push(u),u=Ae,47===t.charCodeAt(Ae)?(c=a,Ae++):(c=n,0===me&&Se(o)),c!==n&&(i=bn())!==n?(de=u,u=c=dt(0,i)):(Ae=u,u=n);s!==n?(de=r,l=s,r=e="null"===(f=e)?{val:null}:{ref:[f,...l]}):(Ae=r,r=n)}else Ae=r,r=n;return me--,r===n&&(e=n,0===me&&Se(At)),r}function He(){var r,e,s;return r=Ae,(e=pn())===n&&(e=function(){var r,e,s,u,a,o,c,i,f,l,h,p,A,d,v,g,b,m,x,y,C,$,w,E;r=Ae,e=Ae,s=[],Ur.test(t.charAt(Ae))?(u=t.charAt(Ae),Ae++):(u=n,0===me&&Se(Mr));if(u!==n)for(;u!==n;)s.push(u),Ur.test(t.charAt(Ae))?(u=t.charAt(Ae),Ae++):(u=n,0===me&&Se(Mr));else s=n;if(s!==n)if(45===t.charCodeAt(Ae)?(u=Pr,Ae++):(u=n,0===me&&Se(Jr)),u!==n)if(Ur.test(t.charAt(Ae))?(a=t.charAt(Ae),Ae++):(a=n,0===me&&Se(Mr)),a!==n)if(Ur.test(t.charAt(Ae))?(o=t.charAt(Ae),Ae++):(o=n,0===me&&Se(Mr)),o!==n)if(45===t.charCodeAt(Ae)?(c=Pr,Ae++):(c=n,0===me&&Se(Jr)),c!==n)if(Ur.test(t.charAt(Ae))?(i=t.charAt(Ae),Ae++):(i=n,0===me&&Se(Mr)),i!==n)if(Ur.test(t.charAt(Ae))?(f=t.charAt(Ae),Ae++):(f=n,0===me&&Se(Mr)),f!==n){if(l=Ae,84===t.charCodeAt(Ae)?(h="T",Ae++):(h=n,0===me&&Se(Gr)),h!==n)if(Ur.test(t.charAt(Ae))?(p=t.charAt(Ae),Ae++):(p=n,0===me&&Se(Mr)),p!==n)if(Ur.test(t.charAt(Ae))?(A=t.charAt(Ae),Ae++):(A=n,0===me&&Se(Mr)),A!==n)if(58===t.charCodeAt(Ae)?(d=J,Ae++):(d=n,0===me&&Se(G)),d!==n)if(Ur.test(t.charAt(Ae))?(v=t.charAt(Ae),Ae++):(v=n,0===me&&Se(Mr)),v!==n)if(Ur.test(t.charAt(Ae))?(g=t.charAt(Ae),Ae++):(g=n,0===me&&Se(Mr)),g!==n){if(b=Ae,58===t.charCodeAt(Ae)?(m=J,Ae++):(m=n,0===me&&Se(G)),m!==n)if(Ur.test(t.charAt(Ae))?(x=t.charAt(Ae),Ae++):(x=n,0===me&&Se(Mr)),x!==n)if(Ur.test(t.charAt(Ae))?(y=t.charAt(Ae),Ae++):(y=n,0===me&&Se(Mr)),y!==n){if(C=Ae,46===t.charCodeAt(Ae)?($=".",Ae++):($=n,0===me&&Se(Hr)),$!==n){if(w=[],Ur.test(t.charAt(Ae))?(E=t.charAt(Ae),Ae++):(E=n,0===me&&Se(Mr)),E!==n)for(;E!==n;)w.push(E),Ur.test(t.charAt(Ae))?(E=t.charAt(Ae),Ae++):(E=n,0===me&&Se(Mr));else w=n;w!==n?C=$=[$,w]:(Ae=C,C=n)}else Ae=C,C=n;C===n&&(C=null),C!==n?b=m=[m,x,y,C]:(Ae=b,b=n)}else Ae=b,b=n;else Ae=b,b=n;else Ae=b,b=n;b===n&&(b=null),b!==n?(90===t.charCodeAt(Ae)?(m="Z",Ae++):(m=n,0===me&&Se(Kr)),m===n&&(m=Ae,43===t.charCodeAt(Ae)?(x="+",Ae++):(x=n,0===me&&Se(Qr)),x===n&&(45===t.charCodeAt(Ae)?(x=Pr,Ae++):(x=n,0===me&&Se(Jr))),x!==n?(Ur.test(t.charAt(Ae))?(y=t.charAt(Ae),Ae++):(y=n,0===me&&Se(Mr)),y!==n?(Ur.test(t.charAt(Ae))?(C=t.charAt(Ae),Ae++):(C=n,0===me&&Se(Mr)),C!==n?(58===t.charCodeAt(Ae)?($=J,Ae++):($=n,0===me&&Se(G)),$!==n?(Ur.test(t.charAt(Ae))?(w=t.charAt(Ae),Ae++):(w=n,0===me&&Se(Mr)),w!==n?(Ur.test(t.charAt(Ae))?(E=t.charAt(Ae),Ae++):(E=n,0===me&&Se(Mr)),E!==n?m=x=[x,y,C,$,w,E]:(Ae=m,m=n)):(Ae=m,m=n)):(Ae=m,m=n)):(Ae=m,m=n)):(Ae=m,m=n)):(Ae=m,m=n)),m===n&&(m=null),m!==n?l=h=[h,p,A,d,v,g,b,m]:(Ae=l,l=n)):(Ae=l,l=n)}else Ae=l,l=n;else Ae=l,l=n;else Ae=l,l=n;else Ae=l,l=n;else Ae=l,l=n;else Ae=l,l=n;l===n&&(l=null),l!==n?e=s=[s,u,a,o,c,i,f,l]:(Ae=e,e=n)}else Ae=e,e=n;else Ae=e,e=n;else Ae=e,e=n;else Ae=e,e=n;else Ae=e,e=n;else Ae=e,e=n;else Ae=e,e=n;r=e!==n?t.substring(r,Ae):e;return r}()),e!==n&&(de=r,e=vt(e)),(r=e)===n&&(r=mn())===n&&(r=Ae,(e=vn())!==n&&(de=r,e="number"==typeof(s=e)?{val:s}:{val:s,literal:"number"}),(r=e)===n&&(r=Ae,(e=An())!==n&&(de=r,e=vt(e)),r=e)),r}function Ke(){var r,e,s,u,a,o;if(r=Ae,e=Ae,s=Ae,123===t.charCodeAt(Ae)?(u="{",Ae++):(u=n,0===me&&Se(gt)),u!==n){for(a=[],(o=Ke())===n&&(bt.test(t.charAt(Ae))?(o=t.charAt(Ae),Ae++):(o=n,0===me&&Se(mt)));o!==n;)a.push(o),(o=Ke())===n&&(bt.test(t.charAt(Ae))?(o=t.charAt(Ae),Ae++):(o=n,0===me&&Se(mt)));a!==n?(125===t.charCodeAt(Ae)?(o="}",Ae++):(o=n,0===me&&Se(xt)),o!==n?s=u=[u,a,o]:(Ae=s,s=n)):(Ae=s,s=n)}else Ae=s,s=n;return(e=s!==n?t.substring(e,Ae):s)!==n&&(de=r,e=vt(e)),r=e}function Qe(){var r,e,s,u,a,o,c,i;if(r=Ae,e=Ae,s=Ae,91===t.charCodeAt(Ae)?(u=yt,Ae++):(u=n,0===me&&Se(Ct)),u!==n&&(a=$n())!==n?(93===t.charCodeAt(Ae)?(o=$t,Ae++):(o=n,0===me&&Se(wt)),o!==n?s=u=[u,a,o]:(Ae=s,s=n)):(Ae=s,s=n),s===n)if(s=Ae,91===t.charCodeAt(Ae)?(u=yt,Ae++):(u=n,0===me&&Se(Ct)),u!==n)if((a=$n())!==n)if(123===t.charCodeAt(Ae)?(o="{",Ae++):(o=n,0===me&&Se(gt)),o!==n){for(c=[],(i=Qe())===n&&(Et.test(t.charAt(Ae))?(i=t.charAt(Ae),Ae++):(i=n,0===me&&Se(St)));i!==n;)c.push(i),(i=Qe())===n&&(Et.test(t.charAt(Ae))?(i=t.charAt(Ae),Ae++):(i=n,0===me&&Se(St)));c!==n?(93===t.charCodeAt(Ae)?(i=$t,Ae++):(i=n,0===me&&Se(wt)),i!==n?s=u=[u,a,o,c,i]:(Ae=s,s=n)):(Ae=s,s=n)}else Ae=s,s=n;else Ae=s,s=n;else Ae=s,s=n;return(e=s!==n?t.substring(e,Ae):s)!==n&&(de=r,e=vt(e)),r=e}function Ve(){var r,e,s,u,a,o,c,i,f,l;if(me++,r=Ae,e=Ae,s=[],Zt.test(t.charAt(Ae))?(u=t.charAt(Ae),Ae++):(u=n,0===me&&Se(jt)),u!==n)for(;u!==n;)s.push(u),Zt.test(t.charAt(Ae))?(u=t.charAt(Ae),Ae++):(u=n,0===me&&Se(jt));else s=n;if((e=s!==n?t.substring(e,Ae):s)!==n)if((s=yn())!==n)if((u=Je())!==n){for(a=[],o=Ae,xn()!==n&&(c=Je())!==n?(de=o,o=Ot(0,0,c)):(Ae=o,o=n);o!==n;)a.push(o),o=Ae,xn()!==n&&(c=Je())!==n?(de=o,o=Ot(0,0,c)):(Ae=o,o=n);a!==n&&(o=Cn())!==n?(de=r,i=e,f=u,l=a,zn&&!(i in zn.functions)&&En("'"+i+"' is an unknown function in OData URL spec (strict mode)"),r=e={func:i,args:[f,...l]}):(Ae=r,r=n)}else Ae=r,r=n;else Ae=r,r=n;else Ae=r,r=n;return me--,r===n&&(e=n,0===me&&Se(zt)),r}function We(){var r,e;return r=Ae,$n()!==n?("not"===t.substr(Ae,3).toLowerCase()?(e=t.substr(Ae,3),Ae+=3):(e=n,0===me&&Se(_t)),e!==n&&wn()!==n?(de=r,r="not"):(Ae=r,r=n)):(Ae=r,r=n),r}function Xe(){var r,e;return r=Ae,wn()!==n?("and"===t.substr(Ae,3).toLowerCase()?(e=t.substr(Ae,3),Ae+=3):(e=n,0===me&&Se(qt)),e!==n&&wn()!==n?(de=r,r="and"):(Ae=r,r=n)):(Ae=r,r=n),r}function Ye(){var t,r;return t=Ae,(r=wn())!==n&&(de=t,r="and"),t=r}function tn(){var r,e;return r=Ae,wn()!==n?("or"===t.substr(Ae,2).toLowerCase()?(e=t.substr(Ae,2),Ae+=2):(e=n,0===me&&Se(It)),e!==n&&wn()!==n?(de=r,r="or"):(Ae=r,r=n)):(Ae=r,r=n),r}function rn(){var r,e,s;return r=Ae,t.substr(Ae,9)===Dt?(e=Dt,Ae+=9):(e=n,0===me&&Se(Ut)),e!==n?(s=function(){var t,r,e,s,u,a,o,c,i,f;if(t=Ae,(r=yn())!==n)if((e=$n())!==n)if((s=en())!==n){for(u=[],a=Ae,(o=$n())!==n&&(c=xn())!==n&&(i=$n())!==n&&(f=en())!==n?a=o=[o,c,i,f]:(Ae=a,a=n);a!==n;)u.push(a),a=Ae,(o=$n())!==n&&(c=xn())!==n&&(i=$n())!==n&&(f=en())!==n?a=o=[o,c,i,f]:(Ae=a,a=n);u!==n&&(a=$n())!==n&&(o=Cn())!==n?t=r=[r,e,s,u,a,o]:(Ae=t,t=n)}else Ae=t,t=n;else Ae=t,t=n;else Ae=t,t=n;return t}(),s!==n?r=e=[e,s]:(Ae=r,r=n)):(Ae=r,r=n),r===n&&(r=Ae,t.substr(Ae,7)===Mt?(e=Mt,Ae+=7):(e=n,0===me&&Se(Pt)),e!==n?(s=function(){var t,r,e,s,u,a,o,c,i,f,l;if(t=Ae,(r=yn())!==n)if((e=$n())!==n){if(s=Ae,(u=yn())!==n)if((a=on())!==n){for(o=[],c=Ae,(i=xn())!==n&&(f=$n())!==n&&(l=on())!==n?c=i=[i,f,l]:(Ae=c,c=n);c!==n;)o.push(c),c=Ae,(i=xn())!==n&&(f=$n())!==n&&(l=on())!==n?c=i=[i,f,l]:(Ae=c,c=n);o!==n&&(c=Cn())!==n?s=u=[u,a,o,c]:(Ae=s,s=n)}else Ae=s,s=n;else Ae=s,s=n;s!==n?(u=Ae,(a=xn())!==n&&(o=$n())!==n&&(c=Me())!==n?u=a=[a,o,c]:(Ae=u,u=n),u===n&&(u=null),u!==n&&(a=$n())!==n&&(o=Cn())!==n?t=r=[r,e,s,u,a,o]:(Ae=t,t=n)):(Ae=t,t=n)}else Ae=t,t=n;else Ae=t,t=n;return t}(),s!==n?r=e=[e,s]:(Ae=r,r=n)):(Ae=r,r=n),r===n&&(r=Ae,t.substr(Ae,6)===Jt?(e=Jt,Ae+=6):(e=n,0===me&&Se(Gt)),e!==n&&(s=cn())!==n?r=e=[e,s]:(Ae=r,r=n),r===n&&(r=function(){var r,e,s,u;r=Ae,t.substr(Ae,8)===br?(e=br,Ae+=8):(e=n,0===me&&Se(mr));e===n&&(t.substr(Ae,11)===xr?(e=xr,Ae+=11):(e=n,0===me&&Se(yr)));e!==n&&yn()!==n&&$n()!==n&&(s=vn())!==n&&$n()!==n&&xn()!==n&&$n()!==n&&(u=Ge())!==n&&$n()!==n&&Cn()!==n?(de=r,r=e=function(t,r,e){const n={...e,sort:"topcount"===t?"desc":"asc"};On.orderBy=On.orderBy?[...On.orderBy,n]:[n],(On.limit||(On.limit={})).rows={val:r}}(e,s,u)):(Ae=r,r=n);return r}(),r===n&&(r=Ae,t.substr(Ae,6)===Ht?(e=Ht,Ae+=6):(e=n,0===me&&Se(Kt)),e!==n&&(s=fn())!==n?r=e=[e,s]:(Ae=r,r=n),r===n&&(r=Ae,t.substr(Ae,6)===Qt?(e=Qt,Ae+=6):(e=n,0===me&&Se(Vt)),e!==n?(s=function(){var t,r,e,s,u,a;t=Ae,(r=yn())!==n&&(e=$n())!==n&&(s=Te())!==n&&(u=$n())!==n&&(a=Cn())!==n?t=r=[r,e,s,u,a]:(Ae=t,t=n);return t}(),s!==n?r=e=[e,s]:(Ae=r,r=n)):(Ae=r,r=n),r===n&&(r=Ae,t.substr(Ae,6)===Wt?(e=Wt,Ae+=6):(e=n,0===me&&Se(Xt)),e!==n?(s=function(){var t,r,e,s,u,a,o,c,i,f;if(t=Ae,(r=yn())!==n)if((e=$n())!==n)if((s=Me())!==n){if(u=[],a=Ae,(o=$n())!==n&&(c=xn())!==n&&(i=$n())!==n&&(f=Me())!==n?a=o=[o,c,i,f]:(Ae=a,a=n),a!==n)for(;a!==n;)u.push(a),a=Ae,(o=$n())!==n&&(c=xn())!==n&&(i=$n())!==n&&(f=Me())!==n?a=o=[o,c,i,f]:(Ae=a,a=n);else u=n;u!==n&&(a=$n())!==n&&(o=Cn())!==n?t=r=[r,e,s,u,a,o]:(Ae=t,t=n)}else Ae=t,t=n;else Ae=t,t=n;else Ae=t,t=n;return t}(),s!==n?r=e=[e,s]:(Ae=r,r=n)):(Ae=r,r=n),r===n&&(r=Ae,t.substr(Ae,7)===Yt?(e=Yt,Ae+=7):(e=n,0===me&&Se(tr)),e!==n?(s=function(){var t,r,e,s,u,a,o,c,i,f;if(t=Ae,(r=yn())!==n)if((e=$n())!==n)if((s=ln())!==n){for(u=[],a=Ae,(o=$n())!==n&&(c=xn())!==n&&(i=$n())!==n&&(f=ln())!==n?a=o=[o,c,i,f]:(Ae=a,a=n);a!==n;)u.push(a),a=Ae,(o=$n())!==n&&(c=xn())!==n&&(i=$n())!==n&&(f=ln())!==n?a=o=[o,c,i,f]:(Ae=a,a=n);u!==n&&(a=$n())!==n&&(o=Cn())!==n?t=r=[r,e,s,u,a,o]:(Ae=t,t=n)}else Ae=t,t=n;else Ae=t,t=n;else Ae=t,t=n;return t}(),s!==n?r=e=[e,s]:(Ae=r,r=n)):(Ae=r,r=n),r===n&&(r=Ae,t.substr(Ae,13)===rr?(e=rr,Ae+=13):(e=n,0===me&&Se(er)),e!==n&&(s=hn())!==n?r=e=[e,s]:(Ae=r,r=n),r===n&&(r=Ae,t.substr(Ae,9)===nr?(e=nr,Ae+=9):(e=n,0===me&&Se(sr)),e!==n&&(s=hn())!==n?r=e=[e,s]:(Ae=r,r=n),r===n&&(r=Ae,t.substr(Ae,10)===ur?(e=ur,Ae+=10):(e=n,0===me&&Se(ar)),e!==n&&(s=hn())!==n?r=e=[e,s]:(Ae=r,r=n),r===n&&(r=Ae,t.substr(Ae,6)===or?(e=or,Ae+=6):(e=n,0===me&&Se(cr)),e!==n&&(s=hn())!==n?r=e=[e,s]:(Ae=r,r=n),r===n&&(r=function(){var r;t.substr(Ae,8)===Cr?(r=Cr,Ae+=8):(r=n,0===me&&Se($r));return r}())))))))))))),r}function en(){var r,e,s,u,a;return r=Ae,e=Ae,t.substr(Ae,6)===f?(s=f,Ae+=6):(s=n,0===me&&Se(l)),s!==n&&(u=an())!==n?(de=e,e=s={func:"count",args:["*"],as:u}):(Ae=e,e=n),e===n&&(e=nn()),e!==n&&(de=r,a=e,On.columns=Array.isArray(On.columns)?On.columns:[],On.columns.find(Ln(a))||On.columns.push(a),e=a),r=e}function nn(){var t,r,e,s,u;return t=Ae,(r=Ge())!==n&&(e=sn())!==n?((s=un())===n&&(s=null),s!==n&&(u=an())!==n?(de=t,t=r={func:e,args:[r],as:u}):(Ae=t,t=n)):(Ae=t,t=n),t===n&&(t=Ae,(r=bn())!==n&&(e=yn())!==n&&(s=nn())!==n&&(u=Cn())!==n?t=r=[r,e,s,u]:(Ae=t,t=n)),t}function sn(){var r,e,s,u,a;if(r=Ae,wn()!==n)if(t.substr(Ae,4)===ir?(e=ir,Ae+=4):(e=n,0===me&&Se(fr)),e!==n)if(wn()!==n){if(s=Ae,u=[],Zt.test(t.charAt(Ae))?(a=t.charAt(Ae),Ae++):(a=n,0===me&&Se(jt)),a!==n)for(;a!==n;)u.push(a),Zt.test(t.charAt(Ae))?(a=t.charAt(Ae),Ae++):(a=n,0===me&&Se(jt));else u=n;(s=u!==n?t.substring(s,Ae):u)!==n?(de=r,r=s):(Ae=r,r=n)}else Ae=r,r=n;else Ae=r,r=n;else Ae=r,r=n;return r}function un(){var r,e,s,u,a,o,c;return r=Ae,(e=wn())!==n?(t.substr(Ae,4)===lr?(s=lr,Ae+=4):(s=n,0===me&&Se(hr)),s!==n&&(u=wn())!==n&&(a=Ge())!==n&&(o=sn())!==n?((c=un())===n&&(c=null),c!==n?r=e=[e,s,u,a,o,c]:(Ae=r,r=n)):(Ae=r,r=n)):(Ae=r,r=n),r}function an(){var r,e,s;return r=Ae,wn()!==n?("as"===t.substr(Ae,2)?(e="as",Ae+=2):(e=n,0===me&&Se(pr)),e!==n&&wn()!==n&&(s=bn())!==n?(de=r,r=s):(Ae=r,r=n)):(Ae=r,r=n),r}function on(){var r,e,s;return r=Ae,e=function(){var r,e,s,u,a,o,c,i,f,l,h;r=Ae,e=Ae,t.substr(Ae,6)===Ar?(s=Ar,Ae+=6):(s=n,0===me&&Se(dr));if(s!==n)if((u=yn())!==n)if((a=$n())!==n)if(t.substr(Ae,4)===vr?(o=vr,Ae+=4):(o=n,0===me&&Se(gr)),o===n&&(o=Ge()),o!==n){if(c=[],i=Ae,(f=$n())!==n&&(l=xn())!==n&&(h=Ge())!==n?i=f=[f,l,h]:(Ae=i,i=n),i!==n)for(;i!==n;)c.push(i),i=Ae,(f=$n())!==n&&(l=xn())!==n&&(h=Ge())!==n?i=f=[f,l,h]:(Ae=i,i=n);else c=n;c!==n&&(i=$n())!==n&&(f=Cn())!==n?e=s=[s,u,a,o,c,i,f]:(Ae=e,e=n)}else Ae=e,e=n;else Ae=e,e=n;else Ae=e,e=n;else Ae=e,e=n;e!==n&&(de=r,e=function(t){const r=new Error("Rollup in groupby is not supported yet.");throw r.statusCode=501,r}());return r=e}(),e===n&&(e=Ge()),e!==n&&(de=r,s=e,e=void(On.groupBy||(On.groupBy=[])).push(s)),r=e}function cn(){var t,r,e,s,u,a;return t=Ae,(r=yn())!==n&&(e=$n())!==n&&(s=Ne())!==n&&(u=$n())!==n&&(a=Cn())!==n?t=r=[r,e,s,u,a]:(Ae=t,t=n),t}function fn(){var t,r,e,s,u,a,o,c,i,f,l,h,p,A;if(t=Ae,(r=yn())!==n)if((e=$n())!==n)if((s=Ge())!==n)if((u=$n())!==n)if((a=xn())!==n)if((o=$n())!==n){if(c=Ae,(i=fn())!==n){for(f=[],l=Ae,(h=$n())!==n&&(p=xn())!==n&&(A=fn())!==n?l=h=[h,p,A]:(Ae=l,l=n);l!==n;)f.push(l),l=Ae,(h=$n())!==n&&(p=xn())!==n&&(A=fn())!==n?l=h=[h,p,A]:(Ae=l,l=n);f!==n?c=i=[i,f]:(Ae=c,c=n)}else Ae=c,c=n;if(c===n)if(c=Ae,(i=cn())!==n){for(f=[],l=Ae,(h=$n())!==n&&(p=xn())!==n&&(A=fn())!==n?l=h=[h,p,A]:(Ae=l,l=n);l!==n;)f.push(l),l=Ae,(h=$n())!==n&&(p=xn())!==n&&(A=fn())!==n?l=h=[h,p,A]:(Ae=l,l=n);f!==n?c=i=[i,f]:(Ae=c,c=n)}else Ae=c,c=n;c!==n&&(i=$n())!==n&&(f=Cn())!==n?t=r=[r,e,s,u,a,o,c,i,f]:(Ae=t,t=n)}else Ae=t,t=n;else Ae=t,t=n;else Ae=t,t=n;else Ae=t,t=n;else Ae=t,t=n;else Ae=t,t=n;return t}function ln(){var t,r,e;return t=Ae,(r=_e())!==n&&(e=an())!==n?t=r=[r,e]:(Ae=t,t=n),t}function hn(){var t,r,e,s,u,a,o,c,i,f;return t=Ae,(r=yn())!==n&&(e=$n())!==n&&(s=Je())!==n&&(u=$n())!==n&&(a=xn())!==n&&(o=$n())!==n&&(c=Je())!==n&&(i=$n())!==n&&(f=Cn())!==n?t=r=[r,e,s,u,a,o,c,i,f]:(Ae=t,t=n),t}function pn(){var r,e;return r=Ae,t.substr(Ae,4)===wr?(e=wr,Ae+=4):(e=n,0===me&&Se(Er)),e===n&&(t.substr(Ae,5)===Sr?(e=Sr,Ae+=5):(e=n,0===me&&Se(zr))),e!==n&&(de=r,e="true"===e),r=e}function An(){var r,e,s,u,a;if(me++,r=Ae,39===t.charCodeAt(Ae)?(e="'",Ae++):(e=n,0===me&&Se(jr)),e!==n){for(s=Ae,u=[],t.substr(Ae,2)===Or?(a=Or,Ae+=2):(a=n,0===me&&Se(Br)),a===n&&(kr.test(t.charAt(Ae))?(a=t.charAt(Ae),Ae++):(a=n,0===me&&Se(Rr)));a!==n;)u.push(a),t.substr(Ae,2)===Or?(a=Or,Ae+=2):(a=n,0===me&&Se(Br)),a===n&&(kr.test(t.charAt(Ae))?(a=t.charAt(Ae),Ae++):(a=n,0===me&&Se(Rr)));(s=u!==n?t.substring(s,Ae):u)!==n?(39===t.charCodeAt(Ae)?(u="'",Ae++):(u=n,0===me&&Se(jr)),u!==n?(de=r,r=e=s.replace(/''/g,"'")):(Ae=r,r=n)):(Ae=r,r=n)}else Ae=r,r=n;return me--,r===n&&(e=n,0===me&&Se(Zr)),r}function dn(){var r,e,s;if(r=Ae,e=[],Ir.test(t.charAt(Ae))?(s=t.charAt(Ae),Ae++):(s=n,0===me&&Se(Dr)),s!==n)for(;s!==n;)e.push(s),Ir.test(t.charAt(Ae))?(s=t.charAt(Ae),Ae++):(s=n,0===me&&Se(Dr));else e=n;return r=e!==n?t.substring(r,Ae):e}function vn(){var r,e,s,u,a,o,c,i,f,l;if(r=Ae,e=Ae,s=Ae,Vr.test(t.charAt(Ae))?(u=t.charAt(Ae),Ae++):(u=n,0===me&&Se(Wr)),u===n&&(u=null),u!==n){if(a=[],Ur.test(t.charAt(Ae))?(o=t.charAt(Ae),Ae++):(o=n,0===me&&Se(Mr)),o!==n)for(;o!==n;)a.push(o),Ur.test(t.charAt(Ae))?(o=t.charAt(Ae),Ae++):(o=n,0===me&&Se(Mr));else a=n;if(a!==n){if(o=Ae,46===t.charCodeAt(Ae)?(c=".",Ae++):(c=n,0===me&&Se(Hr)),c!==n){if(i=[],Ur.test(t.charAt(Ae))?(f=t.charAt(Ae),Ae++):(f=n,0===me&&Se(Mr)),f!==n)for(;f!==n;)i.push(f),Ur.test(t.charAt(Ae))?(f=t.charAt(Ae),Ae++):(f=n,0===me&&Se(Mr));else i=n;i!==n?o=c=[c,i]:(Ae=o,o=n)}else Ae=o,o=n;if(o===n&&(o=null),o!==n){if(c=Ae,101===t.charCodeAt(Ae)?(i="e",Ae++):(i=n,0===me&&Se(Xr)),i!==n){if(f=[],Ur.test(t.charAt(Ae))?(l=t.charAt(Ae),Ae++):(l=n,0===me&&Se(Mr)),l!==n)for(;l!==n;)f.push(l),Ur.test(t.charAt(Ae))?(l=t.charAt(Ae),Ae++):(l=n,0===me&&Se(Mr));else f=n;f!==n?c=i=[i,f]:(Ae=c,c=n)}else Ae=c,c=n;c===n&&(c=null),c!==n?s=u=[u,a,o,c]:(Ae=s,s=n)}else Ae=s,s=n}else Ae=s,s=n}else Ae=s,s=n;return(e=s!==n?t.substring(e,Ae):s)!==n&&(de=r,e=Rn(e)),r=e}function gn(){var r,e,s,u,a,o;if(r=Ae,e=Ae,s=Ae,Vr.test(t.charAt(Ae))?(u=t.charAt(Ae),Ae++):(u=n,0===me&&Se(Wr)),u===n&&(u=null),u!==n){if(a=[],Ur.test(t.charAt(Ae))?(o=t.charAt(Ae),Ae++):(o=n,0===me&&Se(Mr)),o!==n)for(;o!==n;)a.push(o),Ur.test(t.charAt(Ae))?(o=t.charAt(Ae),Ae++):(o=n,0===me&&Se(Mr));else a=n;a!==n?s=u=[u,a]:(Ae=s,s=n)}else Ae=s,s=n;return(e=s!==n?t.substring(e,Ae):s)!==n&&(de=r,e=parseInt(e)),r=e}function bn(){var r,e,s,u,a,o,c,i;if(r=Ae,e=Ae,me++,s=pn(),me--,s===n?e=void 0:(Ae=e,e=n),e!==n)if(s=Ae,me++,u=mn(),me--,u===n?s=void 0:(Ae=s,s=n),s!==n){if(u=Ae,a=Ae,Yr.test(t.charAt(Ae))?(o=t.charAt(Ae),Ae++):(o=n,0===me&&Se(te)),o!==n){for(c=[],re.test(t.charAt(Ae))?(i=t.charAt(Ae),Ae++):(i=n,0===me&&Se(ee));i!==n;)c.push(i),re.test(t.charAt(Ae))?(i=t.charAt(Ae),Ae++):(i=n,0===me&&Se(ee));c!==n?a=o=[o,c]:(Ae=a,a=n)}else Ae=a,a=n;(u=a!==n?t.substring(u,Ae):a)!==n?(de=r,r=e=u):(Ae=r,r=n)}else Ae=r,r=n;else Ae=r,r=n;return r}function mn(){var r,e,s,u,a,o,c,i,f;if(r=Ae,e=Ae,s=Ae,u=[],ne.test(t.charAt(Ae))?(a=t.charAt(Ae),Ae++):(a=n,0===me&&Se(se)),a!==n)for(;a!==n;)u.push(a),ne.test(t.charAt(Ae))?(a=t.charAt(Ae),Ae++):(a=n,0===me&&Se(se));else u=n;if(u!==n)if(45===t.charCodeAt(Ae)?(a=Pr,Ae++):(a=n,0===me&&Se(Jr)),a!==n){if(o=[],c=Ae,i=[],ne.test(t.charAt(Ae))?(f=t.charAt(Ae),Ae++):(f=n,0===me&&Se(se)),f!==n)for(;f!==n;)i.push(f),ne.test(t.charAt(Ae))?(f=t.charAt(Ae),Ae++):(f=n,0===me&&Se(se));else i=n;if(i!==n?(45===t.charCodeAt(Ae)?(f=Pr,Ae++):(f=n,0===me&&Se(Jr)),f===n&&(f=null),f!==n?c=i=[i,f]:(Ae=c,c=n)):(Ae=c,c=n),c!==n)for(;c!==n;){if(o.push(c),c=Ae,i=[],ne.test(t.charAt(Ae))?(f=t.charAt(Ae),Ae++):(f=n,0===me&&Se(se)),f!==n)for(;f!==n;)i.push(f),ne.test(t.charAt(Ae))?(f=t.charAt(Ae),Ae++):(f=n,0===me&&Se(se));else i=n;i!==n?(45===t.charCodeAt(Ae)?(f=Pr,Ae++):(f=n,0===me&&Se(Jr)),f===n&&(f=null),f!==n?c=i=[i,f]:(Ae=c,c=n)):(Ae=c,c=n)}else o=n;o!==n?s=u=[u,a,o]:(Ae=s,s=n)}else Ae=s,s=n;else Ae=s,s=n;return(e=s!==n?t.substring(e,Ae):s)!==n&&(de=r,e=vt(e)),r=e}function xn(){var r,e,s,u;return r=Ae,(e=$n())!==n?(44===t.charCodeAt(Ae)?(s=",",Ae++):(s=n,0===me&&Se(oe)),s!==n&&(u=$n())!==n?r=e=[e,s,u]:(Ae=r,r=n)):(Ae=r,r=n),r}function yn(){var r,e,s,u;return r=Ae,(e=$n())!==n?(40===t.charCodeAt(Ae)?(s="(",Ae++):(s=n,0===me&&Se(ce)),s!==n&&(u=$n())!==n?r=e=[e,s,u]:(Ae=r,r=n)):(Ae=r,r=n),r}function Cn(){var r,e,s;return r=Ae,(e=$n())!==n?(41===t.charCodeAt(Ae)?(s=")",Ae++):(s=n,0===me&&Se(ie)),s!==n?r=e=[e,s]:(Ae=r,r=n)):(Ae=r,r=n),r}function $n(){var r,e,s;for(me++,r=Ae,e=[],le.test(t.charAt(Ae))?(s=t.charAt(Ae),Ae++):(s=n,0===me&&Se(he));s!==n;)e.push(s),le.test(t.charAt(Ae))?(s=t.charAt(Ae),Ae++):(s=n,0===me&&Se(he));return r=e!==n?t.substring(r,Ae):e,me--,r===n&&(e=n,0===me&&Se(fe)),r}function wn(){var r,e,s;if(me++,r=Ae,e=[],le.test(t.charAt(Ae))?(s=t.charAt(Ae),Ae++):(s=n,0===me&&Se(he)),s!==n)for(;s!==n;)e.push(s),le.test(t.charAt(Ae))?(s=t.charAt(Ae),Ae++):(s=n,0===me&&Se(he));else e=n;return r=e!==n?t.substring(r,Ae):e,me--,r===n&&(e=n,0===me&&Se(pe)),r}const En=(t,r=400)=>{xe(JSON.stringify({code:r,message:t}))},Sn=Object.assign,{strict:zn,minimal:Zn}=r,jn=[];let On,Bn;const kn=["$value"],Rn=r.safeNumber||function(t){const r=Number(t);return Number.isSafeInteger(r)?r:t},Fn=(t,r)=>{const e=[...t];for(const t of e)t.xpr&&(t.xpr=Fn(t.xpr,r)),t.args&&(t.args=Fn(t.args,r)),t.ref&&r.includes(t.ref.join(""));return e},Tn=t=>{const r=t.groupBy,e=t.where,n=t.columns||[],s=n.filter((t=>t.as));let u=[],a=[];if(0!==s.length&&(u=n.filter((t=>!t.ref||s.includes(t.ref.join(""))))),r){const t=r.map((({ref:t})=>t&&t.join(""))),e=n.filter((r=>r.ref&&t.includes(r.ref.join(""))));a=0===e.length?[...r]:e}const o=0!==u.length||0!==a.length?[...a,...u]:t.columns;let c={...t};o&&(c.columns=o);if(e&&(r||0!==s.length)){const t=n.map((t=>t.ref&&t.ref.join("")||t.as));c={...c,where:Fn(e,t)}}return c},Ln=t=>r=>t===r||t.as&&r.as&&t.as===r.as||t.ref&&r.ref&&t.ref.join("")===r.ref.join(""),Nn=(t,r,e)=>(t||(t=""),r&&(t+=r.reduce(((t,r)=>{for(const e of r)t+="string"==typeof e?e:e.val?"string"==typeof e.val?`'${e.val}'`:e.val:e.ref[0];return t}),""),r=void 0),[t+=e,r,e]);if((e=u())!==n&&Ae===t.length)return e;throw e!==n&&Ae<t.length&&Se({type:"end"}),ze(be,ge<t.length?t.charAt(ge):null,ge<t.length?Ee(ge,ge+1):Ee(ge,ge))}peg$subclass(peg$SyntaxError,Error),peg$SyntaxError.buildMessage=function(t,r){var e={literal:function(t){return'"'+s(t.text)+'"'},class:function(t){var r,e="";for(r=0;r<t.parts.length;r++)e+=t.parts[r]instanceof Array?u(t.parts[r][0])+"-"+u(t.parts[r][1]):u(t.parts[r]);return"["+(t.inverted?"^":"")+e+"]"},any:function(t){return"any character"},end:function(t){return"end of input"},other:function(t){return t.description}};function n(t){return t.charCodeAt(0).toString(16).toUpperCase()}function s(t){return t.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,(function(t){return"\\x0"+n(t)})).replace(/[\x10-\x1F\x7F-\x9F]/g,(function(t){return"\\x"+n(t)}))}function u(t){return t.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,(function(t){return"\\x0"+n(t)})).replace(/[\x10-\x1F\x7F-\x9F]/g,(function(t){return"\\x"+n(t)}))}return"Expected "+function(t){var r,n,s,u=new Array(t.length);for(r=0;r<t.length;r++)u[r]=(s=t[r],e[s.type](s));if(u.sort(),u.length>0){for(r=1,n=1;r<u.length;r++)u[r-1]!==u[r]&&(u[n]=u[r],n++);u.length=n}switch(u.length){case 1:return u[0];case 2:return u[0]+" or "+u[1];default:return u.slice(0,-1).join(", ")+", or "+u[u.length-1]}}(t)+" but "+function(t){return t?'"'+s(t)+'"':"end of input"}(r)+" found."},module.exports={SyntaxError:peg$SyntaxError,parse:peg$parse};
|