@sap/cds 9.4.3 → 9.4.5

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 CHANGED
@@ -4,6 +4,25 @@
4
4
  - The format is based on [Keep a Changelog](https://keepachangelog.com/).
5
5
  - This project adheres to [Semantic Versioning](https://semver.org/).
6
6
 
7
+ ## Version 9.4.5 - 2025-11-07
8
+
9
+ ### Fixed
10
+
11
+ - Custom error message for `@assert.range`
12
+ - For hierarchy requests with `$filter`, properly remove inner `where` clause
13
+ - Calling a parameterless function with parameter
14
+ - Aligned error handling for path navigation and `$expand`
15
+ - Input validation immediately rejects for `@mandatory`
16
+
17
+ ## Version 9.4.4 - 2025-10-23
18
+
19
+ ### Fixed
20
+
21
+ - Input validation of action parameters in action calls on draft state of draft enabled entities
22
+ - Input validation on `NEW` event of draft choreography
23
+ - Ignore outbox model on Windows
24
+ - `enterprise-messaging-shared`: preserve error listener during reconnect
25
+
7
26
  ## Version 9.4.3 - 2025-10-10
8
27
 
9
28
  ### Fixed
@@ -62,7 +81,6 @@
62
81
  - Broken link `cds.auth`
63
82
  - Persist original error message in draft validation messages
64
83
  - Escaping of `\t` and `\f` in edmx during localization
65
- - Escaping of JSON escape sequences other than `\"` during localization
66
84
 
67
85
  ## Version 9.3.1 - 2025-09-03
68
86
 
@@ -40,5 +40,4 @@ function string4 (raw) {
40
40
  return raw
41
41
  .replace(/''/g,"'") .replace(/^"(.*)"$/,"$1") .replace(/^'(.*)'$/,"$1")
42
42
  .replace(/\\u[\dA-F]{4}/gi, (match) => String.fromCharCode(parseInt(match.replace(/\\u/g, ''), 16)))
43
- .replace(/\\(.)/g, (_, seq) => ({ n: '\n', r: '\r', t: '\t', f: '\f' }[seq] ?? seq))
44
43
  }
@@ -13,7 +13,7 @@ module.exports = exports = function load (files, options) {
13
13
  // REVISIT: bandaid for grow as you go scenario with task queues enabled by default
14
14
  let locations
15
15
  if (cds.watched) {
16
- const _is_outbox = p => cds.utils.path.posix.normalize(p).match(/\/cds\/srv\/outbox(\.cds)?$/)
16
+ const _is_outbox = p => cds.utils.path.posix.normalize(p).match(/((\/cds\/srv\/outbox)|(\\cds\\srv\\outbox))(\.cds)?$/)
17
17
  const _outbox_only = any?.length === 1 && _is_outbox(any[0]) && (!Array.isArray(files) || !files.some(_is_outbox))
18
18
  if (_outbox_only) {
19
19
  any = undefined
@@ -85,7 +85,7 @@ exports.edmx = edmx => {
85
85
 
86
86
  exports.json = json => {
87
87
  if (typeof json === 'object') json = JSON.stringify(json)
88
- const _json_replacer = s => s && JSON.stringify(s).slice(1,-1)
88
+ const _json_replacer = s => s?.replace(/"/g, '\\"')
89
89
  return localize(json) .using (_json_replacer)
90
90
  }
91
91
 
@@ -118,7 +118,7 @@ const $any = class any {
118
118
  min.val !== undefined && max.val !== undefined ? (v,p,ctx) => v == null || min.val < v && v < max.val || ctx.error ('ASSERT_RANGE', p, this.name, this['@assert.range.message'], v, '>'+min.val, '<'+max.val) :
119
119
  min.val !== undefined ? (v,p,ctx) => v == null || min.val < v && v <= max || ctx.error ('ASSERT_RANGE', p, this.name, this['@assert.range.message'], v, '>'+min.val, max) :
120
120
  max.val !== undefined ? (v,p,ctx) => v == null || min <= v && v < max.val || ctx.error ('ASSERT_RANGE', p, this.name, this['@assert.range.message'], v, min, '<'+max.val) :
121
- (v,p,ctx) => v == null || min <= v && v <= max || ctx.error ('ASSERT_RANGE', p, this.name, null, v, min, max)
121
+ (v,p,ctx) => v == null || min <= v && v <= max || ctx.error ('ASSERT_RANGE', p, this.name, this['@assert.range.message'], v, min, max)
122
122
  )
123
123
  }
124
124
  if (this['@assert.enum'] || this['@assert.range'] && this.enum) {
@@ -327,6 +327,10 @@ const _pick = element => {
327
327
  if (categories.length) return { categories }
328
328
  }
329
329
 
330
+ // List of validation error codes that should cause an early rejection of the request
331
+ // > If one of these codes is found, the request will be rejected right after validation
332
+ const EARLY_REJECT_CODES = { ASSERT_DATA_TYPE: 1, ASSERT_MANDATORY: 1, ASSERT_NOT_NULL: 1 }
333
+
330
334
  async function validate_input(req) {
331
335
  if (!req.target || req.target._unresolved) return // Validation requires resolved targets
332
336
  if (req.event === 'CREATE' && req.target.isDraft) return // already handled in `NEW`, no need in `EDIT`
@@ -357,8 +361,7 @@ async function validate_input(req) {
357
361
  const errs = cds.validate(req.data, req.target, assertOptions)
358
362
  if (errs) {
359
363
  errs.forEach(err => req.error(err))
360
- // data types are incorrect -> stop further processing which could rely on data type
361
- if (errs.some(e => e.message === 'ASSERT_DATA_TYPE')) req.reject()
364
+ if (errs.some(e => e.message in EARLY_REJECT_CODES)) req.reject()
362
365
  else return
363
366
  }
364
367
 
@@ -406,8 +409,7 @@ function validate_action(req) {
406
409
  let errs = cds.validate(data, operation, assertOptions)
407
410
  if (errs) {
408
411
  errs.forEach(err => req.error(err))
409
- // data types are incorrect -> stop further processing which could rely on data type
410
- if (errs.some(e => e.message === 'ASSERT_DATA_TYPE')) req.reject()
412
+ if (errs.some(e => e.message in EARLY_REJECT_CODES)) req.reject()
411
413
  else return
412
414
  }
413
415
 
@@ -429,7 +431,11 @@ validate_action._initial = true
429
431
  module.exports = cds.service.impl(function () {
430
432
  this.before(['CREATE', 'UPDATE', 'NEW'], '*', validate_input)
431
433
  for (const each of this.actions) this.before(each, validate_action)
432
- for (const entity of this.entities) for (let a in entity.actions) this.before(a, entity, validate_action)
434
+ for (const entity of this.entities)
435
+ for (let a in entity.actions) {
436
+ this.before(a, entity, validate_action)
437
+ if (entity.drafts) this.before(a, entity.drafts, validate_action)
438
+ }
433
439
  })
434
440
 
435
441
  // needed for testing
@@ -1915,13 +1915,11 @@ async function beforeNew(req) {
1915
1915
 
1916
1916
  // Also support deep insertions
1917
1917
  for (const key in data) {
1918
+ if (!target.elements[key]) return data
1918
1919
  if (data[key] && target.elements[key].isAssociation) delete data[key].IsActiveEntity
1919
- if (!target.elements[key]?.isComposition) continue
1920
- // do array trick
1920
+ if (!target.elements[key].isComposition) continue
1921
1921
  if (Array.isArray(data[key])) data[key] = data[key].map(v => _cleanseData(v, target.elements[key]._target))
1922
- else if (typeof data[key] === 'object') {
1923
- data[key] = _cleanseData(data[key], target.elements[key]._target)
1924
- }
1922
+ else if (typeof data[key] === 'object') data[key] = _cleanseData(data[key], target.elements[key]._target)
1925
1923
  }
1926
1924
 
1927
1925
  return data
@@ -6,54 +6,39 @@ const _rmHandlers = client => {
6
6
  client.removeAllListeners('disconnected')
7
7
  }
8
8
 
9
- const _connectUntilConnected = (client, LOG, x) => {
10
- if (client._reconnecting) return
11
- client._reconnecting = true
12
-
13
- const _waitingTime = waitingTime(x)
14
- setTimeout(() => {
15
- connect(client, LOG, true)
16
- .then(() => {
17
- client._reconnecting = false
18
- LOG._warn && LOG.warn('Reconnected to Enterprise Messaging Client')
19
- })
20
- .catch(e => {
21
- _rmHandlers(client)
22
- LOG.error(e)
23
-
24
- LOG._warn &&
25
- LOG.warn(
26
- `Connection to Enterprise Messaging Client lost: Reconnecting in ${Math.round(_waitingTime / 1000)} s`
27
- )
28
- client._reconnecting = false
29
- _connectUntilConnected(client, LOG, x + 1)
30
- })
31
- }, _waitingTime)
32
- }
33
-
34
9
  const connect = (client, LOG, keepAlive) => {
35
10
  return new Promise((resolve, reject) => {
36
11
  _rmHandlers(client)
37
12
 
38
13
  client
39
14
  .once('connected', function () {
40
- const handleReconnection = err => {
41
- if (client._reconnecting) return
15
+ _rmHandlers(client)
42
16
 
43
- if (err && LOG._error) {
44
- err.message = 'Client error: ' + err.message
45
- LOG.error(err)
46
- }
47
- if (keepAlive) {
48
- _rmHandlers(client)
49
- _connectUntilConnected(client, LOG, 0)
50
- }
51
- }
17
+ // It's important to _always_ keep an error listener,
18
+ // otherwise it will throw and crash the server
19
+ client.on('error', err => LOG(err?.message))
52
20
 
53
- _rmHandlers(client)
54
- client.once('error', handleReconnection)
55
21
  if (keepAlive) {
56
- client.once('disconnected', handleReconnection)
22
+ client.on('disconnected', () => {
23
+ let connected = false
24
+ client.once('connected', () => {
25
+ LOG('Reconnected')
26
+ connected = true
27
+ })
28
+ let x = 1
29
+ const _untilConnected = async () => {
30
+ if (!connected) {
31
+ LOG('Reconnecting')
32
+ try {
33
+ client.connect()
34
+ } catch {
35
+ // we try again...
36
+ }
37
+ setTimeout(_untilConnected, waitingTime(x++))
38
+ }
39
+ }
40
+ _untilConnected()
41
+ })
57
42
  }
58
43
 
59
44
  resolve(client)
@@ -65,7 +50,11 @@ const connect = (client, LOG, keepAlive) => {
65
50
  reject(e)
66
51
  })
67
52
 
68
- client.connect()
53
+ try {
54
+ client.connect()
55
+ } catch (e) {
56
+ reject(e)
57
+ }
69
58
  })
70
59
  }
71
60
 
@@ -230,10 +230,9 @@ const getStructTargetName = element => {
230
230
  const _getDataFromParams = (params, operation) => {
231
231
  try {
232
232
  return Object.keys(params).reduce((acc, cur) => {
233
+ const def = operation.params?.[cur]
233
234
  acc[cur] =
234
- typeof params[cur] === 'string' && (operation.params[cur]?.elements || operation.params[cur]?.items)
235
- ? JSON.parse(params[cur])
236
- : params[cur]
235
+ typeof params[cur] === 'string' && (def?.elements || def?.items) ? JSON.parse(params[cur]) : params[cur]
237
236
  return acc
238
237
  }, {})
239
238
  } catch (e) {
@@ -449,10 +448,11 @@ function _processSegments(from, model, namespace, cqn, protocol) {
449
448
  target = current.returns.items ?? current.returns
450
449
  }
451
450
  } else if (current.isAssociation) {
452
- if (!current._target._service) {
451
+ if (current._target._service !== _get_service_of(target)) {
453
452
  // not exposed target
454
- cds.error(`Property '${current.name}' does not exist in type '${target.name.replace(namespace + '.', '')}'`, {
455
- statusCode: 404
453
+ cds.error({
454
+ status: 400,
455
+ message: `Property "${current.name}" does not exist in "${target.name.replace(namespace + '.', '')}"`
456
456
  })
457
457
  }
458
458
 
@@ -762,11 +762,17 @@ const _checkAllKeysProvided = (params, entity) => {
762
762
 
763
763
  const _doesNotExistError = (isExpand, refName, targetName, targetKind) => {
764
764
  const msg = isExpand
765
- ? `Navigation property "${refName}" is not defined in "${targetName}"`
765
+ ? `Navigation property "${refName}" does not exist in "${targetName}"`
766
766
  : `Property "${refName}" does not exist in ${targetKind === 'type' ? 'type ' : ''}"${targetName}"`
767
767
  throw Object.assign(new Error(msg), { statusCode: 400 })
768
768
  }
769
769
 
770
+ const _get_service_of = element => {
771
+ if (element._service) return element._service
772
+ if (element.parent) return _get_service_of(element.parent)
773
+ return null
774
+ }
775
+
770
776
  function _validateXpr(xpr, target, isOne, model, aliases = []) {
771
777
  if (!xpr) return []
772
778
 
@@ -818,8 +824,13 @@ function _validateXpr(xpr, target, isOne, model, aliases = []) {
818
824
  _validateXpr([{ ref: x.ref.slice(1) }], element, isOne, model)
819
825
  element = _structProperty(x.ref.slice(1), element)
820
826
  }
821
- if (!element._target) {
822
- _doesNotExistError(true, refName, target.name)
827
+ const target_service = _get_service_of(target)
828
+ if (!element._target || element._target._service !== target_service) {
829
+ _doesNotExistError(
830
+ true,
831
+ refName,
832
+ target_service ? target.name.replace(target_service.name + '.', '') : target.name
833
+ )
823
834
  }
824
835
  _validateXpr(x.expand, element._target, false, model)
825
836
  if (x.where) {
@@ -872,14 +883,14 @@ module.exports = (cqn, model, namespace, protocol) => {
872
883
  let edmName = ref[0].id || ref[0]
873
884
  // REVISIT: shouldn't be necessary
874
885
  if (edmName.split('.').length > 1)
875
- //required for concat query, where the root is already identified with the first query and subsequent queries already have correct root
886
+ // required for concat query, where the root is already identified with the first query and subsequent queries already have correct root
876
887
  edmName = edmName.split('.')[edmName.split('.').length - 1]
877
888
 
878
889
  // Make first path segment fully qualified
879
890
  const root = findCsnTargetFor(edmName, model, namespace)
880
891
 
881
892
  if (!root) {
882
- //404 else we would expose knowledge to potential attackers
893
+ // 404 else we would expose knowledge to potential attackers
883
894
  throw new cds.error(404, `Invalid resource path "${namespace}.${ref[0].id || ref[0]}"`)
884
895
  }
885
896
  if (cds.env.effective.odata.containment && model.definitions[namespace]._containedEntities.has(root.name)) {
@@ -189,7 +189,7 @@
189
189
  }
190
190
  if (newCqn.SELECT?.recurse && cqn.where) {
191
191
  const where = cqn.where
192
- delete cqn.where
192
+ delete newCqn.SELECT.where
193
193
  const columns = newCqn.SELECT.columns
194
194
  delete newCqn.SELECT.columns
195
195
  newCqn = { SELECT: { from: newCqn, where, columns } }
@@ -1 +1 @@
1
- "use strict";class peg$SyntaxError extends SyntaxError{constructor(t,e,u,r){super(t),this.expected=e,this.found=u,this.location=r,this.name="SyntaxError"}format(t){let e="Error: "+this.message;if(this.location){let u=null;const r=t.find(t=>t.source===this.location.source);r&&(u=r.text.split(/\r\n|\n|\r/g));const n=this.location.start,s=this.location.source&&"function"==typeof this.location.source.offset?this.location.source.offset(n):n,o=this.location.source+":"+s.line+":"+s.column;if(u){const t=this.location.end,r="".padEnd(s.line.toString().length," "),l=u[n.line-1],a=(n.line===t.line?t.column:l.length+1)-n.column||1;e+="\n --\x3e "+o+"\n"+r+" |\n"+s.line+" | "+l+"\n"+r+" | "+"".padEnd(n.column-1," ")+"".padEnd(a,"^")}else e+="\n at "+o}return e}static buildMessage(t,e){function u(t){return t.codePointAt(0).toString(16).toUpperCase()}const r=Object.prototype.hasOwnProperty.call(RegExp.prototype,"unicode")?new RegExp("[\\p{C}\\p{Mn}\\p{Mc}]","gu"):null;function n(t){return r?t.replace(r,t=>"\\u{"+u(t)+"}"):t}function s(t){return n(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,t=>"\\x0"+u(t)).replace(/[\x10-\x1F\x7F-\x9F]/g,t=>"\\x"+u(t)))}function o(t){return n(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,t=>"\\x0"+u(t)).replace(/[\x10-\x1F\x7F-\x9F]/g,t=>"\\x"+u(t)))}const l={literal:t=>'"'+s(t.text)+'"',class(t){const e=t.parts.map(t=>Array.isArray(t)?o(t[0])+"-"+o(t[1]):o(t));return"["+(t.inverted?"^":"")+e.join("")+"]"+(t.unicode?"u":"")},any:()=>"any character",end:()=>"end of input",other:t=>t.description};function a(t){return l[t.type](t)}return"Expected "+function(t){const e=t.map(a);if(e.sort(),e.length>0){let t=1;for(let u=1;u<e.length;u++)e[u-1]!==e[u]&&(e[t]=e[u],t++);e.length=t}switch(e.length){case 1:return e[0];case 2:return e[0]+" or "+e[1];default:return e.slice(0,-1).join(", ")+", or "+e[e.length-1]}}(t)+" but "+function(t){return t?'"'+s(t)+'"':"end of input"}(e)+" found."}}function peg$parse(t,e){const u={},r=(e=void 0!==e?e:{}).grammarSource,n={ODataRelativeURI:qn};let s=qn;const o="/",l="?",a="&",c="$count",i="$ref",f="$value",h="=",A="$skiptoken=",p="$search=",d="$select=",C="$expand=",g="$filter=",E="$orderby=",F="$top=",b="$skip=",m="$count=",B="$apply=",v="$at",D="$from",y="$toInclusive",x="$to",w="*",$="/$count",L=";",S='"',T="\\\\",j='\\"',O=":",k="any",I="all",Z="asc",_="desc",N="$deltatoken=",R="'",z=",",P="[",q="]",H="@",M="$format=",Q="eq",U="ne",G="lt",J="gt",K="le",V="ge",W="in",X="null",Y="{",tt="}",et="contains",ut="endswith",rt="startswith",nt="matchespattern",st="not",ot="and",lt="or",at="aggregate",ct="groupby",it="filter",ft="search",ht="concat",At="compute",pt="top",dt="skip",Ct="orderby",gt="com.sap.vocabularies.Hierarchy.v1.TopLevels",Et="ancestors",Ft="descendants",bt="topcount",mt="bottomcount",Bt="topsum",vt="bottomsum",Dt="toppercent",yt="bottompercent",xt="with",wt="from",$t="as",Lt="rollup",St="$all",Tt="identity",jt="HierarchyNodes",Ot="$root/",kt="HierarchyQualifier",It="NodeProperty",Zt="Levels",_t="ExpandLevels",Nt='"NodeID"',Rt='"Levels"',zt="filter(",Pt=")",qt="search(",Ht="keep start",Mt="true",Qt="false",Ut="''",Gt="-",Jt="T",Kt=".",Vt="Z",Wt="e",Xt="binary'",Yt="==",te="(",ee=/^[^&]/,ue=/^[ ]/,re=/^[^"&]/,ne=/^[^"]/,se=/^[^;)]/,oe=/^[a-zA-Z0-9_.~![\]\-]/,le=/^[^}]/,ae=/^[^\]]/,ce=/^[a-zA-Z]/,ie=/^[^)]/,fe=/^[^']/,he=/^[a-zA-Z0-9]/,Ae=/^[0-9]/,pe=/^[+\-]/,de=/^[_a-zA-Z]/,Ce=/^[_a-zA-Z0-9"."\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,ge=/^[0-9a-fA-F]/,Ee=/^[^\/?]/,Fe=/^[a-zA-Z0-9\-"."_~!$'()*+,;=:@"\/""?"]/,be=/^[a-zA-Z0-9_\-]/,me=/^[ \t\n]/,Be=In("/",!1),ve=In("?",!1),De=In("&",!1),ye=In("$count",!1),xe=In("$ref",!1),we=In("$value",!1),$e=In("=",!1),Le=In("$skiptoken=",!1),Se=In("$search=",!1),Te=In("$select=",!1),je=In("$expand=",!1),Oe=In("$filter=",!1),ke=In("$orderby=",!1),Ie=In("$top=",!1),Ze=In("$skip=",!1),_e=In("$count=",!1),Ne=In("$apply=",!1),Re=Zn(["&"],!0,!1,!1),ze=In("$at",!1),Pe=In("$from",!1),qe=In("$toInclusive",!1),He=In("$to",!1),Me=In("*",!1),Qe=In("/$count",!1),Ue=In(";",!1),Ge=Zn([" "],!1,!1,!1),Je=Zn(['"',"&"],!0,!1,!1),Ke=In('"',!1),Ve=In("\\\\",!1),We=In('\\"',!1),Xe=Zn(['"'],!0,!1,!1),Ye=Zn([";",")"],!0,!1,!1),tu=In(":",!1),eu=In("any",!1),uu=In("all",!1),ru=In("asc",!1),nu=In("desc",!1),su=In("$deltatoken=",!1),ou=_n("value with double-quoted string"),lu=In("'",!1),au=In(",",!1),cu=In("[",!1),iu=In("]",!1),fu=Zn([["a","z"],["A","Z"],["0","9"],"_",".","~","!","[","]","-"],!1,!1,!1),hu=_n("an aliased parameter (@param)"),Au=In("@",!1),pu=In("$format=",!1),du=In("eq",!1),Cu=In("ne",!1),gu=In("lt",!1),Eu=In("gt",!1),Fu=In("le",!1),bu=In("ge",!1),mu=In("in",!1),Bu=_n("navigation with $count"),vu=_n("a reference"),Du=_n("null"),yu=In("null",!1),xu=_n("a json object"),wu=In("{",!1),$u=Zn(["}"],!0,!1,!1),Lu=In("}",!1),Su=_n("a json array"),Tu=Zn(["]"],!0,!1,!1),ju=_n("a list"),Ou=_n("a function name"),ku=Zn([["a","z"],["A","Z"]],!1,!1,!1),Iu=In("contains",!0),Zu=In("endswith",!0),_u=In("startswith",!0),Nu=In("matchespattern",!0),Ru=In("NOT",!0),zu=In("AND",!0),Pu=In("OR",!0),qu=In("aggregate",!1),Hu=In("groupby",!1),Mu=In("filter",!1),Qu=In("search",!1),Uu=In("concat",!1),Gu=In("compute",!1),Ju=In("top",!1),Ku=In("skip",!1),Vu=In("orderby",!1),Wu=In("com.sap.vocabularies.Hierarchy.v1.TopLevels",!1),Xu=In("ancestors",!1),Yu=In("descendants",!1),tr=In("topcount",!0),er=In("bottomcount",!0),ur=In("topsum",!0),rr=In("bottomsum",!0),nr=In("toppercent",!0),sr=In("bottompercent",!0),or=In("with",!1),lr=In("from",!1),ar=In("as",!1),cr=In("rollup",!1),ir=In("$all",!1),fr=Zn([")"],!0,!1,!1),hr=In("identity",!1),Ar=In("HierarchyNodes",!1),pr=In("$root/",!1),dr=In("HierarchyQualifier",!1),Cr=In("NodeProperty",!1),gr=In("Levels",!1),Er=In("ExpandLevels",!1),Fr=In('"NodeID"',!1),br=In('"Levels"',!1),mr=In("filter(",!1),Br=In(")",!1),vr=In("search(",!1),Dr=In("keep start",!1),yr=_n("a boolean"),xr=In("true",!1),wr=In("false",!1),$r=_n("a single quoted string"),Lr=In("''",!1),Sr=Zn(["'"],!0,!1,!1),Tr=_n("a doubled quoted string"),jr=_n("a string and/or number"),Or=Zn([["a","z"],["A","Z"],["0","9"]],!1,!1,!1),kr=_n("a time"),Ir=Zn([["0","9"]],!1,!1,!1),Zr=_n("a date"),_r=In("-",!1),Nr=In("T",!1),Rr=In(".",!1),zr=In("Z",!1),Pr=Zn(["+","-"],!1,!1,!1),qr=_n("a number"),Hr=In("e",!1),Mr=_n("an integer"),Qr=_n("an identifier"),Ur=Zn(["_",["a","z"],["A","Z"]],!1,!1,!1),Gr=Zn(["_",["a","z"],["A","Z"],["0","9"],'"',".",'"',"ª","µ","º",["À","Ö"],["Ø","ö"],["ø","ˁ"],["ˆ","ˑ"],["ˠ","ˤ"],"ˬ","ˮ",["Ͱ","ʹ"],"Ͷ","ͷ",["ͺ","ͽ"],"Ά",["Έ","Ί"],"Ό",["Ύ","Ρ"],["Σ","ϵ"],["Ϸ","ҁ"],["Ҋ","ԧ"],["Ա","Ֆ"],"ՙ",["ա","և"],["א","ת"],["װ","ײ"],["ؠ","ي"],"ٮ","ٯ",["ٱ","ۓ"],"ە","ۥ","ۦ","ۮ","ۯ",["ۺ","ۼ"],"ۿ","ܐ",["ܒ","ܯ"],["ݍ","ޥ"],"ޱ",["ߊ","ߪ"],"ߴ","ߵ","ߺ",["ࠀ","ࠕ"],"ࠚ","ࠤ","ࠨ",["ࡀ","ࡘ"],"ࢠ",["ࢢ","ࢬ"],["ऄ","ह"],"ऽ","ॐ",["क़","ॡ"],["ॱ","ॷ"],["ॹ","ॿ"],["অ","ঌ"],"এ","ঐ",["ও","ন"],["প","র"],"ল",["শ","হ"],"ঽ","ৎ","ড়","ঢ়",["য়","ৡ"],"ৰ","ৱ",["ਅ","ਊ"],"ਏ","ਐ",["ਓ","ਨ"],["ਪ","ਰ"],"ਲ","ਲ਼","ਵ","ਸ਼","ਸ","ਹ",["ਖ਼","ੜ"],"ਫ਼",["ੲ","ੴ"],["અ","ઍ"],["એ","ઑ"],["ઓ","ન"],["પ","ર"],"લ","ળ",["વ","હ"],"ઽ","ૐ","ૠ","ૡ",["ଅ","ଌ"],"ଏ","ଐ",["ଓ","ନ"],["ପ","ର"],"ଲ","ଳ",["ଵ","ହ"],"ଽ","ଡ଼","ଢ଼",["ୟ","ୡ"],"ୱ","ஃ",["அ","ஊ"],["எ","ஐ"],["ஒ","க"],"ங","ச","ஜ","ஞ","ட","ண","த",["ந","ப"],["ம","ஹ"],"ௐ",["అ","ఌ"],["ఎ","ఐ"],["ఒ","న"],["ప","ళ"],["వ","హ"],"ఽ","ౘ","ౙ","ౠ","ౡ",["ಅ","ಌ"],["ಎ","ಐ"],["ಒ","ನ"],["ಪ","ಳ"],["ವ","ಹ"],"ಽ","ೞ","ೠ","ೡ","ೱ","ೲ",["അ","ഌ"],["എ","ഐ"],["ഒ","ഺ"],"ഽ","ൎ","ൠ","ൡ",["ൺ","ൿ"],["අ","ඖ"],["ක","න"],["ඳ","ර"],"ල",["ව","ෆ"],["ก","ะ"],"า","ำ",["เ","ๆ"],"ກ","ຂ","ຄ","ງ","ຈ","ຊ","ຍ",["ດ","ທ"],["ນ","ຟ"],["ມ","ຣ"],"ລ","ວ","ສ","ຫ",["ອ","ະ"],"າ","ຳ","ຽ",["ເ","ໄ"],"ໆ",["ໜ","ໟ"],"ༀ",["ཀ","ཇ"],["ཉ","ཬ"],["ྈ","ྌ"],["က","ဪ"],"ဿ",["ၐ","ၕ"],["ၚ","ၝ"],"ၡ","ၥ","ၦ",["ၮ","ၰ"],["ၵ","ႁ"],"ႎ",["Ⴀ","Ⴥ"],"Ⴧ","Ⴭ",["ა","ჺ"],["ჼ","ቈ"],["ቊ","ቍ"],["ቐ","ቖ"],"ቘ",["ቚ","ቝ"],["በ","ኈ"],["ኊ","ኍ"],["ነ","ኰ"],["ኲ","ኵ"],["ኸ","ኾ"],"ዀ",["ዂ","ዅ"],["ወ","ዖ"],["ዘ","ጐ"],["ጒ","ጕ"],["ጘ","ፚ"],["ᎀ","ᎏ"],["Ꭰ","Ᏼ"],["ᐁ","ᙬ"],["ᙯ","ᙿ"],["ᚁ","ᚚ"],["ᚠ","ᛪ"],["ᜀ","ᜌ"],["ᜎ","ᜑ"],["ᜠ","ᜱ"],["ᝀ","ᝑ"],["ᝠ","ᝬ"],["ᝮ","ᝰ"],["ក","ឳ"],"ៗ","ៜ",["ᠠ","ᡷ"],["ᢀ","ᢨ"],"ᢪ",["ᢰ","ᣵ"],["ᤀ","ᤜ"],["ᥐ","ᥭ"],["ᥰ","ᥴ"],["ᦀ","ᦫ"],["ᧁ","ᧇ"],["ᨀ","ᨖ"],["ᨠ","ᩔ"],"ᪧ",["ᬅ","ᬳ"],["ᭅ","ᭋ"],["ᮃ","ᮠ"],"ᮮ","ᮯ",["ᮺ","ᯥ"],["ᰀ","ᰣ"],["ᱍ","ᱏ"],["ᱚ","ᱽ"],["ᳩ","ᳬ"],["ᳮ","ᳱ"],"ᳵ","ᳶ",["ᴀ","ᶿ"],["Ḁ","ἕ"],["Ἐ","Ἕ"],["ἠ","ὅ"],["Ὀ","Ὅ"],["ὐ","ὗ"],"Ὑ","Ὓ","Ὕ",["Ὗ","ώ"],["ᾀ","ᾴ"],["ᾶ","ᾼ"],"ι",["ῂ","ῄ"],["ῆ","ῌ"],["ῐ","ΐ"],["ῖ","Ί"],["ῠ","Ῥ"],["ῲ","ῴ"],["ῶ","ῼ"],"ⁱ","ⁿ",["ₐ","ₜ"],"ℂ","ℇ",["ℊ","ℓ"],"ℕ",["ℙ","ℝ"],"ℤ","Ω","ℨ",["K","ℭ"],["ℯ","ℹ"],["ℼ","ℿ"],["ⅅ","ⅉ"],"ⅎ","Ↄ","ↄ",["Ⰰ","Ⱞ"],["ⰰ","ⱞ"],["Ⱡ","ⳤ"],["Ⳬ","ⳮ"],"Ⳳ","ⳳ",["ⴀ","ⴥ"],"ⴧ","ⴭ",["ⴰ","ⵧ"],"ⵯ",["ⶀ","ⶖ"],["ⶠ","ⶦ"],["ⶨ","ⶮ"],["ⶰ","ⶶ"],["ⶸ","ⶾ"],["ⷀ","ⷆ"],["ⷈ","ⷎ"],["ⷐ","ⷖ"],["ⷘ","ⷞ"],"ⸯ","々","〆",["〱","〵"],"〻","〼",["ぁ","ゖ"],["ゝ","ゟ"],["ァ","ヺ"],["ー","ヿ"],["ㄅ","ㄭ"],["ㄱ","ㆎ"],["ㆠ","ㆺ"],["ㇰ","ㇿ"],["㐀","䶵"],["一","鿌"],["ꀀ","ꒌ"],["ꓐ","ꓽ"],["ꔀ","ꘌ"],["ꘐ","ꘟ"],"ꘪ","ꘫ",["Ꙁ","ꙮ"],["ꙿ","ꚗ"],["ꚠ","ꛥ"],["ꜗ","ꜟ"],["Ꜣ","ꞈ"],["Ꞌ","ꞎ"],["Ꞑ","ꞓ"],["Ꞡ","Ɦ"],["ꟸ","ꠁ"],["ꠃ","ꠅ"],["ꠇ","ꠊ"],["ꠌ","ꠢ"],["ꡀ","ꡳ"],["ꢂ","ꢳ"],["ꣲ","ꣷ"],"ꣻ",["ꤊ","ꤥ"],["ꤰ","ꥆ"],["ꥠ","ꥼ"],["ꦄ","ꦲ"],"ꧏ",["ꨀ","ꨨ"],["ꩀ","ꩂ"],["ꩄ","ꩋ"],["ꩠ","ꩶ"],"ꩺ",["ꪀ","ꪯ"],"ꪱ","ꪵ","ꪶ",["ꪹ","ꪽ"],"ꫀ","ꫂ",["ꫛ","ꫝ"],["ꫠ","ꫪ"],["ꫲ","ꫴ"],["ꬁ","ꬆ"],["ꬉ","ꬎ"],["ꬑ","ꬖ"],["ꬠ","ꬦ"],["ꬨ","ꬮ"],["ꯀ","ꯢ"],["가","힣"],["ힰ","ퟆ"],["ퟋ","ퟻ"],["豈","舘"],["並","龎"],["ff","st"],["ﬓ","ﬗ"],"יִ",["ײַ","ﬨ"],["שׁ","זּ"],["טּ","לּ"],"מּ","נּ","סּ","ףּ","פּ",["צּ","ﮱ"],["ﯓ","ﴽ"],["ﵐ","ﶏ"],["ﶒ","ﷇ"],["ﷰ","ﷻ"],["ﹰ","ﹴ"],["ﹶ","ﻼ"],["A","Z"],["a","z"],["ヲ","ᄒ"],["ᅡ","ᅦ"],["ᅧ","ᅬ"],["ᅭ","ᅲ"],["ᅳ","ᅵ"]],!1,!1,!1),Jr=_n("a guid"),Kr=_n("a hex value"),Vr=Zn([["0","9"],["a","f"],["A","F"]],!1,!1,!1),Wr=Zn(["/","?"],!0,!1,!1),Xr=Zn([["a","z"],["A","Z"],["0","9"],"-",'"',".",'"',"_","~","!","$","'","(",")","*","+",",",";","=",":","@",'"',"/",'"','"',"?",'"'],!1,!1,!1),Yr=_n("a binary"),tn=In("binary'",!1),en=Zn([["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1,!1),un=In("==",!1),rn=In("(",!1),nn=Zn([" ","\t","\n"],!1,!1,!1),sn=_n("a whitespace");function on(t,e,u){return u}function ln(t,e){mo(e)}function an(t){return t}function cn(t,e,u){t.push(e,...u)}function fn(t,e){t.push(e)}function hn(t,e,u){t.push(e,...u)}function An(t,e){return e}function pn(t,e){return e}function dn(t,e){return e?{id:t,where:e}:t}function Cn(t,e){return e}function gn(t,e){return e}function En(t,e){return e}function Fn(t,e){return[t,...e]}function bn(t,e){return e}function mn(t,e){return e}function Bn(t,e){return e}function vn(t,e){return e}function Dn(t,e){return e}function yn(t,e){return e}function xn(t,e){return e}function wn(t,e){return e}let $n=0|e.peg$currPos,Ln=$n;const Sn=[{line:1,column:1}];let Tn,jn=$n,On=e.peg$maxFailExpected||[],kn=0|e.peg$silentFails;if(e.startRule){if(!(e.startRule in n))throw new Error("Can't start parsing from rule \""+e.startRule+'".');s=n[e.startRule]}function In(t,e){return{type:"literal",text:t,ignoreCase:e}}function Zn(t,e,u,r){return{type:"class",parts:t,inverted:e,ignoreCase:u,unicode:r}}function _n(t){return{type:"other",description:t}}function Nn(e){let u,r=Sn[e];if(r)return r;if(e>=Sn.length)u=Sn.length-1;else for(u=e;!Sn[--u];);for(r=Sn[u],r={line:r.line,column:r.column};u<e;)10===t.charCodeAt(u)?(r.line++,r.column=1):r.column++,u++;return Sn[e]=r,r}function Rn(t,e,u){const n=Nn(t),s=Nn(e),o={source:r,start:{offset:t,line:n.line,column:n.column},end:{offset:e,line:s.line,column:s.column}};return u&&r&&"function"==typeof r.offset&&(o.start=r.offset(o.start),o.end=r.offset(o.end)),o}function zn(t){$n<jn||($n>jn&&(jn=$n,On=[]),On.push(t))}function Pn(t,e,u){return new peg$SyntaxError(peg$SyntaxError.buildMessage(t,e),t,e,u)}function qn(){let e,r,n,s,c,i,f,h,A,p,d,C,g,E,F,b,m;if(e=$n,47===t.charCodeAt($n)?(r=o,$n++):(r=u,0===kn&&zn(Be)),r===u&&(r=null),n=$n,s=Hn(),s!==u&&(Ln=n,s=void(so=s)),n=s,n!==u){if(s=$n,c=Vs(),63===t.charCodeAt($n)?(i=l,$n++):(i=u,0===kn&&zn(ve)),i!==u){if(f=Vs(),h=$n,38===t.charCodeAt($n)?(A=a,$n++):(A=u,0===kn&&zn(De)),A===u&&(A=null),p=Vs(),d=Gn(),d!==u){if(C=[],g=$n,E=Vs(),F=[],38===t.charCodeAt($n)?(b=a,$n++):(b=u,0===kn&&zn(De)),b!==u)for(;b!==u;)F.push(b),38===t.charCodeAt($n)?(b=a,$n++):(b=u,0===kn&&zn(De));else F=u;for(F!==u?(b=Vs(),m=Gn(),m!==u?(E=[E,F,b,m],g=E):($n=g,g=u)):($n=g,g=u);g!==u;){if(C.push(g),g=$n,E=Vs(),F=[],38===t.charCodeAt($n)?(b=a,$n++):(b=u,0===kn&&zn(De)),b!==u)for(;b!==u;)F.push(b),38===t.charCodeAt($n)?(b=a,$n++):(b=u,0===kn&&zn(De));else F=u;F!==u?(b=Vs(),m=Gn(),m!==u?(E=[E,F,b,m],g=E):($n=g,g=u)):($n=g,g=u)}A=[A,p,d,C],h=A}else $n=h,h=u;h===u&&(h=null),c=[c,i,f,h],s=c}else $n=s,s=u;s===u&&(s=null),c=Vs(),Ln=e,e=function(){if(oo)return so.columns=[{args:[{val:1}],as:"$count",func:"count"}],delete so.expand,delete so.limit,delete so.orderBy,so.apply?go(so,so.apply):{SELECT:so};let t;if(so.expand){so.columns||(so.columns=["*"],t=!0);for(const t of so.expand){const e=so.columns.findIndex(io(t));e>-1&&so.columns.splice(e,1),so.columns.push(t)}delete so.expand}return so.count&&so.apply&&(so.__countAggregated=!0),so.apply?go(so,so.apply,t):{SELECT:so}}()}else $n=e,e=u;return e}function Hn(){let e,r,n,s,l,a,h;var A;return e=$n,t.substr($n,6)===c?(r=c,$n+=6):(r=u,0===kn&&zn(ye)),r!==u&&(Ln=e,r=void(oo=!0)),e=r,e===u&&(e=$n,r=$n,t.substr($n,4)===i?(n=i,$n+=4):(n=u,0===kn&&zn(xe)),n===u&&(t.substr($n,6)===f?(n=f,$n+=6):(n=u,0===kn&&zn(we))),r=n!==u?t.substring(r,$n):n,r!==u&&(Ln=e,A=r,r=!Xs.includes(A)&&{from:{ref:[A]}}),e=r,e===u&&(e=$n,r=$n,n=Hs(),n!==u?(s=$n,l=Js(),l!==u?(a=Ks(),a!==u?(l=[l,a],s=l):($n=s,s=u)):($n=s,s=u),s===u&&(s=$n,l=Js(),l!==u?(a=Qn(),a!==u?(h=Ks(),h!==u?(l=[l,a,h],s=l):($n=s,s=u)):($n=s,s=u)):($n=s,s=u)),s===u&&(s=null),l=$n,kn++,a=Us(),kn--,a===u?l=void 0:($n=l,l=u),l!==u?(n=[n,s,l],r=n):($n=r,r=u)):($n=r,r=u),r===u&&(r=$n,n=Us(),n!==u&&(Ln=r,n=[n]),r=n),r===u&&(r=null),n=$n,s=$n,47===t.charCodeAt($n)?(l=o,$n++):(l=u,0===kn&&zn(Be)),l!==u&&(Ln=s,l=l),s=l,s!==u?(l=Hn(),l===u&&(l=null),s=[s,l],n=s):($n=n,n=u),n===u&&(n=null),Ln=e,e=function(t,e){if(e=e&&e[1],!t&&!e)return{from:{ref:[""]}};if(!t&&e&&e.from)return e.from.ref.unshift(""),e;const[u,r]=t,n=[];if(r?r.length>2?n.push({id:u,where:r[1].map(t=>t.val&&t.val.match&&t.val.match(/^"(.*)"$/)?{val:t.val.match(/^"(.*)"$/)[1]}:t)}):n.push({id:u,where:[]}):ro?n.push(`${"object"==typeof u&&"val"in u?u.val:u}`):"object"==typeof u&&"string"==typeof u.val&&u.val.match(/^[1-9]\d*$|^0$/)?n.push({val:lo(u.val)}):n.push(u),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}(r,n))),e}function Mn(){let e,r,n,s,o,l,a,c,i;return e=$n,r=ds(),r!==u&&(Ln=e,r=[r]),e=r,e===u&&(e=$n,r=ps(),r!==u?(n=Vs(),61===t.charCodeAt($n)?(s=h,$n++):(s=u,0===kn&&zn($e)),s!==u?(o=Vs(),l=ds(),l!==u?(a=$n,c=Gs(),c!==u?(i=Mn(),i!==u?(c=[c,i],a=c):($n=a,a=u)):($n=a,a=u),a===u&&(a=null),Ln=e,e=function(t,e,u){const r=[t,"=",e];return u&&r.push("and",...u[1]),r}(r,l,a)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)),e}function Qn(){let e,r,n,s,o,l,a,c,i;return e=$n,r=ps(),r!==u?(n=Vs(),61===t.charCodeAt($n)?(s=h,$n++):(s=u,0===kn&&zn($e)),s!==u?(o=Vs(),l=Cs(),l!==u?(a=$n,c=Gs(),c!==u?(i=Qn(),i!==u?(c=[c,i],a=c):($n=a,a=u)):($n=a,a=u),a===u&&(a=null),Ln=e,e=function(t,e,u){const r=[t,"=",e];return u&&r.push("and",...u[1]),r}(r,l,a)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,r=Cs(),r!==u&&(Ln=e,r=[r]),e=r),e}function Un(){let e,r,n,s,l,a,c;if(e=$n,r=Hs(),r!==u){for(n=$n,s=Js(),s!==u?(l=Ks(),l!==u?(s=[s,l],n=s):($n=n,n=u)):($n=n,n=u),n===u&&(n=$n,s=Js(),s!==u?(l=Mn(),l!==u?(a=Ks(),a!==u?(Ln=n,n=l):($n=n,n=u)):($n=n,n=u)):($n=n,n=u)),n===u&&(n=null),s=[],l=$n,47===t.charCodeAt($n)?(a=o,$n++):(a=u,0===kn&&zn(Be)),a!==u?(c=Un(),c!==u?(Ln=l,l=on(0,0,c)):($n=l,l=u)):($n=l,l=u);l!==u;)s.push(l),l=$n,47===t.charCodeAt($n)?(a=o,$n++):(a=u,0===kn&&zn(Be)),a!==u?(c=Un(),c!==u?(Ln=l,l=on(0,0,c)):($n=l,l=u)):($n=l,l=u);Ln=e,e=function(t,e,u){const r=[e?{id:t,where:e}:t];return u.length&&r.push(...u.map(t=>t.from.ref[0])),{from:{ref:r}}}(r,n,s)}else $n=e,e=u;return e}function Gn(){let e,r,n,s;var o,l;return e=$n,t.substr($n,11)===A?(r=A,$n+=11):(r=u,0===kn&&zn(Le)),r!==u?(n=Vs(),s=function(){let e,r;e=$n,r=function(){let e,r,n;e=$n,r=[],n=t.charAt($n),Fe.test(n)?$n++:(n=u,0===kn&&zn(Xr));if(n!==u)for(;n!==u;)r.push(n),n=t.charAt($n),Fe.test(n)?$n++:(n=u,0===kn&&zn(Xr));else r=u;e=r!==u?t.substring(e,$n):r;return e}(),r===u&&(r=null);return Ln=e,r=function(t){ao(t,{SELECT:so})}(r),e=r,e}(),r=[r,n,s],e=r):($n=e,e=u),e===u&&(e=$n,t.substr($n,8)===p?(r=p,$n+=8):(r=u,0===kn&&zn(Se)),r!==u?(n=Vs(),s=function(){let e,r;e=$n,r=function(){let e,r,n,s,o,l,a,c,i,f,h,A;e=$n,r=$n,n=[],s=$n,o=$n,l=[],a=t.charAt($n),ue.test(a)?$n++:(a=u,0===kn&&zn(Ge));for(;a!==u;)l.push(a),a=t.charAt($n),ue.test(a)?$n++:(a=u,0===kn&&zn(Ge));o=t.substring(o,$n),l=[],a=t.charAt($n),re.test(a)?$n++:(a=u,0===kn&&zn(Je));if(a!==u)for(;a!==u;)l.push(a),a=t.charAt($n),re.test(a)?$n++:(a=u,0===kn&&zn(Je));else l=u;if(l===u){if(l=[],a=$n,34===t.charCodeAt($n)?(c=S,$n++):(c=u,0===kn&&zn(Ke)),c!==u){if(i=[],t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe)))),f!==u)for(;f!==u;)i.push(f),t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe))));else i=u;if(i!==u)if(34===t.charCodeAt($n)?(f=S,$n++):(f=u,0===kn&&zn(Ke)),f!==u){for(h=[],A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));A!==u;)h.push(A),A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));c=[c,i,f,h],a=c}else $n=a,a=u;else $n=a,a=u}else $n=a,a=u;if(a!==u)for(;a!==u;)if(l.push(a),a=$n,34===t.charCodeAt($n)?(c=S,$n++):(c=u,0===kn&&zn(Ke)),c!==u){if(i=[],t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe)))),f!==u)for(;f!==u;)i.push(f),t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe))));else i=u;if(i!==u)if(34===t.charCodeAt($n)?(f=S,$n++):(f=u,0===kn&&zn(Ke)),f!==u){for(h=[],A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));A!==u;)h.push(A),A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));c=[c,i,f,h],a=c}else $n=a,a=u;else $n=a,a=u}else $n=a,a=u;else l=u}l!==u?(o=[o,l],s=o):($n=s,s=u);if(s!==u)for(;s!==u;){for(n.push(s),s=$n,o=$n,l=[],a=t.charAt($n),ue.test(a)?$n++:(a=u,0===kn&&zn(Ge));a!==u;)l.push(a),a=t.charAt($n),ue.test(a)?$n++:(a=u,0===kn&&zn(Ge));if(o=t.substring(o,$n),l=[],a=t.charAt($n),re.test(a)?$n++:(a=u,0===kn&&zn(Je)),a!==u)for(;a!==u;)l.push(a),a=t.charAt($n),re.test(a)?$n++:(a=u,0===kn&&zn(Je));else l=u;if(l===u){if(l=[],a=$n,34===t.charCodeAt($n)?(c=S,$n++):(c=u,0===kn&&zn(Ke)),c!==u){if(i=[],t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe)))),f!==u)for(;f!==u;)i.push(f),t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe))));else i=u;if(i!==u)if(34===t.charCodeAt($n)?(f=S,$n++):(f=u,0===kn&&zn(Ke)),f!==u){for(h=[],A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));A!==u;)h.push(A),A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));c=[c,i,f,h],a=c}else $n=a,a=u;else $n=a,a=u}else $n=a,a=u;if(a!==u)for(;a!==u;)if(l.push(a),a=$n,34===t.charCodeAt($n)?(c=S,$n++):(c=u,0===kn&&zn(Ke)),c!==u){if(i=[],t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe)))),f!==u)for(;f!==u;)i.push(f),t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe))));else i=u;if(i!==u)if(34===t.charCodeAt($n)?(f=S,$n++):(f=u,0===kn&&zn(Ke)),f!==u){for(h=[],A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));A!==u;)h.push(A),A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));c=[c,i,f,h],a=c}else $n=a,a=u;else $n=a,a=u}else $n=a,a=u;else l=u}l!==u?(o=[o,l],s=o):($n=s,s=u)}else n=u;r=n!==u?t.substring(r,$n):n;r!==u&&(Ln=e,r=[{val:r}]);return e=r,e}(),r!==u&&(Ln=e);e=r,e===u&&(e=Vs());return e}(),s!==u?(Ln=e,e=void((l=s)&&(so.search=l))):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,r=Jn(),r!==u&&(Ln=e,r=void((o=r)&&o.apply&&(so.apply=o.apply))),e=r,e===u&&(e=function(){let e,r,n,s;e=$n,t.substr($n,3)===v?(r=v,$n+=3):(r=u,0===kn&&zn(ze));r===u&&(t.substr($n,5)===D?(r=D,$n+=5):(r=u,0===kn&&zn(Pe)),r===u&&(t.substr($n,12)===y?(r=y,$n+=12):(r=u,0===kn&&zn(qe)),r===u&&(t.substr($n,3)===x?(r=x,$n+=3):(r=u,0===kn&&zn(He)))));r!==u?(61===t.charCodeAt($n)?(n=h,$n++):(n=u,0===kn&&zn($e)),n!==u?(s=Ps(),s!==u?(r=[r,n,s],e=r):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),e===u&&(e=function(){let e,r,n,s,o;e=$n,t.substr($n,8)===M?(r=M,$n+=8):(r=u,0===kn&&zn(pu));if(r!==u){for(n=$n,s=[],o=t.charAt($n),ee.test(o)?$n++:(o=u,0===kn&&zn(Re));o!==u;)s.push(o),o=t.charAt($n),ee.test(o)?$n++:(o=u,0===kn&&zn(Re));n=t.substring(n,$n),Ln=e,e=function(t){if("json"!==t.toLowerCase()){const t=new Error('Only query parameter "json" is allowed in "$format".');throw t.statusCode=501,t}}(n)}else $n=e,e=u;return e}(),e===u&&(e=function(){let e,r,n,s,o,l;e=$n,r=$n,n=[],s=t.charAt($n),oe.test(s)?$n++:(s=u,0===kn&&zn(fu));if(s!==u)for(;s!==u;)n.push(s),s=t.charAt($n),oe.test(s)?$n++:(s=u,0===kn&&zn(fu));else n=u;r=n!==u?t.substring(r,$n):n;if(r!==u){for(61===t.charCodeAt($n)?(n=h,$n++):(n=u,0===kn&&zn($e)),n===u&&(n=null),s=$n,o=[],l=t.charAt($n),ee.test(l)?$n++:(l=u,0===kn&&zn(Re));l!==u;)o.push(l),l=t.charAt($n),ee.test(l)?$n++:(l=u,0===kn&&zn(Re));s=t.substring(s,$n),Ln=e,e=vo(r,s)}else $n=e,e=u;return e}(),e===u&&(e=function(){let e,r,n,s,o;e=$n,r=cs(),r!==u?(61===t.charCodeAt($n)?(n=h,$n++):(n=u,0===kn&&zn($e)),n!==u?(s=$n,kn++,o=cs(),kn--,o===u?s=void 0:($n=s,s=u),s!==u?(o=function(){let e,r,n,s;e=ds(),e===u&&(e=Es(),e===u&&(e=Fs(),e===u&&(e=$n,91===t.charCodeAt($n)?(r=P,$n++):(r=u,0===kn&&zn(cu)),r!==u?(n=function(){let e,r,n,s,o,l;if(e=$n,r=as(),r!==u){for(n=[],s=$n,44===t.charCodeAt($n)?(o=z,$n++):(o=u,0===kn&&zn(au)),o!==u?(l=as(),l!==u?(Ln=s,s=An(0,l)):($n=s,s=u)):($n=s,s=u);s!==u;)n.push(s),s=$n,44===t.charCodeAt($n)?(o=z,$n++):(o=u,0===kn&&zn(au)),o!==u?(l=as(),l!==u?(Ln=s,s=An(0,l)):($n=s,s=u)):($n=s,s=u);Ln=e,a=n,e=[r,...a]}else $n=e,e=u;var a;return e}(),n!==u?(93===t.charCodeAt($n)?(s=q,$n++):(s=u,0===kn&&zn(iu)),s!==u?(Ln=e,e={list:n}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u))));return e}(),o!==u?(Ln=e,e=void(yo(so,l=r,a=o)||(a.val?a=a.val:a.list&&Array.isArray(a.list)&&(a=a.list.map(t=>t.val)),vo(l,a)))):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);var l,a;return e}(),e===u&&(e=function(){let e,r,n,s,o;e=$n,t.substr($n,12)===N?(r=N,$n+=12):(r=u,0===kn&&zn(su));if(r!==u){for(n=Vs(),s=[],o=t.charAt($n),ee.test(o)?$n++:(o=u,0===kn&&zn(Re));o!==u;)s.push(o),o=t.charAt($n),ee.test(o)?$n++:(o=u,0===kn&&zn(Re));Ln=e,e=s}else $n=e,e=u;return e}()))))))),e}function Jn(){let e,r,n,s,o,l,a,c;if(e=$n,t.substr($n,8)===d?(r=d,$n+=8):(r=u,0===kn&&zn(Te)),r!==u)if(n=Vs(),s=Kn(),s!==u){for(o=[],l=$n,a=Gs(),a!==u?(c=Kn(),c!==u?(a=[a,c],l=a):($n=l,l=u)):($n=l,l=u);l!==u;)o.push(l),l=$n,a=Gs(),a!==u?(c=Kn(),c!==u?(a=[a,c],l=a):($n=l,l=u)):($n=l,l=u);r=[r,n,s,o],e=r}else $n=e,e=u;else $n=e,e=u;if(e===u){if(e=$n,t.substr($n,8)===C?(r=C,$n+=8):(r=u,0===kn&&zn(je)),r!==u)if(n=Vs(),s=Xn(),s!==u){for(o=[],l=$n,a=Gs(),a!==u?(c=Xn(),c!==u?(a=[a,c],l=a):($n=l,l=u)):($n=l,l=u);l!==u;)o.push(l),l=$n,a=Gs(),a!==u?(c=Xn(),c!==u?(a=[a,c],l=a):($n=l,l=u)):($n=l,l=u);l=function(){let e,r;e=$n,t.substr($n,7)===$?(r=$,$n+=7):(r=u,0===kn&&zn(Qe));r!==u&&(Ln=e,r=function(){const t=new Error('"/$count" is not supported for expand operation');throw t.statusCode=501,t}());return e=r,e}(),l===u&&(l=null),r=[r,n,s,o,l],e=r}else $n=e,e=u;else $n=e,e=u;if(e===u&&(e=$n,t.substr($n,8)===g?(r=g,$n+=8):(r=u,0===kn&&zn(Oe)),r!==u?(n=Vs(),s=us(),s!==u?(Ln=e,h=s,e=void(so.where=h)):($n=e,e=u)):($n=e,e=u),e===u)){if(e=$n,t.substr($n,9)===E?(r=E,$n+=9):(r=u,0===kn&&zn(ke)),r!==u)if(n=Vs(),s=ls(),s!==u){for(o=[],l=$n,a=Gs(),a!==u?(c=ls(),c!==u?(Ln=l,l=ln(0,c)):($n=l,l=u)):($n=l,l=u);l!==u;)o.push(l),l=$n,a=Gs(),a!==u?(c=ls(),c!==u?(Ln=l,l=ln(0,c)):($n=l,l=u)):($n=l,l=u);Ln=e,e=void mo(s,!0)}else $n=e,e=u;else $n=e,e=u;if(e===u&&(e=$n,t.substr($n,5)===F?(r=F,$n+=5):(r=u,0===kn&&zn(Ie)),r!==u?(n=Vs(),s=Yn(),s!==u?(Ln=e,f=s,e=void((so.limit||(so.limit={})).rows={val:f})):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,6)===b?(r=b,$n+=6):(r=u,0===kn&&zn(Ze)),r!==u?(n=Vs(),s=ts(),s!==u?(Ln=e,e=function(t){bo(t)}(s)):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,8)===p?(r=p,$n+=8):(r=u,0===kn&&zn(Se)),r!==u?(n=Vs(),s=es(),s!==u?(Ln=e,e=void((i=s)&&(so.search=i))):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,7)===m?(r=m,$n+=7):(r=u,0===kn&&zn(_e)),r!==u?(n=Vs(),s=function(){let t,e;t=$n,e=Ns(),e!==u&&(Ln=t,e=function(t){t&&(so.count=!0)}(e));return t=e,t}(),s!==u?(r=[r,n,s],e=r):($n=e,e=u)):($n=e,e=u),e===u))))){if(e=$n,t.substr($n,7)===B?(r=B,$n+=7):(r=u,0===kn&&zn(Ne)),r!==u)if(Ln=$n,n=cds.env.features.skip_apply_parsing,n=n?void 0:u,n!==u){for(s=Vs(),o=[],l=t.charAt($n),ee.test(l)?$n++:(l=u,0===kn&&zn(Re));l!==u;)o.push(l),l=t.charAt($n),ee.test(l)?$n++:(l=u,0===kn&&zn(Re));Ln=e,e=null}else $n=e,e=u;else $n=e,e=u;e===u&&(e=$n,t.substr($n,7)===B?(r=B,$n+=7):(r=u,0===kn&&zn(Ne)),r!==u?(n=Vs(),s=Ds(),s!==u?(Ln=e,e=s):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,8)===C?(r=C,$n+=8):(r=u,0===kn&&zn(je)),r!==u&&(Ln=e,r=null),e=r))}}}var i,f,h;return e}function Kn(){let e,r;var n;return e=$n,42===t.charCodeAt($n)?(r=w,$n++):(r=u,0===kn&&zn(Me)),r===u&&(r=ps()),r!==u&&(Ln=e,n=r,so.columns=Array.isArray(so.columns)?so.columns:[],so.columns.find(io(n))||so.columns.push(n),r=n),e=r,e}function Vn(){let e,r,n,s,o,l;for(e=$n,r=[],n=$n,s=Jn(),s!==u?(o=Vs(),59===t.charCodeAt($n)?(l=L,$n++):(l=u,0===kn&&zn(Ue)),l===u&&(l=null),Ln=n,n=s):($n=n,n=u);n!==u;)r.push(n),n=$n,s=Jn(),s!==u?(o=Vs(),59===t.charCodeAt($n)?(l=L,$n++):(l=u,0===kn&&zn(Ue)),l===u&&(l=null),Ln=n,n=an(s)):($n=n,n=u);return Ln=e,r=function(t){if(t.find(t=>t&&void 0!==t.apply)){const t=new Error('"$apply" is not supported for expand operation');throw t.statusCode=501,t}if(so.columns){for(const t of so.columns)so.expand.find(io(t))||so.expand.push(t);delete so.columns}else Array.isArray(so.expand)&&-1===so.expand.indexOf("*")&&so.expand.unshift("*")}(r),e=r,e}function Wn(){let t,e,r,n,s;return t=$n,e=$n,r=Js(),r!==u&&(Ln=e,no.push(so),so=so.expand[so.expand.length-1],r=void(so.expand=[])),e=r,e!==u?(r=Vn(),n=$n,s=Ks(),s!==u&&(Ln=n,so.expand.length||so.expand.push("*"),s=void(so=no.pop())),n=s,n!==u?(e=[e,r,n],t=e):($n=t,t=u)):($n=t,t=u),t}function Xn(){let e,r,n;return e=$n,r=$n,42===t.charCodeAt($n)?(n=w,$n++):(n=u,0===kn&&zn(Me)),n===u&&(n=ps()),n!==u&&(Ln=r,n=function(t){const e="*"===t?{}:t;if(e.ref?.length>1)throw Object.assign(new Error(`navigation "${e.ref.join("/")}" in "$expand" is not supported`),{statusCode:400});return e.expand=["*"],Array.isArray(so.expand)||(so.expand=[]),so.expand.find(io(e))||so.expand.push(e),e}(n)),r=n,r!==u?(n=Wn(),n===u&&(n=null),r=[r,n],e=r):($n=e,e=u),e}function Yn(){let t,e;return t=$n,e=qs(),e!==u&&(Ln=t),t=e,t}function ts(){let t,e;return t=$n,e=qs(),e!==u&&(Ln=t),t=e,t}function es(){let e,r,n,s;if(e=$n,r=$n,n=[],s=t.charAt($n),se.test(s)?$n++:(s=u,0===kn&&zn(Ye)),s!==u)for(;s!==u;)n.push(s),s=t.charAt($n),se.test(s)?$n++:(s=u,0===kn&&zn(Ye));else n=u;return r=n!==u?t.substring(r,$n):n,r!==u&&(Ln=e,r=[{val:r}]),e=r,e===u&&(e=Vs()),e}function us(){let t,e;return t=$n,e=rs(),e!==u&&(Ln=t),t=e,t}function rs(){let e,r,n,s,o,l,a;var c,i;if(e=$n,r=$n,n=ms(),n===u&&(n=null),Ln=r,n=(c=n)?[c]:[],r=n,n=$n,s=Js(),s!==u?(o=rs(),o!==u?(l=Ks(),l!==u?(Ln=n,i=o,n=void r.push({xpr:i})):($n=n,n=u)):($n=n,n=u)):($n=n,n=u),n===u&&(n=$n,s=is(),s!==u&&(Ln=n,s=function(t,e){t.push(...e)}(r,s)),n=s,n===u&&(n=$n,s=ns(),s!==u&&(Ln=n,s=function(t,e){"not"===t[t.length-1]&&"not"===e[0]?t.push({xpr:e}):t.push(...e)}(r,s)),n=s,n===u&&(n=$n,s=function(){let e,r,n,s,o,l,a;e=$n,r=t.substr($n,8),r.toLowerCase()===et?$n+=8:(r=u,0===kn&&zn(Iu));r===u&&(r=t.substr($n,8),r.toLowerCase()===ut?$n+=8:(r=u,0===kn&&zn(Zu)),r===u&&(r=t.substr($n,10),r.toLowerCase()===rt?$n+=10:(r=u,0===kn&&zn(_u)),r===u&&(r=t.substr($n,14),r.toLowerCase()===nt?$n+=14:(r=u,0===kn&&zn(Nu)))));r!==u?(n=Js(),n!==u?(s=As(),s!==u?(o=Gs(),o!==u?(l=As(),l!==u?(a=Ks(),a!==u?(Ln=e,c=s,i=l,e={func:r.toLowerCase(),args:[c,i]}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);var c,i;return e}(),s!==u&&(Ln=n,s=function(t,e){t.push(e)}(r,s)),n=s,n===u&&(n=$n,s=Ns(),s!==u&&(Ln=n,s=function(t,e){t.push({val:e})}(r,s)),n=s,n===u&&(n=$n,s=hs(),s!==u&&(Ln=n,s=function(t,e){t.push(...e)}(r,s)),n=s))))),n!==u){for(s=[],o=$n,l=Bs(),l===u&&(l=vs()),l!==u?(a=rs(),a!==u?(Ln=o,o=cn(r,l,a)):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Bs(),l===u&&(l=vs()),l!==u?(a=rs(),a!==u?(Ln=o,o=cn(r,l,a)):($n=o,o=u)):($n=o,o=u);Ln=e,e=r}else $n=e,e=u;return e}function ns(){let e,r,n,s,l,a,c;if(e=$n,r=$n,n=Hs(),n!==u&&(Ln=r,n=[n]),r=n,r!==u)if(47===t.charCodeAt($n)?(n=o,$n++):(n=u,0===kn&&zn(Be)),n!==u){for(s=[],l=$n,a=Hs(),a!==u?(47===t.charCodeAt($n)?(c=o,$n++):(c=u,0===kn&&zn(Be)),c!==u?(Ln=l,l=fn(r,a)):($n=l,l=u)):($n=l,l=u);l!==u;)s.push(l),l=$n,a=Hs(),a!==u?(47===t.charCodeAt($n)?(c=o,$n++):(c=u,0===kn&&zn(Be)),c!==u?(Ln=l,l=fn(r,a)):($n=l,l=u)):($n=l,l=u);l=$n,a=function(){let e,r,n,s,o;e=$n,t.substr($n,3)===k?(r=k,$n+=3):(r=u,0===kn&&zn(eu));r!==u?(n=Js(),n!==u?(s=os(),s===u&&(s=null),o=Ks(),o!==u?(Ln=e,e=s):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),a!==u&&(Ln=l,a=function(t,e){let u=t.pop();if(!e)return["exists",{ref:[...t,{id:u}]}];let r=[];for(let t=0,n=0;t<e.length;++t){let s=e[t];s.ref&&0===s.ref.length&&"="===e[t+1]?r[n++]={func:"contains",args:[{ref:[u]},e[t+=2]]}:r[n++]=s}return r.length<e.length?t.length?(u=t.pop(),["exists",{ref:[...t,{id:u,where:r}]}]):r:["exists",{ref:[...t,{id:u,where:e}]}]}(r,a)),l=a,l===u&&(l=$n,a=function(){let e,r,n,s,o;e=$n,t.substr($n,3)===I?(r=I,$n+=3):(r=u,0===kn&&zn(uu));r!==u?(n=Js(),n!==u?(s=os(),s!==u?(o=Ks(),o!==u?(Ln=e,e=s):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),a!==u&&(Ln=l,a=function(t,e){let u=t.pop();return["not","exists",{ref:[...t,{id:u,where:["not",{xpr:[...e]}]}]}]}(r,a)),l=a),l!==u?(Ln=e,e=l):($n=e,e=u)}else $n=e,e=u;else $n=e,e=u;return e}function ss(){let t,e,r,n,s,o,l;var a,c;if(t=$n,e=$n,r=ms(),r===u&&(r=null),Ln=e,r=(a=r)?[a]:[],e=r,r=$n,n=Js(),n!==u?(s=ss(),s!==u?(o=Ks(),o!==u?(Ln=r,c=s,r=void e.push({xpr:c})):($n=r,r=u)):($n=r,r=u)):($n=r,r=u),r===u&&(r=$n,n=is(),n!==u&&(Ln=r,n=function(t,e){t.push(...e)}(e,n)),r=n,r===u&&(r=$n,n=bs(),n!==u&&(Ln=r,n=function(t,e){t.push(e)}(e,n)),r=n,r===u&&(r=$n,n=ns(),n!==u&&(Ln=r,n=function(t,e){t.push(...e)}(e,n)),r=n,r===u&&(r=$n,n=hs(),n!==u&&(Ln=r,n=function(t,e){t.push(...e)}(e,n)),r=n)))),r!==u){for(n=[],s=$n,o=Bs(),o===u&&(o=vs()),o!==u?(l=ss(),l!==u?(Ln=s,s=hn(e,o,l)):($n=s,s=u)):($n=s,s=u);s!==u;)n.push(s),s=$n,o=Bs(),o===u&&(o=vs()),o!==u?(l=ss(),l!==u?(Ln=s,s=hn(e,o,l)):($n=s,s=u)):($n=s,s=u);Ln=t,t=e}else $n=t,t=u;return t}function os(){let e,r,n,s;return e=$n,r=Hs(),r!==u?(58===t.charCodeAt($n)?(n=O,$n++):(n=u,0===kn&&zn(tu)),n!==u?(s=ss(),s!==u?(Ln=e,e=Bo(r,s)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function ls(){let e,r,n,s,o,l;var a;return e=$n,r=$n,n=ns(),n!==u&&(Ln=r,n=function(){const t=new Error('"$orderby" does not support lambda');throw t.statusCode=501,t}()),r=n,r===u&&(r=bs(),r===u&&(r=ps())),r!==u?(n=$n,s=Ws(),s!==u?(o=$n,t.substr($n,3)===Z?(l=Z,$n+=3):(l=u,0===kn&&zn(ru)),l===u&&(t.substr($n,4)===_?(l=_,$n+=4):(l=u,0===kn&&zn(nu))),o=l!==u?t.substring(o,$n):l,o!==u?(Ln=n,n=o):($n=n,n=u)):($n=n,n=u),n===u&&(n=null),Ln=e,e=eo(r,(a=n)&&{sort:a})):($n=e,e=u),e}function as(){let e,r,n;return kn++,e=$n,r=zs(),r!==u&&(Ln=e,r={val:r}),e=r,e===u&&(e=$n,r=$n,kn++,39===t.charCodeAt($n)?(n=R,$n++):(n=u,0===kn&&zn(lu)),kn--,n===u?r=void 0:($n=r,r=u),r!==u?(n=ds(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u)),kn--,e===u&&(r=u,0===kn&&zn(ou)),e}function cs(){let e,r,n;return kn++,e=$n,64===t.charCodeAt($n)?(r=H,$n++):(r=u,0===kn&&zn(Au)),r!==u?(n=Hs(),n!==u?(Ln=e,e="@"+n):($n=e,e=u)):($n=e,e=u),kn--,e===u&&(r=u,0===kn&&zn(hu)),e}function is(){let e,r,n,s,o,l;var a,c;return e=$n,r=As(),r!==u?(n=Ws(),n!==u?(s=$n,t.substr($n,2)===Q?(o=Q,$n+=2):(o=u,0===kn&&zn(du)),o===u&&(t.substr($n,2)===U?(o=U,$n+=2):(o=u,0===kn&&zn(Cu)),o===u&&(t.substr($n,2)===G?(o=G,$n+=2):(o=u,0===kn&&zn(gu)),o===u&&(t.substr($n,2)===J?(o=J,$n+=2):(o=u,0===kn&&zn(Eu)),o===u&&(t.substr($n,2)===K?(o=K,$n+=2):(o=u,0===kn&&zn(Fu)),o===u&&(t.substr($n,2)===V?(o=V,$n+=2):(o=u,0===kn&&zn(bu))))))),s=o!==u?t.substring(s,$n):o,s!==u?(o=Ws(),o!==u?(l=As(),l!==u?(Ln=e,c=l,e=[r,Ys[a=s]||a,c]):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function fs(){let e,r;return e=$n,r=cs(),r!==u&&(Ln=e,r={list:r}),e=r,e===u&&(e=function(){let e,r,n,s;kn++,e=$n,r=Js(),r!==u?(n=function(){let e,r,n,s,o,l;if(e=$n,r=ds(),r!==u){for(n=[],s=$n,44===t.charCodeAt($n)?(o=z,$n++):(o=u,0===kn&&zn(au)),o!==u?(l=ds(),l!==u?(Ln=s,s=gn(0,l)):($n=s,s=u)):($n=s,s=u);s!==u;)n.push(s),s=$n,44===t.charCodeAt($n)?(o=z,$n++):(o=u,0===kn&&zn(au)),o!==u?(l=ds(),l!==u?(Ln=s,s=gn(0,l)):($n=s,s=u)):($n=s,s=u);Ln=e,a=n,e=[r,...a]}else $n=e,e=u;var a;return e}(),n!==u?(s=Ks(),s!==u?(Ln=e,e={list:n}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);kn--,e===u&&(r=u,0===kn&&zn(ju));return e}()),e}function hs(){let e,r,n,s,o,l;return e=$n,r=As(),r!==u?(n=Ws(),n!==u?(t.substr($n,2)===W?(s=W,$n+=2):(s=u,0===kn&&zn(mu)),s!==u?(o=Ws(),o!==u?(l=fs(),l!==u?(Ln=e,e=[r,"in",l]):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function As(){let e;return e=function(){let e,r,n,s,l,a,i,f;kn++,e=$n,r=[],n=$n,s=Hs(),s!==u?(l=$n,a=Js(),a!==u?(i=Mn(),i!==u?(f=Ks(),f!==u?(Ln=l,l=pn(0,i)):($n=l,l=u)):($n=l,l=u)):($n=l,l=u),l===u&&(l=null),47===t.charCodeAt($n)?(a=o,$n++):(a=u,0===kn&&zn(Be)),a!==u?(Ln=n,n=dn(s,l)):($n=n,n=u)):($n=n,n=u);if(n!==u)for(;n!==u;)r.push(n),n=$n,s=Hs(),s!==u?(l=$n,a=Js(),a!==u?(i=Mn(),i!==u?(f=Ks(),f!==u?(Ln=l,l=pn(0,i)):($n=l,l=u)):($n=l,l=u)):($n=l,l=u),l===u&&(l=null),47===t.charCodeAt($n)?(a=o,$n++):(a=u,0===kn&&zn(Be)),a!==u?(Ln=n,n=dn(s,l)):($n=n,n=u)):($n=n,n=u);else r=u;r!==u?(t.substr($n,6)===c?(n=c,$n+=6):(n=u,0===kn&&zn(ye)),n!==u?(Ln=e,e={func:"count",as:"$count",args:[{ref:r}]}):($n=e,e=u)):($n=e,e=u);kn--,e===u&&(r=u,0===kn&&zn(Bu));return e}(),e===u&&(e=bs(),e===u&&(e=ds(),e===u&&(e=ps(),e===u&&(e=Es(),e===u&&(e=Fs(),e===u&&(e=function(){let e,r,n,s,o;kn++,e=$n,91===t.charCodeAt($n)?(r=P,$n++):(r=u,0===kn&&zn(cu));if(r!==u){for(n=$n,s=[],o=t.charAt($n),ae.test(o)?$n++:(o=u,0===kn&&zn(Tu));o!==u;)s.push(o),o=t.charAt($n),ae.test(o)?$n++:(o=u,0===kn&&zn(Tu));n=t.substring(n,$n),93===t.charCodeAt($n)?(s=q,$n++):(s=u,0===kn&&zn(iu)),s!==u?(Ln=e,e={list:n.replace(/"/g,"").split(",").map(t=>({val:t}))}):($n=e,e=u)}else $n=e,e=u;kn--,e===u&&(r=u,0===kn&&zn(ju));return e}())))))),e}function ps(){let e,r,n,s,l,a;if(kn++,e=$n,r=Hs(),r!==u){for(n=[],s=$n,47===t.charCodeAt($n)?(l=o,$n++):(l=u,0===kn&&zn(Be)),l!==u?(a=Hs(),a!==u?(Ln=s,s=Cn(0,a)):($n=s,s=u)):($n=s,s=u);s!==u;)n.push(s),s=$n,47===t.charCodeAt($n)?(l=o,$n++):(l=u,0===kn&&zn(Be)),l!==u?(a=Hs(),a!==u?(Ln=s,s=Cn(0,a)):($n=s,s=u)):($n=s,s=u);Ln=e,i=n,e="null"===(c=r)?{val:null}:{ref:[c,...i]}}else $n=e,e=u;var c,i;return kn--,e===u&&(r=u,0===kn&&zn(vu)),e}function ds(){let e,r;return e=$n,r=Ns(),r!==u&&(Ln=e,r={val:r}),e=r,e===u&&(e=$n,r=Ps(),r!==u&&(Ln=e,r=function(t){return{val:t}}(r)),e=r,e===u&&(e=$n,r=function(){let e,r,n,s,o,l,a,c,i,f;kn++,e=$n,r=$n,n=t.charAt($n),Ae.test(n)?$n++:(n=u,0===kn&&zn(Ir));n!==u?(s=t.charAt($n),Ae.test(s)?$n++:(s=u,0===kn&&zn(Ir)),s!==u?(58===t.charCodeAt($n)?(o=O,$n++):(o=u,0===kn&&zn(tu)),o!==u?(l=t.charAt($n),Ae.test(l)?$n++:(l=u,0===kn&&zn(Ir)),l!==u?(a=t.charAt($n),Ae.test(a)?$n++:(a=u,0===kn&&zn(Ir)),a!==u?(58===t.charCodeAt($n)?(c=O,$n++):(c=u,0===kn&&zn(tu)),c!==u?(i=t.charAt($n),Ae.test(i)?$n++:(i=u,0===kn&&zn(Ir)),i!==u?(f=t.charAt($n),Ae.test(f)?$n++:(f=u,0===kn&&zn(Ir)),f!==u?(n=[n,s,o,l,a,c,i,f],r=n):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u);e=r!==u?t.substring(e,$n):r;kn--,e===u&&(r=u,0===kn&&zn(kr));return e}(),r!==u&&(Ln=e,r=function(t){return{val:t}}(r)),e=r,e===u&&(e=$n,r=Ms(),r!==u&&(Ln=e,r=function(t){return{val:t}}(r)),e=r,e===u&&(e=$n,r=function(){let e,r,n,s,o,l,a,c,i,f,h;kn++,e=$n,r=$n,kn++,n=function(){let e,r,n;e=$n,r=[],n=t.charAt($n),Ae.test(n)?$n++:(n=u,0===kn&&zn(Ir));if(n!==u)for(;n!==u;)r.push(n),n=t.charAt($n),Ae.test(n)?$n++:(n=u,0===kn&&zn(Ir));else r=u;r!==u?(45===t.charCodeAt($n)?(n=Gt,$n++):(n=u,0===kn&&zn(_r)),n!==u?(r=[r,n],e=r):($n=e,e=u)):($n=e,e=u);return e}(),kn--,n===u?r=void 0:($n=r,r=u);if(r!==u){if(n=$n,s=$n,o=t.charAt($n),pe.test(o)?$n++:(o=u,0===kn&&zn(Pr)),o===u&&(o=null),l=[],a=t.charAt($n),Ae.test(a)?$n++:(a=u,0===kn&&zn(Ir)),a!==u)for(;a!==u;)l.push(a),a=t.charAt($n),Ae.test(a)?$n++:(a=u,0===kn&&zn(Ir));else l=u;if(l!==u){if(a=$n,46===t.charCodeAt($n)?(c=Kt,$n++):(c=u,0===kn&&zn(Rr)),c!==u){if(i=[],f=t.charAt($n),Ae.test(f)?$n++:(f=u,0===kn&&zn(Ir)),f!==u)for(;f!==u;)i.push(f),f=t.charAt($n),Ae.test(f)?$n++:(f=u,0===kn&&zn(Ir));else i=u;i!==u?(c=[c,i],a=c):($n=a,a=u)}else $n=a,a=u;if(a===u&&(a=null),c=$n,101===t.charCodeAt($n)?(i=Wt,$n++):(i=u,0===kn&&zn(Hr)),i!==u){if(f=[],h=t.charAt($n),Ae.test(h)?$n++:(h=u,0===kn&&zn(Ir)),h!==u)for(;h!==u;)f.push(h),h=t.charAt($n),Ae.test(h)?$n++:(h=u,0===kn&&zn(Ir));else f=u;f!==u?(i=[i,f],c=i):($n=c,c=u)}else $n=c,c=u;c===u&&(c=null),o=[o,l,a,c],s=o}else $n=s,s=u;n=s!==u?t.substring(n,$n):s,n!==u?(Ln=e,e=lo(n)):($n=e,e=u)}else $n=e,e=u;kn--,e===u&&(r=u,0===kn&&zn(qr));return e}(),r!==u&&(Ln=e,r=function(t){return"number"==typeof t?{val:t}:{val:t,literal:"number"}}(r)),e=r,e===u&&(e=$n,r=Rs(),r!==u&&(Ln=e,r=function(t){return{val:t}}(r)),e=r,e===u&&(e=$n,r=function(){let e,r,n,s,o,l;kn++,e=$n,t.substr($n,7)===Xt?(r=Xt,$n+=7):(r=u,0===kn&&zn(tn));if(r!==u){if(n=$n,s=$n,o=[],l=t.charAt($n),be.test(l)?$n++:(l=u,0===kn&&zn(en)),l!==u)for(;l!==u;)o.push(l),l=t.charAt($n),be.test(l)?$n++:(l=u,0===kn&&zn(en));else o=u;o!==u?(t.substr($n,2)===Yt?(l=Yt,$n+=2):(l=u,0===kn&&zn(un)),l===u&&(61===t.charCodeAt($n)?(l=h,$n++):(l=u,0===kn&&zn($e))),l===u&&(l=null),o=[o,l],s=o):($n=s,s=u),n=s!==u?t.substring(n,$n):s,n!==u?(39===t.charCodeAt($n)?(s=R,$n++):(s=u,0===kn&&zn(lu)),s!==u?(Ln=e,a=n,e=cds.env.features.base64_binaries?co(a):Buffer.from(a,"base64")):($n=e,e=u)):($n=e,e=u)}else $n=e,e=u;var a;kn--,e===u&&(r=u,0===kn&&zn(Yr));return e}(),r!==u&&(Ln=e,r=function(t){return{val:t}}(r)),e=r,e===u&&(e=$n,r=cs(),r!==u&&(Ln=e,r=function(t){return{val:t}}(r)),e=r,e===u&&(e=gs())))))))),e}function Cs(){let e,r;return e=$n,r=ds(),r!==u&&(Ln=e),e=r,e===u&&(e=$n,r=function(){let e,r,n;kn++,e=$n,r=[],n=t.charAt($n),he.test(n)?$n++:(n=u,0===kn&&zn(Or));if(n!==u)for(;n!==u;)r.push(n),n=t.charAt($n),he.test(n)?$n++:(n=u,0===kn&&zn(Or));else r=u;e=r!==u?t.substring(e,$n):r;kn--,e===u&&(r=u,0===kn&&zn(jr));return e}(),r!==u&&(Ln=e,r=function(t){throw Object.assign(new Error(`Invalid value: ${t}`),{statusCode:400})}(r)),e=r),e}function gs(){let e,r;return kn++,e=$n,t.substr($n,4)===X?(r=X,$n+=4):(r=u,0===kn&&zn(yu)),r!==u&&(Ln=e,r={val:null}),e=r,kn--,e===u&&(r=u,0===kn&&zn(Du)),e}function Es(){let e,r,n,s,o,l;if(kn++,e=$n,r=$n,n=$n,123===t.charCodeAt($n)?(s=Y,$n++):(s=u,0===kn&&zn(wu)),s!==u){for(o=[],l=Es(),l===u&&(l=t.charAt($n),le.test(l)?$n++:(l=u,0===kn&&zn($u)));l!==u;)o.push(l),l=Es(),l===u&&(l=t.charAt($n),le.test(l)?$n++:(l=u,0===kn&&zn($u)));125===t.charCodeAt($n)?(l=tt,$n++):(l=u,0===kn&&zn(Lu)),l!==u?(s=[s,o,l],n=s):($n=n,n=u)}else $n=n,n=u;return r=n!==u?t.substring(r,$n):n,r!==u&&(Ln=e,r={val:r}),e=r,kn--,e===u&&(r=u,0===kn&&zn(xu)),e}function Fs(){let e,r,n,s,o,l,a,c;if(kn++,e=$n,r=$n,n=$n,91===t.charCodeAt($n)?(s=P,$n++):(s=u,0===kn&&zn(cu)),s!==u?(o=Vs(),93===t.charCodeAt($n)?(l=q,$n++):(l=u,0===kn&&zn(iu)),l!==u?(s=[s,o,l],n=s):($n=n,n=u)):($n=n,n=u),n===u)if(n=$n,91===t.charCodeAt($n)?(s=P,$n++):(s=u,0===kn&&zn(cu)),s!==u)if(o=Vs(),123===t.charCodeAt($n)?(l=Y,$n++):(l=u,0===kn&&zn(wu)),l!==u){for(a=[],c=Fs(),c===u&&(c=t.charAt($n),ae.test(c)?$n++:(c=u,0===kn&&zn(Tu)));c!==u;)a.push(c),c=Fs(),c===u&&(c=t.charAt($n),ae.test(c)?$n++:(c=u,0===kn&&zn(Tu)));93===t.charCodeAt($n)?(c=q,$n++):(c=u,0===kn&&zn(iu)),c!==u?(s=[s,o,l,a,c],n=s):($n=n,n=u)}else $n=n,n=u;else $n=n,n=u;return r=n!==u?t.substring(r,$n):n,r!==u&&(Ln=e,r={val:r}),e=r,kn--,e===u&&(r=u,0===kn&&zn(Su)),e}function bs(){let e,r,n,s,o;return e=$n,r=function(){let e,r,n;if(kn++,e=$n,r=[],n=t.charAt($n),ce.test(n)?$n++:(n=u,0===kn&&zn(ku)),n!==u)for(;n!==u;)r.push(n),n=t.charAt($n),ce.test(n)?$n++:(n=u,0===kn&&zn(ku));else r=u;return e=r!==u?t.substring(e,$n):r,kn--,e===u&&(r=u,0===kn&&zn(Ou)),e}(),r!==u?(n=Js(),n!==u?(s=function(){let t,e,r,n,s,o,l,a;if(t=$n,e=[],r=$n,n=As(),n!==u){for(s=[],o=$n,l=Gs(),l!==u?(a=As(),a!==u?(Ln=o,o=En(0,a)):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Gs(),l!==u?(a=As(),a!==u?(Ln=o,o=En(0,a)):($n=o,o=u)):($n=o,o=u);Ln=r,r=Fn(n,s)}else $n=r,r=u;for(;r!==u;)if(e.push(r),r=$n,n=As(),n!==u){for(s=[],o=$n,l=Gs(),l!==u?(a=As(),a!==u?(Ln=o,o=En(0,a)):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Gs(),l!==u?(a=As(),a!==u?(Ln=o,o=En(0,a)):($n=o,o=u)):($n=o,o=u);Ln=r,r=Fn(n,s)}else $n=r,r=u;return Ln=t,e=function(t){return t.length?t[0]:t}(e),t=e,t}(),o=Ks(),o!==u?(Ln=e,e=function(t,e){if(uo&&!(t.toLowerCase()in uo.functions))throw Object.assign(new Error(`Function "${t}" is not supported`),{statusCode:501});return{func:t.toLowerCase(),args:e}}(r,s)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function ms(){let e,r,n,s;return e=$n,r=Vs(),n=t.substr($n,3),n.toLowerCase()===st?$n+=3:(n=u,0===kn&&zn(Ru)),n!==u?(s=Ws(),s!==u?(Ln=e,e="not"):($n=e,e=u)):($n=e,e=u),e}function Bs(){let e,r,n,s;return e=$n,r=Ws(),r!==u?(n=t.substr($n,3),n.toLowerCase()===ot?$n+=3:(n=u,0===kn&&zn(zu)),n!==u?(s=Ws(),s!==u?(Ln=e,e="and"):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function vs(){let e,r,n,s;return e=$n,r=Ws(),r!==u?(n=t.substr($n,2),n.toLowerCase()===lt?$n+=2:(n=u,0===kn&&zn(Pu)),n!==u?(s=Ws(),s!==u?(Ln=e,e="or"):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function Ds(){let e,r,n,s,l,a;if(e=$n,r=ys(),r!==u){for(n=[],s=$n,47===t.charCodeAt($n)?(l=o,$n++):(l=u,0===kn&&zn(Be)),l!==u?(a=ys(),a!==u?(Ln=s,s=bn(0,a)):($n=s,s=u)):($n=s,s=u);s!==u;)n.push(s),s=$n,47===t.charCodeAt($n)?(l=o,$n++):(l=u,0===kn&&zn(Be)),l!==u?(a=ys(),a!==u?(Ln=s,s=bn(0,a)):($n=s,s=u)):($n=s,s=u);Ln=e,e=function(t,e){if(void 0!==t){e=Array.isArray(e)?e:[e];for(let u of e)for(const e in u)"where"!==e||!t.groupBy&&!t.aggregate||t.having?"limit"===e&&t.limit?.offset&&u.limit.rows?t.limit.rows=u.limit.rows:"limit"===e&&t.limit?.offset?.val&&u.limit.offset?.val?t.limit.offset.val+=u.limit.offset.val:t[e]||"aggregate"===e&&t.groupBy&&!u.groupBy?(t={apply:t})[e]=u[e]:t[e]=u[e]:t.having=u[e];return{apply:t}}}(r,n)}else $n=e,e=u;return e}function ys(){let e,r,n;return e=$n,t.substr($n,9)===at?(r=at,$n+=9):(r=u,0===kn&&zn(qu)),r!==u?(n=function(){let t,e,r,n,s,o,l,a,c,i;if(t=$n,e=Js(),e!==u)if(r=Vs(),n=xs(),n!==u){for(s=[],o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=xs(),i!==u?(Ln=o,o=mn(0,i)):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=xs(),i!==u?(Ln=o,o=mn(0,i)):($n=o,o=u)):($n=o,o=u);o=Vs(),l=Ks(),l!==u?(Ln=t,f=s,t={aggregate:[n,...f]}):($n=t,t=u)}else $n=t,t=u;else $n=t,t=u;var f;return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,7)===ct?(r=ct,$n+=7):(r=u,0===kn&&zn(Hu)),r!==u?(n=function(){let t,e,r,n,s,o,l,a,c;if(t=$n,e=Js(),e!==u)if(r=Js(),r!==u)if(n=Ts(),n!==u){for(s=[],o=$n,l=Gs(),l!==u?(a=Ts(),a!==u?(Ln=o,o=Bn(0,a)):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Gs(),l!==u?(a=Ts(),a!==u?(Ln=o,o=Bn(0,a)):($n=o,o=u)):($n=o,o=u);o=$n,l=Ks(),l!==u&&(Ln=o,i=s,l={groupBy:[n,...i]}),o=l,o!==u?(l=$n,a=Gs(),a!==u?(c=Ds(),c!==u?(Ln=l,l=c):($n=l,l=u)):($n=l,l=u),l===u&&(l=null),a=Ks(),a!==u?(Ln=t,t=function(t,e,u){let r={};return r=u?{groupBy:[t,...e],...u.apply}:{groupBy:[t,...e]},r}(n,s,l)):($n=t,t=u)):($n=t,t=u)}else $n=t,t=u;else $n=t,t=u;else $n=t,t=u;var i;return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,6)===it?(r=it,$n+=6):(r=u,0===kn&&zn(Mu)),r!==u?(n=function(){let t,e,r,n,s,o;t=$n,e=Js(),e!==u?(r=Vs(),n=$n,s=us(),s!==u&&(Ln=n),n=s,n!==u?(s=Vs(),o=Ks(),o!==u?(Ln=t,t={where:n}):($n=t,t=u)):($n=t,t=u)):($n=t,t=u);return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,6)===ft?(r=ft,$n+=6):(r=u,0===kn&&zn(Qu)),r!==u?(n=function(){let e,r,n,s,o;if(e=$n,r=Js(),r!==u){for(n=$n,s=[],o=t.charAt($n),ie.test(o)?$n++:(o=u,0===kn&&zn(fr));o!==u;)s.push(o),o=t.charAt($n),ie.test(o)?$n++:(o=u,0===kn&&zn(fr));n=t.substring(n,$n),s=Ks(),s!==u?(Ln=e,e=function(t){if(t=t.trim())return{search:[{val:t}]}}(n)):($n=e,e=u)}else $n=e,e=u;return e}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,6)===ht?(r=ht,$n+=6):(r=u,0===kn&&zn(Uu)),r!==u?(n=function(){let t,e,r,n,s,o,l,a,c,i;if(t=$n,e=Js(),e!==u)if(r=Vs(),n=Ds(),n!==u){if(s=[],o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=Ds(),i!==u?(Ln=o,o=vn(0,i)):($n=o,o=u)):($n=o,o=u),o!==u)for(;o!==u;)s.push(o),o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=Ds(),i!==u?(Ln=o,o=vn(0,i)):($n=o,o=u)):($n=o,o=u);else s=u;s!==u?(o=Vs(),l=Ks(),l!==u?(Ln=t,f=s,t={concat:[n,...f]}):($n=t,t=u)):($n=t,t=u)}else $n=t,t=u;else $n=t,t=u;var f;return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,7)===At?(r=At,$n+=7):(r=u,0===kn&&zn(Gu)),r!==u?(n=function(){let t,e,r,n,s,o,l,a,c,i;if(t=$n,e=Js(),e!==u)if(r=Vs(),n=js(),n!==u){for(s=[],o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=js(),i!==u?(l=[l,a,c,i],o=l):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=js(),i!==u?(l=[l,a,c,i],o=l):($n=o,o=u)):($n=o,o=u);o=Vs(),l=Ks(),l!==u?(e=[e,r,n,s,o,l],t=e):($n=t,t=u)}else $n=t,t=u;else $n=t,t=u;return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,3)===pt?(r=pt,$n+=3):(r=u,0===kn&&zn(Ju)),r!==u?(n=function(){let t,e,r,n,s,o;t=$n,e=Js(),e!==u?(r=Vs(),n=Yn(),n!==u?(s=Vs(),o=Ks(),o!==u?(Ln=t,t={limit:{rows:{val:n}}}):($n=t,t=u)):($n=t,t=u)):($n=t,t=u);return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,4)===dt?(r=dt,$n+=4):(r=u,0===kn&&zn(Ku)),r!==u?(n=function(){let t,e,r,n,s,o;t=$n,e=Js(),e!==u?(r=Vs(),n=ts(),n!==u?(s=Vs(),o=Ks(),o!==u?(Ln=t,t={limit:{offset:{val:n}}}):($n=t,t=u)):($n=t,t=u)):($n=t,t=u);return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,7)===Ct?(r=Ct,$n+=7):(r=u,0===kn&&zn(Vu)),r!==u?(n=function(){let t,e,r,n,s,o,l,a;if(t=$n,e=Js(),e!==u)if(r=Vs(),n=ls(),n!==u){for(s=[],o=$n,l=Gs(),l!==u?(a=ls(),a!==u?(Ln=o,o=Dn(0,a)):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Gs(),l!==u?(a=ls(),a!==u?(Ln=o,o=Dn(0,a)):($n=o,o=u)):($n=o,o=u);o=Vs(),l=Ks(),l!==u?(Ln=t,c=s,t={orderBy:[n,...c]}):($n=t,t=u)}else $n=t,t=u;else $n=t,t=u;var c;return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,43)===gt?(r=gt,$n+=43):(r=u,0===kn&&zn(Wu)),r!==u?(n=function(){let t,e,r,n,s,o,l,a,c,i;if(t=$n,e=Js(),e!==u)if(r=Vs(),n=Os(),n!==u){for(s=[],o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=Os(),i!==u?(Ln=o,o=yn(0,i)):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=Os(),i!==u?(Ln=o,o=yn(0,i)):($n=o,o=u)):($n=o,o=u);o=Vs(),l=Ks(),l!==u?(Ln=t,f=n,s.forEach(t=>Object.assign(f,t)),t={topLevels:f}):($n=t,t=u)}else $n=t,t=u;else $n=t,t=u;var f;return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,9)===Et?(r=Et,$n+=9):(r=u,0===kn&&zn(Xu)),r!==u?(n=Zs(),n!==u?(Ln=e,e={ancestors:n}):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,11)===Ft?(r=Ft,$n+=11):(r=u,0===kn&&zn(Yu)),r!==u?(n=Zs(),n!==u?(Ln=e,e={descendants:n}):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,r=t.substr($n,8),r.toLowerCase()===bt?$n+=8:(r=u,0===kn&&zn(tr)),r===u&&(r=t.substr($n,11),r.toLowerCase()===mt?$n+=11:(r=u,0===kn&&zn(er)),r===u&&(r=t.substr($n,6),r.toLowerCase()===Bt?$n+=6:(r=u,0===kn&&zn(ur)),r===u&&(r=t.substr($n,9),r.toLowerCase()===vt?$n+=9:(r=u,0===kn&&zn(rr)),r===u&&(r=t.substr($n,10),r.toLowerCase()===Dt?$n+=10:(r=u,0===kn&&zn(nr)),r===u&&(r=t.substr($n,13),r.toLowerCase()===yt?$n+=13:(r=u,0===kn&&zn(sr))))))),r!==u?(n=function(){let t,e,r,n,s,o,l,a,c,i;t=$n,e=Js(),e!==u?(r=Vs(),n=As(),n!==u?(s=Vs(),o=Gs(),o!==u?(l=Vs(),a=As(),a!==u?(c=Vs(),i=Ks(),i!==u?(Ln=t,t=[n,a]):($n=t,t=u)):($n=t,t=u)):($n=t,t=u)):($n=t,t=u)):($n=t,t=u);return t}(),n!==u?(Ln=e,e=function(t,e){if(t=t.toLowerCase(),!to[t])throw Object.assign(new Error(`Transformation "${t}" in $apply is not yet supported.`),{statusCode:501});return{aggregate:[{func:t,args:e}]}}(r,n)):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,r=function(){let e,r;e=$n,t.substr($n,8)===Tt?(r=Tt,$n+=8):(r=u,0===kn&&zn(hr));r!==u&&(Ln=e,r={identity:!0});return e=r,e}(),r!==u&&(Ln=e),e=r))))))))))))),e}function xs(){let e,r,n,s;return e=$n,r=$n,t.substr($n,6)===c?(n=c,$n+=6):(n=u,0===kn&&zn(ye)),n!==u?(s=Ss(),s!==u?(Ln=r,r={func:"count",args:[{val:1}],as:s}):($n=r,r=u)):($n=r,r=u),r===u&&(r=ws()),r!==u&&(Ln=e),e=r,e}function ws(){let t,e,r,n,s;var o;return t=$n,e=ps(),e!==u?(r=$s(),r===u&&(r=null),n=Ls(),n===u&&(n=null),s=Ss(),s===u&&(s=null),Ln=t,t={func:r,args:[o=e],as:s??o.ref[0]}):($n=t,t=u),t===u&&(t=$n,e=Hs(),e!==u?(r=Js(),r!==u?(n=ws(),n!==u?(s=Ks(),s!==u?(e=[e,r,n,s],t=e):($n=t,t=u)):($n=t,t=u)):($n=t,t=u)):($n=t,t=u)),t}function $s(){let e,r,n,s,o,l,a;if(e=$n,r=Ws(),r!==u)if(t.substr($n,4)===xt?(n=xt,$n+=4):(n=u,0===kn&&zn(or)),n!==u)if(s=Ws(),s!==u){if(o=$n,l=[],a=t.charAt($n),ce.test(a)?$n++:(a=u,0===kn&&zn(ku)),a!==u)for(;a!==u;)l.push(a),a=t.charAt($n),ce.test(a)?$n++:(a=u,0===kn&&zn(ku));else l=u;o=l!==u?t.substring(o,$n):l,o!==u?(Ln=e,e=o.toLowerCase()):($n=e,e=u)}else $n=e,e=u;else $n=e,e=u;else $n=e,e=u;return e}function Ls(){let e,r,n,s,o,l,a;return e=$n,r=Ws(),r!==u?(t.substr($n,4)===wt?(n=wt,$n+=4):(n=u,0===kn&&zn(lr)),n!==u?(s=Ws(),s!==u?(o=ps(),o!==u?(l=$s(),l!==u?(a=Ls(),a===u&&(a=null),r=[r,n,s,o,l,a],e=r):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function Ss(){let e,r,n,s,o;return e=$n,r=Ws(),r!==u?(t.substr($n,2)===$t?(n=$t,$n+=2):(n=u,0===kn&&zn(ar)),n!==u?(s=Ws(),s!==u?(o=Hs(),o!==u?(Ln=e,e=o):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function Ts(){let e,r;return e=$n,r=function(){let e,r,n,s,o,l,a,c,i,f,h;e=$n,r=$n,t.substr($n,6)===Lt?(n=Lt,$n+=6):(n=u,0===kn&&zn(cr));if(n!==u)if(s=Js(),s!==u)if(o=Vs(),t.substr($n,4)===St?(l=St,$n+=4):(l=u,0===kn&&zn(ir)),l===u&&(l=ps()),l!==u){if(a=[],c=$n,i=Vs(),f=Gs(),f!==u?(h=ps(),h!==u?(i=[i,f,h],c=i):($n=c,c=u)):($n=c,c=u),c!==u)for(;c!==u;)a.push(c),c=$n,i=Vs(),f=Gs(),f!==u?(h=ps(),h!==u?(i=[i,f,h],c=i):($n=c,c=u)):($n=c,c=u);else a=u;a!==u?(c=Vs(),i=Ks(),i!==u?(n=[n,s,o,l,a,c,i],r=n):($n=r,r=u)):($n=r,r=u)}else $n=r,r=u;else $n=r,r=u;else $n=r,r=u;r!==u&&(Ln=e,r=function(){const t=new Error("Rollup in groupby is not supported yet.");throw t.statusCode=501,t}());return e=r,e}(),r===u&&(r=ps()),r!==u&&(Ln=e),e=r,e}function js(){let t,e,r;return t=$n,e=rs(),e!==u?(r=Ss(),r!==u?(e=[e,r],t=e):($n=t,t=u)):($n=t,t=u),t}function Os(){let e;return e=function(){let e,r,n,s,o,l,a,c,i;e=$n,r=Vs(),t.substr($n,14)===jt?(n=jt,$n+=14):(n=u,0===kn&&zn(Ar));n!==u?(s=Vs(),61===t.charCodeAt($n)?(o=h,$n++):(o=u,0===kn&&zn($e)),o!==u?(l=Vs(),t.substr($n,6)===Ot?(a=Ot,$n+=6):(a=u,0===kn&&zn(pr)),a!==u?(c=Un(),c!==u?(i=Vs(),Ln=e,e={hierarchyNodes:c}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),e===u&&(e=function(){let e,r,n,s,o,l,a,c;e=$n,r=Vs(),t.substr($n,18)===kt?(n=kt,$n+=18):(n=u,0===kn&&zn(dr));n!==u?(s=Vs(),61===t.charCodeAt($n)?(o=h,$n++):(o=u,0===kn&&zn($e)),o!==u?(l=Vs(),a=Rs(),a!==u?(c=Vs(),Ln=e,e={hierarchyQualifier:a}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),e===u&&(e=function(){let e,r,n,s,o,l,a,c;e=$n,r=Vs(),t.substr($n,12)===It?(n=It,$n+=12):(n=u,0===kn&&zn(Cr));n!==u?(s=Vs(),61===t.charCodeAt($n)?(o=h,$n++):(o=u,0===kn&&zn($e)),o!==u?(l=Vs(),a=Rs(),a!==u?(c=Vs(),Ln=e,e={nodeProperty:a}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),e===u&&(e=function(){let e,r,n,s,o,l,a,c;e=$n,r=Vs(),t.substr($n,6)===Zt?(n=Zt,$n+=6):(n=u,0===kn&&zn(gr));n!==u?(s=Vs(),61===t.charCodeAt($n)?(o=h,$n++):(o=u,0===kn&&zn($e)),o!==u?(l=Vs(),a=qs(),a!==u?(c=Vs(),Ln=e,e={levels:a}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),e===u&&(e=function(){let e,r,n,s,o,l,a,c,i,f,A,p,d,C,g;e=$n,r=Vs(),t.substr($n,12)===_t?(n=_t,$n+=12):(n=u,0===kn&&zn(Er));if(n!==u)if(s=Vs(),61===t.charCodeAt($n)?(o=h,$n++):(o=u,0===kn&&zn($e)),o!==u)if(l=Vs(),91===t.charCodeAt($n)?(a=P,$n++):(a=u,0===kn&&zn(cu)),a!==u)if(c=Vs(),i=ks(),i!==u){for(f=[],A=$n,p=Vs(),d=Gs(),d!==u?(C=Vs(),g=ks(),g!==u?(Ln=A,A=xn(0,g)):($n=A,A=u)):($n=A,A=u);A!==u;)f.push(A),A=$n,p=Vs(),d=Gs(),d!==u?(C=Vs(),g=ks(),g!==u?(Ln=A,A=xn(0,g)):($n=A,A=u)):($n=A,A=u);93===t.charCodeAt($n)?(A=q,$n++):(A=u,0===kn&&zn(iu)),A!==u?(Ln=e,E=f,e={expandLevels:[i,...E]}):($n=e,e=u)}else $n=e,e=u;else $n=e,e=u;else $n=e,e=u;else $n=e,e=u;var E;return e}())))),e}function ks(){let e,r,n,s,o,l,a,c,i,f,h;var A,p;return e=$n,r=Vs(),123===t.charCodeAt($n)?(n=Y,$n++):(n=u,0===kn&&zn(wu)),n!==u?(s=Vs(),o=Is(),o!==u?(l=Vs(),44===t.charCodeAt($n)?(a=z,$n++):(a=u,0===kn&&zn(au)),a!==u?(c=Vs(),i=Is(),i!==u?(f=Vs(),125===t.charCodeAt($n)?(h=tt,$n++):(h=u,0===kn&&zn(Lu)),h!==u?(Ln=e,A=o,p=i,e=Object.assign(A,p)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function Is(){let e,r,n,s,o,l;return e=$n,t.substr($n,8)===Nt?(r=Nt,$n+=8):(r=u,0===kn&&zn(Fr)),r!==u?(n=Vs(),58===t.charCodeAt($n)?(s=O,$n++):(s=u,0===kn&&zn(tu)),s!==u?(o=Vs(),l=zs(),l!==u?(Ln=e,e={nodeID:l}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,8)===Rt?(r=Rt,$n+=8):(r=u,0===kn&&zn(br)),r!==u?(n=Vs(),58===t.charCodeAt($n)?(s=O,$n++):(s=u,0===kn&&zn(tu)),s!==u?(o=Vs(),l=function(){let t,e;t=$n,e=qs(),e!==u&&(Ln=t);t=e,t===u&&(t=$n,e=gs(),e!==u&&(Ln=t,e=null),t=e);return t}(),l!==u?(Ln=e,e={levels:l}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)),e}function Zs(){let e,r,n,s,l,a,c,i,f,h,A,p,d,C,g,E,F,b,m,B,v,D,y;var x;return e=$n,r=Js(),r!==u?(n=Vs(),t.substr($n,6)===Ot?(s=Ot,$n+=6):(s=u,0===kn&&zn(pr)),s!==u?(l=Un(),l!==u?(a=Vs(),c=Gs(),c!==u?(i=Vs(),f=Hs(),f!==u?(h=Vs(),A=Gs(),A!==u?(p=Vs(),d=Hs(),d!==u?(C=Vs(),g=Gs(),g===u&&(g=null),E=function(){let e,r,n,s,l,a,c,i;if(e=$n,r=_s(),r!==u){for(n=[],s=$n,l=Vs(),47===t.charCodeAt($n)?(a=o,$n++):(a=u,0===kn&&zn(Be)),a!==u?(c=Vs(),i=_s(),i!==u?(Ln=s,s=wn(0,i)):($n=s,s=u)):($n=s,s=u);s!==u;)n.push(s),s=$n,l=Vs(),47===t.charCodeAt($n)?(a=o,$n++):(a=u,0===kn&&zn(Be)),a!==u?(c=Vs(),i=_s(),i!==u?(Ln=s,s=wn(0,i)):($n=s,s=u)):($n=s,s=u);Ln=e,f=n,e=[r,...f]}else $n=e,e=u;var f;return e}(),E===u&&(E=null),F=Vs(),b=Gs(),b===u&&(b=null),m=qs(),m===u&&(m=null),B=Vs(),v=Gs(),v===u&&(v=null),D=function(){let e,r;e=$n,t.substr($n,10)===Ht?(r=Ht,$n+=10):(r=u,0===kn&&zn(Dr));r!==u&&(Ln=e,r={keepStart:!0});return e=r,e}(),D===u&&(D=null),y=Ks(),y!==u?(Ln=e,x=D,e={path:l,hierarchy:f,id:d,nodes:E,distance:m,keepStart:x?.keepStart||!1}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function _s(){let e;return e=function(){let e,r,n,s;e=$n,t.substr($n,7)===qt?(r=qt,$n+=7):(r=u,0===kn&&zn(vr));r!==u?(n=es(),n!==u?(41===t.charCodeAt($n)?(s=Pt,$n++):(s=u,0===kn&&zn(Br)),s!==u?(Ln=e,e={search:n}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),e===u&&(e=function(){let e,r,n,s;e=$n,t.substr($n,7)===zt?(r=zt,$n+=7):(r=u,0===kn&&zn(mr));r!==u?(n=us(),n!==u?(41===t.charCodeAt($n)?(s=Pt,$n++):(s=u,0===kn&&zn(Br)),s!==u?(Ln=e,e={filter:n}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}()),e}function Ns(){let e,r;return kn++,e=$n,t.substr($n,4)===Mt?(r=Mt,$n+=4):(r=u,0===kn&&zn(xr)),r===u&&(t.substr($n,5)===Qt?(r=Qt,$n+=5):(r=u,0===kn&&zn(wr))),r!==u&&(Ln=e,r="true"===r),e=r,kn--,e===u&&(r=u,0===kn&&zn(yr)),e}function Rs(){let e,r,n,s,o;if(kn++,e=$n,39===t.charCodeAt($n)?(r=R,$n++):(r=u,0===kn&&zn(lu)),r!==u){for(n=$n,s=[],t.substr($n,2)===Ut?(o=Ut,$n+=2):(o=u,0===kn&&zn(Lr)),o===u&&(o=t.charAt($n),fe.test(o)?$n++:(o=u,0===kn&&zn(Sr)));o!==u;)s.push(o),t.substr($n,2)===Ut?(o=Ut,$n+=2):(o=u,0===kn&&zn(Lr)),o===u&&(o=t.charAt($n),fe.test(o)?$n++:(o=u,0===kn&&zn(Sr)));n=t.substring(n,$n),39===t.charCodeAt($n)?(s=R,$n++):(s=u,0===kn&&zn(lu)),s!==u?(Ln=e,e=n.replace(/''/g,"'")):($n=e,e=u)}else $n=e,e=u;return kn--,e===u&&(r=u,0===kn&&zn($r)),e}function zs(){let e,r,n,s,o;if(kn++,e=$n,34===t.charCodeAt($n)?(r=S,$n++):(r=u,0===kn&&zn(Ke)),r!==u){for(n=$n,s=[],t.substr($n,2)===j?(o=j,$n+=2):(o=u,0===kn&&zn(We)),o===u&&(t.substr($n,2)===T?(o=T,$n+=2):(o=u,0===kn&&zn(Ve)),o===u&&(o=t.charAt($n),ne.test(o)?$n++:(o=u,0===kn&&zn(Xe))));o!==u;)s.push(o),t.substr($n,2)===j?(o=j,$n+=2):(o=u,0===kn&&zn(We)),o===u&&(t.substr($n,2)===T?(o=T,$n+=2):(o=u,0===kn&&zn(Ve)),o===u&&(o=t.charAt($n),ne.test(o)?$n++:(o=u,0===kn&&zn(Xe))));n=t.substring(n,$n),34===t.charCodeAt($n)?(s=S,$n++):(s=u,0===kn&&zn(Ke)),s!==u?(Ln=e,e=n.replace(/\\(["\\])/g,"$1")):($n=e,e=u)}else $n=e,e=u;return kn--,e===u&&(r=u,0===kn&&zn(Tr)),e}function Ps(){let e,r,n,s,o,l,a,c,i,f,h,A,p,d,C,g,E,F,b,m,B,v,D,y,x;if(kn++,e=$n,r=$n,n=$n,s=[],o=t.charAt($n),Ae.test(o)?$n++:(o=u,0===kn&&zn(Ir)),o!==u)for(;o!==u;)s.push(o),o=t.charAt($n),Ae.test(o)?$n++:(o=u,0===kn&&zn(Ir));else s=u;if(s!==u)if(45===t.charCodeAt($n)?(o=Gt,$n++):(o=u,0===kn&&zn(_r)),o!==u)if(l=t.charAt($n),Ae.test(l)?$n++:(l=u,0===kn&&zn(Ir)),l!==u)if(a=t.charAt($n),Ae.test(a)?$n++:(a=u,0===kn&&zn(Ir)),a!==u)if(45===t.charCodeAt($n)?(c=Gt,$n++):(c=u,0===kn&&zn(_r)),c!==u)if(i=t.charAt($n),Ae.test(i)?$n++:(i=u,0===kn&&zn(Ir)),i!==u)if(f=t.charAt($n),Ae.test(f)?$n++:(f=u,0===kn&&zn(Ir)),f!==u){if(h=$n,84===t.charCodeAt($n)?(A=Jt,$n++):(A=u,0===kn&&zn(Nr)),A!==u)if(p=t.charAt($n),Ae.test(p)?$n++:(p=u,0===kn&&zn(Ir)),p!==u)if(d=t.charAt($n),Ae.test(d)?$n++:(d=u,0===kn&&zn(Ir)),d!==u)if(58===t.charCodeAt($n)?(C=O,$n++):(C=u,0===kn&&zn(tu)),C!==u)if(g=t.charAt($n),Ae.test(g)?$n++:(g=u,0===kn&&zn(Ir)),g!==u)if(E=t.charAt($n),Ae.test(E)?$n++:(E=u,0===kn&&zn(Ir)),E!==u){if(F=$n,58===t.charCodeAt($n)?(b=O,$n++):(b=u,0===kn&&zn(tu)),b!==u)if(m=t.charAt($n),Ae.test(m)?$n++:(m=u,0===kn&&zn(Ir)),m!==u)if(B=t.charAt($n),Ae.test(B)?$n++:(B=u,0===kn&&zn(Ir)),B!==u){if(v=$n,46===t.charCodeAt($n)?(D=Kt,$n++):(D=u,0===kn&&zn(Rr)),D!==u){if(y=[],x=t.charAt($n),Ae.test(x)?$n++:(x=u,0===kn&&zn(Ir)),x!==u)for(;x!==u;)y.push(x),x=t.charAt($n),Ae.test(x)?$n++:(x=u,0===kn&&zn(Ir));else y=u;y!==u?(D=[D,y],v=D):($n=v,v=u)}else $n=v,v=u;v===u&&(v=null),b=[b,m,B,v],F=b}else $n=F,F=u;else $n=F,F=u;else $n=F,F=u;F===u&&(F=null),90===t.charCodeAt($n)?(b=Vt,$n++):(b=u,0===kn&&zn(zr)),b===u&&(b=$n,m=t.charAt($n),pe.test(m)?$n++:(m=u,0===kn&&zn(Pr)),m!==u?(B=t.charAt($n),Ae.test(B)?$n++:(B=u,0===kn&&zn(Ir)),B!==u?(v=t.charAt($n),Ae.test(v)?$n++:(v=u,0===kn&&zn(Ir)),v!==u?(58===t.charCodeAt($n)?(D=O,$n++):(D=u,0===kn&&zn(tu)),D!==u?(y=t.charAt($n),Ae.test(y)?$n++:(y=u,0===kn&&zn(Ir)),y!==u?(x=t.charAt($n),Ae.test(x)?$n++:(x=u,0===kn&&zn(Ir)),x!==u?(m=[m,B,v,D,y,x],b=m):($n=b,b=u)):($n=b,b=u)):($n=b,b=u)):($n=b,b=u)):($n=b,b=u)):($n=b,b=u)),b===u&&(b=null),A=[A,p,d,C,g,E,F,b],h=A}else $n=h,h=u;else $n=h,h=u;else $n=h,h=u;else $n=h,h=u;else $n=h,h=u;else $n=h,h=u;h===u&&(h=null),s=[s,o,l,a,c,i,f,h],n=s}else $n=n,n=u;else $n=n,n=u;else $n=n,n=u;else $n=n,n=u;else $n=n,n=u;else $n=n,n=u;else $n=n,n=u;return r=n!==u?t.substring(r,$n):n,r!==u&&(Ln=e,r=function(t){if(t.split("-")[0].length>4)throw Object.assign(new Error(`The type Edm.DateTimeOffset is not compatible with "${t}"`),{statusCode:400});return t}(r)),e=r,kn--,e===u&&(r=u,0===kn&&zn(Zr)),e}function qs(){let e,r,n,s,o,l;if(kn++,e=$n,r=$n,n=$n,s=t.charAt($n),pe.test(s)?$n++:(s=u,0===kn&&zn(Pr)),s===u&&(s=null),o=[],l=t.charAt($n),Ae.test(l)?$n++:(l=u,0===kn&&zn(Ir)),l!==u)for(;l!==u;)o.push(l),l=t.charAt($n),Ae.test(l)?$n++:(l=u,0===kn&&zn(Ir));else o=u;return o!==u?(s=[s,o],n=s):($n=n,n=u),r=n!==u?t.substring(r,$n):n,r!==u&&(Ln=e,r=parseInt(r)),e=r,kn--,e===u&&(r=u,0===kn&&zn(Mr)),e}function Hs(){let e,r,n,s,o,l,a,c;if(kn++,e=$n,r=$n,kn++,n=Ns(),kn--,n===u?r=void 0:($n=r,r=u),r!==u)if(n=$n,kn++,s=Ms(),kn--,s===u?n=void 0:($n=n,n=u),n!==u){if(s=$n,o=$n,l=t.charAt($n),de.test(l)?$n++:(l=u,0===kn&&zn(Ur)),l!==u){for(a=[],c=t.charAt($n),Ce.test(c)?$n++:(c=u,0===kn&&zn(Gr));c!==u;)a.push(c),c=t.charAt($n),Ce.test(c)?$n++:(c=u,0===kn&&zn(Gr));l=[l,a],o=l}else $n=o,o=u;s=o!==u?t.substring(s,$n):o,s!==u?(Ln=e,e=s):($n=e,e=u)}else $n=e,e=u;else $n=e,e=u;return kn--,e===u&&(r=u,0===kn&&zn(Qr)),e}function Ms(){let e,r,n,s,o,l,a,c,i,f,h,A,p,d;return kn++,e=$n,r=$n,n=Qs(),n!==u?(s=Qs(),s!==u?(45===t.charCodeAt($n)?(o=Gt,$n++):(o=u,0===kn&&zn(_r)),o===u&&(o=null),l=Qs(),l!==u?(45===t.charCodeAt($n)?(a=Gt,$n++):(a=u,0===kn&&zn(_r)),a===u&&(a=null),c=Qs(),c!==u?(45===t.charCodeAt($n)?(i=Gt,$n++):(i=u,0===kn&&zn(_r)),i===u&&(i=null),f=Qs(),f!==u?(45===t.charCodeAt($n)?(h=Gt,$n++):(h=u,0===kn&&zn(_r)),h===u&&(h=null),A=Qs(),A!==u?(p=Qs(),p!==u?(d=Qs(),d!==u?(n=[n,s,o,l,a,c,i,f,h,A,p,d],r=n):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u),e=r!==u?t.substring(e,$n):r,kn--,e===u&&(r=u,0===kn&&zn(Jr)),e}function Qs(){let e,r,n,s,o,l;return kn++,e=$n,r=$n,n=t.charAt($n),ge.test(n)?$n++:(n=u,0===kn&&zn(Vr)),n!==u?(s=t.charAt($n),ge.test(s)?$n++:(s=u,0===kn&&zn(Vr)),s!==u?(o=t.charAt($n),ge.test(o)?$n++:(o=u,0===kn&&zn(Vr)),o!==u?(l=t.charAt($n),ge.test(l)?$n++:(l=u,0===kn&&zn(Vr)),l!==u?(n=[n,s,o,l],r=n):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u),e=r!==u?t.substring(e,$n):r,kn--,e===u&&(r=u,0===kn&&zn(Kr)),e}function Us(){let e,r,n,s;if(e=$n,r=$n,n=[],s=t.charAt($n),Ee.test(s)?$n++:(s=u,0===kn&&zn(Wr)),s!==u)for(;s!==u;)n.push(s),s=t.charAt($n),Ee.test(s)?$n++:(s=u,0===kn&&zn(Wr));else n=u;return r=n!==u?t.substring(r,$n):n,r!==u&&(Ln=e,r={val:r}),e=r,e}function Gs(){let e,r,n,s;return e=$n,r=Vs(),44===t.charCodeAt($n)?(n=z,$n++):(n=u,0===kn&&zn(au)),n!==u?(s=Vs(),r=[r,n,s],e=r):($n=e,e=u),e}function Js(){let e,r,n,s;return e=$n,r=Vs(),40===t.charCodeAt($n)?(n=te,$n++):(n=u,0===kn&&zn(rn)),n!==u?(s=Vs(),r=[r,n,s],e=r):($n=e,e=u),e}function Ks(){let e,r,n;return e=$n,r=Vs(),41===t.charCodeAt($n)?(n=Pt,$n++):(n=u,0===kn&&zn(Br)),n!==u?(r=[r,n],e=r):($n=e,e=u),e}function Vs(){let e,r,n;for(kn++,e=$n,r=[],n=t.charAt($n),me.test(n)?$n++:(n=u,0===kn&&zn(nn));n!==u;)r.push(n),n=t.charAt($n),me.test(n)?$n++:(n=u,0===kn&&zn(nn));return e=t.substring(e,$n),kn--,e}function Ws(){let e,r,n;if(kn++,e=$n,r=[],n=t.charAt($n),me.test(n)?$n++:(n=u,0===kn&&zn(nn)),n!==u)for(;n!==u;)r.push(n),n=t.charAt($n),me.test(n)?$n++:(n=u,0===kn&&zn(nn));else r=u;return e=r!==u?t.substring(e,$n):r,kn--,e===u&&(r=u,0===kn&&zn(sn)),e}const Xs=["$value"],Ys={eq:"=",ne:"!=",lt:"<",gt:">",le:"<=",ge:">="},to={topcount:!0,bottomcount:!0,topsum:!1,bottomsum:!1,toppercent:!1,bottompercent:!1},eo=Object.assign,{strict:uo,minimal:ro}=e,no=[];let so,oo;const lo=e.safeNumber||function(t){if("string"!=typeof t)return t;const e=parseFloat(t);if(!isNaN(e)&&String(e)===t)return e;const u=parseInt(t);return isNaN(u)||String(u)!==t.replace(/^-?\d+\.0+$/,t.split(".")[0])?t:u},ao=e.skipToken,co=e.standardBase64||function(t){return Buffer.from(t,"base64").toString("base64")},io=t=>e=>t===e||t.as&&e.as&&t.as===e.as||e.as&&t.ref&&e.as===t.ref[t.ref.length-1]||t.ref&&e.ref&&t.ref.join("")===e.ref.join(""),fo=t=>e=>{if(Array.isArray(e))return e.map(fo(t));const u=e.ref&&t.find(t=>"func"in t&&t.as&&t.as===e.ref[0]);return u||e},ho=t=>e=>Array.isArray(e)?e.map(ho(t)):e.ref&&!t.find(io(e))?{val:null}:e,Ao=(t,e)=>{if(1===e.ref.length)t.find(io(e))||t.push(e);else{const u=e.ref.shift(),r=t.find(t=>t.ref&&t.ref[0]===u);if(r)Ao(r.expand??=[],e);else{const r={ref:[u],expand:[]};Ao(r.expand,e),t.push(r)}}},po=t=>{const e=t.reduce((t,e)=>{if("string"==typeof e)return t[e]??=[],t;if(!e.ref)return t;const u=e.ref[0];return t[u]??=[],t[u].push(...e.expand??[]),t},{}),u=[];for(const t in e){if("*"===t){u.push(t);continue}const r={ref:[t]};e[t].length&&(r.expand=po(e[t])),u.push(r)}return u},Co=(t,e)=>{if(!e.length)return;const u=e.reduce((t,e)=>{if(!e.ref)return t;const u=e.ref[0];return t[u]??=[],t[u].push(...e.expand??[]),t},{}),r={},n=[];for(const e in t){const s=t[e],o=s.ref?.[0];Object.keys(u).includes(o)?r[o]=s:s.func||n.push(e)}if(Object.keys(r).length){for(const e of n)t.splice(e,1);for(const t in u){const e=r[t];e&&(u[t].length&&(e.expand?Co(e.expand,u[t]):e.expand=po(u[t])))}}},go=(t,e)=>{let u=Fo({from:t.from},e);if(delete t.apply,Array.isArray(u))for(let e=0;e<u.length;e++)u[e]=Eo(u[e],t);else u=Eo(u,t);if(u.SELECT?.recurse&&t.where){const e=t.where;delete t.where;const r=u.SELECT.columns;delete u.SELECT.columns,u={SELECT:{from:u,where:e,columns:r}}}return u};const Eo=(t,e)=>{const u=function(t){return t.SELECT.groupBy||t.SELECT.columns?.some(t=>t&&"object"==typeof t&&"func"in t)}(t);if(e.columns&&"$count"===e.columns[0].as||!u&&e.where&&(t.SELECT.where||t.SELECT.limit)||t.SELECT.limit&&e.limit||t.SELECT.orderBy&&e.orderBy||t.SELECT.search&&e.search){const u=Object.assign({},e);u.from=t,t={SELECT:u}}else{let r=t.SELECT.from,n=t.SELECT.columns,s=t.SELECT.where;if(t.SELECT=Object.assign(t.SELECT,e),t.SELECT.from=r,t.SELECT.columns=n,u&&e.where){const u=e.where.map(fo(t.SELECT.columns)).map(ho(t.SELECT.groupBy??[]));t.SELECT.having?t.SELECT.having=[{xpr:t.SELECT.having},"and",{xpr:u}]:t.SELECT.having=u,t.SELECT.where=s}}if(e.columns){const u=[];if(t.SELECT.columns||(t.SELECT.columns=[]),t.SELECT.columns.length&&u.push(...t.SELECT.columns),t.SELECT.groupBy&&t.SELECT.groupBy.length)Co(u,e.columns);else for(const t of e.columns)u.some(io(t))||u.push(t);t.SELECT.columns=u}return t.SELECT.columns?.length||delete t.SELECT.columns,t},Fo=(t,e)=>{delete t.apply,e.identity&&t.from.SELECT&&(t=t.from.SELECT),e.apply&&(t.from={SELECT:{...t}});const u=t=>{t.recurse={ref:["parent"]};const u=[],r=[];if(e.topLevels.levels?r.push([{ref:["DistanceFromRoot"]},"<=",{val:e.topLevels.levels-1}]):r.push([{ref:["DistanceFromRoot"]},">=",{val:0}]),e.topLevels.expandLevels)for(const t of e.topLevels.expandLevels)0===t.levels?u.push([{func:"DistanceTo",args:[{val:t.nodeID},{val:null}]}]):r.push([{func:"DistanceTo",args:[{val:t.nodeID},{val:t.levels}]}]);const n=">="===r[0][1]&&0===r[0][2].val?1===r.length?[]:[r[0]]:r,s=n.flatMap((t,e)=>e<n.length-1?[...t,"or"]:t);if(u.length){const e=u.flatMap((t,e)=>["and","not",...t]);n.length>1?t.recurse.where=[{xpr:s}].concat(e):1===n.length&&">="===n[0][1]&&0===n[0][2].val?t.recurse.where=e.slice(1):t.recurse.where=s.concat(e)}else s.length&&(t.recurse.where=s)},r=t=>n(t,e.descendants,1),n=(t,u=e.ancestors,r=-1)=>{if(u.nodes)for(const e of u.nodes)e.filter&&-1===r?t.where=e.filter:e.search&&(t.search=e.search);if(t.recurse={ref:["parent"]},1===r){const e=()=>{const t=new Error("For descendants, only the following filter is supported: `<ID> eq <val>`");throw t.statusCode=400,t};1===u.nodes?.length&&u.nodes[0].filter||e();const n=u.nodes[0].filter.findIndex(t=>t.ref?.[0]===u.id);-1===!n&&e();const s=u.nodes[0].filter[n+1],o=u.nodes[0].filter[n+2]?.val;"="===s&&o||e();const l=u.distance&&r*u.distance,a=[{func:"DistanceTo",args:[{val:o},{val:Number.isInteger(l)?l:null}]}];t.recurse.where=a}};if(e.ancestors&&e.topLevels){n(t);const e={...t};u(e),t.recurse=e.recurse}else if(e.ancestors&&e.descendants){n(t);const e={...t};r(e),t.recurse=e.recurse}else e.topLevels?u(t):e.ancestors?n(e):e.descendants&&r(t);if(e.where&&(t.where=e.where),e.search&&(t.search=e.search),e.limit&&(t.limit=e.limit),e.orderBy&&(t.orderBy=e.orderBy),e.groupBy&&(t.groupBy=e.groupBy.reduce((t,e)=>(t.some(io(e))||t.push(e),t),[])),e.aggregate&&e.aggregate.length&&(t.columns=(t.columns||[]).concat(e.aggregate)),t.groupBy&&t.groupBy.length){const e=t.groupBy.reduce((t,e)=>{if(e.ref&&e.ref.length>1){const u={ref:[...e.ref]};e.expand&&e.expand.length&&(u.expand=[...e.expand]),e.as&&(u.as=e.as),Ao(t,u,!0)}else t.push({...e});return t},[]);t.columns=(t.columns||[]).concat(e)}if(e.having&&(t.having=e.having.map(fo(t.columns)).map(ho(t.groupBy??[]))),e.apply&&Fo(t.from.SELECT,e.apply),Array.isArray(e.concat)){const u=[],r=1===Object.keys(t).length?t.from:{SELECT:t};for(let t of e.concat)if(t.from=r,t.apply){const e=Fo(t,t.apply);Array.isArray(e)?u.push(...e):u.push(e)}return u}return{SELECT:t}},bo=t=>{so.limit&&so.limit.offset&&so.limit.offset.val&&(t+=so.limit.offset.val),(so.limit||(so.limit={})).offset={val:t}},mo=(t,e=!1)=>{so.orderBy=so.orderBy?e?[t,...so.orderBy]:[...so.orderBy,t]:[t]},Bo=(t,e)=>{for(const u of e)u.ref&&u.ref[0]===t&&u.ref.shift(),u.func&&Bo(t,u.args),u.xpr&&Bo(t,u.xpr);return e},vo=(t,e)=>{"null"===e?e=null:"true"===e?e=!0:"false"===e&&(e=!1);let u=so.from._params??={},r=t.match(/^(\w+)\[(.*)\]$/);for(;r;)r[1]in u||(u[r[1]]=""===r[2]?[]:{}),u=u[r[1]],r=(t=r[2]).match(/^(\w+)\[(.*)\]$/);Array.isArray(u)?u.push(e):u[t]=e},Do=(t,e,u,r=!1)=>{let n=!1;return t?.forEach(t=>{t.val===e?(t.val="list"in u?u.list.map(t=>t.val):u.val,n=!0):t.list===e?(t.list=u.list,n=!0):t.func?t.args.forEach((t,s)=>{t.val===e?(t.val=u.val,n=!0):t.func&&Do(t.args,e,u,r)}):t.SELECT&&yo(t.SELECT,e,u,r)}),n},yo=(t,e,u,r=!1)=>{let n=!1;const{where:s,from:o}=t;return n=Do(s,e,u),o?.ref?.forEach(t=>{n=Do(t.where,e,u,!0)}),n};Tn=s();const xo=Tn!==u&&$n===t.length;function wo(){throw Tn!==u&&$n<t.length&&zn({type:"end"}),Pn(On,jn<t.length?function(e=$n){const u=t.codePointAt(e);return void 0===u?"":String.fromCodePoint(u)}(jn):null,jn<t.length?Rn(jn,jn+1):Rn(jn,jn))}return e.peg$library?{peg$result:Tn,peg$currPos:$n,peg$FAILED:u,peg$maxFailExpected:On,peg$maxFailPos:jn,peg$success:xo,peg$throw:xo?void 0:wo}:xo?Tn:void wo()}module.exports={StartRules:["ODataRelativeURI"],SyntaxError:peg$SyntaxError,parse:peg$parse};
1
+ "use strict";class peg$SyntaxError extends SyntaxError{constructor(t,e,u,r){super(t),this.expected=e,this.found=u,this.location=r,this.name="SyntaxError"}format(t){let e="Error: "+this.message;if(this.location){let u=null;const r=t.find(t=>t.source===this.location.source);r&&(u=r.text.split(/\r\n|\n|\r/g));const n=this.location.start,s=this.location.source&&"function"==typeof this.location.source.offset?this.location.source.offset(n):n,o=this.location.source+":"+s.line+":"+s.column;if(u){const t=this.location.end,r="".padEnd(s.line.toString().length," "),l=u[n.line-1],a=(n.line===t.line?t.column:l.length+1)-n.column||1;e+="\n --\x3e "+o+"\n"+r+" |\n"+s.line+" | "+l+"\n"+r+" | "+"".padEnd(n.column-1," ")+"".padEnd(a,"^")}else e+="\n at "+o}return e}static buildMessage(t,e){function u(t){return t.codePointAt(0).toString(16).toUpperCase()}const r=Object.prototype.hasOwnProperty.call(RegExp.prototype,"unicode")?new RegExp("[\\p{C}\\p{Mn}\\p{Mc}]","gu"):null;function n(t){return r?t.replace(r,t=>"\\u{"+u(t)+"}"):t}function s(t){return n(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,t=>"\\x0"+u(t)).replace(/[\x10-\x1F\x7F-\x9F]/g,t=>"\\x"+u(t)))}function o(t){return n(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,t=>"\\x0"+u(t)).replace(/[\x10-\x1F\x7F-\x9F]/g,t=>"\\x"+u(t)))}const l={literal:t=>'"'+s(t.text)+'"',class(t){const e=t.parts.map(t=>Array.isArray(t)?o(t[0])+"-"+o(t[1]):o(t));return"["+(t.inverted?"^":"")+e.join("")+"]"+(t.unicode?"u":"")},any:()=>"any character",end:()=>"end of input",other:t=>t.description};function a(t){return l[t.type](t)}return"Expected "+function(t){const e=t.map(a);if(e.sort(),e.length>0){let t=1;for(let u=1;u<e.length;u++)e[u-1]!==e[u]&&(e[t]=e[u],t++);e.length=t}switch(e.length){case 1:return e[0];case 2:return e[0]+" or "+e[1];default:return e.slice(0,-1).join(", ")+", or "+e[e.length-1]}}(t)+" but "+function(t){return t?'"'+s(t)+'"':"end of input"}(e)+" found."}}function peg$parse(t,e){const u={},r=(e=void 0!==e?e:{}).grammarSource,n={ODataRelativeURI:qn};let s=qn;const o="/",l="?",a="&",c="$count",i="$ref",f="$value",h="=",A="$skiptoken=",p="$search=",d="$select=",C="$expand=",g="$filter=",E="$orderby=",F="$top=",b="$skip=",m="$count=",B="$apply=",v="$at",D="$from",y="$toInclusive",x="$to",w="*",$="/$count",L=";",S='"',T="\\\\",j='\\"',O=":",k="any",I="all",Z="asc",_="desc",N="$deltatoken=",R="'",z=",",P="[",q="]",H="@",M="$format=",Q="eq",U="ne",G="lt",J="gt",K="le",V="ge",W="in",X="null",Y="{",tt="}",et="contains",ut="endswith",rt="startswith",nt="matchespattern",st="not",ot="and",lt="or",at="aggregate",ct="groupby",it="filter",ft="search",ht="concat",At="compute",pt="top",dt="skip",Ct="orderby",gt="com.sap.vocabularies.Hierarchy.v1.TopLevels",Et="ancestors",Ft="descendants",bt="topcount",mt="bottomcount",Bt="topsum",vt="bottomsum",Dt="toppercent",yt="bottompercent",xt="with",wt="from",$t="as",Lt="rollup",St="$all",Tt="identity",jt="HierarchyNodes",Ot="$root/",kt="HierarchyQualifier",It="NodeProperty",Zt="Levels",_t="ExpandLevels",Nt='"NodeID"',Rt='"Levels"',zt="filter(",Pt=")",qt="search(",Ht="keep start",Mt="true",Qt="false",Ut="''",Gt="-",Jt="T",Kt=".",Vt="Z",Wt="e",Xt="binary'",Yt="==",te="(",ee=/^[^&]/,ue=/^[ ]/,re=/^[^"&]/,ne=/^[^"]/,se=/^[^;)]/,oe=/^[a-zA-Z0-9_.~![\]\-]/,le=/^[^}]/,ae=/^[^\]]/,ce=/^[a-zA-Z]/,ie=/^[^)]/,fe=/^[^']/,he=/^[a-zA-Z0-9]/,Ae=/^[0-9]/,pe=/^[+\-]/,de=/^[_a-zA-Z]/,Ce=/^[_a-zA-Z0-9"."\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,ge=/^[0-9a-fA-F]/,Ee=/^[^\/?]/,Fe=/^[a-zA-Z0-9\-"."_~!$'()*+,;=:@"\/""?"]/,be=/^[a-zA-Z0-9_\-]/,me=/^[ \t\n]/,Be=In("/",!1),ve=In("?",!1),De=In("&",!1),ye=In("$count",!1),xe=In("$ref",!1),we=In("$value",!1),$e=In("=",!1),Le=In("$skiptoken=",!1),Se=In("$search=",!1),Te=In("$select=",!1),je=In("$expand=",!1),Oe=In("$filter=",!1),ke=In("$orderby=",!1),Ie=In("$top=",!1),Ze=In("$skip=",!1),_e=In("$count=",!1),Ne=In("$apply=",!1),Re=Zn(["&"],!0,!1,!1),ze=In("$at",!1),Pe=In("$from",!1),qe=In("$toInclusive",!1),He=In("$to",!1),Me=In("*",!1),Qe=In("/$count",!1),Ue=In(";",!1),Ge=Zn([" "],!1,!1,!1),Je=Zn(['"',"&"],!0,!1,!1),Ke=In('"',!1),Ve=In("\\\\",!1),We=In('\\"',!1),Xe=Zn(['"'],!0,!1,!1),Ye=Zn([";",")"],!0,!1,!1),tu=In(":",!1),eu=In("any",!1),uu=In("all",!1),ru=In("asc",!1),nu=In("desc",!1),su=In("$deltatoken=",!1),ou=_n("value with double-quoted string"),lu=In("'",!1),au=In(",",!1),cu=In("[",!1),iu=In("]",!1),fu=Zn([["a","z"],["A","Z"],["0","9"],"_",".","~","!","[","]","-"],!1,!1,!1),hu=_n("an aliased parameter (@param)"),Au=In("@",!1),pu=In("$format=",!1),du=In("eq",!1),Cu=In("ne",!1),gu=In("lt",!1),Eu=In("gt",!1),Fu=In("le",!1),bu=In("ge",!1),mu=In("in",!1),Bu=_n("navigation with $count"),vu=_n("a reference"),Du=_n("null"),yu=In("null",!1),xu=_n("a json object"),wu=In("{",!1),$u=Zn(["}"],!0,!1,!1),Lu=In("}",!1),Su=_n("a json array"),Tu=Zn(["]"],!0,!1,!1),ju=_n("a list"),Ou=_n("a function name"),ku=Zn([["a","z"],["A","Z"]],!1,!1,!1),Iu=In("contains",!0),Zu=In("endswith",!0),_u=In("startswith",!0),Nu=In("matchespattern",!0),Ru=In("NOT",!0),zu=In("AND",!0),Pu=In("OR",!0),qu=In("aggregate",!1),Hu=In("groupby",!1),Mu=In("filter",!1),Qu=In("search",!1),Uu=In("concat",!1),Gu=In("compute",!1),Ju=In("top",!1),Ku=In("skip",!1),Vu=In("orderby",!1),Wu=In("com.sap.vocabularies.Hierarchy.v1.TopLevels",!1),Xu=In("ancestors",!1),Yu=In("descendants",!1),tr=In("topcount",!0),er=In("bottomcount",!0),ur=In("topsum",!0),rr=In("bottomsum",!0),nr=In("toppercent",!0),sr=In("bottompercent",!0),or=In("with",!1),lr=In("from",!1),ar=In("as",!1),cr=In("rollup",!1),ir=In("$all",!1),fr=Zn([")"],!0,!1,!1),hr=In("identity",!1),Ar=In("HierarchyNodes",!1),pr=In("$root/",!1),dr=In("HierarchyQualifier",!1),Cr=In("NodeProperty",!1),gr=In("Levels",!1),Er=In("ExpandLevels",!1),Fr=In('"NodeID"',!1),br=In('"Levels"',!1),mr=In("filter(",!1),Br=In(")",!1),vr=In("search(",!1),Dr=In("keep start",!1),yr=_n("a boolean"),xr=In("true",!1),wr=In("false",!1),$r=_n("a single quoted string"),Lr=In("''",!1),Sr=Zn(["'"],!0,!1,!1),Tr=_n("a doubled quoted string"),jr=_n("a string and/or number"),Or=Zn([["a","z"],["A","Z"],["0","9"]],!1,!1,!1),kr=_n("a time"),Ir=Zn([["0","9"]],!1,!1,!1),Zr=_n("a date"),_r=In("-",!1),Nr=In("T",!1),Rr=In(".",!1),zr=In("Z",!1),Pr=Zn(["+","-"],!1,!1,!1),qr=_n("a number"),Hr=In("e",!1),Mr=_n("an integer"),Qr=_n("an identifier"),Ur=Zn(["_",["a","z"],["A","Z"]],!1,!1,!1),Gr=Zn(["_",["a","z"],["A","Z"],["0","9"],'"',".",'"',"ª","µ","º",["À","Ö"],["Ø","ö"],["ø","ˁ"],["ˆ","ˑ"],["ˠ","ˤ"],"ˬ","ˮ",["Ͱ","ʹ"],"Ͷ","ͷ",["ͺ","ͽ"],"Ά",["Έ","Ί"],"Ό",["Ύ","Ρ"],["Σ","ϵ"],["Ϸ","ҁ"],["Ҋ","ԧ"],["Ա","Ֆ"],"ՙ",["ա","և"],["א","ת"],["װ","ײ"],["ؠ","ي"],"ٮ","ٯ",["ٱ","ۓ"],"ە","ۥ","ۦ","ۮ","ۯ",["ۺ","ۼ"],"ۿ","ܐ",["ܒ","ܯ"],["ݍ","ޥ"],"ޱ",["ߊ","ߪ"],"ߴ","ߵ","ߺ",["ࠀ","ࠕ"],"ࠚ","ࠤ","ࠨ",["ࡀ","ࡘ"],"ࢠ",["ࢢ","ࢬ"],["ऄ","ह"],"ऽ","ॐ",["क़","ॡ"],["ॱ","ॷ"],["ॹ","ॿ"],["অ","ঌ"],"এ","ঐ",["ও","ন"],["প","র"],"ল",["শ","হ"],"ঽ","ৎ","ড়","ঢ়",["য়","ৡ"],"ৰ","ৱ",["ਅ","ਊ"],"ਏ","ਐ",["ਓ","ਨ"],["ਪ","ਰ"],"ਲ","ਲ਼","ਵ","ਸ਼","ਸ","ਹ",["ਖ਼","ੜ"],"ਫ਼",["ੲ","ੴ"],["અ","ઍ"],["એ","ઑ"],["ઓ","ન"],["પ","ર"],"લ","ળ",["વ","હ"],"ઽ","ૐ","ૠ","ૡ",["ଅ","ଌ"],"ଏ","ଐ",["ଓ","ନ"],["ପ","ର"],"ଲ","ଳ",["ଵ","ହ"],"ଽ","ଡ଼","ଢ଼",["ୟ","ୡ"],"ୱ","ஃ",["அ","ஊ"],["எ","ஐ"],["ஒ","க"],"ங","ச","ஜ","ஞ","ட","ண","த",["ந","ப"],["ம","ஹ"],"ௐ",["అ","ఌ"],["ఎ","ఐ"],["ఒ","న"],["ప","ళ"],["వ","హ"],"ఽ","ౘ","ౙ","ౠ","ౡ",["ಅ","ಌ"],["ಎ","ಐ"],["ಒ","ನ"],["ಪ","ಳ"],["ವ","ಹ"],"ಽ","ೞ","ೠ","ೡ","ೱ","ೲ",["അ","ഌ"],["എ","ഐ"],["ഒ","ഺ"],"ഽ","ൎ","ൠ","ൡ",["ൺ","ൿ"],["අ","ඖ"],["ක","න"],["ඳ","ර"],"ල",["ව","ෆ"],["ก","ะ"],"า","ำ",["เ","ๆ"],"ກ","ຂ","ຄ","ງ","ຈ","ຊ","ຍ",["ດ","ທ"],["ນ","ຟ"],["ມ","ຣ"],"ລ","ວ","ສ","ຫ",["ອ","ະ"],"າ","ຳ","ຽ",["ເ","ໄ"],"ໆ",["ໜ","ໟ"],"ༀ",["ཀ","ཇ"],["ཉ","ཬ"],["ྈ","ྌ"],["က","ဪ"],"ဿ",["ၐ","ၕ"],["ၚ","ၝ"],"ၡ","ၥ","ၦ",["ၮ","ၰ"],["ၵ","ႁ"],"ႎ",["Ⴀ","Ⴥ"],"Ⴧ","Ⴭ",["ა","ჺ"],["ჼ","ቈ"],["ቊ","ቍ"],["ቐ","ቖ"],"ቘ",["ቚ","ቝ"],["በ","ኈ"],["ኊ","ኍ"],["ነ","ኰ"],["ኲ","ኵ"],["ኸ","ኾ"],"ዀ",["ዂ","ዅ"],["ወ","ዖ"],["ዘ","ጐ"],["ጒ","ጕ"],["ጘ","ፚ"],["ᎀ","ᎏ"],["Ꭰ","Ᏼ"],["ᐁ","ᙬ"],["ᙯ","ᙿ"],["ᚁ","ᚚ"],["ᚠ","ᛪ"],["ᜀ","ᜌ"],["ᜎ","ᜑ"],["ᜠ","ᜱ"],["ᝀ","ᝑ"],["ᝠ","ᝬ"],["ᝮ","ᝰ"],["ក","ឳ"],"ៗ","ៜ",["ᠠ","ᡷ"],["ᢀ","ᢨ"],"ᢪ",["ᢰ","ᣵ"],["ᤀ","ᤜ"],["ᥐ","ᥭ"],["ᥰ","ᥴ"],["ᦀ","ᦫ"],["ᧁ","ᧇ"],["ᨀ","ᨖ"],["ᨠ","ᩔ"],"ᪧ",["ᬅ","ᬳ"],["ᭅ","ᭋ"],["ᮃ","ᮠ"],"ᮮ","ᮯ",["ᮺ","ᯥ"],["ᰀ","ᰣ"],["ᱍ","ᱏ"],["ᱚ","ᱽ"],["ᳩ","ᳬ"],["ᳮ","ᳱ"],"ᳵ","ᳶ",["ᴀ","ᶿ"],["Ḁ","ἕ"],["Ἐ","Ἕ"],["ἠ","ὅ"],["Ὀ","Ὅ"],["ὐ","ὗ"],"Ὑ","Ὓ","Ὕ",["Ὗ","ώ"],["ᾀ","ᾴ"],["ᾶ","ᾼ"],"ι",["ῂ","ῄ"],["ῆ","ῌ"],["ῐ","ΐ"],["ῖ","Ί"],["ῠ","Ῥ"],["ῲ","ῴ"],["ῶ","ῼ"],"ⁱ","ⁿ",["ₐ","ₜ"],"ℂ","ℇ",["ℊ","ℓ"],"ℕ",["ℙ","ℝ"],"ℤ","Ω","ℨ",["K","ℭ"],["ℯ","ℹ"],["ℼ","ℿ"],["ⅅ","ⅉ"],"ⅎ","Ↄ","ↄ",["Ⰰ","Ⱞ"],["ⰰ","ⱞ"],["Ⱡ","ⳤ"],["Ⳬ","ⳮ"],"Ⳳ","ⳳ",["ⴀ","ⴥ"],"ⴧ","ⴭ",["ⴰ","ⵧ"],"ⵯ",["ⶀ","ⶖ"],["ⶠ","ⶦ"],["ⶨ","ⶮ"],["ⶰ","ⶶ"],["ⶸ","ⶾ"],["ⷀ","ⷆ"],["ⷈ","ⷎ"],["ⷐ","ⷖ"],["ⷘ","ⷞ"],"ⸯ","々","〆",["〱","〵"],"〻","〼",["ぁ","ゖ"],["ゝ","ゟ"],["ァ","ヺ"],["ー","ヿ"],["ㄅ","ㄭ"],["ㄱ","ㆎ"],["ㆠ","ㆺ"],["ㇰ","ㇿ"],["㐀","䶵"],["一","鿌"],["ꀀ","ꒌ"],["ꓐ","ꓽ"],["ꔀ","ꘌ"],["ꘐ","ꘟ"],"ꘪ","ꘫ",["Ꙁ","ꙮ"],["ꙿ","ꚗ"],["ꚠ","ꛥ"],["ꜗ","ꜟ"],["Ꜣ","ꞈ"],["Ꞌ","ꞎ"],["Ꞑ","ꞓ"],["Ꞡ","Ɦ"],["ꟸ","ꠁ"],["ꠃ","ꠅ"],["ꠇ","ꠊ"],["ꠌ","ꠢ"],["ꡀ","ꡳ"],["ꢂ","ꢳ"],["ꣲ","ꣷ"],"ꣻ",["ꤊ","ꤥ"],["ꤰ","ꥆ"],["ꥠ","ꥼ"],["ꦄ","ꦲ"],"ꧏ",["ꨀ","ꨨ"],["ꩀ","ꩂ"],["ꩄ","ꩋ"],["ꩠ","ꩶ"],"ꩺ",["ꪀ","ꪯ"],"ꪱ","ꪵ","ꪶ",["ꪹ","ꪽ"],"ꫀ","ꫂ",["ꫛ","ꫝ"],["ꫠ","ꫪ"],["ꫲ","ꫴ"],["ꬁ","ꬆ"],["ꬉ","ꬎ"],["ꬑ","ꬖ"],["ꬠ","ꬦ"],["ꬨ","ꬮ"],["ꯀ","ꯢ"],["가","힣"],["ힰ","ퟆ"],["ퟋ","ퟻ"],["豈","舘"],["並","龎"],["ff","st"],["ﬓ","ﬗ"],"יִ",["ײַ","ﬨ"],["שׁ","זּ"],["טּ","לּ"],"מּ","נּ","סּ","ףּ","פּ",["צּ","ﮱ"],["ﯓ","ﴽ"],["ﵐ","ﶏ"],["ﶒ","ﷇ"],["ﷰ","ﷻ"],["ﹰ","ﹴ"],["ﹶ","ﻼ"],["A","Z"],["a","z"],["ヲ","ᄒ"],["ᅡ","ᅦ"],["ᅧ","ᅬ"],["ᅭ","ᅲ"],["ᅳ","ᅵ"]],!1,!1,!1),Jr=_n("a guid"),Kr=_n("a hex value"),Vr=Zn([["0","9"],["a","f"],["A","F"]],!1,!1,!1),Wr=Zn(["/","?"],!0,!1,!1),Xr=Zn([["a","z"],["A","Z"],["0","9"],"-",'"',".",'"',"_","~","!","$","'","(",")","*","+",",",";","=",":","@",'"',"/",'"','"',"?",'"'],!1,!1,!1),Yr=_n("a binary"),tn=In("binary'",!1),en=Zn([["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1,!1),un=In("==",!1),rn=In("(",!1),nn=Zn([" ","\t","\n"],!1,!1,!1),sn=_n("a whitespace");function on(t,e,u){return u}function ln(t,e){mo(e)}function an(t){return t}function cn(t,e,u){t.push(e,...u)}function fn(t,e){t.push(e)}function hn(t,e,u){t.push(e,...u)}function An(t,e){return e}function pn(t,e){return e}function dn(t,e){return e?{id:t,where:e}:t}function Cn(t,e){return e}function gn(t,e){return e}function En(t,e){return e}function Fn(t,e){return[t,...e]}function bn(t,e){return e}function mn(t,e){return e}function Bn(t,e){return e}function vn(t,e){return e}function Dn(t,e){return e}function yn(t,e){return e}function xn(t,e){return e}function wn(t,e){return e}let $n=0|e.peg$currPos,Ln=$n;const Sn=[{line:1,column:1}];let Tn,jn=$n,On=e.peg$maxFailExpected||[],kn=0|e.peg$silentFails;if(e.startRule){if(!(e.startRule in n))throw new Error("Can't start parsing from rule \""+e.startRule+'".');s=n[e.startRule]}function In(t,e){return{type:"literal",text:t,ignoreCase:e}}function Zn(t,e,u,r){return{type:"class",parts:t,inverted:e,ignoreCase:u,unicode:r}}function _n(t){return{type:"other",description:t}}function Nn(e){let u,r=Sn[e];if(r)return r;if(e>=Sn.length)u=Sn.length-1;else for(u=e;!Sn[--u];);for(r=Sn[u],r={line:r.line,column:r.column};u<e;)10===t.charCodeAt(u)?(r.line++,r.column=1):r.column++,u++;return Sn[e]=r,r}function Rn(t,e,u){const n=Nn(t),s=Nn(e),o={source:r,start:{offset:t,line:n.line,column:n.column},end:{offset:e,line:s.line,column:s.column}};return u&&r&&"function"==typeof r.offset&&(o.start=r.offset(o.start),o.end=r.offset(o.end)),o}function zn(t){$n<jn||($n>jn&&(jn=$n,On=[]),On.push(t))}function Pn(t,e,u){return new peg$SyntaxError(peg$SyntaxError.buildMessage(t,e),t,e,u)}function qn(){let e,r,n,s,c,i,f,h,A,p,d,C,g,E,F,b,m;if(e=$n,47===t.charCodeAt($n)?(r=o,$n++):(r=u,0===kn&&zn(Be)),r===u&&(r=null),n=$n,s=Hn(),s!==u&&(Ln=n,s=void(so=s)),n=s,n!==u){if(s=$n,c=Vs(),63===t.charCodeAt($n)?(i=l,$n++):(i=u,0===kn&&zn(ve)),i!==u){if(f=Vs(),h=$n,38===t.charCodeAt($n)?(A=a,$n++):(A=u,0===kn&&zn(De)),A===u&&(A=null),p=Vs(),d=Gn(),d!==u){if(C=[],g=$n,E=Vs(),F=[],38===t.charCodeAt($n)?(b=a,$n++):(b=u,0===kn&&zn(De)),b!==u)for(;b!==u;)F.push(b),38===t.charCodeAt($n)?(b=a,$n++):(b=u,0===kn&&zn(De));else F=u;for(F!==u?(b=Vs(),m=Gn(),m!==u?(E=[E,F,b,m],g=E):($n=g,g=u)):($n=g,g=u);g!==u;){if(C.push(g),g=$n,E=Vs(),F=[],38===t.charCodeAt($n)?(b=a,$n++):(b=u,0===kn&&zn(De)),b!==u)for(;b!==u;)F.push(b),38===t.charCodeAt($n)?(b=a,$n++):(b=u,0===kn&&zn(De));else F=u;F!==u?(b=Vs(),m=Gn(),m!==u?(E=[E,F,b,m],g=E):($n=g,g=u)):($n=g,g=u)}A=[A,p,d,C],h=A}else $n=h,h=u;h===u&&(h=null),c=[c,i,f,h],s=c}else $n=s,s=u;s===u&&(s=null),c=Vs(),Ln=e,e=function(){if(oo)return so.columns=[{args:[{val:1}],as:"$count",func:"count"}],delete so.expand,delete so.limit,delete so.orderBy,so.apply?go(so,so.apply):{SELECT:so};let t;if(so.expand){so.columns||(so.columns=["*"],t=!0);for(const t of so.expand){const e=so.columns.findIndex(io(t));e>-1&&so.columns.splice(e,1),so.columns.push(t)}delete so.expand}return so.count&&so.apply&&(so.__countAggregated=!0),so.apply?go(so,so.apply,t):{SELECT:so}}()}else $n=e,e=u;return e}function Hn(){let e,r,n,s,l,a,h;var A;return e=$n,t.substr($n,6)===c?(r=c,$n+=6):(r=u,0===kn&&zn(ye)),r!==u&&(Ln=e,r=void(oo=!0)),e=r,e===u&&(e=$n,r=$n,t.substr($n,4)===i?(n=i,$n+=4):(n=u,0===kn&&zn(xe)),n===u&&(t.substr($n,6)===f?(n=f,$n+=6):(n=u,0===kn&&zn(we))),r=n!==u?t.substring(r,$n):n,r!==u&&(Ln=e,A=r,r=!Xs.includes(A)&&{from:{ref:[A]}}),e=r,e===u&&(e=$n,r=$n,n=Hs(),n!==u?(s=$n,l=Js(),l!==u?(a=Ks(),a!==u?(l=[l,a],s=l):($n=s,s=u)):($n=s,s=u),s===u&&(s=$n,l=Js(),l!==u?(a=Qn(),a!==u?(h=Ks(),h!==u?(l=[l,a,h],s=l):($n=s,s=u)):($n=s,s=u)):($n=s,s=u)),s===u&&(s=null),l=$n,kn++,a=Us(),kn--,a===u?l=void 0:($n=l,l=u),l!==u?(n=[n,s,l],r=n):($n=r,r=u)):($n=r,r=u),r===u&&(r=$n,n=Us(),n!==u&&(Ln=r,n=[n]),r=n),r===u&&(r=null),n=$n,s=$n,47===t.charCodeAt($n)?(l=o,$n++):(l=u,0===kn&&zn(Be)),l!==u&&(Ln=s,l=l),s=l,s!==u?(l=Hn(),l===u&&(l=null),s=[s,l],n=s):($n=n,n=u),n===u&&(n=null),Ln=e,e=function(t,e){if(e=e&&e[1],!t&&!e)return{from:{ref:[""]}};if(!t&&e&&e.from)return e.from.ref.unshift(""),e;const[u,r]=t,n=[];if(r?r.length>2?n.push({id:u,where:r[1].map(t=>t.val&&t.val.match&&t.val.match(/^"(.*)"$/)?{val:t.val.match(/^"(.*)"$/)[1]}:t)}):n.push({id:u,where:[]}):ro?n.push(`${"object"==typeof u&&"val"in u?u.val:u}`):"object"==typeof u&&"string"==typeof u.val&&u.val.match(/^[1-9]\d*$|^0$/)?n.push({val:lo(u.val)}):n.push(u),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}(r,n))),e}function Mn(){let e,r,n,s,o,l,a,c,i;return e=$n,r=ds(),r!==u&&(Ln=e,r=[r]),e=r,e===u&&(e=$n,r=ps(),r!==u?(n=Vs(),61===t.charCodeAt($n)?(s=h,$n++):(s=u,0===kn&&zn($e)),s!==u?(o=Vs(),l=ds(),l!==u?(a=$n,c=Gs(),c!==u?(i=Mn(),i!==u?(c=[c,i],a=c):($n=a,a=u)):($n=a,a=u),a===u&&(a=null),Ln=e,e=function(t,e,u){const r=[t,"=",e];return u&&r.push("and",...u[1]),r}(r,l,a)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)),e}function Qn(){let e,r,n,s,o,l,a,c,i;return e=$n,r=ps(),r!==u?(n=Vs(),61===t.charCodeAt($n)?(s=h,$n++):(s=u,0===kn&&zn($e)),s!==u?(o=Vs(),l=Cs(),l!==u?(a=$n,c=Gs(),c!==u?(i=Qn(),i!==u?(c=[c,i],a=c):($n=a,a=u)):($n=a,a=u),a===u&&(a=null),Ln=e,e=function(t,e,u){const r=[t,"=",e];return u&&r.push("and",...u[1]),r}(r,l,a)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,r=Cs(),r!==u&&(Ln=e,r=[r]),e=r),e}function Un(){let e,r,n,s,l,a,c;if(e=$n,r=Hs(),r!==u){for(n=$n,s=Js(),s!==u?(l=Ks(),l!==u?(s=[s,l],n=s):($n=n,n=u)):($n=n,n=u),n===u&&(n=$n,s=Js(),s!==u?(l=Mn(),l!==u?(a=Ks(),a!==u?(Ln=n,n=l):($n=n,n=u)):($n=n,n=u)):($n=n,n=u)),n===u&&(n=null),s=[],l=$n,47===t.charCodeAt($n)?(a=o,$n++):(a=u,0===kn&&zn(Be)),a!==u?(c=Un(),c!==u?(Ln=l,l=on(0,0,c)):($n=l,l=u)):($n=l,l=u);l!==u;)s.push(l),l=$n,47===t.charCodeAt($n)?(a=o,$n++):(a=u,0===kn&&zn(Be)),a!==u?(c=Un(),c!==u?(Ln=l,l=on(0,0,c)):($n=l,l=u)):($n=l,l=u);Ln=e,e=function(t,e,u){const r=[e?{id:t,where:e}:t];return u.length&&r.push(...u.map(t=>t.from.ref[0])),{from:{ref:r}}}(r,n,s)}else $n=e,e=u;return e}function Gn(){let e,r,n,s;var o,l;return e=$n,t.substr($n,11)===A?(r=A,$n+=11):(r=u,0===kn&&zn(Le)),r!==u?(n=Vs(),s=function(){let e,r;e=$n,r=function(){let e,r,n;e=$n,r=[],n=t.charAt($n),Fe.test(n)?$n++:(n=u,0===kn&&zn(Xr));if(n!==u)for(;n!==u;)r.push(n),n=t.charAt($n),Fe.test(n)?$n++:(n=u,0===kn&&zn(Xr));else r=u;e=r!==u?t.substring(e,$n):r;return e}(),r===u&&(r=null);return Ln=e,r=function(t){ao(t,{SELECT:so})}(r),e=r,e}(),r=[r,n,s],e=r):($n=e,e=u),e===u&&(e=$n,t.substr($n,8)===p?(r=p,$n+=8):(r=u,0===kn&&zn(Se)),r!==u?(n=Vs(),s=function(){let e,r;e=$n,r=function(){let e,r,n,s,o,l,a,c,i,f,h,A;e=$n,r=$n,n=[],s=$n,o=$n,l=[],a=t.charAt($n),ue.test(a)?$n++:(a=u,0===kn&&zn(Ge));for(;a!==u;)l.push(a),a=t.charAt($n),ue.test(a)?$n++:(a=u,0===kn&&zn(Ge));o=t.substring(o,$n),l=[],a=t.charAt($n),re.test(a)?$n++:(a=u,0===kn&&zn(Je));if(a!==u)for(;a!==u;)l.push(a),a=t.charAt($n),re.test(a)?$n++:(a=u,0===kn&&zn(Je));else l=u;if(l===u){if(l=[],a=$n,34===t.charCodeAt($n)?(c=S,$n++):(c=u,0===kn&&zn(Ke)),c!==u){if(i=[],t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe)))),f!==u)for(;f!==u;)i.push(f),t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe))));else i=u;if(i!==u)if(34===t.charCodeAt($n)?(f=S,$n++):(f=u,0===kn&&zn(Ke)),f!==u){for(h=[],A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));A!==u;)h.push(A),A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));c=[c,i,f,h],a=c}else $n=a,a=u;else $n=a,a=u}else $n=a,a=u;if(a!==u)for(;a!==u;)if(l.push(a),a=$n,34===t.charCodeAt($n)?(c=S,$n++):(c=u,0===kn&&zn(Ke)),c!==u){if(i=[],t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe)))),f!==u)for(;f!==u;)i.push(f),t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe))));else i=u;if(i!==u)if(34===t.charCodeAt($n)?(f=S,$n++):(f=u,0===kn&&zn(Ke)),f!==u){for(h=[],A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));A!==u;)h.push(A),A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));c=[c,i,f,h],a=c}else $n=a,a=u;else $n=a,a=u}else $n=a,a=u;else l=u}l!==u?(o=[o,l],s=o):($n=s,s=u);if(s!==u)for(;s!==u;){for(n.push(s),s=$n,o=$n,l=[],a=t.charAt($n),ue.test(a)?$n++:(a=u,0===kn&&zn(Ge));a!==u;)l.push(a),a=t.charAt($n),ue.test(a)?$n++:(a=u,0===kn&&zn(Ge));if(o=t.substring(o,$n),l=[],a=t.charAt($n),re.test(a)?$n++:(a=u,0===kn&&zn(Je)),a!==u)for(;a!==u;)l.push(a),a=t.charAt($n),re.test(a)?$n++:(a=u,0===kn&&zn(Je));else l=u;if(l===u){if(l=[],a=$n,34===t.charCodeAt($n)?(c=S,$n++):(c=u,0===kn&&zn(Ke)),c!==u){if(i=[],t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe)))),f!==u)for(;f!==u;)i.push(f),t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe))));else i=u;if(i!==u)if(34===t.charCodeAt($n)?(f=S,$n++):(f=u,0===kn&&zn(Ke)),f!==u){for(h=[],A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));A!==u;)h.push(A),A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));c=[c,i,f,h],a=c}else $n=a,a=u;else $n=a,a=u}else $n=a,a=u;if(a!==u)for(;a!==u;)if(l.push(a),a=$n,34===t.charCodeAt($n)?(c=S,$n++):(c=u,0===kn&&zn(Ke)),c!==u){if(i=[],t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe)))),f!==u)for(;f!==u;)i.push(f),t.substr($n,2)===T?(f=T,$n+=2):(f=u,0===kn&&zn(Ve)),f===u&&(t.substr($n,2)===j?(f=j,$n+=2):(f=u,0===kn&&zn(We)),f===u&&(f=t.charAt($n),ne.test(f)?$n++:(f=u,0===kn&&zn(Xe))));else i=u;if(i!==u)if(34===t.charCodeAt($n)?(f=S,$n++):(f=u,0===kn&&zn(Ke)),f!==u){for(h=[],A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));A!==u;)h.push(A),A=t.charAt($n),ue.test(A)?$n++:(A=u,0===kn&&zn(Ge));c=[c,i,f,h],a=c}else $n=a,a=u;else $n=a,a=u}else $n=a,a=u;else l=u}l!==u?(o=[o,l],s=o):($n=s,s=u)}else n=u;r=n!==u?t.substring(r,$n):n;r!==u&&(Ln=e,r=[{val:r}]);return e=r,e}(),r!==u&&(Ln=e);e=r,e===u&&(e=Vs());return e}(),s!==u?(Ln=e,e=void((l=s)&&(so.search=l))):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,r=Jn(),r!==u&&(Ln=e,r=void((o=r)&&o.apply&&(so.apply=o.apply))),e=r,e===u&&(e=function(){let e,r,n,s;e=$n,t.substr($n,3)===v?(r=v,$n+=3):(r=u,0===kn&&zn(ze));r===u&&(t.substr($n,5)===D?(r=D,$n+=5):(r=u,0===kn&&zn(Pe)),r===u&&(t.substr($n,12)===y?(r=y,$n+=12):(r=u,0===kn&&zn(qe)),r===u&&(t.substr($n,3)===x?(r=x,$n+=3):(r=u,0===kn&&zn(He)))));r!==u?(61===t.charCodeAt($n)?(n=h,$n++):(n=u,0===kn&&zn($e)),n!==u?(s=Ps(),s!==u?(r=[r,n,s],e=r):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),e===u&&(e=function(){let e,r,n,s,o;e=$n,t.substr($n,8)===M?(r=M,$n+=8):(r=u,0===kn&&zn(pu));if(r!==u){for(n=$n,s=[],o=t.charAt($n),ee.test(o)?$n++:(o=u,0===kn&&zn(Re));o!==u;)s.push(o),o=t.charAt($n),ee.test(o)?$n++:(o=u,0===kn&&zn(Re));n=t.substring(n,$n),Ln=e,e=function(t){if("json"!==t.toLowerCase()){const t=new Error('Only query parameter "json" is allowed in "$format".');throw t.statusCode=501,t}}(n)}else $n=e,e=u;return e}(),e===u&&(e=function(){let e,r,n,s,o,l;e=$n,r=$n,n=[],s=t.charAt($n),oe.test(s)?$n++:(s=u,0===kn&&zn(fu));if(s!==u)for(;s!==u;)n.push(s),s=t.charAt($n),oe.test(s)?$n++:(s=u,0===kn&&zn(fu));else n=u;r=n!==u?t.substring(r,$n):n;if(r!==u){for(61===t.charCodeAt($n)?(n=h,$n++):(n=u,0===kn&&zn($e)),n===u&&(n=null),s=$n,o=[],l=t.charAt($n),ee.test(l)?$n++:(l=u,0===kn&&zn(Re));l!==u;)o.push(l),l=t.charAt($n),ee.test(l)?$n++:(l=u,0===kn&&zn(Re));s=t.substring(s,$n),Ln=e,e=vo(r,s)}else $n=e,e=u;return e}(),e===u&&(e=function(){let e,r,n,s,o;e=$n,r=cs(),r!==u?(61===t.charCodeAt($n)?(n=h,$n++):(n=u,0===kn&&zn($e)),n!==u?(s=$n,kn++,o=cs(),kn--,o===u?s=void 0:($n=s,s=u),s!==u?(o=function(){let e,r,n,s;e=ds(),e===u&&(e=Es(),e===u&&(e=Fs(),e===u&&(e=$n,91===t.charCodeAt($n)?(r=P,$n++):(r=u,0===kn&&zn(cu)),r!==u?(n=function(){let e,r,n,s,o,l;if(e=$n,r=as(),r!==u){for(n=[],s=$n,44===t.charCodeAt($n)?(o=z,$n++):(o=u,0===kn&&zn(au)),o!==u?(l=as(),l!==u?(Ln=s,s=An(0,l)):($n=s,s=u)):($n=s,s=u);s!==u;)n.push(s),s=$n,44===t.charCodeAt($n)?(o=z,$n++):(o=u,0===kn&&zn(au)),o!==u?(l=as(),l!==u?(Ln=s,s=An(0,l)):($n=s,s=u)):($n=s,s=u);Ln=e,a=n,e=[r,...a]}else $n=e,e=u;var a;return e}(),n!==u?(93===t.charCodeAt($n)?(s=q,$n++):(s=u,0===kn&&zn(iu)),s!==u?(Ln=e,e={list:n}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u))));return e}(),o!==u?(Ln=e,e=void(yo(so,l=r,a=o)||(a.val?a=a.val:a.list&&Array.isArray(a.list)&&(a=a.list.map(t=>t.val)),vo(l,a)))):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);var l,a;return e}(),e===u&&(e=function(){let e,r,n,s,o;e=$n,t.substr($n,12)===N?(r=N,$n+=12):(r=u,0===kn&&zn(su));if(r!==u){for(n=Vs(),s=[],o=t.charAt($n),ee.test(o)?$n++:(o=u,0===kn&&zn(Re));o!==u;)s.push(o),o=t.charAt($n),ee.test(o)?$n++:(o=u,0===kn&&zn(Re));Ln=e,e=s}else $n=e,e=u;return e}()))))))),e}function Jn(){let e,r,n,s,o,l,a,c;if(e=$n,t.substr($n,8)===d?(r=d,$n+=8):(r=u,0===kn&&zn(Te)),r!==u)if(n=Vs(),s=Kn(),s!==u){for(o=[],l=$n,a=Gs(),a!==u?(c=Kn(),c!==u?(a=[a,c],l=a):($n=l,l=u)):($n=l,l=u);l!==u;)o.push(l),l=$n,a=Gs(),a!==u?(c=Kn(),c!==u?(a=[a,c],l=a):($n=l,l=u)):($n=l,l=u);r=[r,n,s,o],e=r}else $n=e,e=u;else $n=e,e=u;if(e===u){if(e=$n,t.substr($n,8)===C?(r=C,$n+=8):(r=u,0===kn&&zn(je)),r!==u)if(n=Vs(),s=Xn(),s!==u){for(o=[],l=$n,a=Gs(),a!==u?(c=Xn(),c!==u?(a=[a,c],l=a):($n=l,l=u)):($n=l,l=u);l!==u;)o.push(l),l=$n,a=Gs(),a!==u?(c=Xn(),c!==u?(a=[a,c],l=a):($n=l,l=u)):($n=l,l=u);l=function(){let e,r;e=$n,t.substr($n,7)===$?(r=$,$n+=7):(r=u,0===kn&&zn(Qe));r!==u&&(Ln=e,r=function(){const t=new Error('"/$count" is not supported for expand operation');throw t.statusCode=501,t}());return e=r,e}(),l===u&&(l=null),r=[r,n,s,o,l],e=r}else $n=e,e=u;else $n=e,e=u;if(e===u&&(e=$n,t.substr($n,8)===g?(r=g,$n+=8):(r=u,0===kn&&zn(Oe)),r!==u?(n=Vs(),s=us(),s!==u?(Ln=e,h=s,e=void(so.where=h)):($n=e,e=u)):($n=e,e=u),e===u)){if(e=$n,t.substr($n,9)===E?(r=E,$n+=9):(r=u,0===kn&&zn(ke)),r!==u)if(n=Vs(),s=ls(),s!==u){for(o=[],l=$n,a=Gs(),a!==u?(c=ls(),c!==u?(Ln=l,l=ln(0,c)):($n=l,l=u)):($n=l,l=u);l!==u;)o.push(l),l=$n,a=Gs(),a!==u?(c=ls(),c!==u?(Ln=l,l=ln(0,c)):($n=l,l=u)):($n=l,l=u);Ln=e,e=void mo(s,!0)}else $n=e,e=u;else $n=e,e=u;if(e===u&&(e=$n,t.substr($n,5)===F?(r=F,$n+=5):(r=u,0===kn&&zn(Ie)),r!==u?(n=Vs(),s=Yn(),s!==u?(Ln=e,f=s,e=void((so.limit||(so.limit={})).rows={val:f})):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,6)===b?(r=b,$n+=6):(r=u,0===kn&&zn(Ze)),r!==u?(n=Vs(),s=ts(),s!==u?(Ln=e,e=function(t){bo(t)}(s)):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,8)===p?(r=p,$n+=8):(r=u,0===kn&&zn(Se)),r!==u?(n=Vs(),s=es(),s!==u?(Ln=e,e=void((i=s)&&(so.search=i))):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,7)===m?(r=m,$n+=7):(r=u,0===kn&&zn(_e)),r!==u?(n=Vs(),s=function(){let t,e;t=$n,e=Ns(),e!==u&&(Ln=t,e=function(t){t&&(so.count=!0)}(e));return t=e,t}(),s!==u?(r=[r,n,s],e=r):($n=e,e=u)):($n=e,e=u),e===u))))){if(e=$n,t.substr($n,7)===B?(r=B,$n+=7):(r=u,0===kn&&zn(Ne)),r!==u)if(Ln=$n,n=cds.env.features.skip_apply_parsing,n=n?void 0:u,n!==u){for(s=Vs(),o=[],l=t.charAt($n),ee.test(l)?$n++:(l=u,0===kn&&zn(Re));l!==u;)o.push(l),l=t.charAt($n),ee.test(l)?$n++:(l=u,0===kn&&zn(Re));Ln=e,e=null}else $n=e,e=u;else $n=e,e=u;e===u&&(e=$n,t.substr($n,7)===B?(r=B,$n+=7):(r=u,0===kn&&zn(Ne)),r!==u?(n=Vs(),s=Ds(),s!==u?(Ln=e,e=s):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,8)===C?(r=C,$n+=8):(r=u,0===kn&&zn(je)),r!==u&&(Ln=e,r=null),e=r))}}}var i,f,h;return e}function Kn(){let e,r;var n;return e=$n,42===t.charCodeAt($n)?(r=w,$n++):(r=u,0===kn&&zn(Me)),r===u&&(r=ps()),r!==u&&(Ln=e,n=r,so.columns=Array.isArray(so.columns)?so.columns:[],so.columns.find(io(n))||so.columns.push(n),r=n),e=r,e}function Vn(){let e,r,n,s,o,l;for(e=$n,r=[],n=$n,s=Jn(),s!==u?(o=Vs(),59===t.charCodeAt($n)?(l=L,$n++):(l=u,0===kn&&zn(Ue)),l===u&&(l=null),Ln=n,n=s):($n=n,n=u);n!==u;)r.push(n),n=$n,s=Jn(),s!==u?(o=Vs(),59===t.charCodeAt($n)?(l=L,$n++):(l=u,0===kn&&zn(Ue)),l===u&&(l=null),Ln=n,n=an(s)):($n=n,n=u);return Ln=e,r=function(t){if(t.find(t=>t&&void 0!==t.apply)){const t=new Error('"$apply" is not supported for expand operation');throw t.statusCode=501,t}if(so.columns){for(const t of so.columns)so.expand.find(io(t))||so.expand.push(t);delete so.columns}else Array.isArray(so.expand)&&-1===so.expand.indexOf("*")&&so.expand.unshift("*")}(r),e=r,e}function Wn(){let t,e,r,n,s;return t=$n,e=$n,r=Js(),r!==u&&(Ln=e,no.push(so),so=so.expand[so.expand.length-1],r=void(so.expand=[])),e=r,e!==u?(r=Vn(),n=$n,s=Ks(),s!==u&&(Ln=n,so.expand.length||so.expand.push("*"),s=void(so=no.pop())),n=s,n!==u?(e=[e,r,n],t=e):($n=t,t=u)):($n=t,t=u),t}function Xn(){let e,r,n;return e=$n,r=$n,42===t.charCodeAt($n)?(n=w,$n++):(n=u,0===kn&&zn(Me)),n===u&&(n=ps()),n!==u&&(Ln=r,n=function(t){const e="*"===t?{}:t;if(e.ref?.length>1)throw Object.assign(new Error(`navigation "${e.ref.join("/")}" in "$expand" is not supported`),{statusCode:400});return e.expand=["*"],Array.isArray(so.expand)||(so.expand=[]),so.expand.find(io(e))||so.expand.push(e),e}(n)),r=n,r!==u?(n=Wn(),n===u&&(n=null),r=[r,n],e=r):($n=e,e=u),e}function Yn(){let t,e;return t=$n,e=qs(),e!==u&&(Ln=t),t=e,t}function ts(){let t,e;return t=$n,e=qs(),e!==u&&(Ln=t),t=e,t}function es(){let e,r,n,s;if(e=$n,r=$n,n=[],s=t.charAt($n),se.test(s)?$n++:(s=u,0===kn&&zn(Ye)),s!==u)for(;s!==u;)n.push(s),s=t.charAt($n),se.test(s)?$n++:(s=u,0===kn&&zn(Ye));else n=u;return r=n!==u?t.substring(r,$n):n,r!==u&&(Ln=e,r=[{val:r}]),e=r,e===u&&(e=Vs()),e}function us(){let t,e;return t=$n,e=rs(),e!==u&&(Ln=t),t=e,t}function rs(){let e,r,n,s,o,l,a;var c,i;if(e=$n,r=$n,n=ms(),n===u&&(n=null),Ln=r,n=(c=n)?[c]:[],r=n,n=$n,s=Js(),s!==u?(o=rs(),o!==u?(l=Ks(),l!==u?(Ln=n,i=o,n=void r.push({xpr:i})):($n=n,n=u)):($n=n,n=u)):($n=n,n=u),n===u&&(n=$n,s=is(),s!==u&&(Ln=n,s=function(t,e){t.push(...e)}(r,s)),n=s,n===u&&(n=$n,s=ns(),s!==u&&(Ln=n,s=function(t,e){"not"===t[t.length-1]&&"not"===e[0]?t.push({xpr:e}):t.push(...e)}(r,s)),n=s,n===u&&(n=$n,s=function(){let e,r,n,s,o,l,a;e=$n,r=t.substr($n,8),r.toLowerCase()===et?$n+=8:(r=u,0===kn&&zn(Iu));r===u&&(r=t.substr($n,8),r.toLowerCase()===ut?$n+=8:(r=u,0===kn&&zn(Zu)),r===u&&(r=t.substr($n,10),r.toLowerCase()===rt?$n+=10:(r=u,0===kn&&zn(_u)),r===u&&(r=t.substr($n,14),r.toLowerCase()===nt?$n+=14:(r=u,0===kn&&zn(Nu)))));r!==u?(n=Js(),n!==u?(s=As(),s!==u?(o=Gs(),o!==u?(l=As(),l!==u?(a=Ks(),a!==u?(Ln=e,c=s,i=l,e={func:r.toLowerCase(),args:[c,i]}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);var c,i;return e}(),s!==u&&(Ln=n,s=function(t,e){t.push(e)}(r,s)),n=s,n===u&&(n=$n,s=Ns(),s!==u&&(Ln=n,s=function(t,e){t.push({val:e})}(r,s)),n=s,n===u&&(n=$n,s=hs(),s!==u&&(Ln=n,s=function(t,e){t.push(...e)}(r,s)),n=s))))),n!==u){for(s=[],o=$n,l=Bs(),l===u&&(l=vs()),l!==u?(a=rs(),a!==u?(Ln=o,o=cn(r,l,a)):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Bs(),l===u&&(l=vs()),l!==u?(a=rs(),a!==u?(Ln=o,o=cn(r,l,a)):($n=o,o=u)):($n=o,o=u);Ln=e,e=r}else $n=e,e=u;return e}function ns(){let e,r,n,s,l,a,c;if(e=$n,r=$n,n=Hs(),n!==u&&(Ln=r,n=[n]),r=n,r!==u)if(47===t.charCodeAt($n)?(n=o,$n++):(n=u,0===kn&&zn(Be)),n!==u){for(s=[],l=$n,a=Hs(),a!==u?(47===t.charCodeAt($n)?(c=o,$n++):(c=u,0===kn&&zn(Be)),c!==u?(Ln=l,l=fn(r,a)):($n=l,l=u)):($n=l,l=u);l!==u;)s.push(l),l=$n,a=Hs(),a!==u?(47===t.charCodeAt($n)?(c=o,$n++):(c=u,0===kn&&zn(Be)),c!==u?(Ln=l,l=fn(r,a)):($n=l,l=u)):($n=l,l=u);l=$n,a=function(){let e,r,n,s,o;e=$n,t.substr($n,3)===k?(r=k,$n+=3):(r=u,0===kn&&zn(eu));r!==u?(n=Js(),n!==u?(s=os(),s===u&&(s=null),o=Ks(),o!==u?(Ln=e,e=s):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),a!==u&&(Ln=l,a=function(t,e){let u=t.pop();if(!e)return["exists",{ref:[...t,{id:u}]}];let r=[];for(let t=0,n=0;t<e.length;++t){let s=e[t];s.ref&&0===s.ref.length&&"="===e[t+1]?r[n++]={func:"contains",args:[{ref:[u]},e[t+=2]]}:r[n++]=s}return r.length<e.length?t.length?(u=t.pop(),["exists",{ref:[...t,{id:u,where:r}]}]):r:["exists",{ref:[...t,{id:u,where:e}]}]}(r,a)),l=a,l===u&&(l=$n,a=function(){let e,r,n,s,o;e=$n,t.substr($n,3)===I?(r=I,$n+=3):(r=u,0===kn&&zn(uu));r!==u?(n=Js(),n!==u?(s=os(),s!==u?(o=Ks(),o!==u?(Ln=e,e=s):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),a!==u&&(Ln=l,a=function(t,e){let u=t.pop();return["not","exists",{ref:[...t,{id:u,where:["not",{xpr:[...e]}]}]}]}(r,a)),l=a),l!==u?(Ln=e,e=l):($n=e,e=u)}else $n=e,e=u;else $n=e,e=u;return e}function ss(){let t,e,r,n,s,o,l;var a,c;if(t=$n,e=$n,r=ms(),r===u&&(r=null),Ln=e,r=(a=r)?[a]:[],e=r,r=$n,n=Js(),n!==u?(s=ss(),s!==u?(o=Ks(),o!==u?(Ln=r,c=s,r=void e.push({xpr:c})):($n=r,r=u)):($n=r,r=u)):($n=r,r=u),r===u&&(r=$n,n=is(),n!==u&&(Ln=r,n=function(t,e){t.push(...e)}(e,n)),r=n,r===u&&(r=$n,n=bs(),n!==u&&(Ln=r,n=function(t,e){t.push(e)}(e,n)),r=n,r===u&&(r=$n,n=ns(),n!==u&&(Ln=r,n=function(t,e){t.push(...e)}(e,n)),r=n,r===u&&(r=$n,n=hs(),n!==u&&(Ln=r,n=function(t,e){t.push(...e)}(e,n)),r=n)))),r!==u){for(n=[],s=$n,o=Bs(),o===u&&(o=vs()),o!==u?(l=ss(),l!==u?(Ln=s,s=hn(e,o,l)):($n=s,s=u)):($n=s,s=u);s!==u;)n.push(s),s=$n,o=Bs(),o===u&&(o=vs()),o!==u?(l=ss(),l!==u?(Ln=s,s=hn(e,o,l)):($n=s,s=u)):($n=s,s=u);Ln=t,t=e}else $n=t,t=u;return t}function os(){let e,r,n,s;return e=$n,r=Hs(),r!==u?(58===t.charCodeAt($n)?(n=O,$n++):(n=u,0===kn&&zn(tu)),n!==u?(s=ss(),s!==u?(Ln=e,e=Bo(r,s)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function ls(){let e,r,n,s,o,l;var a;return e=$n,r=$n,n=ns(),n!==u&&(Ln=r,n=function(){const t=new Error('"$orderby" does not support lambda');throw t.statusCode=501,t}()),r=n,r===u&&(r=bs(),r===u&&(r=ps())),r!==u?(n=$n,s=Ws(),s!==u?(o=$n,t.substr($n,3)===Z?(l=Z,$n+=3):(l=u,0===kn&&zn(ru)),l===u&&(t.substr($n,4)===_?(l=_,$n+=4):(l=u,0===kn&&zn(nu))),o=l!==u?t.substring(o,$n):l,o!==u?(Ln=n,n=o):($n=n,n=u)):($n=n,n=u),n===u&&(n=null),Ln=e,e=eo(r,(a=n)&&{sort:a})):($n=e,e=u),e}function as(){let e,r,n;return kn++,e=$n,r=zs(),r!==u&&(Ln=e,r={val:r}),e=r,e===u&&(e=$n,r=$n,kn++,39===t.charCodeAt($n)?(n=R,$n++):(n=u,0===kn&&zn(lu)),kn--,n===u?r=void 0:($n=r,r=u),r!==u?(n=ds(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u)),kn--,e===u&&(r=u,0===kn&&zn(ou)),e}function cs(){let e,r,n;return kn++,e=$n,64===t.charCodeAt($n)?(r=H,$n++):(r=u,0===kn&&zn(Au)),r!==u?(n=Hs(),n!==u?(Ln=e,e="@"+n):($n=e,e=u)):($n=e,e=u),kn--,e===u&&(r=u,0===kn&&zn(hu)),e}function is(){let e,r,n,s,o,l;var a,c;return e=$n,r=As(),r!==u?(n=Ws(),n!==u?(s=$n,t.substr($n,2)===Q?(o=Q,$n+=2):(o=u,0===kn&&zn(du)),o===u&&(t.substr($n,2)===U?(o=U,$n+=2):(o=u,0===kn&&zn(Cu)),o===u&&(t.substr($n,2)===G?(o=G,$n+=2):(o=u,0===kn&&zn(gu)),o===u&&(t.substr($n,2)===J?(o=J,$n+=2):(o=u,0===kn&&zn(Eu)),o===u&&(t.substr($n,2)===K?(o=K,$n+=2):(o=u,0===kn&&zn(Fu)),o===u&&(t.substr($n,2)===V?(o=V,$n+=2):(o=u,0===kn&&zn(bu))))))),s=o!==u?t.substring(s,$n):o,s!==u?(o=Ws(),o!==u?(l=As(),l!==u?(Ln=e,c=l,e=[r,Ys[a=s]||a,c]):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function fs(){let e,r;return e=$n,r=cs(),r!==u&&(Ln=e,r={list:r}),e=r,e===u&&(e=function(){let e,r,n,s;kn++,e=$n,r=Js(),r!==u?(n=function(){let e,r,n,s,o,l;if(e=$n,r=ds(),r!==u){for(n=[],s=$n,44===t.charCodeAt($n)?(o=z,$n++):(o=u,0===kn&&zn(au)),o!==u?(l=ds(),l!==u?(Ln=s,s=gn(0,l)):($n=s,s=u)):($n=s,s=u);s!==u;)n.push(s),s=$n,44===t.charCodeAt($n)?(o=z,$n++):(o=u,0===kn&&zn(au)),o!==u?(l=ds(),l!==u?(Ln=s,s=gn(0,l)):($n=s,s=u)):($n=s,s=u);Ln=e,a=n,e=[r,...a]}else $n=e,e=u;var a;return e}(),n!==u?(s=Ks(),s!==u?(Ln=e,e={list:n}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);kn--,e===u&&(r=u,0===kn&&zn(ju));return e}()),e}function hs(){let e,r,n,s,o,l;return e=$n,r=As(),r!==u?(n=Ws(),n!==u?(t.substr($n,2)===W?(s=W,$n+=2):(s=u,0===kn&&zn(mu)),s!==u?(o=Ws(),o!==u?(l=fs(),l!==u?(Ln=e,e=[r,"in",l]):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function As(){let e;return e=function(){let e,r,n,s,l,a,i,f;kn++,e=$n,r=[],n=$n,s=Hs(),s!==u?(l=$n,a=Js(),a!==u?(i=Mn(),i!==u?(f=Ks(),f!==u?(Ln=l,l=pn(0,i)):($n=l,l=u)):($n=l,l=u)):($n=l,l=u),l===u&&(l=null),47===t.charCodeAt($n)?(a=o,$n++):(a=u,0===kn&&zn(Be)),a!==u?(Ln=n,n=dn(s,l)):($n=n,n=u)):($n=n,n=u);if(n!==u)for(;n!==u;)r.push(n),n=$n,s=Hs(),s!==u?(l=$n,a=Js(),a!==u?(i=Mn(),i!==u?(f=Ks(),f!==u?(Ln=l,l=pn(0,i)):($n=l,l=u)):($n=l,l=u)):($n=l,l=u),l===u&&(l=null),47===t.charCodeAt($n)?(a=o,$n++):(a=u,0===kn&&zn(Be)),a!==u?(Ln=n,n=dn(s,l)):($n=n,n=u)):($n=n,n=u);else r=u;r!==u?(t.substr($n,6)===c?(n=c,$n+=6):(n=u,0===kn&&zn(ye)),n!==u?(Ln=e,e={func:"count",as:"$count",args:[{ref:r}]}):($n=e,e=u)):($n=e,e=u);kn--,e===u&&(r=u,0===kn&&zn(Bu));return e}(),e===u&&(e=bs(),e===u&&(e=ds(),e===u&&(e=ps(),e===u&&(e=Es(),e===u&&(e=Fs(),e===u&&(e=function(){let e,r,n,s,o;kn++,e=$n,91===t.charCodeAt($n)?(r=P,$n++):(r=u,0===kn&&zn(cu));if(r!==u){for(n=$n,s=[],o=t.charAt($n),ae.test(o)?$n++:(o=u,0===kn&&zn(Tu));o!==u;)s.push(o),o=t.charAt($n),ae.test(o)?$n++:(o=u,0===kn&&zn(Tu));n=t.substring(n,$n),93===t.charCodeAt($n)?(s=q,$n++):(s=u,0===kn&&zn(iu)),s!==u?(Ln=e,e={list:n.replace(/"/g,"").split(",").map(t=>({val:t}))}):($n=e,e=u)}else $n=e,e=u;kn--,e===u&&(r=u,0===kn&&zn(ju));return e}())))))),e}function ps(){let e,r,n,s,l,a;if(kn++,e=$n,r=Hs(),r!==u){for(n=[],s=$n,47===t.charCodeAt($n)?(l=o,$n++):(l=u,0===kn&&zn(Be)),l!==u?(a=Hs(),a!==u?(Ln=s,s=Cn(0,a)):($n=s,s=u)):($n=s,s=u);s!==u;)n.push(s),s=$n,47===t.charCodeAt($n)?(l=o,$n++):(l=u,0===kn&&zn(Be)),l!==u?(a=Hs(),a!==u?(Ln=s,s=Cn(0,a)):($n=s,s=u)):($n=s,s=u);Ln=e,i=n,e="null"===(c=r)?{val:null}:{ref:[c,...i]}}else $n=e,e=u;var c,i;return kn--,e===u&&(r=u,0===kn&&zn(vu)),e}function ds(){let e,r;return e=$n,r=Ns(),r!==u&&(Ln=e,r={val:r}),e=r,e===u&&(e=$n,r=Ps(),r!==u&&(Ln=e,r=function(t){return{val:t}}(r)),e=r,e===u&&(e=$n,r=function(){let e,r,n,s,o,l,a,c,i,f;kn++,e=$n,r=$n,n=t.charAt($n),Ae.test(n)?$n++:(n=u,0===kn&&zn(Ir));n!==u?(s=t.charAt($n),Ae.test(s)?$n++:(s=u,0===kn&&zn(Ir)),s!==u?(58===t.charCodeAt($n)?(o=O,$n++):(o=u,0===kn&&zn(tu)),o!==u?(l=t.charAt($n),Ae.test(l)?$n++:(l=u,0===kn&&zn(Ir)),l!==u?(a=t.charAt($n),Ae.test(a)?$n++:(a=u,0===kn&&zn(Ir)),a!==u?(58===t.charCodeAt($n)?(c=O,$n++):(c=u,0===kn&&zn(tu)),c!==u?(i=t.charAt($n),Ae.test(i)?$n++:(i=u,0===kn&&zn(Ir)),i!==u?(f=t.charAt($n),Ae.test(f)?$n++:(f=u,0===kn&&zn(Ir)),f!==u?(n=[n,s,o,l,a,c,i,f],r=n):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u);e=r!==u?t.substring(e,$n):r;kn--,e===u&&(r=u,0===kn&&zn(kr));return e}(),r!==u&&(Ln=e,r=function(t){return{val:t}}(r)),e=r,e===u&&(e=$n,r=Ms(),r!==u&&(Ln=e,r=function(t){return{val:t}}(r)),e=r,e===u&&(e=$n,r=function(){let e,r,n,s,o,l,a,c,i,f,h;kn++,e=$n,r=$n,kn++,n=function(){let e,r,n;e=$n,r=[],n=t.charAt($n),Ae.test(n)?$n++:(n=u,0===kn&&zn(Ir));if(n!==u)for(;n!==u;)r.push(n),n=t.charAt($n),Ae.test(n)?$n++:(n=u,0===kn&&zn(Ir));else r=u;r!==u?(45===t.charCodeAt($n)?(n=Gt,$n++):(n=u,0===kn&&zn(_r)),n!==u?(r=[r,n],e=r):($n=e,e=u)):($n=e,e=u);return e}(),kn--,n===u?r=void 0:($n=r,r=u);if(r!==u){if(n=$n,s=$n,o=t.charAt($n),pe.test(o)?$n++:(o=u,0===kn&&zn(Pr)),o===u&&(o=null),l=[],a=t.charAt($n),Ae.test(a)?$n++:(a=u,0===kn&&zn(Ir)),a!==u)for(;a!==u;)l.push(a),a=t.charAt($n),Ae.test(a)?$n++:(a=u,0===kn&&zn(Ir));else l=u;if(l!==u){if(a=$n,46===t.charCodeAt($n)?(c=Kt,$n++):(c=u,0===kn&&zn(Rr)),c!==u){if(i=[],f=t.charAt($n),Ae.test(f)?$n++:(f=u,0===kn&&zn(Ir)),f!==u)for(;f!==u;)i.push(f),f=t.charAt($n),Ae.test(f)?$n++:(f=u,0===kn&&zn(Ir));else i=u;i!==u?(c=[c,i],a=c):($n=a,a=u)}else $n=a,a=u;if(a===u&&(a=null),c=$n,101===t.charCodeAt($n)?(i=Wt,$n++):(i=u,0===kn&&zn(Hr)),i!==u){if(f=[],h=t.charAt($n),Ae.test(h)?$n++:(h=u,0===kn&&zn(Ir)),h!==u)for(;h!==u;)f.push(h),h=t.charAt($n),Ae.test(h)?$n++:(h=u,0===kn&&zn(Ir));else f=u;f!==u?(i=[i,f],c=i):($n=c,c=u)}else $n=c,c=u;c===u&&(c=null),o=[o,l,a,c],s=o}else $n=s,s=u;n=s!==u?t.substring(n,$n):s,n!==u?(Ln=e,e=lo(n)):($n=e,e=u)}else $n=e,e=u;kn--,e===u&&(r=u,0===kn&&zn(qr));return e}(),r!==u&&(Ln=e,r=function(t){return"number"==typeof t?{val:t}:{val:t,literal:"number"}}(r)),e=r,e===u&&(e=$n,r=Rs(),r!==u&&(Ln=e,r=function(t){return{val:t}}(r)),e=r,e===u&&(e=$n,r=function(){let e,r,n,s,o,l;kn++,e=$n,t.substr($n,7)===Xt?(r=Xt,$n+=7):(r=u,0===kn&&zn(tn));if(r!==u){if(n=$n,s=$n,o=[],l=t.charAt($n),be.test(l)?$n++:(l=u,0===kn&&zn(en)),l!==u)for(;l!==u;)o.push(l),l=t.charAt($n),be.test(l)?$n++:(l=u,0===kn&&zn(en));else o=u;o!==u?(t.substr($n,2)===Yt?(l=Yt,$n+=2):(l=u,0===kn&&zn(un)),l===u&&(61===t.charCodeAt($n)?(l=h,$n++):(l=u,0===kn&&zn($e))),l===u&&(l=null),o=[o,l],s=o):($n=s,s=u),n=s!==u?t.substring(n,$n):s,n!==u?(39===t.charCodeAt($n)?(s=R,$n++):(s=u,0===kn&&zn(lu)),s!==u?(Ln=e,a=n,e=cds.env.features.base64_binaries?co(a):Buffer.from(a,"base64")):($n=e,e=u)):($n=e,e=u)}else $n=e,e=u;var a;kn--,e===u&&(r=u,0===kn&&zn(Yr));return e}(),r!==u&&(Ln=e,r=function(t){return{val:t}}(r)),e=r,e===u&&(e=$n,r=cs(),r!==u&&(Ln=e,r=function(t){return{val:t}}(r)),e=r,e===u&&(e=gs())))))))),e}function Cs(){let e,r;return e=$n,r=ds(),r!==u&&(Ln=e),e=r,e===u&&(e=$n,r=function(){let e,r,n;kn++,e=$n,r=[],n=t.charAt($n),he.test(n)?$n++:(n=u,0===kn&&zn(Or));if(n!==u)for(;n!==u;)r.push(n),n=t.charAt($n),he.test(n)?$n++:(n=u,0===kn&&zn(Or));else r=u;e=r!==u?t.substring(e,$n):r;kn--,e===u&&(r=u,0===kn&&zn(jr));return e}(),r!==u&&(Ln=e,r=function(t){throw Object.assign(new Error(`Invalid value: ${t}`),{statusCode:400})}(r)),e=r),e}function gs(){let e,r;return kn++,e=$n,t.substr($n,4)===X?(r=X,$n+=4):(r=u,0===kn&&zn(yu)),r!==u&&(Ln=e,r={val:null}),e=r,kn--,e===u&&(r=u,0===kn&&zn(Du)),e}function Es(){let e,r,n,s,o,l;if(kn++,e=$n,r=$n,n=$n,123===t.charCodeAt($n)?(s=Y,$n++):(s=u,0===kn&&zn(wu)),s!==u){for(o=[],l=Es(),l===u&&(l=t.charAt($n),le.test(l)?$n++:(l=u,0===kn&&zn($u)));l!==u;)o.push(l),l=Es(),l===u&&(l=t.charAt($n),le.test(l)?$n++:(l=u,0===kn&&zn($u)));125===t.charCodeAt($n)?(l=tt,$n++):(l=u,0===kn&&zn(Lu)),l!==u?(s=[s,o,l],n=s):($n=n,n=u)}else $n=n,n=u;return r=n!==u?t.substring(r,$n):n,r!==u&&(Ln=e,r={val:r}),e=r,kn--,e===u&&(r=u,0===kn&&zn(xu)),e}function Fs(){let e,r,n,s,o,l,a,c;if(kn++,e=$n,r=$n,n=$n,91===t.charCodeAt($n)?(s=P,$n++):(s=u,0===kn&&zn(cu)),s!==u?(o=Vs(),93===t.charCodeAt($n)?(l=q,$n++):(l=u,0===kn&&zn(iu)),l!==u?(s=[s,o,l],n=s):($n=n,n=u)):($n=n,n=u),n===u)if(n=$n,91===t.charCodeAt($n)?(s=P,$n++):(s=u,0===kn&&zn(cu)),s!==u)if(o=Vs(),123===t.charCodeAt($n)?(l=Y,$n++):(l=u,0===kn&&zn(wu)),l!==u){for(a=[],c=Fs(),c===u&&(c=t.charAt($n),ae.test(c)?$n++:(c=u,0===kn&&zn(Tu)));c!==u;)a.push(c),c=Fs(),c===u&&(c=t.charAt($n),ae.test(c)?$n++:(c=u,0===kn&&zn(Tu)));93===t.charCodeAt($n)?(c=q,$n++):(c=u,0===kn&&zn(iu)),c!==u?(s=[s,o,l,a,c],n=s):($n=n,n=u)}else $n=n,n=u;else $n=n,n=u;return r=n!==u?t.substring(r,$n):n,r!==u&&(Ln=e,r={val:r}),e=r,kn--,e===u&&(r=u,0===kn&&zn(Su)),e}function bs(){let e,r,n,s,o;return e=$n,r=function(){let e,r,n;if(kn++,e=$n,r=[],n=t.charAt($n),ce.test(n)?$n++:(n=u,0===kn&&zn(ku)),n!==u)for(;n!==u;)r.push(n),n=t.charAt($n),ce.test(n)?$n++:(n=u,0===kn&&zn(ku));else r=u;return e=r!==u?t.substring(e,$n):r,kn--,e===u&&(r=u,0===kn&&zn(Ou)),e}(),r!==u?(n=Js(),n!==u?(s=function(){let t,e,r,n,s,o,l,a;if(t=$n,e=[],r=$n,n=As(),n!==u){for(s=[],o=$n,l=Gs(),l!==u?(a=As(),a!==u?(Ln=o,o=En(0,a)):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Gs(),l!==u?(a=As(),a!==u?(Ln=o,o=En(0,a)):($n=o,o=u)):($n=o,o=u);Ln=r,r=Fn(n,s)}else $n=r,r=u;for(;r!==u;)if(e.push(r),r=$n,n=As(),n!==u){for(s=[],o=$n,l=Gs(),l!==u?(a=As(),a!==u?(Ln=o,o=En(0,a)):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Gs(),l!==u?(a=As(),a!==u?(Ln=o,o=En(0,a)):($n=o,o=u)):($n=o,o=u);Ln=r,r=Fn(n,s)}else $n=r,r=u;return Ln=t,e=function(t){return t.length?t[0]:t}(e),t=e,t}(),o=Ks(),o!==u?(Ln=e,e=function(t,e){if(uo&&!(t.toLowerCase()in uo.functions))throw Object.assign(new Error(`Function "${t}" is not supported`),{statusCode:501});return{func:t.toLowerCase(),args:e}}(r,s)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function ms(){let e,r,n,s;return e=$n,r=Vs(),n=t.substr($n,3),n.toLowerCase()===st?$n+=3:(n=u,0===kn&&zn(Ru)),n!==u?(s=Ws(),s!==u?(Ln=e,e="not"):($n=e,e=u)):($n=e,e=u),e}function Bs(){let e,r,n,s;return e=$n,r=Ws(),r!==u?(n=t.substr($n,3),n.toLowerCase()===ot?$n+=3:(n=u,0===kn&&zn(zu)),n!==u?(s=Ws(),s!==u?(Ln=e,e="and"):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function vs(){let e,r,n,s;return e=$n,r=Ws(),r!==u?(n=t.substr($n,2),n.toLowerCase()===lt?$n+=2:(n=u,0===kn&&zn(Pu)),n!==u?(s=Ws(),s!==u?(Ln=e,e="or"):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function Ds(){let e,r,n,s,l,a;if(e=$n,r=ys(),r!==u){for(n=[],s=$n,47===t.charCodeAt($n)?(l=o,$n++):(l=u,0===kn&&zn(Be)),l!==u?(a=ys(),a!==u?(Ln=s,s=bn(0,a)):($n=s,s=u)):($n=s,s=u);s!==u;)n.push(s),s=$n,47===t.charCodeAt($n)?(l=o,$n++):(l=u,0===kn&&zn(Be)),l!==u?(a=ys(),a!==u?(Ln=s,s=bn(0,a)):($n=s,s=u)):($n=s,s=u);Ln=e,e=function(t,e){if(void 0!==t){e=Array.isArray(e)?e:[e];for(let u of e)for(const e in u)"where"!==e||!t.groupBy&&!t.aggregate||t.having?"limit"===e&&t.limit?.offset&&u.limit.rows?t.limit.rows=u.limit.rows:"limit"===e&&t.limit?.offset?.val&&u.limit.offset?.val?t.limit.offset.val+=u.limit.offset.val:t[e]||"aggregate"===e&&t.groupBy&&!u.groupBy?(t={apply:t})[e]=u[e]:t[e]=u[e]:t.having=u[e];return{apply:t}}}(r,n)}else $n=e,e=u;return e}function ys(){let e,r,n;return e=$n,t.substr($n,9)===at?(r=at,$n+=9):(r=u,0===kn&&zn(qu)),r!==u?(n=function(){let t,e,r,n,s,o,l,a,c,i;if(t=$n,e=Js(),e!==u)if(r=Vs(),n=xs(),n!==u){for(s=[],o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=xs(),i!==u?(Ln=o,o=mn(0,i)):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=xs(),i!==u?(Ln=o,o=mn(0,i)):($n=o,o=u)):($n=o,o=u);o=Vs(),l=Ks(),l!==u?(Ln=t,f=s,t={aggregate:[n,...f]}):($n=t,t=u)}else $n=t,t=u;else $n=t,t=u;var f;return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,7)===ct?(r=ct,$n+=7):(r=u,0===kn&&zn(Hu)),r!==u?(n=function(){let t,e,r,n,s,o,l,a,c;if(t=$n,e=Js(),e!==u)if(r=Js(),r!==u)if(n=Ts(),n!==u){for(s=[],o=$n,l=Gs(),l!==u?(a=Ts(),a!==u?(Ln=o,o=Bn(0,a)):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Gs(),l!==u?(a=Ts(),a!==u?(Ln=o,o=Bn(0,a)):($n=o,o=u)):($n=o,o=u);o=$n,l=Ks(),l!==u&&(Ln=o,i=s,l={groupBy:[n,...i]}),o=l,o!==u?(l=$n,a=Gs(),a!==u?(c=Ds(),c!==u?(Ln=l,l=c):($n=l,l=u)):($n=l,l=u),l===u&&(l=null),a=Ks(),a!==u?(Ln=t,t=function(t,e,u){let r={};return r=u?{groupBy:[t,...e],...u.apply}:{groupBy:[t,...e]},r}(n,s,l)):($n=t,t=u)):($n=t,t=u)}else $n=t,t=u;else $n=t,t=u;else $n=t,t=u;var i;return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,6)===it?(r=it,$n+=6):(r=u,0===kn&&zn(Mu)),r!==u?(n=function(){let t,e,r,n,s,o;t=$n,e=Js(),e!==u?(r=Vs(),n=$n,s=us(),s!==u&&(Ln=n),n=s,n!==u?(s=Vs(),o=Ks(),o!==u?(Ln=t,t={where:n}):($n=t,t=u)):($n=t,t=u)):($n=t,t=u);return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,6)===ft?(r=ft,$n+=6):(r=u,0===kn&&zn(Qu)),r!==u?(n=function(){let e,r,n,s,o;if(e=$n,r=Js(),r!==u){for(n=$n,s=[],o=t.charAt($n),ie.test(o)?$n++:(o=u,0===kn&&zn(fr));o!==u;)s.push(o),o=t.charAt($n),ie.test(o)?$n++:(o=u,0===kn&&zn(fr));n=t.substring(n,$n),s=Ks(),s!==u?(Ln=e,e=function(t){if(t=t.trim())return{search:[{val:t}]}}(n)):($n=e,e=u)}else $n=e,e=u;return e}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,6)===ht?(r=ht,$n+=6):(r=u,0===kn&&zn(Uu)),r!==u?(n=function(){let t,e,r,n,s,o,l,a,c,i;if(t=$n,e=Js(),e!==u)if(r=Vs(),n=Ds(),n!==u){if(s=[],o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=Ds(),i!==u?(Ln=o,o=vn(0,i)):($n=o,o=u)):($n=o,o=u),o!==u)for(;o!==u;)s.push(o),o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=Ds(),i!==u?(Ln=o,o=vn(0,i)):($n=o,o=u)):($n=o,o=u);else s=u;s!==u?(o=Vs(),l=Ks(),l!==u?(Ln=t,f=s,t={concat:[n,...f]}):($n=t,t=u)):($n=t,t=u)}else $n=t,t=u;else $n=t,t=u;var f;return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,7)===At?(r=At,$n+=7):(r=u,0===kn&&zn(Gu)),r!==u?(n=function(){let t,e,r,n,s,o,l,a,c,i;if(t=$n,e=Js(),e!==u)if(r=Vs(),n=js(),n!==u){for(s=[],o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=js(),i!==u?(l=[l,a,c,i],o=l):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=js(),i!==u?(l=[l,a,c,i],o=l):($n=o,o=u)):($n=o,o=u);o=Vs(),l=Ks(),l!==u?(e=[e,r,n,s,o,l],t=e):($n=t,t=u)}else $n=t,t=u;else $n=t,t=u;return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,3)===pt?(r=pt,$n+=3):(r=u,0===kn&&zn(Ju)),r!==u?(n=function(){let t,e,r,n,s,o;t=$n,e=Js(),e!==u?(r=Vs(),n=Yn(),n!==u?(s=Vs(),o=Ks(),o!==u?(Ln=t,t={limit:{rows:{val:n}}}):($n=t,t=u)):($n=t,t=u)):($n=t,t=u);return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,4)===dt?(r=dt,$n+=4):(r=u,0===kn&&zn(Ku)),r!==u?(n=function(){let t,e,r,n,s,o;t=$n,e=Js(),e!==u?(r=Vs(),n=ts(),n!==u?(s=Vs(),o=Ks(),o!==u?(Ln=t,t={limit:{offset:{val:n}}}):($n=t,t=u)):($n=t,t=u)):($n=t,t=u);return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,7)===Ct?(r=Ct,$n+=7):(r=u,0===kn&&zn(Vu)),r!==u?(n=function(){let t,e,r,n,s,o,l,a;if(t=$n,e=Js(),e!==u)if(r=Vs(),n=ls(),n!==u){for(s=[],o=$n,l=Gs(),l!==u?(a=ls(),a!==u?(Ln=o,o=Dn(0,a)):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Gs(),l!==u?(a=ls(),a!==u?(Ln=o,o=Dn(0,a)):($n=o,o=u)):($n=o,o=u);o=Vs(),l=Ks(),l!==u?(Ln=t,c=s,t={orderBy:[n,...c]}):($n=t,t=u)}else $n=t,t=u;else $n=t,t=u;var c;return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,43)===gt?(r=gt,$n+=43):(r=u,0===kn&&zn(Wu)),r!==u?(n=function(){let t,e,r,n,s,o,l,a,c,i;if(t=$n,e=Js(),e!==u)if(r=Vs(),n=Os(),n!==u){for(s=[],o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=Os(),i!==u?(Ln=o,o=yn(0,i)):($n=o,o=u)):($n=o,o=u);o!==u;)s.push(o),o=$n,l=Vs(),a=Gs(),a!==u?(c=Vs(),i=Os(),i!==u?(Ln=o,o=yn(0,i)):($n=o,o=u)):($n=o,o=u);o=Vs(),l=Ks(),l!==u?(Ln=t,f=n,s.forEach(t=>Object.assign(f,t)),t={topLevels:f}):($n=t,t=u)}else $n=t,t=u;else $n=t,t=u;var f;return t}(),n!==u?(Ln=e,e=n):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,9)===Et?(r=Et,$n+=9):(r=u,0===kn&&zn(Xu)),r!==u?(n=Zs(),n!==u?(Ln=e,e={ancestors:n}):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,11)===Ft?(r=Ft,$n+=11):(r=u,0===kn&&zn(Yu)),r!==u?(n=Zs(),n!==u?(Ln=e,e={descendants:n}):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,r=t.substr($n,8),r.toLowerCase()===bt?$n+=8:(r=u,0===kn&&zn(tr)),r===u&&(r=t.substr($n,11),r.toLowerCase()===mt?$n+=11:(r=u,0===kn&&zn(er)),r===u&&(r=t.substr($n,6),r.toLowerCase()===Bt?$n+=6:(r=u,0===kn&&zn(ur)),r===u&&(r=t.substr($n,9),r.toLowerCase()===vt?$n+=9:(r=u,0===kn&&zn(rr)),r===u&&(r=t.substr($n,10),r.toLowerCase()===Dt?$n+=10:(r=u,0===kn&&zn(nr)),r===u&&(r=t.substr($n,13),r.toLowerCase()===yt?$n+=13:(r=u,0===kn&&zn(sr))))))),r!==u?(n=function(){let t,e,r,n,s,o,l,a,c,i;t=$n,e=Js(),e!==u?(r=Vs(),n=As(),n!==u?(s=Vs(),o=Gs(),o!==u?(l=Vs(),a=As(),a!==u?(c=Vs(),i=Ks(),i!==u?(Ln=t,t=[n,a]):($n=t,t=u)):($n=t,t=u)):($n=t,t=u)):($n=t,t=u)):($n=t,t=u);return t}(),n!==u?(Ln=e,e=function(t,e){if(t=t.toLowerCase(),!to[t])throw Object.assign(new Error(`Transformation "${t}" in $apply is not yet supported.`),{statusCode:501});return{aggregate:[{func:t,args:e}]}}(r,n)):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,r=function(){let e,r;e=$n,t.substr($n,8)===Tt?(r=Tt,$n+=8):(r=u,0===kn&&zn(hr));r!==u&&(Ln=e,r={identity:!0});return e=r,e}(),r!==u&&(Ln=e),e=r))))))))))))),e}function xs(){let e,r,n,s;return e=$n,r=$n,t.substr($n,6)===c?(n=c,$n+=6):(n=u,0===kn&&zn(ye)),n!==u?(s=Ss(),s!==u?(Ln=r,r={func:"count",args:[{val:1}],as:s}):($n=r,r=u)):($n=r,r=u),r===u&&(r=ws()),r!==u&&(Ln=e),e=r,e}function ws(){let t,e,r,n,s;var o;return t=$n,e=ps(),e!==u?(r=$s(),r===u&&(r=null),n=Ls(),n===u&&(n=null),s=Ss(),s===u&&(s=null),Ln=t,t={func:r,args:[o=e],as:s??o.ref[0]}):($n=t,t=u),t===u&&(t=$n,e=Hs(),e!==u?(r=Js(),r!==u?(n=ws(),n!==u?(s=Ks(),s!==u?(e=[e,r,n,s],t=e):($n=t,t=u)):($n=t,t=u)):($n=t,t=u)):($n=t,t=u)),t}function $s(){let e,r,n,s,o,l,a;if(e=$n,r=Ws(),r!==u)if(t.substr($n,4)===xt?(n=xt,$n+=4):(n=u,0===kn&&zn(or)),n!==u)if(s=Ws(),s!==u){if(o=$n,l=[],a=t.charAt($n),ce.test(a)?$n++:(a=u,0===kn&&zn(ku)),a!==u)for(;a!==u;)l.push(a),a=t.charAt($n),ce.test(a)?$n++:(a=u,0===kn&&zn(ku));else l=u;o=l!==u?t.substring(o,$n):l,o!==u?(Ln=e,e=o.toLowerCase()):($n=e,e=u)}else $n=e,e=u;else $n=e,e=u;else $n=e,e=u;return e}function Ls(){let e,r,n,s,o,l,a;return e=$n,r=Ws(),r!==u?(t.substr($n,4)===wt?(n=wt,$n+=4):(n=u,0===kn&&zn(lr)),n!==u?(s=Ws(),s!==u?(o=ps(),o!==u?(l=$s(),l!==u?(a=Ls(),a===u&&(a=null),r=[r,n,s,o,l,a],e=r):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function Ss(){let e,r,n,s,o;return e=$n,r=Ws(),r!==u?(t.substr($n,2)===$t?(n=$t,$n+=2):(n=u,0===kn&&zn(ar)),n!==u?(s=Ws(),s!==u?(o=Hs(),o!==u?(Ln=e,e=o):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function Ts(){let e,r;return e=$n,r=function(){let e,r,n,s,o,l,a,c,i,f,h;e=$n,r=$n,t.substr($n,6)===Lt?(n=Lt,$n+=6):(n=u,0===kn&&zn(cr));if(n!==u)if(s=Js(),s!==u)if(o=Vs(),t.substr($n,4)===St?(l=St,$n+=4):(l=u,0===kn&&zn(ir)),l===u&&(l=ps()),l!==u){if(a=[],c=$n,i=Vs(),f=Gs(),f!==u?(h=ps(),h!==u?(i=[i,f,h],c=i):($n=c,c=u)):($n=c,c=u),c!==u)for(;c!==u;)a.push(c),c=$n,i=Vs(),f=Gs(),f!==u?(h=ps(),h!==u?(i=[i,f,h],c=i):($n=c,c=u)):($n=c,c=u);else a=u;a!==u?(c=Vs(),i=Ks(),i!==u?(n=[n,s,o,l,a,c,i],r=n):($n=r,r=u)):($n=r,r=u)}else $n=r,r=u;else $n=r,r=u;else $n=r,r=u;r!==u&&(Ln=e,r=function(){const t=new Error("Rollup in groupby is not supported yet.");throw t.statusCode=501,t}());return e=r,e}(),r===u&&(r=ps()),r!==u&&(Ln=e),e=r,e}function js(){let t,e,r;return t=$n,e=rs(),e!==u?(r=Ss(),r!==u?(e=[e,r],t=e):($n=t,t=u)):($n=t,t=u),t}function Os(){let e;return e=function(){let e,r,n,s,o,l,a,c,i;e=$n,r=Vs(),t.substr($n,14)===jt?(n=jt,$n+=14):(n=u,0===kn&&zn(Ar));n!==u?(s=Vs(),61===t.charCodeAt($n)?(o=h,$n++):(o=u,0===kn&&zn($e)),o!==u?(l=Vs(),t.substr($n,6)===Ot?(a=Ot,$n+=6):(a=u,0===kn&&zn(pr)),a!==u?(c=Un(),c!==u?(i=Vs(),Ln=e,e={hierarchyNodes:c}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),e===u&&(e=function(){let e,r,n,s,o,l,a,c;e=$n,r=Vs(),t.substr($n,18)===kt?(n=kt,$n+=18):(n=u,0===kn&&zn(dr));n!==u?(s=Vs(),61===t.charCodeAt($n)?(o=h,$n++):(o=u,0===kn&&zn($e)),o!==u?(l=Vs(),a=Rs(),a!==u?(c=Vs(),Ln=e,e={hierarchyQualifier:a}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),e===u&&(e=function(){let e,r,n,s,o,l,a,c;e=$n,r=Vs(),t.substr($n,12)===It?(n=It,$n+=12):(n=u,0===kn&&zn(Cr));n!==u?(s=Vs(),61===t.charCodeAt($n)?(o=h,$n++):(o=u,0===kn&&zn($e)),o!==u?(l=Vs(),a=Rs(),a!==u?(c=Vs(),Ln=e,e={nodeProperty:a}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),e===u&&(e=function(){let e,r,n,s,o,l,a,c;e=$n,r=Vs(),t.substr($n,6)===Zt?(n=Zt,$n+=6):(n=u,0===kn&&zn(gr));n!==u?(s=Vs(),61===t.charCodeAt($n)?(o=h,$n++):(o=u,0===kn&&zn($e)),o!==u?(l=Vs(),a=qs(),a!==u?(c=Vs(),Ln=e,e={levels:a}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),e===u&&(e=function(){let e,r,n,s,o,l,a,c,i,f,A,p,d,C,g;e=$n,r=Vs(),t.substr($n,12)===_t?(n=_t,$n+=12):(n=u,0===kn&&zn(Er));if(n!==u)if(s=Vs(),61===t.charCodeAt($n)?(o=h,$n++):(o=u,0===kn&&zn($e)),o!==u)if(l=Vs(),91===t.charCodeAt($n)?(a=P,$n++):(a=u,0===kn&&zn(cu)),a!==u)if(c=Vs(),i=ks(),i!==u){for(f=[],A=$n,p=Vs(),d=Gs(),d!==u?(C=Vs(),g=ks(),g!==u?(Ln=A,A=xn(0,g)):($n=A,A=u)):($n=A,A=u);A!==u;)f.push(A),A=$n,p=Vs(),d=Gs(),d!==u?(C=Vs(),g=ks(),g!==u?(Ln=A,A=xn(0,g)):($n=A,A=u)):($n=A,A=u);93===t.charCodeAt($n)?(A=q,$n++):(A=u,0===kn&&zn(iu)),A!==u?(Ln=e,E=f,e={expandLevels:[i,...E]}):($n=e,e=u)}else $n=e,e=u;else $n=e,e=u;else $n=e,e=u;else $n=e,e=u;var E;return e}())))),e}function ks(){let e,r,n,s,o,l,a,c,i,f,h;var A,p;return e=$n,r=Vs(),123===t.charCodeAt($n)?(n=Y,$n++):(n=u,0===kn&&zn(wu)),n!==u?(s=Vs(),o=Is(),o!==u?(l=Vs(),44===t.charCodeAt($n)?(a=z,$n++):(a=u,0===kn&&zn(au)),a!==u?(c=Vs(),i=Is(),i!==u?(f=Vs(),125===t.charCodeAt($n)?(h=tt,$n++):(h=u,0===kn&&zn(Lu)),h!==u?(Ln=e,A=o,p=i,e=Object.assign(A,p)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function Is(){let e,r,n,s,o,l;return e=$n,t.substr($n,8)===Nt?(r=Nt,$n+=8):(r=u,0===kn&&zn(Fr)),r!==u?(n=Vs(),58===t.charCodeAt($n)?(s=O,$n++):(s=u,0===kn&&zn(tu)),s!==u?(o=Vs(),l=zs(),l!==u?(Ln=e,e={nodeID:l}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e===u&&(e=$n,t.substr($n,8)===Rt?(r=Rt,$n+=8):(r=u,0===kn&&zn(br)),r!==u?(n=Vs(),58===t.charCodeAt($n)?(s=O,$n++):(s=u,0===kn&&zn(tu)),s!==u?(o=Vs(),l=function(){let t,e;t=$n,e=qs(),e!==u&&(Ln=t);t=e,t===u&&(t=$n,e=gs(),e!==u&&(Ln=t,e=null),t=e);return t}(),l!==u?(Ln=e,e={levels:l}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)),e}function Zs(){let e,r,n,s,l,a,c,i,f,h,A,p,d,C,g,E,F,b,m,B,v,D,y;var x;return e=$n,r=Js(),r!==u?(n=Vs(),t.substr($n,6)===Ot?(s=Ot,$n+=6):(s=u,0===kn&&zn(pr)),s!==u?(l=Un(),l!==u?(a=Vs(),c=Gs(),c!==u?(i=Vs(),f=Hs(),f!==u?(h=Vs(),A=Gs(),A!==u?(p=Vs(),d=Hs(),d!==u?(C=Vs(),g=Gs(),g===u&&(g=null),E=function(){let e,r,n,s,l,a,c,i;if(e=$n,r=_s(),r!==u){for(n=[],s=$n,l=Vs(),47===t.charCodeAt($n)?(a=o,$n++):(a=u,0===kn&&zn(Be)),a!==u?(c=Vs(),i=_s(),i!==u?(Ln=s,s=wn(0,i)):($n=s,s=u)):($n=s,s=u);s!==u;)n.push(s),s=$n,l=Vs(),47===t.charCodeAt($n)?(a=o,$n++):(a=u,0===kn&&zn(Be)),a!==u?(c=Vs(),i=_s(),i!==u?(Ln=s,s=wn(0,i)):($n=s,s=u)):($n=s,s=u);Ln=e,f=n,e=[r,...f]}else $n=e,e=u;var f;return e}(),E===u&&(E=null),F=Vs(),b=Gs(),b===u&&(b=null),m=qs(),m===u&&(m=null),B=Vs(),v=Gs(),v===u&&(v=null),D=function(){let e,r;e=$n,t.substr($n,10)===Ht?(r=Ht,$n+=10):(r=u,0===kn&&zn(Dr));r!==u&&(Ln=e,r={keepStart:!0});return e=r,e}(),D===u&&(D=null),y=Ks(),y!==u?(Ln=e,x=D,e={path:l,hierarchy:f,id:d,nodes:E,distance:m,keepStart:x?.keepStart||!1}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u)):($n=e,e=u),e}function _s(){let e;return e=function(){let e,r,n,s;e=$n,t.substr($n,7)===qt?(r=qt,$n+=7):(r=u,0===kn&&zn(vr));r!==u?(n=es(),n!==u?(41===t.charCodeAt($n)?(s=Pt,$n++):(s=u,0===kn&&zn(Br)),s!==u?(Ln=e,e={search:n}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}(),e===u&&(e=function(){let e,r,n,s;e=$n,t.substr($n,7)===zt?(r=zt,$n+=7):(r=u,0===kn&&zn(mr));r!==u?(n=us(),n!==u?(41===t.charCodeAt($n)?(s=Pt,$n++):(s=u,0===kn&&zn(Br)),s!==u?(Ln=e,e={filter:n}):($n=e,e=u)):($n=e,e=u)):($n=e,e=u);return e}()),e}function Ns(){let e,r;return kn++,e=$n,t.substr($n,4)===Mt?(r=Mt,$n+=4):(r=u,0===kn&&zn(xr)),r===u&&(t.substr($n,5)===Qt?(r=Qt,$n+=5):(r=u,0===kn&&zn(wr))),r!==u&&(Ln=e,r="true"===r),e=r,kn--,e===u&&(r=u,0===kn&&zn(yr)),e}function Rs(){let e,r,n,s,o;if(kn++,e=$n,39===t.charCodeAt($n)?(r=R,$n++):(r=u,0===kn&&zn(lu)),r!==u){for(n=$n,s=[],t.substr($n,2)===Ut?(o=Ut,$n+=2):(o=u,0===kn&&zn(Lr)),o===u&&(o=t.charAt($n),fe.test(o)?$n++:(o=u,0===kn&&zn(Sr)));o!==u;)s.push(o),t.substr($n,2)===Ut?(o=Ut,$n+=2):(o=u,0===kn&&zn(Lr)),o===u&&(o=t.charAt($n),fe.test(o)?$n++:(o=u,0===kn&&zn(Sr)));n=t.substring(n,$n),39===t.charCodeAt($n)?(s=R,$n++):(s=u,0===kn&&zn(lu)),s!==u?(Ln=e,e=n.replace(/''/g,"'")):($n=e,e=u)}else $n=e,e=u;return kn--,e===u&&(r=u,0===kn&&zn($r)),e}function zs(){let e,r,n,s,o;if(kn++,e=$n,34===t.charCodeAt($n)?(r=S,$n++):(r=u,0===kn&&zn(Ke)),r!==u){for(n=$n,s=[],t.substr($n,2)===j?(o=j,$n+=2):(o=u,0===kn&&zn(We)),o===u&&(t.substr($n,2)===T?(o=T,$n+=2):(o=u,0===kn&&zn(Ve)),o===u&&(o=t.charAt($n),ne.test(o)?$n++:(o=u,0===kn&&zn(Xe))));o!==u;)s.push(o),t.substr($n,2)===j?(o=j,$n+=2):(o=u,0===kn&&zn(We)),o===u&&(t.substr($n,2)===T?(o=T,$n+=2):(o=u,0===kn&&zn(Ve)),o===u&&(o=t.charAt($n),ne.test(o)?$n++:(o=u,0===kn&&zn(Xe))));n=t.substring(n,$n),34===t.charCodeAt($n)?(s=S,$n++):(s=u,0===kn&&zn(Ke)),s!==u?(Ln=e,e=n.replace(/\\(["\\])/g,"$1")):($n=e,e=u)}else $n=e,e=u;return kn--,e===u&&(r=u,0===kn&&zn(Tr)),e}function Ps(){let e,r,n,s,o,l,a,c,i,f,h,A,p,d,C,g,E,F,b,m,B,v,D,y,x;if(kn++,e=$n,r=$n,n=$n,s=[],o=t.charAt($n),Ae.test(o)?$n++:(o=u,0===kn&&zn(Ir)),o!==u)for(;o!==u;)s.push(o),o=t.charAt($n),Ae.test(o)?$n++:(o=u,0===kn&&zn(Ir));else s=u;if(s!==u)if(45===t.charCodeAt($n)?(o=Gt,$n++):(o=u,0===kn&&zn(_r)),o!==u)if(l=t.charAt($n),Ae.test(l)?$n++:(l=u,0===kn&&zn(Ir)),l!==u)if(a=t.charAt($n),Ae.test(a)?$n++:(a=u,0===kn&&zn(Ir)),a!==u)if(45===t.charCodeAt($n)?(c=Gt,$n++):(c=u,0===kn&&zn(_r)),c!==u)if(i=t.charAt($n),Ae.test(i)?$n++:(i=u,0===kn&&zn(Ir)),i!==u)if(f=t.charAt($n),Ae.test(f)?$n++:(f=u,0===kn&&zn(Ir)),f!==u){if(h=$n,84===t.charCodeAt($n)?(A=Jt,$n++):(A=u,0===kn&&zn(Nr)),A!==u)if(p=t.charAt($n),Ae.test(p)?$n++:(p=u,0===kn&&zn(Ir)),p!==u)if(d=t.charAt($n),Ae.test(d)?$n++:(d=u,0===kn&&zn(Ir)),d!==u)if(58===t.charCodeAt($n)?(C=O,$n++):(C=u,0===kn&&zn(tu)),C!==u)if(g=t.charAt($n),Ae.test(g)?$n++:(g=u,0===kn&&zn(Ir)),g!==u)if(E=t.charAt($n),Ae.test(E)?$n++:(E=u,0===kn&&zn(Ir)),E!==u){if(F=$n,58===t.charCodeAt($n)?(b=O,$n++):(b=u,0===kn&&zn(tu)),b!==u)if(m=t.charAt($n),Ae.test(m)?$n++:(m=u,0===kn&&zn(Ir)),m!==u)if(B=t.charAt($n),Ae.test(B)?$n++:(B=u,0===kn&&zn(Ir)),B!==u){if(v=$n,46===t.charCodeAt($n)?(D=Kt,$n++):(D=u,0===kn&&zn(Rr)),D!==u){if(y=[],x=t.charAt($n),Ae.test(x)?$n++:(x=u,0===kn&&zn(Ir)),x!==u)for(;x!==u;)y.push(x),x=t.charAt($n),Ae.test(x)?$n++:(x=u,0===kn&&zn(Ir));else y=u;y!==u?(D=[D,y],v=D):($n=v,v=u)}else $n=v,v=u;v===u&&(v=null),b=[b,m,B,v],F=b}else $n=F,F=u;else $n=F,F=u;else $n=F,F=u;F===u&&(F=null),90===t.charCodeAt($n)?(b=Vt,$n++):(b=u,0===kn&&zn(zr)),b===u&&(b=$n,m=t.charAt($n),pe.test(m)?$n++:(m=u,0===kn&&zn(Pr)),m!==u?(B=t.charAt($n),Ae.test(B)?$n++:(B=u,0===kn&&zn(Ir)),B!==u?(v=t.charAt($n),Ae.test(v)?$n++:(v=u,0===kn&&zn(Ir)),v!==u?(58===t.charCodeAt($n)?(D=O,$n++):(D=u,0===kn&&zn(tu)),D!==u?(y=t.charAt($n),Ae.test(y)?$n++:(y=u,0===kn&&zn(Ir)),y!==u?(x=t.charAt($n),Ae.test(x)?$n++:(x=u,0===kn&&zn(Ir)),x!==u?(m=[m,B,v,D,y,x],b=m):($n=b,b=u)):($n=b,b=u)):($n=b,b=u)):($n=b,b=u)):($n=b,b=u)):($n=b,b=u)),b===u&&(b=null),A=[A,p,d,C,g,E,F,b],h=A}else $n=h,h=u;else $n=h,h=u;else $n=h,h=u;else $n=h,h=u;else $n=h,h=u;else $n=h,h=u;h===u&&(h=null),s=[s,o,l,a,c,i,f,h],n=s}else $n=n,n=u;else $n=n,n=u;else $n=n,n=u;else $n=n,n=u;else $n=n,n=u;else $n=n,n=u;else $n=n,n=u;return r=n!==u?t.substring(r,$n):n,r!==u&&(Ln=e,r=function(t){if(t.split("-")[0].length>4)throw Object.assign(new Error(`The type Edm.DateTimeOffset is not compatible with "${t}"`),{statusCode:400});return t}(r)),e=r,kn--,e===u&&(r=u,0===kn&&zn(Zr)),e}function qs(){let e,r,n,s,o,l;if(kn++,e=$n,r=$n,n=$n,s=t.charAt($n),pe.test(s)?$n++:(s=u,0===kn&&zn(Pr)),s===u&&(s=null),o=[],l=t.charAt($n),Ae.test(l)?$n++:(l=u,0===kn&&zn(Ir)),l!==u)for(;l!==u;)o.push(l),l=t.charAt($n),Ae.test(l)?$n++:(l=u,0===kn&&zn(Ir));else o=u;return o!==u?(s=[s,o],n=s):($n=n,n=u),r=n!==u?t.substring(r,$n):n,r!==u&&(Ln=e,r=parseInt(r)),e=r,kn--,e===u&&(r=u,0===kn&&zn(Mr)),e}function Hs(){let e,r,n,s,o,l,a,c;if(kn++,e=$n,r=$n,kn++,n=Ns(),kn--,n===u?r=void 0:($n=r,r=u),r!==u)if(n=$n,kn++,s=Ms(),kn--,s===u?n=void 0:($n=n,n=u),n!==u){if(s=$n,o=$n,l=t.charAt($n),de.test(l)?$n++:(l=u,0===kn&&zn(Ur)),l!==u){for(a=[],c=t.charAt($n),Ce.test(c)?$n++:(c=u,0===kn&&zn(Gr));c!==u;)a.push(c),c=t.charAt($n),Ce.test(c)?$n++:(c=u,0===kn&&zn(Gr));l=[l,a],o=l}else $n=o,o=u;s=o!==u?t.substring(s,$n):o,s!==u?(Ln=e,e=s):($n=e,e=u)}else $n=e,e=u;else $n=e,e=u;return kn--,e===u&&(r=u,0===kn&&zn(Qr)),e}function Ms(){let e,r,n,s,o,l,a,c,i,f,h,A,p,d;return kn++,e=$n,r=$n,n=Qs(),n!==u?(s=Qs(),s!==u?(45===t.charCodeAt($n)?(o=Gt,$n++):(o=u,0===kn&&zn(_r)),o===u&&(o=null),l=Qs(),l!==u?(45===t.charCodeAt($n)?(a=Gt,$n++):(a=u,0===kn&&zn(_r)),a===u&&(a=null),c=Qs(),c!==u?(45===t.charCodeAt($n)?(i=Gt,$n++):(i=u,0===kn&&zn(_r)),i===u&&(i=null),f=Qs(),f!==u?(45===t.charCodeAt($n)?(h=Gt,$n++):(h=u,0===kn&&zn(_r)),h===u&&(h=null),A=Qs(),A!==u?(p=Qs(),p!==u?(d=Qs(),d!==u?(n=[n,s,o,l,a,c,i,f,h,A,p,d],r=n):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u),e=r!==u?t.substring(e,$n):r,kn--,e===u&&(r=u,0===kn&&zn(Jr)),e}function Qs(){let e,r,n,s,o,l;return kn++,e=$n,r=$n,n=t.charAt($n),ge.test(n)?$n++:(n=u,0===kn&&zn(Vr)),n!==u?(s=t.charAt($n),ge.test(s)?$n++:(s=u,0===kn&&zn(Vr)),s!==u?(o=t.charAt($n),ge.test(o)?$n++:(o=u,0===kn&&zn(Vr)),o!==u?(l=t.charAt($n),ge.test(l)?$n++:(l=u,0===kn&&zn(Vr)),l!==u?(n=[n,s,o,l],r=n):($n=r,r=u)):($n=r,r=u)):($n=r,r=u)):($n=r,r=u),e=r!==u?t.substring(e,$n):r,kn--,e===u&&(r=u,0===kn&&zn(Kr)),e}function Us(){let e,r,n,s;if(e=$n,r=$n,n=[],s=t.charAt($n),Ee.test(s)?$n++:(s=u,0===kn&&zn(Wr)),s!==u)for(;s!==u;)n.push(s),s=t.charAt($n),Ee.test(s)?$n++:(s=u,0===kn&&zn(Wr));else n=u;return r=n!==u?t.substring(r,$n):n,r!==u&&(Ln=e,r={val:r}),e=r,e}function Gs(){let e,r,n,s;return e=$n,r=Vs(),44===t.charCodeAt($n)?(n=z,$n++):(n=u,0===kn&&zn(au)),n!==u?(s=Vs(),r=[r,n,s],e=r):($n=e,e=u),e}function Js(){let e,r,n,s;return e=$n,r=Vs(),40===t.charCodeAt($n)?(n=te,$n++):(n=u,0===kn&&zn(rn)),n!==u?(s=Vs(),r=[r,n,s],e=r):($n=e,e=u),e}function Ks(){let e,r,n;return e=$n,r=Vs(),41===t.charCodeAt($n)?(n=Pt,$n++):(n=u,0===kn&&zn(Br)),n!==u?(r=[r,n],e=r):($n=e,e=u),e}function Vs(){let e,r,n;for(kn++,e=$n,r=[],n=t.charAt($n),me.test(n)?$n++:(n=u,0===kn&&zn(nn));n!==u;)r.push(n),n=t.charAt($n),me.test(n)?$n++:(n=u,0===kn&&zn(nn));return e=t.substring(e,$n),kn--,e}function Ws(){let e,r,n;if(kn++,e=$n,r=[],n=t.charAt($n),me.test(n)?$n++:(n=u,0===kn&&zn(nn)),n!==u)for(;n!==u;)r.push(n),n=t.charAt($n),me.test(n)?$n++:(n=u,0===kn&&zn(nn));else r=u;return e=r!==u?t.substring(e,$n):r,kn--,e===u&&(r=u,0===kn&&zn(sn)),e}const Xs=["$value"],Ys={eq:"=",ne:"!=",lt:"<",gt:">",le:"<=",ge:">="},to={topcount:!0,bottomcount:!0,topsum:!1,bottomsum:!1,toppercent:!1,bottompercent:!1},eo=Object.assign,{strict:uo,minimal:ro}=e,no=[];let so,oo;const lo=e.safeNumber||function(t){if("string"!=typeof t)return t;const e=parseFloat(t);if(!isNaN(e)&&String(e)===t)return e;const u=parseInt(t);return isNaN(u)||String(u)!==t.replace(/^-?\d+\.0+$/,t.split(".")[0])?t:u},ao=e.skipToken,co=e.standardBase64||function(t){return Buffer.from(t,"base64").toString("base64")},io=t=>e=>t===e||t.as&&e.as&&t.as===e.as||e.as&&t.ref&&e.as===t.ref[t.ref.length-1]||t.ref&&e.ref&&t.ref.join("")===e.ref.join(""),fo=t=>e=>{if(Array.isArray(e))return e.map(fo(t));const u=e.ref&&t.find(t=>"func"in t&&t.as&&t.as===e.ref[0]);return u||e},ho=t=>e=>Array.isArray(e)?e.map(ho(t)):e.ref&&!t.find(io(e))?{val:null}:e,Ao=(t,e)=>{if(1===e.ref.length)t.find(io(e))||t.push(e);else{const u=e.ref.shift(),r=t.find(t=>t.ref&&t.ref[0]===u);if(r)Ao(r.expand??=[],e);else{const r={ref:[u],expand:[]};Ao(r.expand,e),t.push(r)}}},po=t=>{const e=t.reduce((t,e)=>{if("string"==typeof e)return t[e]??=[],t;if(!e.ref)return t;const u=e.ref[0];return t[u]??=[],t[u].push(...e.expand??[]),t},{}),u=[];for(const t in e){if("*"===t){u.push(t);continue}const r={ref:[t]};e[t].length&&(r.expand=po(e[t])),u.push(r)}return u},Co=(t,e)=>{if(!e.length)return;const u=e.reduce((t,e)=>{if(!e.ref)return t;const u=e.ref[0];return t[u]??=[],t[u].push(...e.expand??[]),t},{}),r={},n=[];for(const e in t){const s=t[e],o=s.ref?.[0];Object.keys(u).includes(o)?r[o]=s:s.func||n.push(e)}if(Object.keys(r).length){for(const e of n)t.splice(e,1);for(const t in u){const e=r[t];e&&(u[t].length&&(e.expand?Co(e.expand,u[t]):e.expand=po(u[t])))}}},go=(t,e)=>{let u=Fo({from:t.from},e);if(delete t.apply,Array.isArray(u))for(let e=0;e<u.length;e++)u[e]=Eo(u[e],t);else u=Eo(u,t);if(u.SELECT?.recurse&&t.where){const e=t.where;delete u.SELECT.where;const r=u.SELECT.columns;delete u.SELECT.columns,u={SELECT:{from:u,where:e,columns:r}}}return u};const Eo=(t,e)=>{const u=function(t){return t.SELECT.groupBy||t.SELECT.columns?.some(t=>t&&"object"==typeof t&&"func"in t)}(t);if(e.columns&&"$count"===e.columns[0].as||!u&&e.where&&(t.SELECT.where||t.SELECT.limit)||t.SELECT.limit&&e.limit||t.SELECT.orderBy&&e.orderBy||t.SELECT.search&&e.search){const u=Object.assign({},e);u.from=t,t={SELECT:u}}else{let r=t.SELECT.from,n=t.SELECT.columns,s=t.SELECT.where;if(t.SELECT=Object.assign(t.SELECT,e),t.SELECT.from=r,t.SELECT.columns=n,u&&e.where){const u=e.where.map(fo(t.SELECT.columns)).map(ho(t.SELECT.groupBy??[]));t.SELECT.having?t.SELECT.having=[{xpr:t.SELECT.having},"and",{xpr:u}]:t.SELECT.having=u,t.SELECT.where=s}}if(e.columns){const u=[];if(t.SELECT.columns||(t.SELECT.columns=[]),t.SELECT.columns.length&&u.push(...t.SELECT.columns),t.SELECT.groupBy&&t.SELECT.groupBy.length)Co(u,e.columns);else for(const t of e.columns)u.some(io(t))||u.push(t);t.SELECT.columns=u}return t.SELECT.columns?.length||delete t.SELECT.columns,t},Fo=(t,e)=>{delete t.apply,e.identity&&t.from.SELECT&&(t=t.from.SELECT),e.apply&&(t.from={SELECT:{...t}});const u=t=>{t.recurse={ref:["parent"]};const u=[],r=[];if(e.topLevels.levels?r.push([{ref:["DistanceFromRoot"]},"<=",{val:e.topLevels.levels-1}]):r.push([{ref:["DistanceFromRoot"]},">=",{val:0}]),e.topLevels.expandLevels)for(const t of e.topLevels.expandLevels)0===t.levels?u.push([{func:"DistanceTo",args:[{val:t.nodeID},{val:null}]}]):r.push([{func:"DistanceTo",args:[{val:t.nodeID},{val:t.levels}]}]);const n=">="===r[0][1]&&0===r[0][2].val?1===r.length?[]:[r[0]]:r,s=n.flatMap((t,e)=>e<n.length-1?[...t,"or"]:t);if(u.length){const e=u.flatMap((t,e)=>["and","not",...t]);n.length>1?t.recurse.where=[{xpr:s}].concat(e):1===n.length&&">="===n[0][1]&&0===n[0][2].val?t.recurse.where=e.slice(1):t.recurse.where=s.concat(e)}else s.length&&(t.recurse.where=s)},r=t=>n(t,e.descendants,1),n=(t,u=e.ancestors,r=-1)=>{if(u.nodes)for(const e of u.nodes)e.filter&&-1===r?t.where=e.filter:e.search&&(t.search=e.search);if(t.recurse={ref:["parent"]},1===r){const e=()=>{const t=new Error("For descendants, only the following filter is supported: `<ID> eq <val>`");throw t.statusCode=400,t};1===u.nodes?.length&&u.nodes[0].filter||e();const n=u.nodes[0].filter.findIndex(t=>t.ref?.[0]===u.id);-1===!n&&e();const s=u.nodes[0].filter[n+1],o=u.nodes[0].filter[n+2]?.val;"="===s&&o||e();const l=u.distance&&r*u.distance,a=[{func:"DistanceTo",args:[{val:o},{val:Number.isInteger(l)?l:null}]}];t.recurse.where=a}};if(e.ancestors&&e.topLevels){n(t);const e={...t};u(e),t.recurse=e.recurse}else if(e.ancestors&&e.descendants){n(t);const e={...t};r(e),t.recurse=e.recurse}else e.topLevels?u(t):e.ancestors?n(e):e.descendants&&r(t);if(e.where&&(t.where=e.where),e.search&&(t.search=e.search),e.limit&&(t.limit=e.limit),e.orderBy&&(t.orderBy=e.orderBy),e.groupBy&&(t.groupBy=e.groupBy.reduce((t,e)=>(t.some(io(e))||t.push(e),t),[])),e.aggregate&&e.aggregate.length&&(t.columns=(t.columns||[]).concat(e.aggregate)),t.groupBy&&t.groupBy.length){const e=t.groupBy.reduce((t,e)=>{if(e.ref&&e.ref.length>1){const u={ref:[...e.ref]};e.expand&&e.expand.length&&(u.expand=[...e.expand]),e.as&&(u.as=e.as),Ao(t,u,!0)}else t.push({...e});return t},[]);t.columns=(t.columns||[]).concat(e)}if(e.having&&(t.having=e.having.map(fo(t.columns)).map(ho(t.groupBy??[]))),e.apply&&Fo(t.from.SELECT,e.apply),Array.isArray(e.concat)){const u=[],r=1===Object.keys(t).length?t.from:{SELECT:t};for(let t of e.concat)if(t.from=r,t.apply){const e=Fo(t,t.apply);Array.isArray(e)?u.push(...e):u.push(e)}return u}return{SELECT:t}},bo=t=>{so.limit&&so.limit.offset&&so.limit.offset.val&&(t+=so.limit.offset.val),(so.limit||(so.limit={})).offset={val:t}},mo=(t,e=!1)=>{so.orderBy=so.orderBy?e?[t,...so.orderBy]:[...so.orderBy,t]:[t]},Bo=(t,e)=>{for(const u of e)u.ref&&u.ref[0]===t&&u.ref.shift(),u.func&&Bo(t,u.args),u.xpr&&Bo(t,u.xpr);return e},vo=(t,e)=>{"null"===e?e=null:"true"===e?e=!0:"false"===e&&(e=!1);let u=so.from._params??={},r=t.match(/^(\w+)\[(.*)\]$/);for(;r;)r[1]in u||(u[r[1]]=""===r[2]?[]:{}),u=u[r[1]],r=(t=r[2]).match(/^(\w+)\[(.*)\]$/);Array.isArray(u)?u.push(e):u[t]=e},Do=(t,e,u,r=!1)=>{let n=!1;return t?.forEach(t=>{t.val===e?(t.val="list"in u?u.list.map(t=>t.val):u.val,n=!0):t.list===e?(t.list=u.list,n=!0):t.func?t.args.forEach((t,s)=>{t.val===e?(t.val=u.val,n=!0):t.func&&Do(t.args,e,u,r)}):t.SELECT&&yo(t.SELECT,e,u,r)}),n},yo=(t,e,u,r=!1)=>{let n=!1;const{where:s,from:o}=t;return n=Do(s,e,u),o?.ref?.forEach(t=>{n=Do(t.where,e,u,!0)}),n};Tn=s();const xo=Tn!==u&&$n===t.length;function wo(){throw Tn!==u&&$n<t.length&&zn({type:"end"}),Pn(On,jn<t.length?function(e=$n){const u=t.codePointAt(e);return void 0===u?"":String.fromCodePoint(u)}(jn):null,jn<t.length?Rn(jn,jn+1):Rn(jn,jn))}return e.peg$library?{peg$result:Tn,peg$currPos:$n,peg$FAILED:u,peg$maxFailExpected:On,peg$maxFailPos:jn,peg$success:xo,peg$throw:xo?void 0:wo}:xo?Tn:void wo()}module.exports={StartRules:["ODataRelativeURI"],SyntaxError:peg$SyntaxError,parse:peg$parse};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sap/cds",
3
- "version": "9.4.3",
3
+ "version": "9.4.5",
4
4
  "description": "SAP Cloud Application Programming Model - CDS for Node.js",
5
5
  "homepage": "https://cap.cloud.sap/",
6
6
  "keywords": [