lone-format 0.13.0 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_chunks/{index-DfjCsqDT.js → index-5wbkWClK.js} +350 -349
- package/dist/_chunks/{index-13rwh2MK.js → index-AlOFzpXl.js} +203 -196
- package/dist/_chunks/{index-DvNM7Tl4.js → index-BAEkF-Fh.js} +633 -632
- package/dist/components/JsonFormat/index.js +1 -1
- package/dist/components/JsonFormat/index.vue.d.ts +1 -0
- package/dist/components/JsonFormat/types.d.ts +1 -0
- package/dist/components/SqlFormat/index.js +1 -1
- package/dist/components/SqlFormat/index.vue.d.ts +1 -0
- package/dist/components/SqlFormat/types.d.ts +1 -0
- package/dist/components/XmlFormat/index.js +2 -2
- package/dist/components/XmlFormat/index.vue.d.ts +1 -0
- package/dist/components/XmlFormat/types.d.ts +1 -0
- package/dist/lone-format.css +1 -1
- package/dist/lone-format.js +3 -3
- package/dist/lone-format.umd.cjs +50 -50
- package/package.json +1 -1
package/dist/lone-format.umd.cjs
CHANGED
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
(function(rt,T){typeof exports=="object"&&typeof module<"u"?T(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],T):(rt=typeof globalThis<"u"?globalThis:rt||self,T(rt.LoneFormat={},rt.Vue))})(this,function(rt,T){"use strict";class Qr{add(t,r,n){if(typeof arguments[0]!="string")for(let s in arguments[0])this.add(s,arguments[0][s],arguments[1]);else(Array.isArray(t)?t:[t]).forEach(function(s){this[s]=this[s]||[],r&&this[s][n?"unshift":"push"](r)},this)}run(t,r){this[t]=this[t]||[],this[t].forEach(function(n){n.call(r&&r.context?r.context:r,r)})}}class Zr{constructor(t){this.jsep=t,this.registered={}}register(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];r.forEach(s=>{if(typeof s!="object"||!s.name||!s.init)throw new Error("Invalid JSEP plugin format");this.registered[s.name]||(s.init(this.jsep),this.registered[s.name]=s)})}}class
|
|
2
|
-
`;break;case"r":t+="\r";break;case"t":t+=" ";break;case"b":t+="\b";break;case"f":t+="\f";break;case"v":t+="\v";break;default:t+=a}else t+=a}return s||this.throwError('Unclosed quote after "'+t+'"'),{type:x.LITERAL,value:t,raw:this.expr.substring(r,this.index)}}gobbleIdentifier(){let t=this.code,r=this.index;for(x.isIdentifierStart(t)?this.index++:this.throwError("Unexpected "+this.char);this.index<this.expr.length&&(t=this.code,x.isIdentifierPart(t));)this.index++;return{type:x.IDENTIFIER,name:this.expr.slice(r,this.index)}}gobbleArguments(t){const r=[];let n=!1,s=0;for(;this.index<this.expr.length;){this.gobbleSpaces();let a=this.code;if(a===t){n=!0,this.index++,t===x.CPAREN_CODE&&s&&s>=r.length&&this.throwError("Unexpected token "+String.fromCharCode(t));break}else if(a===x.COMMA_CODE){if(this.index++,s++,s!==r.length){if(t===x.CPAREN_CODE)this.throwError("Unexpected token ,");else if(t===x.CBRACK_CODE)for(let A=r.length;A<s;A++)r.push(null)}}else if(r.length!==s&&s!==0)this.throwError("Expected comma");else{const A=this.gobbleExpression();(!A||A.type===x.COMPOUND)&&this.throwError("Expected comma"),r.push(A)}}return n||this.throwError("Expected "+String.fromCharCode(t)),r}gobbleGroup(){this.index++;let t=this.gobbleExpressions(x.CPAREN_CODE);if(this.code===x.CPAREN_CODE)return this.index++,t.length===1?t[0]:t.length?{type:x.SEQUENCE_EXP,expressions:t}:!1;this.throwError("Unclosed (")}gobbleArray(){return this.index++,{type:x.ARRAY_EXP,elements:this.gobbleArguments(x.CBRACK_CODE)}}}const jr=new Qr;Object.assign(x,{hooks:jr,plugins:new Zr(x),COMPOUND:"Compound",SEQUENCE_EXP:"SequenceExpression",IDENTIFIER:"Identifier",MEMBER_EXP:"MemberExpression",LITERAL:"Literal",THIS_EXP:"ThisExpression",CALL_EXP:"CallExpression",UNARY_EXP:"UnaryExpression",BINARY_EXP:"BinaryExpression",ARRAY_EXP:"ArrayExpression",TAB_CODE:9,LF_CODE:10,CR_CODE:13,SPACE_CODE:32,PERIOD_CODE:46,COMMA_CODE:44,SQUOTE_CODE:39,DQUOTE_CODE:34,OPAREN_CODE:40,CPAREN_CODE:41,OBRACK_CODE:91,CBRACK_CODE:93,QUMARK_CODE:63,SEMCOL_CODE:59,COLON_CODE:58,unary_ops:{"-":1,"!":1,"~":1,"+":1},binary_ops:{"||":1,"??":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10,"**":11},right_associative:new Set(["**"]),additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"}),x.max_unop_len=x.getMaxKeyLen(x.unary_ops),x.max_binop_len=x.getMaxKeyLen(x.binary_ops);const ot=E=>new x(E).parse(),zr=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(x).filter(E=>!zr.includes(E)&&ot[E]===void 0).forEach(E=>{ot[E]=x[E]}),ot.Jsep=x;const en="ConditionalExpression";var tn={name:"ternary",init(E){E.hooks.add("after-expression",function(r){if(r.node&&this.code===E.QUMARK_CODE){this.index++;const n=r.node,s=this.gobbleExpression();if(s||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===E.COLON_CODE){this.index++;const a=this.gobbleExpression();if(a||this.throwError("Expected expression"),r.node={type:en,test:n,consequent:s,alternate:a},n.operator&&E.binary_ops[n.operator]<=.9){let A=n;for(;A.right.operator&&E.binary_ops[A.right.operator]<=.9;)A=A.right;r.node.test=A.right,A.right=r.node,r.node=n}}else this.throwError("Expected :")}})}};ot.plugins.register(tn);const hE=47,En=92;var rn={name:"regex",init(E){E.hooks.add("gobble-token",function(r){if(this.code===hE){const n=++this.index;let s=!1;for(;this.index<this.expr.length;){if(this.code===hE&&!s){const a=this.expr.slice(n,this.index);let A="";for(;++this.index<this.expr.length;){const I=this.code;if(I>=97&&I<=122||I>=65&&I<=90||I>=48&&I<=57)A+=this.char;else break}let c;try{c=new RegExp(a,A)}catch(I){this.throwError(I.message)}return r.node={type:E.LITERAL,value:c,raw:this.expr.slice(n-1,this.index)},r.node=this.gobbleTokenProperty(r.node),r.node}this.code===E.OBRACK_CODE?s=!0:s&&this.code===E.CBRACK_CODE&&(s=!1),this.index+=this.code===En?2:1}this.throwError("Unclosed Regex")}})}};const kt=43,dt={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|=","||=","&&=","??="]),updateOperators:[kt,45],assignmentPrecedence:.9,init(E){const t=[E.IDENTIFIER,E.MEMBER_EXP];dt.assignmentOperators.forEach(n=>E.addBinaryOp(n,dt.assignmentPrecedence,!0)),E.hooks.add("gobble-token",function(s){const a=this.code;dt.updateOperators.some(A=>A===a&&A===this.expr.charCodeAt(this.index+1))&&(this.index+=2,s.node={type:"UpdateExpression",operator:a===kt?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},(!s.node.argument||!t.includes(s.node.argument.type))&&this.throwError(`Unexpected ${s.node.operator}`))}),E.hooks.add("after-token",function(s){if(s.node){const a=this.code;dt.updateOperators.some(A=>A===a&&A===this.expr.charCodeAt(this.index+1))&&(t.includes(s.node.type)||this.throwError(`Unexpected ${s.node.operator}`),this.index+=2,s.node={type:"UpdateExpression",operator:a===kt?"++":"--",argument:s.node,prefix:!1})}}),E.hooks.add("after-expression",function(s){s.node&&r(s.node)});function r(n){dt.assignmentOperators.has(n.operator)?(n.type="AssignmentExpression",r(n.left),r(n.right)):n.operator||Object.values(n).forEach(s=>{s&&typeof s=="object"&&r(s)})}}};ot.plugins.register(rn,dt),ot.addUnaryOp("typeof"),ot.addLiteral("null",null),ot.addLiteral("undefined",void 0);const nn=new Set(["constructor","__proto__","__defineGetter__","__defineSetter__"]),Fe={evalAst(E,t){switch(E.type){case"BinaryExpression":case"LogicalExpression":return Fe.evalBinaryExpression(E,t);case"Compound":return Fe.evalCompound(E,t);case"ConditionalExpression":return Fe.evalConditionalExpression(E,t);case"Identifier":return Fe.evalIdentifier(E,t);case"Literal":return Fe.evalLiteral(E,t);case"MemberExpression":return Fe.evalMemberExpression(E,t);case"UnaryExpression":return Fe.evalUnaryExpression(E,t);case"ArrayExpression":return Fe.evalArrayExpression(E,t);case"CallExpression":return Fe.evalCallExpression(E,t);case"AssignmentExpression":return Fe.evalAssignmentExpression(E,t);default:throw SyntaxError("Unexpected expression",E)}},evalBinaryExpression(E,t){return{"||":(n,s)=>n||s(),"&&":(n,s)=>n&&s(),"|":(n,s)=>n|s(),"^":(n,s)=>n^s(),"&":(n,s)=>n&s(),"==":(n,s)=>n==s(),"!=":(n,s)=>n!=s(),"===":(n,s)=>n===s(),"!==":(n,s)=>n!==s(),"<":(n,s)=>n<s(),">":(n,s)=>n>s(),"<=":(n,s)=>n<=s(),">=":(n,s)=>n>=s(),"<<":(n,s)=>n<<s(),">>":(n,s)=>n>>s(),">>>":(n,s)=>n>>>s(),"+":(n,s)=>n+s(),"-":(n,s)=>n-s(),"*":(n,s)=>n*s(),"/":(n,s)=>n/s(),"%":(n,s)=>n%s()}[E.operator](Fe.evalAst(E.left,t),()=>Fe.evalAst(E.right,t))},evalCompound(E,t){let r;for(let n=0;n<E.body.length;n++){E.body[n].type==="Identifier"&&["var","let","const"].includes(E.body[n].name)&&E.body[n+1]&&E.body[n+1].type==="AssignmentExpression"&&(n+=1);const s=E.body[n];r=Fe.evalAst(s,t)}return r},evalConditionalExpression(E,t){return Fe.evalAst(E.test,t)?Fe.evalAst(E.consequent,t):Fe.evalAst(E.alternate,t)},evalIdentifier(E,t){if(Object.hasOwn(t,E.name))return t[E.name];throw ReferenceError(`${E.name} is not defined`)},evalLiteral(E){return E.value},evalMemberExpression(E,t){const r=String(E.computed?Fe.evalAst(E.property):E.property.name),n=Fe.evalAst(E.object,t);if(n==null)throw TypeError(`Cannot read properties of ${n} (reading '${r}')`);if(!Object.hasOwn(n,r)&&nn.has(r))throw TypeError(`Cannot read properties of ${n} (reading '${r}')`);const s=n[r];return typeof s=="function"?s.bind(n):s},evalUnaryExpression(E,t){return{"-":n=>-Fe.evalAst(n,t),"!":n=>!Fe.evalAst(n,t),"~":n=>~Fe.evalAst(n,t),"+":n=>+Fe.evalAst(n,t),typeof:n=>typeof Fe.evalAst(n,t)}[E.operator](E.argument)},evalArrayExpression(E,t){return E.elements.map(r=>Fe.evalAst(r,t))},evalCallExpression(E,t){const r=E.arguments.map(s=>Fe.evalAst(s,t));return Fe.evalAst(E.callee,t)(...r)},evalAssignmentExpression(E,t){if(E.left.type!=="Identifier")throw SyntaxError("Invalid left-hand side in assignment");const r=E.left.name,n=Fe.evalAst(E.right,t);return t[r]=n,t[r]}};class sn{constructor(t){this.code=t,this.ast=ot(this.code)}runInNewContext(t){const r=Object.assign(Object.create(null),t);return Fe.evalAst(this.ast,r)}}function St(E,t){return E=E.slice(),E.push(t),E}function $t(E,t){return t=t.slice(),t.unshift(E),t}class Tn extends Error{constructor(t){super('JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'),this.avoidNew=!0,this.value=t,this.name="NewError"}}function Ge(E,t,r,n,s){if(!(this instanceof Ge))try{return new Ge(E,t,r,n,s)}catch(A){if(!A.avoidNew)throw A;return A.value}typeof E=="string"&&(s=n,n=r,r=t,t=E,E=null);const a=E&&typeof E=="object";if(E=E||{},this.json=E.json||r,this.path=E.path||t,this.resultType=E.resultType||"value",this.flatten=E.flatten||!1,this.wrap=Object.hasOwn(E,"wrap")?E.wrap:!0,this.sandbox=E.sandbox||{},this.eval=E.eval===void 0?"safe":E.eval,this.ignoreEvalErrors=typeof E.ignoreEvalErrors>"u"?!1:E.ignoreEvalErrors,this.parent=E.parent||null,this.parentProperty=E.parentProperty||null,this.callback=E.callback||n||null,this.otherTypeCallback=E.otherTypeCallback||s||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},E.autostart!==!1){const A={path:a?E.path:t};a?"json"in E&&(A.json=E.json):A.json=r;const c=this.evaluate(A);if(!c||typeof c!="object")throw new Tn(c);return c}}Ge.prototype.evaluate=function(E,t,r,n){let s=this.parent,a=this.parentProperty,{flatten:A,wrap:c}=this;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,r=r||this.callback,this.currOtherTypeCallback=n||this.otherTypeCallback,t=t||this.json,E=E||this.path,E&&typeof E=="object"&&!Array.isArray(E)){if(!E.path&&E.path!=="")throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!Object.hasOwn(E,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');({json:t}=E),A=Object.hasOwn(E,"flatten")?E.flatten:A,this.currResultType=Object.hasOwn(E,"resultType")?E.resultType:this.currResultType,this.currSandbox=Object.hasOwn(E,"sandbox")?E.sandbox:this.currSandbox,c=Object.hasOwn(E,"wrap")?E.wrap:c,this.currEval=Object.hasOwn(E,"eval")?E.eval:this.currEval,r=Object.hasOwn(E,"callback")?E.callback:r,this.currOtherTypeCallback=Object.hasOwn(E,"otherTypeCallback")?E.otherTypeCallback:this.currOtherTypeCallback,s=Object.hasOwn(E,"parent")?E.parent:s,a=Object.hasOwn(E,"parentProperty")?E.parentProperty:a,E=E.path}if(s=s||null,a=a||null,Array.isArray(E)&&(E=Ge.toPathString(E)),!E&&E!==""||!t)return;const I=Ge.toPathArray(E);I[0]==="$"&&I.length>1&&I.shift(),this._hasParentSelector=null;const i=this._trace(I,t,["$"],s,a,r).filter(function(O){return O&&!O.isParentSelector});return i.length?!c&&i.length===1&&!i[0].hasArrExpr?this._getPreferredOutput(i[0]):i.reduce((O,C)=>{const p=this._getPreferredOutput(C);return A&&Array.isArray(p)?O=O.concat(p):O.push(p),O},[]):c?[]:void 0},Ge.prototype._getPreferredOutput=function(E){const t=this.currResultType;switch(t){case"all":{const r=Array.isArray(E.path)?E.path:Ge.toPathArray(E.path);return E.pointer=Ge.toPointer(r),E.path=typeof E.path=="string"?E.path:Ge.toPathString(E.path),E}case"value":case"parent":case"parentProperty":return E[t];case"path":return Ge.toPathString(E[t]);case"pointer":return Ge.toPointer(E.path);default:throw new TypeError("Unknown result type")}},Ge.prototype._handleCallback=function(E,t,r){if(t){const n=this._getPreferredOutput(E);E.path=typeof E.path=="string"?E.path:Ge.toPathString(E.path),t(n,r,E)}},Ge.prototype._trace=function(E,t,r,n,s,a,A,c){let I;if(!E.length)return I={path:r,value:t,parent:n,parentProperty:s,hasArrExpr:A},this._handleCallback(I,a,"value"),I;const i=E[0],O=E.slice(1),C=[];function p(g){Array.isArray(g)?g.forEach(B=>{C.push(B)}):C.push(g)}if((typeof i!="string"||c)&&t&&Object.hasOwn(t,i))p(this._trace(O,t[i],St(r,i),t,i,a,A));else if(i==="*")this._walk(t,g=>{p(this._trace(O,t[g],St(r,g),t,g,a,!0,!0))});else if(i==="..")p(this._trace(O,t,r,n,s,a,A)),this._walk(t,g=>{typeof t[g]=="object"&&p(this._trace(E.slice(),t[g],St(r,g),t,g,a,!0))});else{if(i==="^")return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:O,isParentSelector:!0};if(i==="~")return I={path:St(r,i),value:s,parent:n,parentProperty:null},this._handleCallback(I,a,"property"),I;if(i==="$")p(this._trace(O,t,r,null,null,a,A));else if(/^(-?\d*):(-?\d*):?(\d*)$/u.test(i))p(this._slice(i,O,t,r,n,s,a));else if(i.indexOf("?(")===0){if(this.currEval===!1)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");const g=i.replace(/^\?\((.*?)\)$/u,"$1"),B=/@.?([^?]*)[['](\??\(.*?\))(?!.\)\])[\]']/gu.exec(g);B?this._walk(t,Y=>{const d=[B[2]],k=B[1]?t[Y][B[1]]:t[Y];this._trace(d,k,r,n,s,a,!0).length>0&&p(this._trace(O,t[Y],St(r,Y),t,Y,a,!0))}):this._walk(t,Y=>{this._eval(g,t[Y],Y,r,n,s)&&p(this._trace(O,t[Y],St(r,Y),t,Y,a,!0))})}else if(i[0]==="("){if(this.currEval===!1)throw new Error("Eval [(expr)] prevented in JSONPath expression.");p(this._trace($t(this._eval(i,t,r.at(-1),r.slice(0,-1),n,s),O),t,r,n,s,a,A))}else if(i[0]==="@"){let g=!1;const B=i.slice(1,-2);switch(B){case"scalar":(!t||!["object","function"].includes(typeof t))&&(g=!0);break;case"boolean":case"string":case"undefined":case"function":typeof t===B&&(g=!0);break;case"integer":Number.isFinite(t)&&!(t%1)&&(g=!0);break;case"number":Number.isFinite(t)&&(g=!0);break;case"nonFinite":typeof t=="number"&&!Number.isFinite(t)&&(g=!0);break;case"object":t&&typeof t===B&&(g=!0);break;case"array":Array.isArray(t)&&(g=!0);break;case"other":g=this.currOtherTypeCallback(t,r,n,s);break;case"null":t===null&&(g=!0);break;default:throw new TypeError("Unknown value type "+B)}if(g)return I={path:r,value:t,parent:n,parentProperty:s},this._handleCallback(I,a,"value"),I}else if(i[0]==="`"&&t&&Object.hasOwn(t,i.slice(1))){const g=i.slice(1);p(this._trace(O,t[g],St(r,g),t,g,a,A,!0))}else if(i.includes(",")){const g=i.split(",");for(const B of g)p(this._trace($t(B,O),t,r,n,s,a,!0))}else!c&&t&&Object.hasOwn(t,i)&&p(this._trace(O,t[i],St(r,i),t,i,a,A,!0))}if(this._hasParentSelector)for(let g=0;g<C.length;g++){const B=C[g];if(B&&B.isParentSelector){const Y=this._trace(B.expr,t,B.path,n,s,a,A);if(Array.isArray(Y)){C[g]=Y[0];const d=Y.length;for(let k=1;k<d;k++)g++,C.splice(g,0,Y[k])}else C[g]=Y}}return C},Ge.prototype._walk=function(E,t){if(Array.isArray(E)){const r=E.length;for(let n=0;n<r;n++)t(n)}else E&&typeof E=="object"&&Object.keys(E).forEach(r=>{t(r)})},Ge.prototype._slice=function(E,t,r,n,s,a,A){if(!Array.isArray(r))return;const c=r.length,I=E.split(":"),i=I[2]&&Number.parseInt(I[2])||1;let O=I[0]&&Number.parseInt(I[0])||0,C=I[1]&&Number.parseInt(I[1])||c;O=O<0?Math.max(0,O+c):Math.min(c,O),C=C<0?Math.max(0,C+c):Math.min(c,C);const p=[];for(let g=O;g<C;g+=i)this._trace($t(g,t),r,n,s,a,A,!0).forEach(Y=>{p.push(Y)});return p},Ge.prototype._eval=function(E,t,r,n,s,a){this.currSandbox._$_parentProperty=a,this.currSandbox._$_parent=s,this.currSandbox._$_property=r,this.currSandbox._$_root=this.json,this.currSandbox._$_v=t;const A=E.includes("@path");A&&(this.currSandbox._$_path=Ge.toPathString(n.concat([r])));const c=this.currEval+"Script:"+E;if(!Ge.cache[c]){let I=E.replaceAll("@parentProperty","_$_parentProperty").replaceAll("@parent","_$_parent").replaceAll("@property","_$_property").replaceAll("@root","_$_root").replaceAll(/@([.\s)[])/gu,"_$_v$1");if(A&&(I=I.replaceAll("@path","_$_path")),this.currEval==="safe"||this.currEval===!0||this.currEval===void 0)Ge.cache[c]=new this.safeVm.Script(I);else if(this.currEval==="native")Ge.cache[c]=new this.vm.Script(I);else if(typeof this.currEval=="function"&&this.currEval.prototype&&Object.hasOwn(this.currEval.prototype,"runInNewContext")){const i=this.currEval;Ge.cache[c]=new i(I)}else if(typeof this.currEval=="function")Ge.cache[c]={runInNewContext:i=>this.currEval(I,i)};else throw new TypeError(`Unknown "eval" property "${this.currEval}"`)}try{return Ge.cache[c].runInNewContext(this.currSandbox)}catch(I){if(this.ignoreEvalErrors)return!1;throw new Error("jsonPath: "+I.message+": "+E)}},Ge.cache={},Ge.toPathString=function(E){const t=E,r=t.length;let n="$";for(let s=1;s<r;s++)/^(~|\^|@.*?\(\))$/u.test(t[s])||(n+=/^[0-9*]+$/u.test(t[s])?"["+t[s]+"]":"['"+t[s]+"']");return n},Ge.toPointer=function(E){const t=E,r=t.length;let n="";for(let s=1;s<r;s++)/^(~|\^|@.*?\(\))$/u.test(t[s])||(n+="/"+t[s].toString().replaceAll("~","~0").replaceAll("/","~1"));return n},Ge.toPathArray=function(E){const{cache:t}=Ge;if(t[E])return t[E].concat();const r=[],s=E.replaceAll(/@(?:null|boolean|number|string|integer|undefined|nonFinite|scalar|array|object|function|other)\(\)/gu,";$&;").replaceAll(/[['](\??\(.*?\))[\]'](?!.\])/gu,function(a,A){return"[#"+(r.push(A)-1)+"]"}).replaceAll(/\[['"]([^'\]]*)['"]\]/gu,function(a,A){return"['"+A.replaceAll(".","%@%").replaceAll("~","%%@@%%")+"']"}).replaceAll("~",";~;").replaceAll(/['"]?\.['"]?(?![^[]*\])|\[['"]?/gu,";").replaceAll("%@%",".").replaceAll("%%@@%%","~").replaceAll(/(?:;)?(\^+)(?:;)?/gu,function(a,A){return";"+A.split("").join(";")+";"}).replaceAll(/;;;|;;/gu,";..;").replaceAll(/;$|'?\]|'$/gu,"").split(";").map(function(a){const A=a.match(/#(\d+)/u);return!A||!A[1]?a:r[A[1]]});return t[E]=s,t[E].concat()},Ge.prototype.safeVm={Script:sn};const on=function(E,t,r){const n=E.length;for(let s=0;s<n;s++){const a=E[s];r(a)&&t.push(E.splice(s--,1)[0])}};class an{constructor(t){this.code=t}runInNewContext(t){let r=this.code;const n=Object.keys(t),s=[];on(n,s,i=>typeof t[i]=="function");const a=n.map(i=>t[i]);r=s.reduce((i,O)=>{let C=t[O].toString();return/function/u.test(C)||(C="function "+C),"var "+O+"="+C+";"+i},"")+r,!/(['"])use strict\1/u.test(r)&&!n.includes("arguments")&&(r="var arguments = undefined;"+r),r=r.replace(/;\s*$/u,"");const c=r.lastIndexOf(";"),I=c!==-1?r.slice(0,c+1)+" return "+r.slice(c+1):" return "+r;return new Function(...n,I)(...a)}}Ge.prototype.vm={Script:an};const An={class:"json-node"},Rn={key:0,class:"json-node__container"},Sn={class:"json-node__line"},Nn=["contenteditable","onKeydown"],In={key:1,class:"json-node__colon"},On=["title"],ln=["title"],un={key:4,class:"json-node__comma"},Cn={key:0,class:"json-node__children"},cn={class:"json-node__children-content"},_n={class:"json-node__line json-node__closing-bracket"},Ln={class:"json-node__bracket"},Dn={key:0,class:"json-node__comma"},pn={key:1,class:"json-node__primitive"},dn=["contenteditable","onKeydown"],Pn={key:1,class:"json-node__colon"},hn=["title"],Mn=["contenteditable","onKeydown"],Un={key:0,class:"json-node__comma"},mn=T.defineComponent({name:"JsonNode",__name:"JsonNode",props:{value:{},keyName:{},level:{},path:{default:""},expanded:{},isLast:{type:Boolean,default:!1},theme:{}},emits:["update:value","toggle-expand","copy","update:key"],setup(E,{emit:t}){T.useCssVars(b=>({"2a18b018":b.level,"58a14b93":b.theme.colors.syntaxKey,"46fe1b3e":b.theme.colors.hoverBackground,fbe2c048:b.theme.colors.syntaxBracket,"4bd524bb":b.theme.colors.collapsedText,"3308d23c":b.theme.colors.collapsedBackground,"36380c60":b.theme.colors.collapsedBackgroundHover,"0892365d":b.theme.colors.syntaxString,"0015b195":b.theme.colors.syntaxNumber,"7db95f5c":b.theme.colors.syntaxBoolean,"88ec825a":b.theme.colors.syntaxNull,"537157f7":b.theme.colors.background,"3cee3331":b.theme.colors.selectionBackground,"81323cee":b.theme.colors.indentLine}));const r=E,n=t,s=T.ref(!1),a=T.ref(!1),A=T.ref(""),c=T.ref(""),I=T.ref("string"),i=T.ref(null),O=T.ref(null),C=b=>b!==null&&typeof b=="object"&&!Array.isArray(b)&&"__protected_number__"in b&&Object.keys(b).length===1,p=b=>C(b)?b.__protected_number__:"",g=T.computed(()=>C(r.value)?!1:r.value!==null&&typeof r.value=="object"),B=T.computed(()=>Array.isArray(r.value)),Y=T.computed(()=>r.path?r.path:r.keyName?r.keyName:"root"),d=T.computed(()=>r.expanded.has(Y.value)),k=T.computed(()=>r.keyName),J=T.computed(()=>B.value?"[":"{"),Z=T.computed(()=>B.value?"]":"}"),De=T.computed(()=>{if(!r.value)return"";const j=Object.keys(r.value).length;return B.value?j>0?` ${j} items `:" ":j>0?` ${j} keys `:" "}),ce=T.computed(()=>{const b=typeof r.value;return r.value===null?"json-node__value--null":b==="boolean"?"json-node__value--boolean":b==="number"||C(r.value)?"json-node__value--number":b==="string"?"json-node__value--string":""}),W=T.computed(()=>r.value===null?"null":typeof r.value=="boolean"||typeof r.value=="number"?String(r.value):C(r.value)?p(r.value):typeof r.value=="string"?`"${r.value}"`:String(r.value)),u=T.computed(()=>"Double-click to edit"),ee=b=>r.level===0?b:Y.value?`${Y.value}.${b}`:b,U=b=>{const j=Object.keys(r.value);return j.indexOf(b)===j.length-1},v=()=>{n("toggle-expand",Y.value)},te=()=>{r.level!==0&&(s.value=!0,A.value=r.keyName,T.nextTick(()=>{if(i.value){i.value.focus();const b=document.createRange();b.selectNodeContents(i.value);const j=window.getSelection();j?.removeAllRanges(),j?.addRange(b)}}))},Ee=()=>{g.value||(a.value=!0,r.value===null?I.value="null":C(r.value)?I.value="protected-number":typeof r.value=="string"?I.value="string":typeof r.value=="number"?I.value="number":typeof r.value=="boolean"&&(I.value="boolean"),C(r.value)?c.value=p(r.value):typeof r.value=="string"?c.value=r.value:c.value=String(r.value),T.nextTick(()=>{if(O.value){O.value.focus();const b=document.createRange();b.selectNodeContents(O.value);const j=window.getSelection();j?.removeAllRanges(),j?.addRange(b)}}))},Q=()=>{if(r.level===0||!s.value)return;const b=i.value?.innerText.trim()||"";if(!b){_e();return}if(b===r.keyName){s.value=!1;return}s.value=!1,n("update:key",Y.value,b)},Ce=()=>{if(a.value)try{let b;const j=O.value?.innerText.trim()||"";if(I.value==="string")j==="null"?b=null:j==="true"||j==="false"?b=j==="true":b=j;else if(I.value==="protected-number")b={__protected_number__:j};else if(j==="null")b=null;else if(j==="true"||j==="false")b=j==="true";else if(!isNaN(Number(j))&&j!==""){const Ie=Number(j);!Number.isSafeInteger(Ie)||j.length>15?b={__protected_number__:j}:b=Ie}else b=j;n("update:value",Y.value,b),a.value=!1}catch(b){console.error("Failed to parse value:",b),a.value=!1}},_e=()=>{s.value=!1,A.value=r.keyName},pe=()=>{a.value=!1,C(r.value)?c.value=p(r.value):typeof r.value=="string"?c.value=r.value:c.value=String(r.value)};return(b,j)=>{const Ie=T.resolveComponent("JsonNode",!0);return T.openBlock(),T.createElementBlock("div",An,[g.value?(T.openBlock(),T.createElementBlock("div",Rn,[T.createElementVNode("div",Sn,[b.keyName?(T.openBlock(),T.createElementBlock("span",{key:0,class:"json-node__key",contenteditable:s.value,onDblclick:te,onKeydown:[T.withKeys(T.withModifiers(Q,["prevent"]),["enter"]),T.withKeys(_e,["escape"])],onBlur:Q,ref_key:"keyRef",ref:i,title:"Double-click to edit key"},T.toDisplayString(s.value?A.value:`"${k.value}"`),41,Nn)):T.createCommentVNode("",!0),b.keyName?(T.openBlock(),T.createElementBlock("span",In,": ")):T.createCommentVNode("",!0),T.createElementVNode("span",{class:"json-node__bracket json-node__bracket--clickable",onClick:v,title:d.value?"Click to collapse":"Click to expand"},T.toDisplayString(J.value),9,On),d.value?T.createCommentVNode("",!0):(T.openBlock(),T.createElementBlock("span",{key:2,class:"json-node__collapsed-info",onClick:v,title:`Click to expand ${De.value.trim()}`},T.toDisplayString(De.value),9,ln)),d.value?T.createCommentVNode("",!0):(T.openBlock(),T.createElementBlock("span",{key:3,class:"json-node__bracket json-node__bracket--clickable",onClick:v,title:"Click to expand"},T.toDisplayString(Z.value),1)),!d.value&&!b.isLast?(T.openBlock(),T.createElementBlock("span",un,",")):T.createCommentVNode("",!0)]),d.value?(T.openBlock(),T.createElementBlock("div",Cn,[T.createElementVNode("div",cn,[(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(b.value,(me,oe)=>(T.openBlock(),T.createElementBlock("div",{key:oe,class:"json-node__child"},[T.createVNode(Ie,{value:me,"key-name":B.value?"":String(oe),level:b.level+1,path:ee(String(oe)),expanded:b.expanded,theme:b.theme,"onUpdate:value":j[0]||(j[0]=(w,P)=>b.$emit("update:value",w,P)),onToggleExpand:j[1]||(j[1]=w=>b.$emit("toggle-expand",w)),onCopy:j[2]||(j[2]=w=>b.$emit("copy",w)),"onUpdate:key":j[3]||(j[3]=(w,P)=>b.$emit("update:key",w,P)),"is-last":U(String(oe))},null,8,["value","key-name","level","path","expanded","theme","is-last"])]))),128))]),T.createElementVNode("div",_n,[T.createElementVNode("span",Ln,T.toDisplayString(Z.value),1),b.isLast?T.createCommentVNode("",!0):(T.openBlock(),T.createElementBlock("span",Dn,","))])])):T.createCommentVNode("",!0)])):(T.openBlock(),T.createElementBlock("div",pn,[b.keyName?(T.openBlock(),T.createElementBlock("span",{key:0,class:"json-node__key",contenteditable:s.value,onDblclick:te,onKeydown:[T.withKeys(T.withModifiers(Q,["prevent"]),["enter"]),T.withKeys(_e,["escape"])],onBlur:Q,ref_key:"keyRef",ref:i,title:"Double-click to edit key"},T.toDisplayString(s.value?A.value:`"${k.value}"`),41,dn)):T.createCommentVNode("",!0),b.keyName?(T.openBlock(),T.createElementBlock("span",Pn,": ")):T.createCommentVNode("",!0),T.createElementVNode("span",{class:T.normalizeClass(["json-node__value-wrapper",ce.value]),onDblclick:Ee,title:u.value},[T.createElementVNode("span",{class:"json-node__value",contenteditable:a.value,onKeydown:[T.withKeys(T.withModifiers(Ce,["prevent"]),["enter"]),T.withKeys(pe,["escape"])],onBlur:Ce,ref_key:"valueRef",ref:O},T.toDisplayString(a.value?c.value:W.value),41,Mn),b.isLast?T.createCommentVNode("",!0):(T.openBlock(),T.createElementBlock("span",Un,","))],42,hn)]))])}}}),Pt=(E,t)=>{const r=E.__vccOpts||E;for(const[n,s]of t)r[n]=s;return r},Bn=Pt(mn,[["__scopeId","data-v-1472a8af"]]),ME={name:"github-light",colors:{background:"#ffffff",surfaceBackground:"#f6f8fa",border:"#d0d7de",text:"#24292f",textSecondary:"#656d76",buttonBackground:"#f6f8fa",buttonBackgroundHover:"#f3f4f6",buttonBorder:"#d0d7de",buttonText:"#24292f",buttonPrimary:"#2da44e",buttonPrimaryHover:"#2c974b",success:"#1a7f37",successBackground:"#dafbe1",error:"#cf222e",errorBackground:"#ffebe9",syntaxString:"#0a3069",syntaxNumber:"#0969da",syntaxBoolean:"#8250df",syntaxNull:"#656d76",syntaxKey:"#0969da",syntaxBracket:"#24292f",hoverBackground:"#f6f8fa",selectionBackground:"rgba(9, 105, 218, 0.2)",collapsedBackground:"#ddf4ff",collapsedBackgroundHover:"#b6e3ff",collapsedText:"#0969da",indentLine:"#d0d7de"}},gn={"github-light":ME,"github-dark":{name:"github-dark",colors:{background:"#0d1117",surfaceBackground:"#161b22",border:"#30363d",text:"#e6edf3",textSecondary:"#7d8590",buttonBackground:"#21262d",buttonBackgroundHover:"#30363d",buttonBorder:"#30363d",buttonText:"#e6edf3",buttonPrimary:"#238636",buttonPrimaryHover:"#2ea043",success:"#3fb950",successBackground:"#0f2419",error:"#f85149",errorBackground:"#381921",syntaxString:"#a5d6ff",syntaxNumber:"#79c0ff",syntaxBoolean:"#d2a8ff",syntaxNull:"#7d8590",syntaxKey:"#79c0ff",syntaxBracket:"#e6edf3",hoverBackground:"#161b22",selectionBackground:"rgba(121, 192, 255, 0.2)",collapsedBackground:"#1c2128",collapsedBackgroundHover:"#2d333b",collapsedText:"#79c0ff",indentLine:"#30363d"}},"min-light":{name:"min-light",colors:{background:"#ffffff",surfaceBackground:"#fafafa",border:"#e5e5e5",text:"#333333",textSecondary:"#888888",buttonBackground:"#f8f8f8",buttonBackgroundHover:"#eeeeee",buttonBorder:"#e0e0e0",buttonText:"#333333",buttonPrimary:"#007acc",buttonPrimaryHover:"#005a9e",success:"#22c55e",successBackground:"#f0fdf4",error:"#ef4444",errorBackground:"#fef2f2",syntaxString:"#22c55e",syntaxNumber:"#3b82f6",syntaxBoolean:"#8b5cf6",syntaxNull:"#6b7280",syntaxKey:"#1f2937",syntaxBracket:"#374151",hoverBackground:"#f9f9f9",selectionBackground:"rgba(59, 130, 246, 0.2)",collapsedBackground:"#e0f2fe",collapsedBackgroundHover:"#bae6fd",collapsedText:"#0284c7",indentLine:"#e5e7eb"}},"slack-ochin":{name:"slack-ochin",colors:{background:"#fefbf6",surfaceBackground:"#faf6f0",border:"#e8d5b7",text:"#4a3b2a",textSecondary:"#8b7355",buttonBackground:"#f4ede4",buttonBackgroundHover:"#efe5d8",buttonBorder:"#e8d5b7",buttonText:"#4a3b2a",buttonPrimary:"#ff6b35",buttonPrimaryHover:"#e55a2b",success:"#ff9500",successBackground:"#fff8f0",error:"#d73502",errorBackground:"#ffeee8",syntaxString:"#d73502",syntaxNumber:"#ff6b35",syntaxBoolean:"#b7472a",syntaxNull:"#8b7355",syntaxKey:"#4a3b2a",syntaxBracket:"#6b5444",hoverBackground:"#f8f2eb",selectionBackground:"rgba(255, 107, 53, 0.2)",collapsedBackground:"#ffe8d6",collapsedBackgroundHover:"#ffd4b0",collapsedText:"#d73502",indentLine:"#e8d5b7"}}};function yn(E="github-light"){return gn[E]||ME}const Gn={class:"json-format__content"},Fn={key:0,class:"json-format__error"},Hn={key:1,class:"json-format__error"},bn={key:2,class:"json-format__viewer"},UE=Pt(T.defineComponent({name:"JsonFormat",__name:"index",props:{modelValue:{default:""},readonly:{type:Boolean,default:!1},maxDepth:{default:10},theme:{default:"github-light"}},emits:["update:modelValue","copy-success","copy-error","expand-all","collapse-all","compress"],setup(E,{expose:t,emit:r}){T.useCssVars(P=>({"1909cc0c":p.value.colors.background,"1d49ba8b":p.value.colors.text,e9bfef2c:p.value.colors.error,"16d23d38":p.value.colors.errorBackground}));const n=E,s=r,a=T.ref(null),A=T.ref(""),c=T.ref(new Set),I=T.ref(null),i=T.ref(""),O=T.ref(!1),C=T.computed(()=>A.value===""),p=T.computed(()=>yn(n.theme)),g=P=>{if(P==null)return P;if(Array.isArray(P))return P.map(m=>g(m));if(typeof P=="object"){const m={},h=Object.keys(P).sort();for(const y of h)m[y]=g(P[y]);return m}return P},B=T.computed(()=>{const P=I.value!==null?I.value:a.value;return!P||!O.value?P:g(P)}),Y=T.computed(()=>i.value?null:B.value),d=P=>{if(!P.trim()){a.value=null,A.value="",I.value=null,i.value="";return}try{let m=P;const h=/(:\s*|,\s*|\[\s*)-?\d{16,}/.test(m),y=/(:\s*|,\s*|\[\s*)-?\d+\.\d*0+\s*[,}\]\s]*/.test(m);if(!h&&!y)try{a.value=JSON.parse(m),A.value="",I.value=null,i.value="",T.nextTick(()=>{Y.value!==null&&Ee()});return}catch{}m=(M=>{let z="",re=!1,Ae=!1,le=0;for(;le<M.length;){const Ue=M[le];if(re)Ae?Ae=!1:Ue==="\\"?Ae=!0:Ue==='"'&&(re=!1),z+=Ue,le++;else if(Ue==='"')re=!0,z+=Ue,le++;else{const Se=M.slice(le);let q=Se.match(/^([:,\[\s]*)(-?\d{16,})(\s*[,\}\]\s]|$)/);if(q){z+=q[1]+'{"__protected_number__":"'+q[2]+'"}'+q[3],le+=q[0].length;continue}if(q=Se.match(/^([:,\[\s]*)(-?\d+\.\d*0+)(\s*[,\}\]\s]|$)/),q){z+=q[1]+'{"__protected_number__":"'+q[2]+'"}'+q[3],le+=q[0].length;continue}z+=Ue,le++}}return z})(m),a.value=JSON.parse(m),A.value="",I.value=null,i.value="",T.nextTick(()=>{Y.value!==null&&Ee()})}catch(m){A.value=m instanceof Error?m.message:"Unknown parsing error",a.value=null,I.value=null,i.value=""}},k=P=>{if(!P||!P.expression.trim()){ce();return}if(!a.value){i.value="No valid JSON data to filter";return}try{let m;if(P.type==="jsonpath")m=Ge({path:P.expression,json:a.value}),m.length===1&&P.expression.includes("$[")===!1&&!P.expression.endsWith("[*]")?I.value=m[0]:I.value=m;else if(P.type==="js"){const{proxyData:h,indexMap:y}=J(a.value),M=new Function("$",`
|
|
1
|
+
(function(rt,T){typeof exports=="object"&&typeof module<"u"?T(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],T):(rt=typeof globalThis<"u"?globalThis:rt||self,T(rt.LoneFormat={},rt.Vue))})(this,function(rt,T){"use strict";class Qr{add(t,r,n){if(typeof arguments[0]!="string")for(let s in arguments[0])this.add(s,arguments[0][s],arguments[1]);else(Array.isArray(t)?t:[t]).forEach(function(s){this[s]=this[s]||[],r&&this[s][n?"unshift":"push"](r)},this)}run(t,r){this[t]=this[t]||[],this[t].forEach(function(n){n.call(r&&r.context?r.context:r,r)})}}class Zr{constructor(t){this.jsep=t,this.registered={}}register(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];r.forEach(s=>{if(typeof s!="object"||!s.name||!s.init)throw new Error("Invalid JSEP plugin format");this.registered[s.name]||(s.init(this.jsep),this.registered[s.name]=s)})}}class V{static get version(){return"1.4.0"}static toString(){return"JavaScript Expression Parser (JSEP) v"+V.version}static addUnaryOp(t){return V.max_unop_len=Math.max(t.length,V.max_unop_len),V.unary_ops[t]=1,V}static addBinaryOp(t,r,n){return V.max_binop_len=Math.max(t.length,V.max_binop_len),V.binary_ops[t]=r,n?V.right_associative.add(t):V.right_associative.delete(t),V}static addIdentifierChar(t){return V.additional_identifier_chars.add(t),V}static addLiteral(t,r){return V.literals[t]=r,V}static removeUnaryOp(t){return delete V.unary_ops[t],t.length===V.max_unop_len&&(V.max_unop_len=V.getMaxKeyLen(V.unary_ops)),V}static removeAllUnaryOps(){return V.unary_ops={},V.max_unop_len=0,V}static removeIdentifierChar(t){return V.additional_identifier_chars.delete(t),V}static removeBinaryOp(t){return delete V.binary_ops[t],t.length===V.max_binop_len&&(V.max_binop_len=V.getMaxKeyLen(V.binary_ops)),V.right_associative.delete(t),V}static removeAllBinaryOps(){return V.binary_ops={},V.max_binop_len=0,V}static removeLiteral(t){return delete V.literals[t],V}static removeAllLiterals(){return V.literals={},V}get char(){return this.expr.charAt(this.index)}get code(){return this.expr.charCodeAt(this.index)}constructor(t){this.expr=t,this.index=0}static parse(t){return new V(t).parse()}static getMaxKeyLen(t){return Math.max(0,...Object.keys(t).map(r=>r.length))}static isDecimalDigit(t){return t>=48&&t<=57}static binaryPrecedence(t){return V.binary_ops[t]||0}static isIdentifierStart(t){return t>=65&&t<=90||t>=97&&t<=122||t>=128&&!V.binary_ops[String.fromCharCode(t)]||V.additional_identifier_chars.has(String.fromCharCode(t))}static isIdentifierPart(t){return V.isIdentifierStart(t)||V.isDecimalDigit(t)}throwError(t){const r=new Error(t+" at character "+this.index);throw r.index=this.index,r.description=t,r}runHook(t,r){if(V.hooks[t]){const n={context:this,node:r};return V.hooks.run(t,n),n.node}return r}searchHook(t){if(V.hooks[t]){const r={context:this};return V.hooks[t].find(function(n){return n.call(r.context,r),r.node}),r.node}}gobbleSpaces(){let t=this.code;for(;t===V.SPACE_CODE||t===V.TAB_CODE||t===V.LF_CODE||t===V.CR_CODE;)t=this.expr.charCodeAt(++this.index);this.runHook("gobble-spaces")}parse(){this.runHook("before-all");const t=this.gobbleExpressions(),r=t.length===1?t[0]:{type:V.COMPOUND,body:t};return this.runHook("after-all",r)}gobbleExpressions(t){let r=[],n,s;for(;this.index<this.expr.length;)if(n=this.code,n===V.SEMCOL_CODE||n===V.COMMA_CODE)this.index++;else if(s=this.gobbleExpression())r.push(s);else if(this.index<this.expr.length){if(n===t)break;this.throwError('Unexpected "'+this.char+'"')}return r}gobbleExpression(){const t=this.searchHook("gobble-expression")||this.gobbleBinaryExpression();return this.gobbleSpaces(),this.runHook("after-expression",t)}gobbleBinaryOp(){this.gobbleSpaces();let t=this.expr.substr(this.index,V.max_binop_len),r=t.length;for(;r>0;){if(V.binary_ops.hasOwnProperty(t)&&(!V.isIdentifierStart(this.code)||this.index+t.length<this.expr.length&&!V.isIdentifierPart(this.expr.charCodeAt(this.index+t.length))))return this.index+=r,t;t=t.substr(0,--r)}return!1}gobbleBinaryExpression(){let t,r,n,s,a,A,C,I,i;if(A=this.gobbleToken(),!A||(r=this.gobbleBinaryOp(),!r))return A;for(a={value:r,prec:V.binaryPrecedence(r),right_a:V.right_associative.has(r)},C=this.gobbleToken(),C||this.throwError("Expected expression after "+r),s=[A,a,C];r=this.gobbleBinaryOp();){if(n=V.binaryPrecedence(r),n===0){this.index-=r.length;break}a={value:r,prec:n,right_a:V.right_associative.has(r)},i=r;const O=u=>a.right_a&&u.right_a?n>u.prec:n<=u.prec;for(;s.length>2&&O(s[s.length-2]);)C=s.pop(),r=s.pop().value,A=s.pop(),t={type:V.BINARY_EXP,operator:r,left:A,right:C},s.push(t);t=this.gobbleToken(),t||this.throwError("Expected expression after "+i),s.push(a,t)}for(I=s.length-1,t=s[I];I>1;)t={type:V.BINARY_EXP,operator:s[I-1].value,left:s[I-2],right:t},I-=2;return t}gobbleToken(){let t,r,n,s;if(this.gobbleSpaces(),s=this.searchHook("gobble-token"),s)return this.runHook("after-token",s);if(t=this.code,V.isDecimalDigit(t)||t===V.PERIOD_CODE)return this.gobbleNumericLiteral();if(t===V.SQUOTE_CODE||t===V.DQUOTE_CODE)s=this.gobbleStringLiteral();else if(t===V.OBRACK_CODE)s=this.gobbleArray();else{for(r=this.expr.substr(this.index,V.max_unop_len),n=r.length;n>0;){if(V.unary_ops.hasOwnProperty(r)&&(!V.isIdentifierStart(this.code)||this.index+r.length<this.expr.length&&!V.isIdentifierPart(this.expr.charCodeAt(this.index+r.length)))){this.index+=n;const a=this.gobbleToken();return a||this.throwError("missing unaryOp argument"),this.runHook("after-token",{type:V.UNARY_EXP,operator:r,argument:a,prefix:!0})}r=r.substr(0,--n)}V.isIdentifierStart(t)?(s=this.gobbleIdentifier(),V.literals.hasOwnProperty(s.name)?s={type:V.LITERAL,value:V.literals[s.name],raw:s.name}:s.name===V.this_str&&(s={type:V.THIS_EXP})):t===V.OPAREN_CODE&&(s=this.gobbleGroup())}return s?(s=this.gobbleTokenProperty(s),this.runHook("after-token",s)):this.runHook("after-token",!1)}gobbleTokenProperty(t){this.gobbleSpaces();let r=this.code;for(;r===V.PERIOD_CODE||r===V.OBRACK_CODE||r===V.OPAREN_CODE||r===V.QUMARK_CODE;){let n;if(r===V.QUMARK_CODE){if(this.expr.charCodeAt(this.index+1)!==V.PERIOD_CODE)break;n=!0,this.index+=2,this.gobbleSpaces(),r=this.code}this.index++,r===V.OBRACK_CODE?(t={type:V.MEMBER_EXP,computed:!0,object:t,property:this.gobbleExpression()},t.property||this.throwError('Unexpected "'+this.char+'"'),this.gobbleSpaces(),r=this.code,r!==V.CBRACK_CODE&&this.throwError("Unclosed ["),this.index++):r===V.OPAREN_CODE?t={type:V.CALL_EXP,arguments:this.gobbleArguments(V.CPAREN_CODE),callee:t}:(r===V.PERIOD_CODE||n)&&(n&&this.index--,this.gobbleSpaces(),t={type:V.MEMBER_EXP,computed:!1,object:t,property:this.gobbleIdentifier()}),n&&(t.optional=!0),this.gobbleSpaces(),r=this.code}return t}gobbleNumericLiteral(){let t="",r,n;for(;V.isDecimalDigit(this.code);)t+=this.expr.charAt(this.index++);if(this.code===V.PERIOD_CODE)for(t+=this.expr.charAt(this.index++);V.isDecimalDigit(this.code);)t+=this.expr.charAt(this.index++);if(r=this.char,r==="e"||r==="E"){for(t+=this.expr.charAt(this.index++),r=this.char,(r==="+"||r==="-")&&(t+=this.expr.charAt(this.index++));V.isDecimalDigit(this.code);)t+=this.expr.charAt(this.index++);V.isDecimalDigit(this.expr.charCodeAt(this.index-1))||this.throwError("Expected exponent ("+t+this.char+")")}return n=this.code,V.isIdentifierStart(n)?this.throwError("Variable names cannot start with a number ("+t+this.char+")"):(n===V.PERIOD_CODE||t.length===1&&t.charCodeAt(0)===V.PERIOD_CODE)&&this.throwError("Unexpected period"),{type:V.LITERAL,value:parseFloat(t),raw:t}}gobbleStringLiteral(){let t="";const r=this.index,n=this.expr.charAt(this.index++);let s=!1;for(;this.index<this.expr.length;){let a=this.expr.charAt(this.index++);if(a===n){s=!0;break}else if(a==="\\")switch(a=this.expr.charAt(this.index++),a){case"n":t+=`
|
|
2
|
+
`;break;case"r":t+="\r";break;case"t":t+=" ";break;case"b":t+="\b";break;case"f":t+="\f";break;case"v":t+="\v";break;default:t+=a}else t+=a}return s||this.throwError('Unclosed quote after "'+t+'"'),{type:V.LITERAL,value:t,raw:this.expr.substring(r,this.index)}}gobbleIdentifier(){let t=this.code,r=this.index;for(V.isIdentifierStart(t)?this.index++:this.throwError("Unexpected "+this.char);this.index<this.expr.length&&(t=this.code,V.isIdentifierPart(t));)this.index++;return{type:V.IDENTIFIER,name:this.expr.slice(r,this.index)}}gobbleArguments(t){const r=[];let n=!1,s=0;for(;this.index<this.expr.length;){this.gobbleSpaces();let a=this.code;if(a===t){n=!0,this.index++,t===V.CPAREN_CODE&&s&&s>=r.length&&this.throwError("Unexpected token "+String.fromCharCode(t));break}else if(a===V.COMMA_CODE){if(this.index++,s++,s!==r.length){if(t===V.CPAREN_CODE)this.throwError("Unexpected token ,");else if(t===V.CBRACK_CODE)for(let A=r.length;A<s;A++)r.push(null)}}else if(r.length!==s&&s!==0)this.throwError("Expected comma");else{const A=this.gobbleExpression();(!A||A.type===V.COMPOUND)&&this.throwError("Expected comma"),r.push(A)}}return n||this.throwError("Expected "+String.fromCharCode(t)),r}gobbleGroup(){this.index++;let t=this.gobbleExpressions(V.CPAREN_CODE);if(this.code===V.CPAREN_CODE)return this.index++,t.length===1?t[0]:t.length?{type:V.SEQUENCE_EXP,expressions:t}:!1;this.throwError("Unclosed (")}gobbleArray(){return this.index++,{type:V.ARRAY_EXP,elements:this.gobbleArguments(V.CBRACK_CODE)}}}const jr=new Qr;Object.assign(V,{hooks:jr,plugins:new Zr(V),COMPOUND:"Compound",SEQUENCE_EXP:"SequenceExpression",IDENTIFIER:"Identifier",MEMBER_EXP:"MemberExpression",LITERAL:"Literal",THIS_EXP:"ThisExpression",CALL_EXP:"CallExpression",UNARY_EXP:"UnaryExpression",BINARY_EXP:"BinaryExpression",ARRAY_EXP:"ArrayExpression",TAB_CODE:9,LF_CODE:10,CR_CODE:13,SPACE_CODE:32,PERIOD_CODE:46,COMMA_CODE:44,SQUOTE_CODE:39,DQUOTE_CODE:34,OPAREN_CODE:40,CPAREN_CODE:41,OBRACK_CODE:91,CBRACK_CODE:93,QUMARK_CODE:63,SEMCOL_CODE:59,COLON_CODE:58,unary_ops:{"-":1,"!":1,"~":1,"+":1},binary_ops:{"||":1,"??":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10,"**":11},right_associative:new Set(["**"]),additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"}),V.max_unop_len=V.getMaxKeyLen(V.unary_ops),V.max_binop_len=V.getMaxKeyLen(V.binary_ops);const ot=E=>new V(E).parse(),zr=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(V).filter(E=>!zr.includes(E)&&ot[E]===void 0).forEach(E=>{ot[E]=V[E]}),ot.Jsep=V;const en="ConditionalExpression";var tn={name:"ternary",init(E){E.hooks.add("after-expression",function(r){if(r.node&&this.code===E.QUMARK_CODE){this.index++;const n=r.node,s=this.gobbleExpression();if(s||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===E.COLON_CODE){this.index++;const a=this.gobbleExpression();if(a||this.throwError("Expected expression"),r.node={type:en,test:n,consequent:s,alternate:a},n.operator&&E.binary_ops[n.operator]<=.9){let A=n;for(;A.right.operator&&E.binary_ops[A.right.operator]<=.9;)A=A.right;r.node.test=A.right,A.right=r.node,r.node=n}}else this.throwError("Expected :")}})}};ot.plugins.register(tn);const hE=47,En=92;var rn={name:"regex",init(E){E.hooks.add("gobble-token",function(r){if(this.code===hE){const n=++this.index;let s=!1;for(;this.index<this.expr.length;){if(this.code===hE&&!s){const a=this.expr.slice(n,this.index);let A="";for(;++this.index<this.expr.length;){const I=this.code;if(I>=97&&I<=122||I>=65&&I<=90||I>=48&&I<=57)A+=this.char;else break}let C;try{C=new RegExp(a,A)}catch(I){this.throwError(I.message)}return r.node={type:E.LITERAL,value:C,raw:this.expr.slice(n-1,this.index)},r.node=this.gobbleTokenProperty(r.node),r.node}this.code===E.OBRACK_CODE?s=!0:s&&this.code===E.CBRACK_CODE&&(s=!1),this.index+=this.code===En?2:1}this.throwError("Unclosed Regex")}})}};const kt=43,dt={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|=","||=","&&=","??="]),updateOperators:[kt,45],assignmentPrecedence:.9,init(E){const t=[E.IDENTIFIER,E.MEMBER_EXP];dt.assignmentOperators.forEach(n=>E.addBinaryOp(n,dt.assignmentPrecedence,!0)),E.hooks.add("gobble-token",function(s){const a=this.code;dt.updateOperators.some(A=>A===a&&A===this.expr.charCodeAt(this.index+1))&&(this.index+=2,s.node={type:"UpdateExpression",operator:a===kt?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},(!s.node.argument||!t.includes(s.node.argument.type))&&this.throwError(`Unexpected ${s.node.operator}`))}),E.hooks.add("after-token",function(s){if(s.node){const a=this.code;dt.updateOperators.some(A=>A===a&&A===this.expr.charCodeAt(this.index+1))&&(t.includes(s.node.type)||this.throwError(`Unexpected ${s.node.operator}`),this.index+=2,s.node={type:"UpdateExpression",operator:a===kt?"++":"--",argument:s.node,prefix:!1})}}),E.hooks.add("after-expression",function(s){s.node&&r(s.node)});function r(n){dt.assignmentOperators.has(n.operator)?(n.type="AssignmentExpression",r(n.left),r(n.right)):n.operator||Object.values(n).forEach(s=>{s&&typeof s=="object"&&r(s)})}}};ot.plugins.register(rn,dt),ot.addUnaryOp("typeof"),ot.addLiteral("null",null),ot.addLiteral("undefined",void 0);const nn=new Set(["constructor","__proto__","__defineGetter__","__defineSetter__"]),Fe={evalAst(E,t){switch(E.type){case"BinaryExpression":case"LogicalExpression":return Fe.evalBinaryExpression(E,t);case"Compound":return Fe.evalCompound(E,t);case"ConditionalExpression":return Fe.evalConditionalExpression(E,t);case"Identifier":return Fe.evalIdentifier(E,t);case"Literal":return Fe.evalLiteral(E,t);case"MemberExpression":return Fe.evalMemberExpression(E,t);case"UnaryExpression":return Fe.evalUnaryExpression(E,t);case"ArrayExpression":return Fe.evalArrayExpression(E,t);case"CallExpression":return Fe.evalCallExpression(E,t);case"AssignmentExpression":return Fe.evalAssignmentExpression(E,t);default:throw SyntaxError("Unexpected expression",E)}},evalBinaryExpression(E,t){return{"||":(n,s)=>n||s(),"&&":(n,s)=>n&&s(),"|":(n,s)=>n|s(),"^":(n,s)=>n^s(),"&":(n,s)=>n&s(),"==":(n,s)=>n==s(),"!=":(n,s)=>n!=s(),"===":(n,s)=>n===s(),"!==":(n,s)=>n!==s(),"<":(n,s)=>n<s(),">":(n,s)=>n>s(),"<=":(n,s)=>n<=s(),">=":(n,s)=>n>=s(),"<<":(n,s)=>n<<s(),">>":(n,s)=>n>>s(),">>>":(n,s)=>n>>>s(),"+":(n,s)=>n+s(),"-":(n,s)=>n-s(),"*":(n,s)=>n*s(),"/":(n,s)=>n/s(),"%":(n,s)=>n%s()}[E.operator](Fe.evalAst(E.left,t),()=>Fe.evalAst(E.right,t))},evalCompound(E,t){let r;for(let n=0;n<E.body.length;n++){E.body[n].type==="Identifier"&&["var","let","const"].includes(E.body[n].name)&&E.body[n+1]&&E.body[n+1].type==="AssignmentExpression"&&(n+=1);const s=E.body[n];r=Fe.evalAst(s,t)}return r},evalConditionalExpression(E,t){return Fe.evalAst(E.test,t)?Fe.evalAst(E.consequent,t):Fe.evalAst(E.alternate,t)},evalIdentifier(E,t){if(Object.hasOwn(t,E.name))return t[E.name];throw ReferenceError(`${E.name} is not defined`)},evalLiteral(E){return E.value},evalMemberExpression(E,t){const r=String(E.computed?Fe.evalAst(E.property):E.property.name),n=Fe.evalAst(E.object,t);if(n==null)throw TypeError(`Cannot read properties of ${n} (reading '${r}')`);if(!Object.hasOwn(n,r)&&nn.has(r))throw TypeError(`Cannot read properties of ${n} (reading '${r}')`);const s=n[r];return typeof s=="function"?s.bind(n):s},evalUnaryExpression(E,t){return{"-":n=>-Fe.evalAst(n,t),"!":n=>!Fe.evalAst(n,t),"~":n=>~Fe.evalAst(n,t),"+":n=>+Fe.evalAst(n,t),typeof:n=>typeof Fe.evalAst(n,t)}[E.operator](E.argument)},evalArrayExpression(E,t){return E.elements.map(r=>Fe.evalAst(r,t))},evalCallExpression(E,t){const r=E.arguments.map(s=>Fe.evalAst(s,t));return Fe.evalAst(E.callee,t)(...r)},evalAssignmentExpression(E,t){if(E.left.type!=="Identifier")throw SyntaxError("Invalid left-hand side in assignment");const r=E.left.name,n=Fe.evalAst(E.right,t);return t[r]=n,t[r]}};class sn{constructor(t){this.code=t,this.ast=ot(this.code)}runInNewContext(t){const r=Object.assign(Object.create(null),t);return Fe.evalAst(this.ast,r)}}function St(E,t){return E=E.slice(),E.push(t),E}function $t(E,t){return t=t.slice(),t.unshift(E),t}class Tn extends Error{constructor(t){super('JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'),this.avoidNew=!0,this.value=t,this.name="NewError"}}function Ge(E,t,r,n,s){if(!(this instanceof Ge))try{return new Ge(E,t,r,n,s)}catch(A){if(!A.avoidNew)throw A;return A.value}typeof E=="string"&&(s=n,n=r,r=t,t=E,E=null);const a=E&&typeof E=="object";if(E=E||{},this.json=E.json||r,this.path=E.path||t,this.resultType=E.resultType||"value",this.flatten=E.flatten||!1,this.wrap=Object.hasOwn(E,"wrap")?E.wrap:!0,this.sandbox=E.sandbox||{},this.eval=E.eval===void 0?"safe":E.eval,this.ignoreEvalErrors=typeof E.ignoreEvalErrors>"u"?!1:E.ignoreEvalErrors,this.parent=E.parent||null,this.parentProperty=E.parentProperty||null,this.callback=E.callback||n||null,this.otherTypeCallback=E.otherTypeCallback||s||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},E.autostart!==!1){const A={path:a?E.path:t};a?"json"in E&&(A.json=E.json):A.json=r;const C=this.evaluate(A);if(!C||typeof C!="object")throw new Tn(C);return C}}Ge.prototype.evaluate=function(E,t,r,n){let s=this.parent,a=this.parentProperty,{flatten:A,wrap:C}=this;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,r=r||this.callback,this.currOtherTypeCallback=n||this.otherTypeCallback,t=t||this.json,E=E||this.path,E&&typeof E=="object"&&!Array.isArray(E)){if(!E.path&&E.path!=="")throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!Object.hasOwn(E,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');({json:t}=E),A=Object.hasOwn(E,"flatten")?E.flatten:A,this.currResultType=Object.hasOwn(E,"resultType")?E.resultType:this.currResultType,this.currSandbox=Object.hasOwn(E,"sandbox")?E.sandbox:this.currSandbox,C=Object.hasOwn(E,"wrap")?E.wrap:C,this.currEval=Object.hasOwn(E,"eval")?E.eval:this.currEval,r=Object.hasOwn(E,"callback")?E.callback:r,this.currOtherTypeCallback=Object.hasOwn(E,"otherTypeCallback")?E.otherTypeCallback:this.currOtherTypeCallback,s=Object.hasOwn(E,"parent")?E.parent:s,a=Object.hasOwn(E,"parentProperty")?E.parentProperty:a,E=E.path}if(s=s||null,a=a||null,Array.isArray(E)&&(E=Ge.toPathString(E)),!E&&E!==""||!t)return;const I=Ge.toPathArray(E);I[0]==="$"&&I.length>1&&I.shift(),this._hasParentSelector=null;const i=this._trace(I,t,["$"],s,a,r).filter(function(O){return O&&!O.isParentSelector});return i.length?!C&&i.length===1&&!i[0].hasArrExpr?this._getPreferredOutput(i[0]):i.reduce((O,u)=>{const d=this._getPreferredOutput(u);return A&&Array.isArray(d)?O=O.concat(d):O.push(d),O},[]):C?[]:void 0},Ge.prototype._getPreferredOutput=function(E){const t=this.currResultType;switch(t){case"all":{const r=Array.isArray(E.path)?E.path:Ge.toPathArray(E.path);return E.pointer=Ge.toPointer(r),E.path=typeof E.path=="string"?E.path:Ge.toPathString(E.path),E}case"value":case"parent":case"parentProperty":return E[t];case"path":return Ge.toPathString(E[t]);case"pointer":return Ge.toPointer(E.path);default:throw new TypeError("Unknown result type")}},Ge.prototype._handleCallback=function(E,t,r){if(t){const n=this._getPreferredOutput(E);E.path=typeof E.path=="string"?E.path:Ge.toPathString(E.path),t(n,r,E)}},Ge.prototype._trace=function(E,t,r,n,s,a,A,C){let I;if(!E.length)return I={path:r,value:t,parent:n,parentProperty:s,hasArrExpr:A},this._handleCallback(I,a,"value"),I;const i=E[0],O=E.slice(1),u=[];function d(U){Array.isArray(U)?U.forEach(M=>{u.push(M)}):u.push(U)}if((typeof i!="string"||C)&&t&&Object.hasOwn(t,i))d(this._trace(O,t[i],St(r,i),t,i,a,A));else if(i==="*")this._walk(t,U=>{d(this._trace(O,t[U],St(r,U),t,U,a,!0,!0))});else if(i==="..")d(this._trace(O,t,r,n,s,a,A)),this._walk(t,U=>{typeof t[U]=="object"&&d(this._trace(E.slice(),t[U],St(r,U),t,U,a,!0))});else{if(i==="^")return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:O,isParentSelector:!0};if(i==="~")return I={path:St(r,i),value:s,parent:n,parentProperty:null},this._handleCallback(I,a,"property"),I;if(i==="$")d(this._trace(O,t,r,null,null,a,A));else if(/^(-?\d*):(-?\d*):?(\d*)$/u.test(i))d(this._slice(i,O,t,r,n,s,a));else if(i.indexOf("?(")===0){if(this.currEval===!1)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");const U=i.replace(/^\?\((.*?)\)$/u,"$1"),M=/@.?([^?]*)[['](\??\(.*?\))(?!.\)\])[\]']/gu.exec(U);M?this._walk(t,w=>{const P=[M[2]],J=M[1]?t[w][M[1]]:t[w];this._trace(P,J,r,n,s,a,!0).length>0&&d(this._trace(O,t[w],St(r,w),t,w,a,!0))}):this._walk(t,w=>{this._eval(U,t[w],w,r,n,s)&&d(this._trace(O,t[w],St(r,w),t,w,a,!0))})}else if(i[0]==="("){if(this.currEval===!1)throw new Error("Eval [(expr)] prevented in JSONPath expression.");d(this._trace($t(this._eval(i,t,r.at(-1),r.slice(0,-1),n,s),O),t,r,n,s,a,A))}else if(i[0]==="@"){let U=!1;const M=i.slice(1,-2);switch(M){case"scalar":(!t||!["object","function"].includes(typeof t))&&(U=!0);break;case"boolean":case"string":case"undefined":case"function":typeof t===M&&(U=!0);break;case"integer":Number.isFinite(t)&&!(t%1)&&(U=!0);break;case"number":Number.isFinite(t)&&(U=!0);break;case"nonFinite":typeof t=="number"&&!Number.isFinite(t)&&(U=!0);break;case"object":t&&typeof t===M&&(U=!0);break;case"array":Array.isArray(t)&&(U=!0);break;case"other":U=this.currOtherTypeCallback(t,r,n,s);break;case"null":t===null&&(U=!0);break;default:throw new TypeError("Unknown value type "+M)}if(U)return I={path:r,value:t,parent:n,parentProperty:s},this._handleCallback(I,a,"value"),I}else if(i[0]==="`"&&t&&Object.hasOwn(t,i.slice(1))){const U=i.slice(1);d(this._trace(O,t[U],St(r,U),t,U,a,A,!0))}else if(i.includes(",")){const U=i.split(",");for(const M of U)d(this._trace($t(M,O),t,r,n,s,a,!0))}else!C&&t&&Object.hasOwn(t,i)&&d(this._trace(O,t[i],St(r,i),t,i,a,A,!0))}if(this._hasParentSelector)for(let U=0;U<u.length;U++){const M=u[U];if(M&&M.isParentSelector){const w=this._trace(M.expr,t,M.path,n,s,a,A);if(Array.isArray(w)){u[U]=w[0];const P=w.length;for(let J=1;J<P;J++)U++,u.splice(U,0,w[J])}else u[U]=w}}return u},Ge.prototype._walk=function(E,t){if(Array.isArray(E)){const r=E.length;for(let n=0;n<r;n++)t(n)}else E&&typeof E=="object"&&Object.keys(E).forEach(r=>{t(r)})},Ge.prototype._slice=function(E,t,r,n,s,a,A){if(!Array.isArray(r))return;const C=r.length,I=E.split(":"),i=I[2]&&Number.parseInt(I[2])||1;let O=I[0]&&Number.parseInt(I[0])||0,u=I[1]&&Number.parseInt(I[1])||C;O=O<0?Math.max(0,O+C):Math.min(C,O),u=u<0?Math.max(0,u+C):Math.min(C,u);const d=[];for(let U=O;U<u;U+=i)this._trace($t(U,t),r,n,s,a,A,!0).forEach(w=>{d.push(w)});return d},Ge.prototype._eval=function(E,t,r,n,s,a){this.currSandbox._$_parentProperty=a,this.currSandbox._$_parent=s,this.currSandbox._$_property=r,this.currSandbox._$_root=this.json,this.currSandbox._$_v=t;const A=E.includes("@path");A&&(this.currSandbox._$_path=Ge.toPathString(n.concat([r])));const C=this.currEval+"Script:"+E;if(!Ge.cache[C]){let I=E.replaceAll("@parentProperty","_$_parentProperty").replaceAll("@parent","_$_parent").replaceAll("@property","_$_property").replaceAll("@root","_$_root").replaceAll(/@([.\s)[])/gu,"_$_v$1");if(A&&(I=I.replaceAll("@path","_$_path")),this.currEval==="safe"||this.currEval===!0||this.currEval===void 0)Ge.cache[C]=new this.safeVm.Script(I);else if(this.currEval==="native")Ge.cache[C]=new this.vm.Script(I);else if(typeof this.currEval=="function"&&this.currEval.prototype&&Object.hasOwn(this.currEval.prototype,"runInNewContext")){const i=this.currEval;Ge.cache[C]=new i(I)}else if(typeof this.currEval=="function")Ge.cache[C]={runInNewContext:i=>this.currEval(I,i)};else throw new TypeError(`Unknown "eval" property "${this.currEval}"`)}try{return Ge.cache[C].runInNewContext(this.currSandbox)}catch(I){if(this.ignoreEvalErrors)return!1;throw new Error("jsonPath: "+I.message+": "+E)}},Ge.cache={},Ge.toPathString=function(E){const t=E,r=t.length;let n="$";for(let s=1;s<r;s++)/^(~|\^|@.*?\(\))$/u.test(t[s])||(n+=/^[0-9*]+$/u.test(t[s])?"["+t[s]+"]":"['"+t[s]+"']");return n},Ge.toPointer=function(E){const t=E,r=t.length;let n="";for(let s=1;s<r;s++)/^(~|\^|@.*?\(\))$/u.test(t[s])||(n+="/"+t[s].toString().replaceAll("~","~0").replaceAll("/","~1"));return n},Ge.toPathArray=function(E){const{cache:t}=Ge;if(t[E])return t[E].concat();const r=[],s=E.replaceAll(/@(?:null|boolean|number|string|integer|undefined|nonFinite|scalar|array|object|function|other)\(\)/gu,";$&;").replaceAll(/[['](\??\(.*?\))[\]'](?!.\])/gu,function(a,A){return"[#"+(r.push(A)-1)+"]"}).replaceAll(/\[['"]([^'\]]*)['"]\]/gu,function(a,A){return"['"+A.replaceAll(".","%@%").replaceAll("~","%%@@%%")+"']"}).replaceAll("~",";~;").replaceAll(/['"]?\.['"]?(?![^[]*\])|\[['"]?/gu,";").replaceAll("%@%",".").replaceAll("%%@@%%","~").replaceAll(/(?:;)?(\^+)(?:;)?/gu,function(a,A){return";"+A.split("").join(";")+";"}).replaceAll(/;;;|;;/gu,";..;").replaceAll(/;$|'?\]|'$/gu,"").split(";").map(function(a){const A=a.match(/#(\d+)/u);return!A||!A[1]?a:r[A[1]]});return t[E]=s,t[E].concat()},Ge.prototype.safeVm={Script:sn};const on=function(E,t,r){const n=E.length;for(let s=0;s<n;s++){const a=E[s];r(a)&&t.push(E.splice(s--,1)[0])}};class an{constructor(t){this.code=t}runInNewContext(t){let r=this.code;const n=Object.keys(t),s=[];on(n,s,i=>typeof t[i]=="function");const a=n.map(i=>t[i]);r=s.reduce((i,O)=>{let u=t[O].toString();return/function/u.test(u)||(u="function "+u),"var "+O+"="+u+";"+i},"")+r,!/(['"])use strict\1/u.test(r)&&!n.includes("arguments")&&(r="var arguments = undefined;"+r),r=r.replace(/;\s*$/u,"");const C=r.lastIndexOf(";"),I=C!==-1?r.slice(0,C+1)+" return "+r.slice(C+1):" return "+r;return new Function(...n,I)(...a)}}Ge.prototype.vm={Script:an};const An={class:"json-node"},Rn={key:0,class:"json-node__container"},Sn={class:"json-node__line"},Nn=["contenteditable","onKeydown"],In={key:1,class:"json-node__colon"},On=["title"],ln=["title"],un={key:4,class:"json-node__comma"},Cn={key:0,class:"json-node__children"},cn={class:"json-node__children-content"},_n={class:"json-node__line json-node__closing-bracket"},Ln={class:"json-node__bracket"},Dn={key:0,class:"json-node__comma"},pn={key:1,class:"json-node__primitive"},dn=["contenteditable","onKeydown"],Pn={key:1,class:"json-node__colon"},hn=["title"],Mn=["contenteditable","onKeydown"],Un={key:0,class:"json-node__comma"},mn=T.defineComponent({name:"JsonNode",__name:"JsonNode",props:{value:{},keyName:{},level:{},path:{default:""},expanded:{},isLast:{type:Boolean,default:!1},theme:{}},emits:["update:value","toggle-expand","copy","update:key"],setup(E,{emit:t}){T.useCssVars(Y=>({"2a18b018":Y.level,"58a14b93":Y.theme.colors.syntaxKey,"46fe1b3e":Y.theme.colors.hoverBackground,fbe2c048:Y.theme.colors.syntaxBracket,"4bd524bb":Y.theme.colors.collapsedText,"3308d23c":Y.theme.colors.collapsedBackground,"36380c60":Y.theme.colors.collapsedBackgroundHover,"0892365d":Y.theme.colors.syntaxString,"0015b195":Y.theme.colors.syntaxNumber,"7db95f5c":Y.theme.colors.syntaxBoolean,"88ec825a":Y.theme.colors.syntaxNull,"537157f7":Y.theme.colors.background,"3cee3331":Y.theme.colors.selectionBackground,"81323cee":Y.theme.colors.indentLine}));const r=E,n=t,s=T.ref(!1),a=T.ref(!1),A=T.ref(""),C=T.ref(""),I=T.ref("string"),i=T.ref(null),O=T.ref(null),u=Y=>Y!==null&&typeof Y=="object"&&!Array.isArray(Y)&&"__protected_number__"in Y&&Object.keys(Y).length===1,d=Y=>u(Y)?Y.__protected_number__:"",U=T.computed(()=>u(r.value)?!1:r.value!==null&&typeof r.value=="object"),M=T.computed(()=>Array.isArray(r.value)),w=T.computed(()=>r.path?r.path:r.keyName?r.keyName:"root"),P=T.computed(()=>r.expanded.has(w.value)),J=T.computed(()=>r.keyName),Z=T.computed(()=>M.value?"[":"{"),z=T.computed(()=>M.value?"]":"}"),De=T.computed(()=>{if(!r.value)return"";const j=Object.keys(r.value).length;return M.value?j>0?` ${j} items `:" ":j>0?` ${j} keys `:" "}),Ce=T.computed(()=>{const Y=typeof r.value;return r.value===null?"json-node__value--null":Y==="boolean"?"json-node__value--boolean":Y==="number"||u(r.value)?"json-node__value--number":Y==="string"?"json-node__value--string":""}),X=T.computed(()=>r.value===null?"null":typeof r.value=="boolean"||typeof r.value=="number"?String(r.value):u(r.value)?d(r.value):typeof r.value=="string"?`"${r.value}"`:String(r.value)),L=T.computed(()=>"Double-click to edit"),k=Y=>r.level===0?Y:w.value?`${w.value}.${Y}`:Y,g=Y=>{const j=Object.keys(r.value);return j.indexOf(Y)===j.length-1},x=()=>{n("toggle-expand",w.value)},ne=()=>{r.level!==0&&(s.value=!0,A.value=r.keyName,T.nextTick(()=>{if(i.value){i.value.focus();const Y=document.createRange();Y.selectNodeContents(i.value);const j=window.getSelection();j?.removeAllRanges(),j?.addRange(Y)}}))},ee=()=>{U.value||(a.value=!0,r.value===null?I.value="null":u(r.value)?I.value="protected-number":typeof r.value=="string"?I.value="string":typeof r.value=="number"?I.value="number":typeof r.value=="boolean"&&(I.value="boolean"),u(r.value)?C.value=d(r.value):typeof r.value=="string"?C.value=r.value:C.value=String(r.value),T.nextTick(()=>{if(O.value){O.value.focus();const Y=document.createRange();Y.selectNodeContents(O.value);const j=window.getSelection();j?.removeAllRanges(),j?.addRange(Y)}}))},Q=()=>{if(r.level===0||!s.value)return;const Y=i.value?.innerText.trim()||"";if(!Y){ce();return}if(Y===r.keyName){s.value=!1;return}s.value=!1,n("update:key",w.value,Y)},Oe=()=>{if(a.value)try{let Y;const j=O.value?.innerText.trim()||"";if(I.value==="string")j==="null"?Y=null:j==="true"||j==="false"?Y=j==="true":Y=j;else if(I.value==="protected-number")Y={__protected_number__:j};else if(j==="null")Y=null;else if(j==="true"||j==="false")Y=j==="true";else if(!isNaN(Number(j))&&j!==""){const le=Number(j);!Number.isSafeInteger(le)||j.length>15?Y={__protected_number__:j}:Y=le}else Y=j;n("update:value",w.value,Y),a.value=!1}catch(Y){console.error("Failed to parse value:",Y),a.value=!1}},ce=()=>{s.value=!1,A.value=r.keyName},pe=()=>{a.value=!1,u(r.value)?C.value=d(r.value):typeof r.value=="string"?C.value=r.value:C.value=String(r.value)};return(Y,j)=>{const le=T.resolveComponent("JsonNode",!0);return T.openBlock(),T.createElementBlock("div",An,[U.value?(T.openBlock(),T.createElementBlock("div",Rn,[T.createElementVNode("div",Sn,[Y.keyName?(T.openBlock(),T.createElementBlock("span",{key:0,class:"json-node__key",contenteditable:s.value,onDblclick:ne,onKeydown:[T.withKeys(T.withModifiers(Q,["prevent"]),["enter"]),T.withKeys(ce,["escape"])],onBlur:Q,ref_key:"keyRef",ref:i,title:"Double-click to edit key"},T.toDisplayString(s.value?A.value:`"${J.value}"`),41,Nn)):T.createCommentVNode("",!0),Y.keyName?(T.openBlock(),T.createElementBlock("span",In,": ")):T.createCommentVNode("",!0),T.createElementVNode("span",{class:"json-node__bracket json-node__bracket--clickable",onClick:x,title:P.value?"Click to collapse":"Click to expand"},T.toDisplayString(Z.value),9,On),P.value?T.createCommentVNode("",!0):(T.openBlock(),T.createElementBlock("span",{key:2,class:"json-node__collapsed-info",onClick:x,title:`Click to expand ${De.value.trim()}`},T.toDisplayString(De.value),9,ln)),P.value?T.createCommentVNode("",!0):(T.openBlock(),T.createElementBlock("span",{key:3,class:"json-node__bracket json-node__bracket--clickable",onClick:x,title:"Click to expand"},T.toDisplayString(z.value),1)),!P.value&&!Y.isLast?(T.openBlock(),T.createElementBlock("span",un,",")):T.createCommentVNode("",!0)]),P.value?(T.openBlock(),T.createElementBlock("div",Cn,[T.createElementVNode("div",cn,[(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(Y.value,(Ue,Te)=>(T.openBlock(),T.createElementBlock("div",{key:Te,class:"json-node__child"},[T.createVNode(le,{value:Ue,"key-name":M.value?"":String(Te),level:Y.level+1,path:k(String(Te)),expanded:Y.expanded,theme:Y.theme,"onUpdate:value":j[0]||(j[0]=(he,q)=>Y.$emit("update:value",he,q)),onToggleExpand:j[1]||(j[1]=he=>Y.$emit("toggle-expand",he)),onCopy:j[2]||(j[2]=he=>Y.$emit("copy",he)),"onUpdate:key":j[3]||(j[3]=(he,q)=>Y.$emit("update:key",he,q)),"is-last":g(String(Te))},null,8,["value","key-name","level","path","expanded","theme","is-last"])]))),128))]),T.createElementVNode("div",_n,[T.createElementVNode("span",Ln,T.toDisplayString(z.value),1),Y.isLast?T.createCommentVNode("",!0):(T.openBlock(),T.createElementBlock("span",Dn,","))])])):T.createCommentVNode("",!0)])):(T.openBlock(),T.createElementBlock("div",pn,[Y.keyName?(T.openBlock(),T.createElementBlock("span",{key:0,class:"json-node__key",contenteditable:s.value,onDblclick:ne,onKeydown:[T.withKeys(T.withModifiers(Q,["prevent"]),["enter"]),T.withKeys(ce,["escape"])],onBlur:Q,ref_key:"keyRef",ref:i,title:"Double-click to edit key"},T.toDisplayString(s.value?A.value:`"${J.value}"`),41,dn)):T.createCommentVNode("",!0),Y.keyName?(T.openBlock(),T.createElementBlock("span",Pn,": ")):T.createCommentVNode("",!0),T.createElementVNode("span",{class:T.normalizeClass(["json-node__value-wrapper",Ce.value]),onDblclick:ee,title:L.value},[T.createElementVNode("span",{class:"json-node__value",contenteditable:a.value,onKeydown:[T.withKeys(T.withModifiers(Oe,["prevent"]),["enter"]),T.withKeys(pe,["escape"])],onBlur:Oe,ref_key:"valueRef",ref:O},T.toDisplayString(a.value?C.value:X.value),41,Mn),Y.isLast?T.createCommentVNode("",!0):(T.openBlock(),T.createElementBlock("span",Un,","))],42,hn)]))])}}}),Pt=(E,t)=>{const r=E.__vccOpts||E;for(const[n,s]of t)r[n]=s;return r},Bn=Pt(mn,[["__scopeId","data-v-1472a8af"]]),ME={name:"github-light",colors:{background:"#ffffff",surfaceBackground:"#f6f8fa",border:"#d0d7de",text:"#24292f",textSecondary:"#656d76",buttonBackground:"#f6f8fa",buttonBackgroundHover:"#f3f4f6",buttonBorder:"#d0d7de",buttonText:"#24292f",buttonPrimary:"#2da44e",buttonPrimaryHover:"#2c974b",success:"#1a7f37",successBackground:"#dafbe1",error:"#cf222e",errorBackground:"#ffebe9",syntaxString:"#0a3069",syntaxNumber:"#0969da",syntaxBoolean:"#8250df",syntaxNull:"#656d76",syntaxKey:"#0969da",syntaxBracket:"#24292f",hoverBackground:"#f6f8fa",selectionBackground:"rgba(9, 105, 218, 0.2)",collapsedBackground:"#ddf4ff",collapsedBackgroundHover:"#b6e3ff",collapsedText:"#0969da",indentLine:"#d0d7de"}},gn={"github-light":ME,"github-dark":{name:"github-dark",colors:{background:"#0d1117",surfaceBackground:"#161b22",border:"#30363d",text:"#e6edf3",textSecondary:"#7d8590",buttonBackground:"#21262d",buttonBackgroundHover:"#30363d",buttonBorder:"#30363d",buttonText:"#e6edf3",buttonPrimary:"#238636",buttonPrimaryHover:"#2ea043",success:"#3fb950",successBackground:"#0f2419",error:"#f85149",errorBackground:"#381921",syntaxString:"#a5d6ff",syntaxNumber:"#79c0ff",syntaxBoolean:"#d2a8ff",syntaxNull:"#7d8590",syntaxKey:"#79c0ff",syntaxBracket:"#e6edf3",hoverBackground:"#161b22",selectionBackground:"rgba(121, 192, 255, 0.2)",collapsedBackground:"#1c2128",collapsedBackgroundHover:"#2d333b",collapsedText:"#79c0ff",indentLine:"#30363d"}},"min-light":{name:"min-light",colors:{background:"#ffffff",surfaceBackground:"#fafafa",border:"#e5e5e5",text:"#333333",textSecondary:"#888888",buttonBackground:"#f8f8f8",buttonBackgroundHover:"#eeeeee",buttonBorder:"#e0e0e0",buttonText:"#333333",buttonPrimary:"#007acc",buttonPrimaryHover:"#005a9e",success:"#22c55e",successBackground:"#f0fdf4",error:"#ef4444",errorBackground:"#fef2f2",syntaxString:"#22c55e",syntaxNumber:"#3b82f6",syntaxBoolean:"#8b5cf6",syntaxNull:"#6b7280",syntaxKey:"#1f2937",syntaxBracket:"#374151",hoverBackground:"#f9f9f9",selectionBackground:"rgba(59, 130, 246, 0.2)",collapsedBackground:"#e0f2fe",collapsedBackgroundHover:"#bae6fd",collapsedText:"#0284c7",indentLine:"#e5e7eb"}},"slack-ochin":{name:"slack-ochin",colors:{background:"#fefbf6",surfaceBackground:"#faf6f0",border:"#e8d5b7",text:"#4a3b2a",textSecondary:"#8b7355",buttonBackground:"#f4ede4",buttonBackgroundHover:"#efe5d8",buttonBorder:"#e8d5b7",buttonText:"#4a3b2a",buttonPrimary:"#ff6b35",buttonPrimaryHover:"#e55a2b",success:"#ff9500",successBackground:"#fff8f0",error:"#d73502",errorBackground:"#ffeee8",syntaxString:"#d73502",syntaxNumber:"#ff6b35",syntaxBoolean:"#b7472a",syntaxNull:"#8b7355",syntaxKey:"#4a3b2a",syntaxBracket:"#6b5444",hoverBackground:"#f8f2eb",selectionBackground:"rgba(255, 107, 53, 0.2)",collapsedBackground:"#ffe8d6",collapsedBackgroundHover:"#ffd4b0",collapsedText:"#d73502",indentLine:"#e8d5b7"}}};function yn(E="github-light"){return gn[E]||ME}const Gn={class:"json-format__content"},Fn={key:0,class:"json-format__error"},Hn={key:1,class:"json-format__error"},bn={key:2,class:"json-format__viewer"},UE=Pt(T.defineComponent({name:"JsonFormat",__name:"index",props:{modelValue:{default:""},readonly:{type:Boolean,default:!1},maxDepth:{default:10},theme:{default:"github-light"}},emits:["update:modelValue","copy-success","copy-error","expand-all","collapse-all","compress"],setup(E,{expose:t,emit:r}){T.useCssVars(p=>({"4b6ab8f6":d.value.colors.background,"37fbe0c4":d.value.colors.text,"729aad5e":d.value.colors.error,"640bad42":d.value.colors.errorBackground}));const n=E,s=r,a=T.ref(null),A=T.ref(""),C=T.ref(new Set),I=T.ref(null),i=T.ref(""),O=T.ref(!1),u=T.computed(()=>A.value===""),d=T.computed(()=>yn(n.theme)),U=p=>{if(p==null)return p;if(Array.isArray(p))return p.map(h=>U(h));if(typeof p=="object"){const h={},m=Object.keys(p).sort();for(const B of m)h[B]=U(p[B]);return h}return p},M=T.computed(()=>{const p=I.value!==null?I.value:a.value;return!p||!O.value?p:U(p)}),w=T.computed(()=>i.value?null:M.value),P=p=>{if(!p.trim()){a.value=null,A.value="",I.value=null,i.value="";return}try{let h=p;const m=/(:\s*|,\s*|\[\s*)-?\d{16,}/.test(h),B=/(:\s*|,\s*|\[\s*)-?\d+\.\d*0+\s*[,}\]\s]*/.test(h);if(!m&&!B)try{a.value=JSON.parse(h),A.value="",I.value=null,i.value="",T.nextTick(()=>{w.value!==null&&ee()});return}catch{}h=(H=>{let te="",Ee=!1,Re=!1,Le=0;for(;Le<H.length;){const ue=H[Le];if(Ee)Re?Re=!1:ue==="\\"?Re=!0:ue==='"'&&(Ee=!1),te+=ue,Le++;else if(ue==='"')Ee=!0,te+=ue,Le++;else{const v=H.slice(Le);let fe=v.match(/^([:,\[\s]*)(-?\d{16,})(\s*[,\}\]\s]|$)/);if(fe){te+=fe[1]+'{"__protected_number__":"'+fe[2]+'"}'+fe[3],Le+=fe[0].length;continue}if(fe=v.match(/^([:,\[\s]*)(-?\d+\.\d*0+)(\s*[,\}\]\s]|$)/),fe){te+=fe[1]+'{"__protected_number__":"'+fe[2]+'"}'+fe[3],Le+=fe[0].length;continue}te+=ue,Le++}}return te})(h),a.value=JSON.parse(h),A.value="",I.value=null,i.value="",T.nextTick(()=>{w.value!==null&&ee()})}catch(h){A.value=h instanceof Error?h.message:"Unknown parsing error",a.value=null,I.value=null,i.value=""}},J=p=>{if(!p||!p.expression.trim()){Ce();return}if(!a.value){i.value="No valid JSON data to filter";return}try{let h;if(p.type==="jsonpath")h=Ge({path:p.expression,json:a.value}),h.length===1&&p.expression.includes("$[")===!1&&!p.expression.endsWith("[*]")?I.value=h[0]:I.value=h;else if(p.type==="js"){const{proxyData:m,indexMap:B}=Z(a.value),H=new Function("$",`
|
|
3
3
|
try {
|
|
4
|
-
return ${
|
|
4
|
+
return ${p.expression};
|
|
5
5
|
} catch (error) {
|
|
6
6
|
throw new Error('JavaScript expression error: ' + error.message);
|
|
7
7
|
}
|
|
8
|
-
`)(h);m=Z(a.value,M,y),I.value=m}else throw new Error(`Unsupported filter type: ${P.type}`);i.value="",T.nextTick(()=>{Ee()})}catch(m){i.value=m instanceof Error?m.message:"Filter execution error",I.value=null}},J=(P,m="root")=>{const h=new Map,y=(M,z)=>{if(M==null)return M;if(typeof M=="object"&&M.__protected_number__!==void 0){const re=parseFloat(M.__protected_number__);return h.set(re,z),re}if(Array.isArray(M)){const re=M.map((Ae,le)=>{const Ue=`${z}[${le}]`,Se=y(Ae,Ue);return h.set(Se,Ue),Se});return h.set(re,z),re}if(typeof M=="object"){const re={};for(const Ae in M)if(Object.prototype.hasOwnProperty.call(M,Ae)){const le=z==="root"?Ae:`${z}.${Ae}`;re[Ae]=y(M[Ae],le)}return h.set(re,z),re}return M};return{proxyData:y(P,m),indexMap:h}},Z=(P,m,h)=>{if(m===null||typeof m!="object")return m;if(Array.isArray(m))return m.map(M=>{const z=h.get(M);if(z){const re=De(P,z);if(re!==void 0)return re}return Z(P,M,h)});const y=h.get(m);if(y){const M=De(P,y);if(M!==void 0)return M}const $={};for(const M in m)Object.prototype.hasOwnProperty.call(m,M)&&($[M]=Z(P,m[M],h));return $},De=(P,m)=>{if(m==="root")return P;const h=[];let y=m.replace(/^root\.?/,"");const $=/([^\[\].]+)|\[(\d+)\]/g;let M;for(;(M=$.exec(y))!==null;)M[1]?h.push(M[1]):M[2]!==void 0&&h.push(parseInt(M[2]));let z=P;for(const re of h){if(z==null)return;z=z[re]}return z},ce=()=>{I.value=null,i.value=""},W=()=>{O.value=!0},u=()=>{O.value=!1};T.watch(()=>n.modelValue,P=>{d(P)},{immediate:!0});const ee=(P,m,h)=>{const y=z=>{if(z===null||typeof z!="object")return z;if(!Array.isArray(z)&&"__protected_number__"in z&&Object.keys(z).length===1)return`__PROTECTED_NUMBER_${z.__protected_number__}_PROTECTED_NUMBER__`;if(Array.isArray(z))return z.map(Ae=>y(Ae));const re={};for(const[Ae,le]of Object.entries(z))re[Ae]=y(le);return re},$=y(P);return JSON.stringify($,m,h).replace(/"__PROTECTED_NUMBER_(.+?)_PROTECTED_NUMBER__"/g,"$1")},U=(P,m)=>{if(!n.readonly)try{const h=v(a.value,P,m),y=ee(h,null,2);s("update:modelValue",y)}catch(h){console.error("Failed to update JSON:",h)}},v=(P,m,h)=>{if(!m||m==="root")return h;const y=m.split("."),$=Ie(P,y.slice(0,-1));let M=$;for(let re=0;re<y.length-1;re++){const Ae=y[re];Ae!=="root"&&(Array.isArray(M)?M=M[parseInt(Ae)]:M=M[Ae])}const z=y[y.length-1];return z==="root"?h:(Array.isArray(M)?M[parseInt(z)]=h:M[z]=h,$)},te=P=>{c.value.has(P)?c.value.delete(P):c.value.add(P)},Ee=()=>{const P=new Set,m=(h,y="")=>{h!==null&&typeof h=="object"&&(P.add(y||"root"),Array.isArray(h)?h.forEach(($,M)=>{const z=y?`${y}.${M}`:`${M}`;m($,z)}):Object.keys(h).forEach($=>{const M=y?`${y}.${$}`:$;m(h[$],M)}))};m(Y.value),c.value=P,s("expand-all")},Q=()=>{c.value=new Set,s("collapse-all")},Ce=async()=>{if(C.value)try{const P=Y.value,m=ee(P,null,2);await navigator.clipboard.writeText(m),s("copy-success",m)}catch(P){console.error("Failed to copy JSON:",P),s("copy-error",P instanceof Error?P:new Error("Failed to copy JSON"))}},_e=()=>{if(C.value)try{const P=Y.value,m=ee(P);s("update:modelValue",m),s("compress",m)}catch(P){console.error("Failed to compress JSON:",P)}},pe=async P=>{try{let m;typeof P=="object"&&P!==null&&!Array.isArray(P)&&"__protected_number__"in P&&Object.keys(P).length===1?m=P.__protected_number__:typeof P=="string"?m=`"${P}"`:m=JSON.stringify(P),await navigator.clipboard.writeText(m)}catch(m){console.error("Failed to copy value:",m)}},b=(P,m)=>{if(!n.readonly)try{const h=j(a.value,P,m),y=ee(h,null,2);s("update:modelValue",y),w(P,m)}catch(h){console.error("Failed to rename key:",h)}},j=(P,m,h)=>{if(!m||m==="root")return P;const y=m.split("."),$=Ie(P,y.slice(0,-1));if(y.length===1){const re=y[0];return $&&typeof $=="object"&&!Array.isArray($)?me($,re,h):$}let M=$;for(let re=0;re<y.length-1;re++){const Ae=y[re];Array.isArray(M)?M=M[parseInt(Ae)]:M=M[Ae]}const z=y[y.length-1];if(!Array.isArray(M)&&M&&typeof M=="object"){const re=me(M,z,h),Ae=y.slice(0,-1);Ae.length>0&&oe($,Ae,re)}return $},Ie=(P,m)=>{if(m.length===0)return P;if(Array.isArray(P)){const h=[...P],y=m[0],$=parseInt(y);return m.length===1||(h[$]=Ie(P[$],m.slice(1))),h}else if(P&&typeof P=="object"){const h={...P},y=m[0];return m.length===1||(h[y]=Ie(P[y],m.slice(1))),h}return P},me=(P,m,h)=>{if(!P||typeof P!="object"||Array.isArray(P))return P;const y=Object.keys(P),$={};for(const M of y)M===m?$[h]=P[M]:$[M]=P[M];return $},oe=(P,m,h)=>{let y=P;for(let M=0;M<m.length-1;M++){const z=m[M];Array.isArray(y)?y=y[parseInt(z)]:y=y[z]}const $=m[m.length-1];Array.isArray(y)?y[parseInt($)]=h:y[$]=h},w=(P,m)=>{const h=new Set;c.value.forEach(y=>{if(y===P){const $=P.split(".");$[$.length-1]=m,h.add($.join("."))}else if(y.startsWith(P+".")){const $=P.split(".");$[$.length-1]=m;const M=$.join("."),z=y.substring(P.length);h.add(M+z)}else h.add(y)}),c.value=h};return t({copyJson:Ce,compressSource:_e,expandAll:Ee,collapseAll:Q,toggleExpand:te,updateValue:U,updateKey:b,filter:k,clearFilter:ce,sortKeys:W,clearSortKeys:u,isSorted:()=>O.value,isValidJson:()=>C.value,getParsedJson:()=>a.value,getFilteredJson:()=>I.value,getExpandedNodes:()=>c.value,getParseError:()=>A.value,getFilterError:()=>i.value,parseJson:P=>d(P),copyValue:P=>pe(P)}),(P,m)=>(T.openBlock(),T.createElementBlock("div",{class:T.normalizeClass(["json-format",`json-format--${p.value.name}`])},[T.createElementVNode("div",Gn,[C.value?i.value?(T.openBlock(),T.createElementBlock("div",Hn,[m[1]||(m[1]=T.createElementVNode("h4",null,"Filter Error:",-1)),T.createElementVNode("pre",null,T.toDisplayString(i.value),1)])):(T.openBlock(),T.createElementBlock("div",bn,[T.createVNode(Bn,{value:Y.value,"key-name":"",level:0,expanded:c.value,"is-last":!0,theme:p.value,"onUpdate:value":U,onToggleExpand:te,onCopy:pe,"onUpdate:key":b},null,8,["value","expanded","theme"])])):(T.openBlock(),T.createElementBlock("div",Fn,[m[0]||(m[0]=T.createElementVNode("h4",null,"JSON Parse Error:",-1)),T.createElementVNode("pre",null,T.toDisplayString(A.value),1)]))])],2))}}),[["__scopeId","data-v-a802c0ac"]]);function mE(E){return E&&E.__esModule&&Object.prototype.hasOwnProperty.call(E,"default")?E.default:E}var qt={},BE;function xn(){return BE||(BE=1,function(E){var t=E;(function(r){var n="__namespace",s=function(e){return e==null},a=function(e){return e===n||Number.isInteger(e)&&e>=1&&e<=11},A=function(e){return e&&a(e.nodeType)&&typeof e.nodeName=="string"};function c(e){var o=Array.prototype.slice,N=e.length,D=function(f,Te){return function(){return Te.apply(this,f.concat(o.call(arguments)))}},l=function(){var f=o.call(arguments);return f.length<N?D(f,l):e.apply(this,o.apply(arguments,[0,N]))};return l}var I=function(e,o){for(var N=0;N<o.length;N+=1)e(o[N],N,o)},i=function(e,o,N){var D=o;return I(function(l,f){D=e(D,l,f)},N),D},O=function(e,o){var N=new Array(o.length);return I(function(D,l){N[l]=e(D)},o),N},C=function(e,o){var N=[];return I(function(D,l){e(D,l)&&N.push(D)},o),N},p=function(e,o){for(var N=0;N<e.length;N+=1)if(e[N]===o)return!0;return!1};function g(e){return function(){return e}}function B(e){return e.toString()}var Y=function(e,o){return o.join(e)},d=function(e,o,N){return e+N+o},k=Array.prototype.concat,J=function(e,o){var N=new ie;N.addArray(e);var D=N.toArray();return o?D.reverse():D},Z=32767;function De(e){for(var o=[],N=0;N<e.length;N+=Z){var D=e.slice(N,N+Z);o=k.apply(o,D)}return o}function ce(e,o){for(var N=Object(e),D=1;D<arguments.length;D++){var l=arguments[D];if(l!=null)for(var f in l)Object.prototype.hasOwnProperty.call(l,f)&&(N[f]=l[f])}return N}var W={ELEMENT_NODE:1,ATTRIBUTE_NODE:2,TEXT_NODE:3,CDATA_SECTION_NODE:4,PROCESSING_INSTRUCTION_NODE:7,COMMENT_NODE:8,DOCUMENT_NODE:9,DOCUMENT_TYPE_NODE:10,DOCUMENT_FRAGMENT_NODE:11,NAMESPACE_NODE:n};u.prototype=new Object,u.prototype.constructor=u,u.superclass=Object.prototype;function u(){this.init()}u.prototype.init=function(){this.reduceActions=[],this.reduceActions[3]=function(e){return new Ce(e[0],e[2])},this.reduceActions[5]=function(e){return new _e(e[0],e[2])},this.reduceActions[7]=function(e){return new pe(e[0],e[2])},this.reduceActions[8]=function(e){return new b(e[0],e[2])},this.reduceActions[10]=function(e){return new j(e[0],e[2])},this.reduceActions[11]=function(e){return new Ie(e[0],e[2])},this.reduceActions[12]=function(e){return new me(e[0],e[2])},this.reduceActions[13]=function(e){return new oe(e[0],e[2])},this.reduceActions[15]=function(e){return new w(e[0],e[2])},this.reduceActions[16]=function(e){return new P(e[0],e[2])},this.reduceActions[18]=function(e){return new m(e[0],e[2])},this.reduceActions[19]=function(e){return new h(e[0],e[2])},this.reduceActions[20]=function(e){return new y(e[0],e[2])},this.reduceActions[22]=function(e){return new Ee(e[1])},this.reduceActions[24]=function(e){return new $(e[0],e[2])},this.reduceActions[25]=function(e){return new M(void 0,void 0,e[0])},this.reduceActions[27]=function(e){return e[0].locationPath=e[2],e[0]},this.reduceActions[28]=function(e){return e[0].locationPath=e[2],e[0].locationPath.steps.unshift(new q(q.DESCENDANTORSELF,_.nodeTest,[])),e[0]},this.reduceActions[29]=function(e){return new M(e[0],[],void 0)},this.reduceActions[30]=function(e){return Ne.instance_of(e[0],M)?(e[0].filterPredicates==null&&(e[0].filterPredicates=[]),e[0].filterPredicates.push(e[1]),e[0]):new M(e[0],[e[1]],void 0)},this.reduceActions[32]=function(e){return e[1]},this.reduceActions[33]=function(e){return new H(e[0])},this.reduceActions[34]=function(e){return new V(e[0])},this.reduceActions[36]=function(e){return new Be(e[0],[])},this.reduceActions[37]=function(e){return new Be(e[0],e[2])},this.reduceActions[38]=function(e){return[e[0]]},this.reduceActions[39]=function(e){return e[2].unshift(e[0]),e[2]},this.reduceActions[43]=function(e){return new Se(!0,[])},this.reduceActions[44]=function(e){return e[1].absolute=!0,e[1]},this.reduceActions[46]=function(e){return new Se(!1,[e[0]])},this.reduceActions[47]=function(e){return e[0].steps.push(e[2]),e[0]},this.reduceActions[49]=function(e){return new q(e[0],e[1],[])},this.reduceActions[50]=function(e){return new q(q.CHILD,e[0],[])},this.reduceActions[51]=function(e){return new q(e[0],e[1],e[2])},this.reduceActions[52]=function(e){return new q(q.CHILD,e[0],e[1])},this.reduceActions[54]=function(e){return[e[0]]},this.reduceActions[55]=function(e){return e[1].unshift(e[0]),e[1]},this.reduceActions[56]=function(e){return e[0]=="ancestor"?q.ANCESTOR:e[0]=="ancestor-or-self"?q.ANCESTORORSELF:e[0]=="attribute"?q.ATTRIBUTE:e[0]=="child"?q.CHILD:e[0]=="descendant"?q.DESCENDANT:e[0]=="descendant-or-self"?q.DESCENDANTORSELF:e[0]=="following"?q.FOLLOWING:e[0]=="following-sibling"?q.FOLLOWINGSIBLING:e[0]=="namespace"?q.NAMESPACE:e[0]=="parent"?q.PARENT:e[0]=="preceding"?q.PRECEDING:e[0]=="preceding-sibling"?q.PRECEDINGSIBLING:e[0]=="self"?q.SELF:-1},this.reduceActions[57]=function(e){return q.ATTRIBUTE},this.reduceActions[59]=function(e){return e[0]=="comment"?_.commentTest:e[0]=="text"?_.textTest:e[0]=="processing-instruction"?_.anyPiTest:e[0]=="node"?_.nodeTest:new _(-1,void 0)},this.reduceActions[60]=function(e){return new _.PITest(e[2])},this.reduceActions[61]=function(e){return e[1]},this.reduceActions[63]=function(e){return e[1].absolute=!0,e[1].steps.unshift(new q(q.DESCENDANTORSELF,_.nodeTest,[])),e[1]},this.reduceActions[64]=function(e){return e[0].steps.push(new q(q.DESCENDANTORSELF,_.nodeTest,[])),e[0].steps.push(e[2]),e[0]},this.reduceActions[65]=function(e){return new q(q.SELF,_.nodeTest,[])},this.reduceActions[66]=function(e){return new q(q.PARENT,_.nodeTest,[])},this.reduceActions[67]=function(e){return new se(e[1])},this.reduceActions[68]=function(e){return _.nameTestAny},this.reduceActions[69]=function(e){return new _.NameTestPrefixAny(e[0].split(":")[0])},this.reduceActions[70]=function(e){return new _.NameTestQName(e[0])}},u.actionTable=[" s s sssssssss s ss s ss"," s ","r rrrrrrrrr rrrrrrr rr r "," rrrrr "," s s sssssssss s ss s ss","rs rrrrrrrr s sssssrrrrrr rrs rs "," s s sssssssss s ss s ss"," s "," s ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr "," s "," s "," s s sssss s s ","r rrrrrrrrr rrrrrrr rr r ","a ","r s rr r ","r sr rr r ","r s rr s rr r ","r rssrr rss rr r ","r rrrrr rrrss rr r ","r rrrrrsss rrrrr rr r ","r rrrrrrrr rrrrr rr r ","r rrrrrrrr rrrrrs rr r ","r rrrrrrrr rrrrrr rr r ","r rrrrrrrr rrrrrr rr r ","r srrrrrrrr rrrrrrs rr sr ","r srrrrrrrr rrrrrrs rr r ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrr rrrrrr rr r ","r rrrrrrrr rrrrrr rr r ","r rrrrrrrrr rrrrrrr rr r ","r rrrrrrrrr rrrrrrr rr r "," sssss ","r rrrrrrrrr rrrrrrr rr sr ","r rrrrrrrrr rrrrrrr rr r ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr "," s ","r srrrrrrrr rrrrrrs rr r ","r rrrrrrrr rrrrr rr r "," s "," s "," rrrrr "," s s sssssssss s sss s ss","r srrrrrrrr rrrrrrs rr r "," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss ss s ss"," s s sssssssss s ss s ss"," s s sssss s s "," s s sssss s s ","r rrrrrrrrr rrrrrrr rr rr "," s s sssss s s "," s s sssss s s ","r rrrrrrrrr rrrrrrr rr sr ","r rrrrrrrrr rrrrrrr rr sr ","r rrrrrrrrr rrrrrrr rr r ","r rrrrrrrrr rrrrrrr rr rr "," s ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr "," rr "," s "," rs ","r sr rr r ","r s rr s rr r ","r rssrr rss rr r ","r rssrr rss rr r ","r rrrrr rrrss rr r ","r rrrrr rrrss rr r ","r rrrrr rrrss rr r ","r rrrrr rrrss rr r ","r rrrrrsss rrrrr rr r ","r rrrrrsss rrrrr rr r ","r rrrrrrrr rrrrr rr r ","r rrrrrrrr rrrrr rr r ","r rrrrrrrr rrrrr rr r ","r rrrrrrrr rrrrrr rr r "," r "," s ","r srrrrrrrr rrrrrrs rr r ","r srrrrrrrr rrrrrrs rr r ","r rrrrrrrrr rrrrrrr rr r ","r rrrrrrrrr rrrrrrr rr r ","r rrrrrrrrr rrrrrrr rr r ","r rrrrrrrrr rrrrrrr rr r ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr "," s s sssssssss s ss s ss","r rrrrrrrrr rrrrrrr rr rr "," r "],u.actionTableNumber=[` 1 0 /.-,+*)(' & %$ # "!`," J ","a aaaaaaaaa aaaaaaa aa a "," YYYYY ",` 1 0 /.-,+*)(' & %$ # "!`,`K1 KKKKKKKK . +*)('KKKKKK KK# K" `,` 1 0 /.-,+*)(' & %$ # "!`," N "," O ","e eeeeeeeee eeeeeee ee ee ","f fffffffff fffffff ff ff ","d ddddddddd ddddddd dd dd ","B BBBBBBBBB BBBBBBB BB BB ","A AAAAAAAAA AAAAAAA AA AA "," P "," Q ",` 1 . +*)(' # " `,"b bbbbbbbbb bbbbbbb bb b "," ","! S !! ! ",'" T" "" " ',"$ V $$ U $$ $ ","& &ZY&& &XW && & ",") ))))) )))\\[ )) ) ",". ....._^] ..... .. . ","1 11111111 11111 11 1 ","5 55555555 55555` 55 5 ","7 77777777 777777 77 7 ","9 99999999 999999 99 9 ",": c:::::::: ::::::b :: a: ","I fIIIIIIII IIIIIIe II I ","= ========= ======= == == ","? ????????? ??????? ?? ?? ","C CCCCCCCCC CCCCCCC CC CC ","J JJJJJJJJ JJJJJJ JJ J ","M MMMMMMMM MMMMMM MM M ","N NNNNNNNNN NNNNNNN NN N ","P PPPPPPPPP PPPPPPP PP P "," +*)(' ","R RRRRRRRRR RRRRRRR RR aR ","U UUUUUUUUU UUUUUUU UU U ","Z ZZZZZZZZZ ZZZZZZZ ZZ ZZ ","c ccccccccc ccccccc cc cc "," j ","L fLLLLLLLL LLLLLLe LL L ","6 66666666 66666 66 6 "," k "," l "," XXXXX ",` 1 0 /.-,+*)(' & %$m # "!`,"_ f________ ______e __ _ ",` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 . +*)(' # " `,` 1 . +*)(' # " `,"> >>>>>>>>> >>>>>>> >> >> ",` 1 . +*)(' # " `,` 1 . +*)(' # " `,"Q QQQQQQQQQ QQQQQQQ QQ aQ ","V VVVVVVVVV VVVVVVV VV aV ","T TTTTTTTTT TTTTTTT TT T ","@ @@@@@@@@@ @@@@@@@ @@ @@ "," ","[ [[[[[[[[[ [[[[[[[ [[ [[ ","D DDDDDDDDD DDDDDDD DD DD "," HH "," "," F ","# T# ## # ","% V %% U %% % ","' 'ZY'' 'XW '' ' ","( (ZY(( (XW (( ( ","+ +++++ +++\\[ ++ + ","* ***** ***\\[ ** * ","- ----- ---\\[ -- - ",", ,,,,, ,,,\\[ ,, , ","0 00000_^] 00000 00 0 ","/ /////_^] ///// // / ","2 22222222 22222 22 2 ","3 33333333 33333 33 3 ","4 44444444 44444 44 4 ","8 88888888 888888 88 8 "," ^ "," ","; f;;;;;;;; ;;;;;;e ;; ; ","< f<<<<<<<< <<<<<<e << < ","O OOOOOOOOO OOOOOOO OO O ","` ````````` ``````` `` ` ","S SSSSSSSSS SSSSSSS SS S ","W WWWWWWWWW WWWWWWW WW W ","\\ \\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\ \\\\ \\\\ ","E EEEEEEEEE EEEEEEE EE EE ",` 1 0 /.-,+*)(' & %$ # "!`,"] ]]]]]]]]] ]]]]]]] ]] ]] "," G "],u.gotoTable=["3456789:;<=>?@ AB CDEFGH IJ "," "," "," ","L456789:;<=>?@ AB CDEFGH IJ "," M EFGH IJ "," N;<=>?@ AB CDEFGH IJ "," "," "," "," "," "," "," "," "," "," S EFGH IJ "," "," "," "," "," "," "," "," "," "," "," "," "," e "," "," "," "," "," "," "," "," "," h J "," i j "," "," "," "," "," "," "," "," "," ","o456789:;<=>?@ ABpqCDEFGH IJ "," "," r6789:;<=>?@ AB CDEFGH IJ "," s789:;<=>?@ AB CDEFGH IJ "," t89:;<=>?@ AB CDEFGH IJ "," u89:;<=>?@ AB CDEFGH IJ "," v9:;<=>?@ AB CDEFGH IJ "," w9:;<=>?@ AB CDEFGH IJ "," x9:;<=>?@ AB CDEFGH IJ "," y9:;<=>?@ AB CDEFGH IJ "," z:;<=>?@ AB CDEFGH IJ "," {:;<=>?@ AB CDEFGH IJ "," |;<=>?@ AB CDEFGH IJ "," };<=>?@ AB CDEFGH IJ "," ~;<=>?@ AB CDEFGH IJ "," =>?@ AB CDEFGH IJ ","456789:;<=>?@ AB CDEFGH IJ"," EFGH IJ "," EFGH IJ "," "," GH IJ ","
GH IJ "," i "," i "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," ","o456789:;<=>?@ ABqCDEFGH IJ "," "," "],u.productions=[[1,1,2],[2,1,3],[3,1,4],[3,3,3,-9,4],[4,1,5],[4,3,4,-8,5],[5,1,6],[5,3,5,-22,6],[5,3,5,-5,6],[6,1,7],[6,3,6,-23,7],[6,3,6,-24,7],[6,3,6,-6,7],[6,3,6,-7,7],[7,1,8],[7,3,7,-25,8],[7,3,7,-26,8],[8,1,9],[8,3,8,-12,9],[8,3,8,-11,9],[8,3,8,-10,9],[9,1,10],[9,2,-26,9],[10,1,11],[10,3,10,-27,11],[11,1,12],[11,1,13],[11,3,13,-28,14],[11,3,13,-4,14],[13,1,15],[13,2,13,16],[15,1,17],[15,3,-29,2,-30],[15,1,-15],[15,1,-16],[15,1,18],[18,3,-13,-29,-30],[18,4,-13,-29,19,-30],[19,1,20],[19,3,20,-31,19],[20,1,2],[12,1,14],[12,1,21],[21,1,-28],[21,2,-28,14],[21,1,22],[14,1,23],[14,3,14,-28,23],[14,1,24],[23,2,25,26],[23,1,26],[23,3,25,26,27],[23,2,26,27],[23,1,28],[27,1,16],[27,2,16,27],[25,2,-14,-3],[25,1,-32],[26,1,29],[26,3,-20,-29,-30],[26,4,-21,-29,-15,-30],[16,3,-33,30,-34],[30,1,2],[22,2,-4,14],[24,3,14,-4,23],[28,1,-35],[28,1,-2],[17,2,-36,-18],[29,1,-17],[29,1,-19],[29,1,-18]],u.DOUBLEDOT=2,u.DOUBLECOLON=3,u.DOUBLESLASH=4,u.NOTEQUAL=5,u.LESSTHANOREQUAL=6,u.GREATERTHANOREQUAL=7,u.AND=8,u.OR=9,u.MOD=10,u.DIV=11,u.MULTIPLYOPERATOR=12,u.FUNCTIONNAME=13,u.AXISNAME=14,u.LITERAL=15,u.NUMBER=16,u.ASTERISKNAMETEST=17,u.QNAME=18,u.NCNAMECOLONASTERISK=19,u.NODETYPE=20,u.PROCESSINGINSTRUCTIONWITHLITERAL=21,u.EQUALS=22,u.LESSTHAN=23,u.GREATERTHAN=24,u.PLUS=25,u.MINUS=26,u.BAR=27,u.SLASH=28,u.LEFTPARENTHESIS=29,u.RIGHTPARENTHESIS=30,u.COMMA=31,u.AT=32,u.LEFTBRACKET=33,u.RIGHTBRACKET=34,u.DOT=35,u.DOLLAR=36,u.prototype.tokenize=function(e){for(var o=[],N=[],D=e+"\0",l=0,f=D.charAt(l++);;){for(;f==" "||f==" "||f=="\r"||f==`
|
|
9
|
-
`;)f=D.charAt(l++);if(f=="\0"||l>=D.length)break;if(f=="("){o.push(u.LEFTPARENTHESIS),N.push(f),f=D.charAt(l++);continue}if(f==")"){o.push(u.RIGHTPARENTHESIS),N.push(f),f=D.charAt(l++);continue}if(f=="["){o.push(u.LEFTBRACKET),N.push(f),f=D.charAt(l++);continue}if(f=="]"){o.push(u.RIGHTBRACKET),N.push(f),f=D.charAt(l++);continue}if(f=="@"){o.push(u.AT),N.push(f),f=D.charAt(l++);continue}if(f==","){o.push(u.COMMA),N.push(f),f=D.charAt(l++);continue}if(f=="|"){o.push(u.BAR),N.push(f),f=D.charAt(l++);continue}if(f=="+"){o.push(u.PLUS),N.push(f),f=D.charAt(l++);continue}if(f=="-"){o.push(u.MINUS),N.push(f),f=D.charAt(l++);continue}if(f=="="){o.push(u.EQUALS),N.push(f),f=D.charAt(l++);continue}if(f=="$"){o.push(u.DOLLAR),N.push(f),f=D.charAt(l++);continue}if(f=="."){if(f=D.charAt(l++),f=="."){o.push(u.DOUBLEDOT),N.push(".."),f=D.charAt(l++);continue}if(f>="0"&&f<="9"){var Te="."+f;for(f=D.charAt(l++);f>="0"&&f<="9";)Te+=f,f=D.charAt(l++);o.push(u.NUMBER),N.push(Te);continue}o.push(u.DOT),N.push(".");continue}if(f=="'"||f=='"'){for(var he=f,Me="";l<D.length&&(f=D.charAt(l))!==he;)Me+=f,l+=1;if(f!==he)throw qe.fromMessage("Unterminated string literal: "+he+Me);l+=1,o.push(u.LITERAL),N.push(Me),f=D.charAt(l++);continue}if(f>="0"&&f<="9"){var Te=f;for(f=D.charAt(l++);f>="0"&&f<="9";)Te+=f,f=D.charAt(l++);if(f=="."&&D.charAt(l)>="0"&&D.charAt(l)<="9")for(Te+=f,Te+=D.charAt(l++),f=D.charAt(l++);f>="0"&&f<="9";)Te+=f,f=D.charAt(l++);o.push(u.NUMBER),N.push(Te);continue}if(f=="*"){if(o.length>0){var ae=o[o.length-1];if(ae!=u.AT&&ae!=u.DOUBLECOLON&&ae!=u.LEFTPARENTHESIS&&ae!=u.LEFTBRACKET&&ae!=u.AND&&ae!=u.OR&&ae!=u.MOD&&ae!=u.DIV&&ae!=u.MULTIPLYOPERATOR&&ae!=u.SLASH&&ae!=u.DOUBLESLASH&&ae!=u.BAR&&ae!=u.PLUS&&ae!=u.MINUS&&ae!=u.EQUALS&&ae!=u.NOTEQUAL&&ae!=u.LESSTHAN&&ae!=u.LESSTHANOREQUAL&&ae!=u.GREATERTHAN&&ae!=u.GREATERTHANOREQUAL){o.push(u.MULTIPLYOPERATOR),N.push(f),f=D.charAt(l++);continue}}o.push(u.ASTERISKNAMETEST),N.push(f),f=D.charAt(l++);continue}if(f==":"&&D.charAt(l)==":"){o.push(u.DOUBLECOLON),N.push("::"),l++,f=D.charAt(l++);continue}if(f=="/"){if(f=D.charAt(l++),f=="/"){o.push(u.DOUBLESLASH),N.push("//"),f=D.charAt(l++);continue}o.push(u.SLASH),N.push("/");continue}if(f=="!"&&D.charAt(l)=="="){o.push(u.NOTEQUAL),N.push("!="),l++,f=D.charAt(l++);continue}if(f=="<"){if(D.charAt(l)=="="){o.push(u.LESSTHANOREQUAL),N.push("<="),l++,f=D.charAt(l++);continue}o.push(u.LESSTHAN),N.push("<"),f=D.charAt(l++);continue}if(f==">"){if(D.charAt(l)=="="){o.push(u.GREATERTHANOREQUAL),N.push(">="),l++,f=D.charAt(l++);continue}o.push(u.GREATERTHAN),N.push(">"),f=D.charAt(l++);continue}if(f=="_"||Ne.isLetter(f.charCodeAt(0))){var Re=f;for(f=D.charAt(l++);Ne.isNCNameChar(f.charCodeAt(0));)Re+=f,f=D.charAt(l++);if(o.length>0){var ae=o[o.length-1];if(ae!=u.AT&&ae!=u.DOUBLECOLON&&ae!=u.LEFTPARENTHESIS&&ae!=u.LEFTBRACKET&&ae!=u.AND&&ae!=u.OR&&ae!=u.MOD&&ae!=u.DIV&&ae!=u.MULTIPLYOPERATOR&&ae!=u.SLASH&&ae!=u.DOUBLESLASH&&ae!=u.BAR&&ae!=u.PLUS&&ae!=u.MINUS&&ae!=u.EQUALS&&ae!=u.NOTEQUAL&&ae!=u.LESSTHAN&&ae!=u.LESSTHANOREQUAL&&ae!=u.GREATERTHAN&&ae!=u.GREATERTHANOREQUAL){if(Re=="and"){o.push(u.AND),N.push(Re);continue}if(Re=="or"){o.push(u.OR),N.push(Re);continue}if(Re=="mod"){o.push(u.MOD),N.push(Re);continue}if(Re=="div"){o.push(u.DIV),N.push(Re);continue}}}if(f==":"){if(D.charAt(l)=="*"){o.push(u.NCNAMECOLONASTERISK),N.push(Re+":*"),l++,f=D.charAt(l++);continue}if(D.charAt(l)=="_"||Ne.isLetter(D.charCodeAt(l))){for(Re+=":",f=D.charAt(l++);Ne.isNCNameChar(f.charCodeAt(0));)Re+=f,f=D.charAt(l++);if(f=="("){o.push(u.FUNCTIONNAME),N.push(Re);continue}o.push(u.QNAME),N.push(Re);continue}if(D.charAt(l)==":"){o.push(u.AXISNAME),N.push(Re);continue}}if(f=="("){if(Re=="comment"||Re=="text"||Re=="node"){o.push(u.NODETYPE),N.push(Re);continue}if(Re=="processing-instruction"){D.charAt(l)==")"?o.push(u.NODETYPE):o.push(u.PROCESSINGINSTRUCTIONWITHLITERAL),N.push(Re);continue}o.push(u.FUNCTIONNAME),N.push(Re);continue}o.push(u.QNAME),N.push(Re);continue}throw new Error("Unexpected character "+f)}return o.push(1),N.push("[EOF]"),[o,N]},u.SHIFT="s",u.REDUCE="r",u.ACCEPT="a",u.prototype.parse=function(Me){if(!Me)throw new Error("XPath expression unspecified.");if(typeof Me!="string")throw new Error("XPath expression must be a string.");var o,N,D=this.tokenize(Me);if(D!=null){o=D[0],N=D[1];var l=0,f=[],Te=[],he=[],Me,ae,Re;for(f.push(0),Te.push(1),he.push("_S"),ae=o[l],Re=N[l++];;)switch(Me=f[f.length-1],u.actionTable[Me].charAt(ae-1)){case u.SHIFT:Te.push(-ae),he.push(Re),f.push(u.actionTableNumber[Me].charCodeAt(ae-1)-32),ae=o[l],Re=N[l++];break;case u.REDUCE:for(var Ke=u.productions[u.actionTableNumber[Me].charCodeAt(ae-1)-32][1],ze=[],He=0;He<Ke;He++)Te.pop(),ze.unshift(he.pop()),f.pop();var Tt=f[f.length-1];Te.push(u.productions[u.actionTableNumber[Me].charCodeAt(ae-1)-32][0]),this.reduceActions[u.actionTableNumber[Me].charCodeAt(ae-1)-32]==null?he.push(ze[0]):he.push(this.reduceActions[u.actionTableNumber[Me].charCodeAt(ae-1)-32](ze)),f.push(u.gotoTable[Tt].charCodeAt(u.productions[u.actionTableNumber[Me].charCodeAt(ae-1)-32][0]-2)-33);break;case u.ACCEPT:return new ee(he.pop());default:throw new Error("XPath parse error")}}},ee.prototype=new Object,ee.prototype.constructor=ee,ee.superclass=Object.prototype;function ee(e){this.expression=e}ee.prototype.toString=function(){return this.expression.toString()};function U(e,o,N){o in e||(e[o]=N)}ee.prototype.evaluate=function(e){var o=e.expressionContextNode;if(!(s(o)||A(o)))throw new Error("Context node does not appear to be a valid DOM node.");return e.contextNode=e.expressionContextNode,e.contextSize=1,e.contextPosition=1,e.isHtml&&(U(e,"caseInsensitive",!0),U(e,"allowAnyNamespaceForNoPrefix",!0)),U(e,"caseInsensitive",!1),this.expression.evaluate(e)},ee.XML_NAMESPACE_URI="http://www.w3.org/XML/1998/namespace",ee.XMLNS_NAMESPACE_URI="http://www.w3.org/2000/xmlns/",v.prototype=new Object,v.prototype.constructor=v,v.superclass=Object.prototype;function v(){}v.prototype.init=function(){},v.prototype.toString=function(){return"<Expression>"},v.prototype.evaluate=function(e){throw new Error("Could not evaluate expression.")},te.prototype=new v,te.prototype.constructor=te,te.superclass=v.prototype;function te(e){arguments.length>0&&this.init(e)}te.prototype.init=function(e){this.rhs=e},Ee.prototype=new te,Ee.prototype.constructor=Ee,Ee.superclass=te.prototype;function Ee(e){arguments.length>0&&this.init(e)}Ee.prototype.init=function(e){Ee.superclass.init.call(this,e)},Ee.prototype.evaluate=function(e){return this.rhs.evaluate(e).number().negate()},Ee.prototype.toString=function(){return"-"+this.rhs.toString()},Q.prototype=new v,Q.prototype.constructor=Q,Q.superclass=v.prototype;function Q(e,o){arguments.length>0&&this.init(e,o)}Q.prototype.init=function(e,o){this.lhs=e,this.rhs=o},Ce.prototype=new Q,Ce.prototype.constructor=Ce,Ce.superclass=Q.prototype;function Ce(e,o){arguments.length>0&&this.init(e,o)}Ce.prototype.init=function(e,o){Ce.superclass.init.call(this,e,o)},Ce.prototype.toString=function(){return"("+this.lhs.toString()+" or "+this.rhs.toString()+")"},Ce.prototype.evaluate=function(e){var o=this.lhs.evaluate(e).bool();return o.booleanValue()?o:this.rhs.evaluate(e).bool()},_e.prototype=new Q,_e.prototype.constructor=_e,_e.superclass=Q.prototype;function _e(e,o){arguments.length>0&&this.init(e,o)}_e.prototype.init=function(e,o){_e.superclass.init.call(this,e,o)},_e.prototype.toString=function(){return"("+this.lhs.toString()+" and "+this.rhs.toString()+")"},_e.prototype.evaluate=function(e){var o=this.lhs.evaluate(e).bool();return o.booleanValue()?this.rhs.evaluate(e).bool():o},pe.prototype=new Q,pe.prototype.constructor=pe,pe.superclass=Q.prototype;function pe(e,o){arguments.length>0&&this.init(e,o)}pe.prototype.init=function(e,o){pe.superclass.init.call(this,e,o)},pe.prototype.toString=function(){return"("+this.lhs.toString()+" = "+this.rhs.toString()+")"},pe.prototype.evaluate=function(e){return this.lhs.evaluate(e).equals(this.rhs.evaluate(e))},b.prototype=new Q,b.prototype.constructor=b,b.superclass=Q.prototype;function b(e,o){arguments.length>0&&this.init(e,o)}b.prototype.init=function(e,o){b.superclass.init.call(this,e,o)},b.prototype.toString=function(){return"("+this.lhs.toString()+" != "+this.rhs.toString()+")"},b.prototype.evaluate=function(e){return this.lhs.evaluate(e).notequal(this.rhs.evaluate(e))},j.prototype=new Q,j.prototype.constructor=j,j.superclass=Q.prototype;function j(e,o){arguments.length>0&&this.init(e,o)}j.prototype.init=function(e,o){j.superclass.init.call(this,e,o)},j.prototype.evaluate=function(e){return this.lhs.evaluate(e).lessthan(this.rhs.evaluate(e))},j.prototype.toString=function(){return"("+this.lhs.toString()+" < "+this.rhs.toString()+")"},Ie.prototype=new Q,Ie.prototype.constructor=Ie,Ie.superclass=Q.prototype;function Ie(e,o){arguments.length>0&&this.init(e,o)}Ie.prototype.init=function(e,o){Ie.superclass.init.call(this,e,o)},Ie.prototype.evaluate=function(e){return this.lhs.evaluate(e).greaterthan(this.rhs.evaluate(e))},Ie.prototype.toString=function(){return"("+this.lhs.toString()+" > "+this.rhs.toString()+")"},me.prototype=new Q,me.prototype.constructor=me,me.superclass=Q.prototype;function me(e,o){arguments.length>0&&this.init(e,o)}me.prototype.init=function(e,o){me.superclass.init.call(this,e,o)},me.prototype.evaluate=function(e){return this.lhs.evaluate(e).lessthanorequal(this.rhs.evaluate(e))},me.prototype.toString=function(){return"("+this.lhs.toString()+" <= "+this.rhs.toString()+")"},oe.prototype=new Q,oe.prototype.constructor=oe,oe.superclass=Q.prototype;function oe(e,o){arguments.length>0&&this.init(e,o)}oe.prototype.init=function(e,o){oe.superclass.init.call(this,e,o)},oe.prototype.evaluate=function(e){return this.lhs.evaluate(e).greaterthanorequal(this.rhs.evaluate(e))},oe.prototype.toString=function(){return"("+this.lhs.toString()+" >= "+this.rhs.toString()+")"},w.prototype=new Q,w.prototype.constructor=w,w.superclass=Q.prototype;function w(e,o){arguments.length>0&&this.init(e,o)}w.prototype.init=function(e,o){w.superclass.init.call(this,e,o)},w.prototype.evaluate=function(e){return this.lhs.evaluate(e).number().plus(this.rhs.evaluate(e).number())},w.prototype.toString=function(){return"("+this.lhs.toString()+" + "+this.rhs.toString()+")"},P.prototype=new Q,P.prototype.constructor=P,P.superclass=Q.prototype;function P(e,o){arguments.length>0&&this.init(e,o)}P.prototype.init=function(e,o){P.superclass.init.call(this,e,o)},P.prototype.evaluate=function(e){return this.lhs.evaluate(e).number().minus(this.rhs.evaluate(e).number())},P.prototype.toString=function(){return"("+this.lhs.toString()+" - "+this.rhs.toString()+")"},m.prototype=new Q,m.prototype.constructor=m,m.superclass=Q.prototype;function m(e,o){arguments.length>0&&this.init(e,o)}m.prototype.init=function(e,o){m.superclass.init.call(this,e,o)},m.prototype.evaluate=function(e){return this.lhs.evaluate(e).number().multiply(this.rhs.evaluate(e).number())},m.prototype.toString=function(){return"("+this.lhs.toString()+" * "+this.rhs.toString()+")"},h.prototype=new Q,h.prototype.constructor=h,h.superclass=Q.prototype;function h(e,o){arguments.length>0&&this.init(e,o)}h.prototype.init=function(e,o){h.superclass.init.call(this,e,o)},h.prototype.evaluate=function(e){return this.lhs.evaluate(e).number().div(this.rhs.evaluate(e).number())},h.prototype.toString=function(){return"("+this.lhs.toString()+" div "+this.rhs.toString()+")"},y.prototype=new Q,y.prototype.constructor=y,y.superclass=Q.prototype;function y(e,o){arguments.length>0&&this.init(e,o)}y.prototype.init=function(e,o){y.superclass.init.call(this,e,o)},y.prototype.evaluate=function(e){return this.lhs.evaluate(e).number().mod(this.rhs.evaluate(e).number())},y.prototype.toString=function(){return"("+this.lhs.toString()+" mod "+this.rhs.toString()+")"},$.prototype=new Q,$.prototype.constructor=$,$.superclass=Q.prototype;function $(e,o){arguments.length>0&&this.init(e,o)}$.prototype.init=function(e,o){$.superclass.init.call(this,e,o)},$.prototype.evaluate=function(e){return this.lhs.evaluate(e).nodeset().union(this.rhs.evaluate(e).nodeset())},$.prototype.toString=function(){return O(B,[this.lhs,this.rhs]).join(" | ")},M.prototype=new v,M.prototype.constructor=M,M.superclass=v.prototype;function M(e,o,N){arguments.length>0&&this.init(e,o,N)}M.prototype.init=function(e,o,N){M.superclass.init.call(this),this.filter=e,this.filterPredicates=o,this.locationPath=N};function z(e){for(;e&&e.parentNode;)e=e.parentNode;return e}var re=function(e,o,N,D){if(e.length===0)return N;var l=o.extend({});return i(function(f,Te){return l.contextSize=f.length,C(function(he,Me){return l.contextNode=he,l.contextPosition=Me+1,M.predicateMatches(Te,l)},f)},J(N,D),e)};M.getRoot=function(e,o){var N=o[0];if(N&&N.nodeType===W.DOCUMENT_NODE)return N;if(e.virtualRoot)return e.virtualRoot;if(!N)throw new Error("Context node not found when determining document root.");var D=N.ownerDocument;if(D)return D;for(var l=N;l.parentNode!=null;)l=l.parentNode;return l};var Ae=function(e){var o=String(e.name);return o==="xmlns"?"":o.substring(0,6)==="xmlns:"?o.substring(6,o.length):null};M.applyStep=function(e,o,N){if(!N)throw new Error("Context node not found when evaluating XPath step: "+e);var D=[];switch(o.contextNode=N,e.axis){case q.ANCESTOR:if(o.contextNode===o.virtualRoot)break;var l;for(o.contextNode.nodeType==W.ATTRIBUTE_NODE?l=M.getOwnerElement(o.contextNode):l=o.contextNode.parentNode;l!=null&&(e.nodeTest.matches(l,o)&&D.push(l),l!==o.virtualRoot);)l=l.parentNode;break;case q.ANCESTORORSELF:for(var l=o.contextNode;l!=null&&(e.nodeTest.matches(l,o)&&D.push(l),l!==o.virtualRoot);l=l.nodeType==W.ATTRIBUTE_NODE?M.getOwnerElement(l):l.parentNode);break;case q.ATTRIBUTE:var f=o.contextNode.attributes;if(f!=null)for(var Te=0;Te<f.length;Te++){var l=f.item(Te);e.nodeTest.matches(l,o)&&D.push(l)}break;case q.CHILD:for(var l=o.contextNode.firstChild;l!=null;l=l.nextSibling)e.nodeTest.matches(l,o)&&D.push(l);break;case q.DESCENDANT:for(var Re=[o.contextNode.firstChild];Re.length>0;)for(var l=Re.pop();l!=null;)e.nodeTest.matches(l,o)&&D.push(l),l.firstChild!=null?(Re.push(l.nextSibling),l=l.firstChild):l=l.nextSibling;break;case q.DESCENDANTORSELF:e.nodeTest.matches(o.contextNode,o)&&D.push(o.contextNode);for(var Re=[o.contextNode.firstChild];Re.length>0;)for(var l=Re.pop();l!=null;)e.nodeTest.matches(l,o)&&D.push(l),l.firstChild!=null?(Re.push(l.nextSibling),l=l.firstChild):l=l.nextSibling;break;case q.FOLLOWING:if(o.contextNode===o.virtualRoot)break;var Re=[];o.contextNode.firstChild!=null?Re.unshift(o.contextNode.firstChild):Re.unshift(o.contextNode.nextSibling);for(var l=o.contextNode.parentNode;l!=null&&l.nodeType!=W.DOCUMENT_NODE&&l!==o.virtualRoot;l=l.parentNode)Re.unshift(l.nextSibling);do for(var l=Re.pop();l!=null;)e.nodeTest.matches(l,o)&&D.push(l),l.firstChild!=null?(Re.push(l.nextSibling),l=l.firstChild):l=l.nextSibling;while(Re.length>0);break;case q.FOLLOWINGSIBLING:if(o.contextNode===o.virtualRoot)break;for(var l=o.contextNode.nextSibling;l!=null;l=l.nextSibling)e.nodeTest.matches(l,o)&&D.push(l);break;case q.NAMESPACE:var he={};if(o.contextNode.nodeType==W.ELEMENT_NODE){he.xml=new nt("xml",null,ee.XML_NAMESPACE_URI,o.contextNode);for(var l=o.contextNode;l!=null&&l.nodeType==W.ELEMENT_NODE;l=l.parentNode)for(var Te=0;Te<l.attributes.length;Te++){var Me=l.attributes.item(Te),ae=Ae(Me);ae!=null&&he[ae]==null&&(he[ae]=new nt(ae,Me,Me.value,o.contextNode))}for(var ae in he){var N=he[ae];e.nodeTest.matches(N,o)&&D.push(N)}}break;case q.PARENT:l=null,o.contextNode!==o.virtualRoot&&(o.contextNode.nodeType==W.ATTRIBUTE_NODE?l=M.getOwnerElement(o.contextNode):l=o.contextNode.parentNode),l!=null&&e.nodeTest.matches(l,o)&&D.push(l);break;case q.PRECEDING:var Re;o.virtualRoot!=null?Re=[o.virtualRoot]:Re=[z(o.contextNode)];e:for(;Re.length>0;)for(var l=Re.pop();l!=null;){if(l==o.contextNode)break e;e.nodeTest.matches(l,o)&&D.unshift(l),l.firstChild!=null?(Re.push(l.nextSibling),l=l.firstChild):l=l.nextSibling}break;case q.PRECEDINGSIBLING:if(o.contextNode===o.virtualRoot)break;for(var l=o.contextNode.previousSibling;l!=null;l=l.previousSibling)e.nodeTest.matches(l,o)&&D.push(l);break;case q.SELF:e.nodeTest.matches(o.contextNode,o)&&D.push(o.contextNode);break}return D};function le(e,o,N){return re(e.predicates,o,M.applyStep(e,o,N),p(ge,e.axis))}function Ue(e,o,N){return De(O(le.bind(null,N,e),o))}M.applySteps=function(e,o,N){return i(Ue.bind(null,o),N,e)},M.prototype.applyFilter=function(e,o){if(!this.filter)return{nodes:[e.contextNode]};var N=this.filter.evaluate(e);if(!Ne.instance_of(N,ie)){if(this.filterPredicates!=null&&this.filterPredicates.length>0||this.locationPath!=null)throw new Error("Path expression filter must evaluate to a nodeset if predicates or location path are used");return{nonNodes:N}}return{nodes:re(this.filterPredicates||[],o,N.toUnsortedArray(),!1)}},M.applyLocationPath=function(e,o,N){if(!e)return N;var D=e.absolute?[M.getRoot(o,N)]:N;return M.applySteps(e.steps,o,D)},M.prototype.evaluate=function(e){var o=ce(new Ze,e),N=this.applyFilter(e,o);if("nonNodes"in N)return N.nonNodes;var D=new ie;return D.addArray(M.applyLocationPath(this.locationPath,o,N.nodes)),D},M.predicateMatches=function(e,o){var N=e.evaluate(o);return Ne.instance_of(N,V)?o.contextPosition===N.numberValue():N.booleanValue()},M.predicateString=function(e){return d("[","]",e.toString())},M.predicatesString=function(e){return Y("",O(M.predicateString,e))},M.prototype.toString=function(){if(this.filter!=null){var e=B(this.filter);return Ne.instance_of(this.filter,H)?d("'","'",e):this.filterPredicates!=null&&this.filterPredicates.length?d("(",")",e)+M.predicatesString(this.filterPredicates):this.locationPath!=null?e+(this.locationPath.absolute?"":"/")+B(this.locationPath):e}return B(this.locationPath)},M.getOwnerElement=function(e){if(e.ownerElement)return e.ownerElement;try{if(e.selectSingleNode)return e.selectSingleNode("..")}catch{}for(var o=e.nodeType==W.DOCUMENT_NODE?e:e.ownerDocument,N=o.getElementsByTagName("*"),D=0;D<N.length;D++)for(var l=N.item(D),f=l.attributes,Te=0;Te<f.length;Te++){var he=f.item(Te);if(he===e)return l}return null},Se.prototype=new Object,Se.prototype.constructor=Se,Se.superclass=Object.prototype;function Se(e,o){arguments.length>0&&this.init(e,o)}Se.prototype.init=function(e,o){this.absolute=e,this.steps=o},Se.prototype.toString=function(){return(this.absolute?"/":"")+O(B,this.steps).join("/")},q.prototype=new Object,q.prototype.constructor=q,q.superclass=Object.prototype;function q(e,o,N){arguments.length>0&&this.init(e,o,N)}q.prototype.init=function(e,o,N){this.axis=e,this.nodeTest=o,this.predicates=N},q.prototype.toString=function(){return q.STEPNAMES[this.axis]+"::"+this.nodeTest.toString()+M.predicatesString(this.predicates)},q.ANCESTOR=0,q.ANCESTORORSELF=1,q.ATTRIBUTE=2,q.CHILD=3,q.DESCENDANT=4,q.DESCENDANTORSELF=5,q.FOLLOWING=6,q.FOLLOWINGSIBLING=7,q.NAMESPACE=8,q.PARENT=9,q.PRECEDING=10,q.PRECEDINGSIBLING=11,q.SELF=12,q.STEPNAMES=i(function(e,o){return e[o[0]]=o[1],e},{},[[q.ANCESTOR,"ancestor"],[q.ANCESTORORSELF,"ancestor-or-self"],[q.ATTRIBUTE,"attribute"],[q.CHILD,"child"],[q.DESCENDANT,"descendant"],[q.DESCENDANTORSELF,"descendant-or-self"],[q.FOLLOWING,"following"],[q.FOLLOWINGSIBLING,"following-sibling"],[q.NAMESPACE,"namespace"],[q.PARENT,"parent"],[q.PRECEDING,"preceding"],[q.PRECEDINGSIBLING,"preceding-sibling"],[q.SELF,"self"]]);var ge=[q.ANCESTOR,q.ANCESTORORSELF,q.PARENT,q.PRECEDING,q.PRECEDINGSIBLING];_.prototype=new Object,_.prototype.constructor=_,_.superclass=Object.prototype;function _(e,o){arguments.length>0&&this.init(e,o)}_.prototype.init=function(e,o){this.type=e,this.value=o},_.prototype.toString=function(){return"<unknown nodetest type>"},_.prototype.matches=function(e,o){console.warn("unknown node test type")},_.NAMETESTANY=0,_.NAMETESTPREFIXANY=1,_.NAMETESTQNAME=2,_.COMMENT=3,_.TEXT=4,_.PI=5,_.NODE=6,_.isNodeType=function(e){return function(o){return p(e,o.nodeType)}},_.makeNodeTestType=function(e,o,N){var D=N||function(){};return D.prototype=new _(e),D.prototype.constructor=D,ce(D.prototype,o),D},_.makeNodeTypeTest=function(e,o,N){return new(_.makeNodeTestType(e,{matches:_.isNodeType(o),toString:g(N)}))},_.hasPrefix=function(e){return e.prefix||(e.nodeName||e.tagName).indexOf(":")!==-1},_.isElementOrAttribute=_.isNodeType([1,2]),_.nameSpaceMatches=function(e,o,N){var D=N.namespaceURI||"";if(!e)return!D||o.allowAnyNamespaceForNoPrefix&&!_.hasPrefix(N);var l=o.namespaceResolver.getNamespace(e,o.expressionContextNode);if(l==null)throw new Error("Cannot resolve QName "+e);return l===D},_.localNameMatches=function(e,o,N){var D=N.localName||N.nodeName;return o.caseInsensitive?e.toLowerCase()===D.toLowerCase():e===D},_.NameTestPrefixAny=_.makeNodeTestType(_.NAMETESTPREFIXANY,{matches:function(e,o){return _.isElementOrAttribute(e)&&_.nameSpaceMatches(this.prefix,o,e)},toString:function(){return this.prefix+":*"}},function(o){this.prefix=o}),_.NameTestQName=_.makeNodeTestType(_.NAMETESTQNAME,{matches:function(e,o){return _.isNodeType([W.ELEMENT_NODE,W.ATTRIBUTE_NODE,W.NAMESPACE_NODE])(e)&&_.nameSpaceMatches(this.prefix,o,e)&&_.localNameMatches(this.localName,o,e)},toString:function(){return this.name}},function(o){var N=o.split(":");this.name=o,this.prefix=N.length>1?N[0]:null,this.localName=N[N.length>1?1:0]}),_.PITest=_.makeNodeTestType(_.PI,{matches:function(e,o){return _.isNodeType([W.PROCESSING_INSTRUCTION_NODE])(e)&&(e.target||e.nodeName)===this.name},toString:function(){return d('processing-instruction("','")',this.name)}},function(e){this.name=e}),_.nameTestAny=_.makeNodeTypeTest(_.NAMETESTANY,[W.ELEMENT_NODE,W.ATTRIBUTE_NODE,W.NAMESPACE_NODE],"*"),_.textTest=_.makeNodeTypeTest(_.TEXT,[W.TEXT_NODE,W.CDATA_SECTION_NODE],"text()"),_.commentTest=_.makeNodeTypeTest(_.COMMENT,[W.COMMENT_NODE],"comment()"),_.nodeTest=_.makeNodeTypeTest(_.NODE,[W.ELEMENT_NODE,W.ATTRIBUTE_NODE,W.TEXT_NODE,W.CDATA_SECTION_NODE,W.PROCESSING_INSTRUCTION_NODE,W.COMMENT_NODE,W.DOCUMENT_NODE],"node()"),_.anyPiTest=_.makeNodeTypeTest(_.PI,[W.PROCESSING_INSTRUCTION_NODE],"processing-instruction()"),se.prototype=new v,se.prototype.constructor=se,se.superclass=v.prototype;function se(e){arguments.length>0&&this.init(e)}se.prototype.init=function(e){this.variable=e},se.prototype.toString=function(){return"$"+this.variable},se.prototype.evaluate=function(e){var o=Ne.resolveQName(this.variable,e.namespaceResolver,e.contextNode,!1);if(o[0]==null)throw new Error("Cannot resolve QName "+fn);var N=e.variableResolver.getVariable(o[1],o[0]);if(!N)throw qe.fromMessage("Undeclared variable: "+this.toString());return N},Be.prototype=new v,Be.prototype.constructor=Be,Be.superclass=v.prototype;function Be(e,o){arguments.length>0&&this.init(e,o)}Be.prototype.init=function(e,o){this.functionName=e,this.arguments=o},Be.prototype.toString=function(){for(var e=this.functionName+"(",o=0;o<this.arguments.length;o++)o>0&&(e+=", "),e+=this.arguments[o].toString();return e+")"},Be.prototype.evaluate=function(e){var o=Xe.getFunctionFromContext(this.functionName,e);if(!o)throw new Error("Unknown function "+this.functionName);var N=[e].concat(this.arguments);return o.apply(e.functionResolver.thisArg,N)};var de=new Object;de.equals=function(e,o){return e.equals(o)},de.notequal=function(e,o){return e.notequal(o)},de.lessthan=function(e,o){return e.lessthan(o)},de.greaterthan=function(e,o){return e.greaterthan(o)},de.lessthanorequal=function(e,o){return e.lessthanorequal(o)},de.greaterthanorequal=function(e,o){return e.greaterthanorequal(o)},H.prototype=new v,H.prototype.constructor=H,H.superclass=v.prototype;function H(e){arguments.length>0&&this.init(e)}H.prototype.init=function(e){this.str=String(e)},H.prototype.toString=function(){return this.str},H.prototype.evaluate=function(e){return this},H.prototype.string=function(){return this},H.prototype.number=function(){return new V(this.str)},H.prototype.bool=function(){return new Oe(this.str)},H.prototype.nodeset=function(){throw new Error("Cannot convert string to nodeset")},H.prototype.stringValue=function(){return this.str},H.prototype.numberValue=function(){return this.number().numberValue()},H.prototype.booleanValue=function(){return this.bool().booleanValue()},H.prototype.equals=function(e){return Ne.instance_of(e,Oe)?this.bool().equals(e):Ne.instance_of(e,V)?this.number().equals(e):Ne.instance_of(e,ie)?e.compareWithString(this,de.equals):new Oe(this.str==e.str)},H.prototype.notequal=function(e){return Ne.instance_of(e,Oe)?this.bool().notequal(e):Ne.instance_of(e,V)?this.number().notequal(e):Ne.instance_of(e,ie)?e.compareWithString(this,de.notequal):new Oe(this.str!=e.str)},H.prototype.lessthan=function(e){return this.number().lessthan(e)},H.prototype.greaterthan=function(e){return this.number().greaterthan(e)},H.prototype.lessthanorequal=function(e){return this.number().lessthanorequal(e)},H.prototype.greaterthanorequal=function(e){return this.number().greaterthanorequal(e)},V.prototype=new v,V.prototype.constructor=V,V.superclass=v.prototype;function V(e){arguments.length>0&&this.init(e)}V.prototype.init=function(e){this.num=typeof e=="string"?this.parse(e):Number(e)},V.prototype.numberFormat=/^\s*-?[0-9]*\.?[0-9]+\s*$/,V.prototype.parse=function(e){return this.numberFormat.test(e)?parseFloat(e):Number.NaN};function ve(e){for(var o=e.split("e-"),N=o[0].replace(".",""),D=Number(o[1]),l=0;l<D-1;l+=1)N="0"+N;return"0."+N}function Qe(e){for(var o=e.split("e"),N=o[0].replace(".",""),D=Number(o[1]),l=D+1-N.length,f=0;f<l;f+=1)N+="0";return N}V.prototype.toString=function(){var e=this.num.toString();return e.indexOf("e-")!==-1?ve(e):e.indexOf("e")!==-1?Qe(e):e},V.prototype.evaluate=function(e){return this},V.prototype.string=function(){return new H(this.toString())},V.prototype.number=function(){return this},V.prototype.bool=function(){return new Oe(this.num)},V.prototype.nodeset=function(){throw new Error("Cannot convert number to nodeset")},V.prototype.stringValue=function(){return this.string().stringValue()},V.prototype.numberValue=function(){return this.num},V.prototype.booleanValue=function(){return this.bool().booleanValue()},V.prototype.negate=function(){return new V(-this.num)},V.prototype.equals=function(e){return Ne.instance_of(e,Oe)?this.bool().equals(e):Ne.instance_of(e,H)?this.equals(e.number()):Ne.instance_of(e,ie)?e.compareWithNumber(this,de.equals):new Oe(this.num==e.num)},V.prototype.notequal=function(e){return Ne.instance_of(e,Oe)?this.bool().notequal(e):Ne.instance_of(e,H)?this.notequal(e.number()):Ne.instance_of(e,ie)?e.compareWithNumber(this,de.notequal):new Oe(this.num!=e.num)},V.prototype.lessthan=function(e){return Ne.instance_of(e,ie)?e.compareWithNumber(this,de.greaterthan):Ne.instance_of(e,Oe)||Ne.instance_of(e,H)?this.lessthan(e.number()):new Oe(this.num<e.num)},V.prototype.greaterthan=function(e){return Ne.instance_of(e,ie)?e.compareWithNumber(this,de.lessthan):Ne.instance_of(e,Oe)||Ne.instance_of(e,H)?this.greaterthan(e.number()):new Oe(this.num>e.num)},V.prototype.lessthanorequal=function(e){return Ne.instance_of(e,ie)?e.compareWithNumber(this,de.greaterthanorequal):Ne.instance_of(e,Oe)||Ne.instance_of(e,H)?this.lessthanorequal(e.number()):new Oe(this.num<=e.num)},V.prototype.greaterthanorequal=function(e){return Ne.instance_of(e,ie)?e.compareWithNumber(this,de.lessthanorequal):Ne.instance_of(e,Oe)||Ne.instance_of(e,H)?this.greaterthanorequal(e.number()):new Oe(this.num>=e.num)},V.prototype.plus=function(e){return new V(this.num+e.num)},V.prototype.minus=function(e){return new V(this.num-e.num)},V.prototype.multiply=function(e){return new V(this.num*e.num)},V.prototype.div=function(e){return new V(this.num/e.num)},V.prototype.mod=function(e){return new V(this.num%e.num)},Oe.prototype=new v,Oe.prototype.constructor=Oe,Oe.superclass=v.prototype;function Oe(e){arguments.length>0&&this.init(e)}Oe.prototype.init=function(e){this.b=!!e},Oe.prototype.toString=function(){return this.b.toString()},Oe.prototype.evaluate=function(e){return this},Oe.prototype.string=function(){return new H(this.b)},Oe.prototype.number=function(){return new V(this.b)},Oe.prototype.bool=function(){return this},Oe.prototype.nodeset=function(){throw new Error("Cannot convert boolean to nodeset")},Oe.prototype.stringValue=function(){return this.string().stringValue()},Oe.prototype.numberValue=function(){return this.number().numberValue()},Oe.prototype.booleanValue=function(){return this.b},Oe.prototype.not=function(){return new Oe(!this.b)},Oe.prototype.equals=function(e){return Ne.instance_of(e,H)||Ne.instance_of(e,V)?this.equals(e.bool()):Ne.instance_of(e,ie)?e.compareWithBoolean(this,de.equals):new Oe(this.b==e.b)},Oe.prototype.notequal=function(e){return Ne.instance_of(e,H)||Ne.instance_of(e,V)?this.notequal(e.bool()):Ne.instance_of(e,ie)?e.compareWithBoolean(this,de.notequal):new Oe(this.b!=e.b)},Oe.prototype.lessthan=function(e){return this.number().lessthan(e)},Oe.prototype.greaterthan=function(e){return this.number().greaterthan(e)},Oe.prototype.lessthanorequal=function(e){return this.number().lessthanorequal(e)},Oe.prototype.greaterthanorequal=function(e){return this.number().greaterthanorequal(e)},Oe.true_=new Oe(!0),Oe.false_=new Oe(!1),we.prototype=new Object,we.prototype.constructor=we,we.superclass=Object.prototype;function we(e){this.init(e)}we.prototype.init=function(e){this.left=null,this.right=null,this.node=e,this.depth=1},we.prototype.balance=function(){var e=this.left==null?0:this.left.depth,o=this.right==null?0:this.right.depth;if(e>o+1){var N=this.left.left==null?0:this.left.left.depth,D=this.left.right==null?0:this.left.right.depth;N<D&&this.left.rotateRR(),this.rotateLL()}else if(e+1<o){var l=this.right.right==null?0:this.right.right.depth,f=this.right.left==null?0:this.right.left.depth;f>l&&this.right.rotateLL(),this.rotateRR()}},we.prototype.rotateLL=function(){var e=this.node,o=this.right;this.node=this.left.node,this.right=this.left,this.left=this.left.left,this.right.left=this.right.right,this.right.right=o,this.right.node=e,this.right.updateInNewLocation(),this.updateInNewLocation()},we.prototype.rotateRR=function(){var e=this.node,o=this.left;this.node=this.right.node,this.left=this.right,this.right=this.right.right,this.left.right=this.left.left,this.left.left=o,this.left.node=e,this.left.updateInNewLocation(),this.updateInNewLocation()},we.prototype.updateInNewLocation=function(){this.getDepthFromChildren()},we.prototype.getDepthFromChildren=function(){this.depth=this.node==null?0:1,this.left!=null&&(this.depth=this.left.depth+1),this.right!=null&&this.depth<=this.right.depth&&(this.depth=this.right.depth+1)};function Gt(e,o){if(e===o)return 0;if(e.compareDocumentPosition){var N=e.compareDocumentPosition(o);return N&1||N&10?1:N&20?-1:0}for(var D=0,l=0,f=e;f!=null;f=f.parentNode||f.ownerElement)D++;for(var Te=o;Te!=null;Te=Te.parentNode||Te.ownerElement)l++;if(D>l){for(;D>l;)e=e.parentNode||e.ownerElement,D--;if(e===o)return 1}else if(l>D){for(;l>D;)o=o.parentNode||o.ownerElement,l--;if(e===o)return-1}for(var he=e.parentNode||e.ownerElement,Me=o.parentNode||o.ownerElement;he!==Me;)e=he,o=Me,he=e.parentNode||e.ownerElement,Me=o.parentNode||o.ownerElement;var ae=Ft(e),Re=Ft(o);if(ae&&!Re)return-1;if(!ae&&Re)return 1;if(e.isXPathNamespace){if(e.nodeValue===ee.XML_NAMESPACE_URI||!o.isXPathNamespace)return-1;if(o.nodeValue===ee.XML_NAMESPACE_URI)return 1}else if(o.isXPathNamespace)return 1;if(he)for(var Ke=ae?he.attributes:he.childNodes,ze=Ke.length,He=e.baseNode||e,Tt=o.baseNode||o,tt=0;tt<ze;tt+=1){var lt=Ke[tt];if(lt===He)return-1;if(lt===Tt)return 1}throw new Error("Unexpected: could not determine node order")}we.prototype.add=function(e){if(e===this.node)return!1;var o=Gt(e,this.node),N=!1;return o==-1?this.left==null?(this.left=new we(e),N=!0):(N=this.left.add(e),N&&this.balance()):o==1&&(this.right==null?(this.right=new we(e),N=!0):(N=this.right.add(e),N&&this.balance())),N&&this.getDepthFromChildren(),N},ie.prototype=new v,ie.prototype.constructor=ie,ie.superclass=v.prototype;function ie(){this.init()}ie.prototype.init=function(){this.tree=null,this.nodes=[],this.size=0},ie.prototype.toString=function(){var e=this.first();return e==null?"":this.stringForNode(e)},ie.prototype.evaluate=function(e){return this},ie.prototype.string=function(){return new H(this.toString())},ie.prototype.stringValue=function(){return this.toString()},ie.prototype.number=function(){return new V(this.string())},ie.prototype.numberValue=function(){return Number(this.string())},ie.prototype.bool=function(){return new Oe(this.booleanValue())},ie.prototype.booleanValue=function(){return!!this.size},ie.prototype.nodeset=function(){return this},ie.prototype.stringForNode=function(e){return e.nodeType==W.DOCUMENT_NODE||e.nodeType==W.ELEMENT_NODE||e.nodeType===W.DOCUMENT_FRAGMENT_NODE?this.stringForContainerNode(e):e.nodeType===W.ATTRIBUTE_NODE?e.value||e.nodeValue:e.isNamespaceNode?e.namespace:e.nodeValue},ie.prototype.stringForContainerNode=function(e){for(var o="",N=e.firstChild;N!=null;N=N.nextSibling){var D=N.nodeType;(D===1||D===3||D===4||D===9||D===11)&&(o+=this.stringForNode(N))}return o},ie.prototype.buildTree=function(){if(!this.tree&&this.nodes.length){this.tree=new we(this.nodes[0]);for(var e=1;e<this.nodes.length;e+=1)this.tree.add(this.nodes[e])}return this.tree},ie.prototype.first=function(){var e=this.buildTree();if(e==null)return null;for(;e.left!=null;)e=e.left;return e.node},ie.prototype.add=function(e){for(var o=0;o<this.nodes.length;o+=1)if(e===this.nodes[o])return;this.tree=null,this.nodes.push(e),this.size+=1},ie.prototype.addArray=function(e){var o=this;I(function(N){o.add(N)},e)},ie.prototype.toArray=function(){var e=[];return this.toArrayRec(this.buildTree(),e),e},ie.prototype.toArrayRec=function(e,o){e!=null&&(this.toArrayRec(e.left,o),o.push(e.node),this.toArrayRec(e.right,o))},ie.prototype.toUnsortedArray=function(){return this.nodes.slice()},ie.prototype.compareWithString=function(e,o){for(var N=this.toUnsortedArray(),D=0;D<N.length;D++){var l=N[D],f=new H(this.stringForNode(l)),Te=o(f,e);if(Te.booleanValue())return Te}return new Oe(!1)},ie.prototype.compareWithNumber=function(e,o){for(var N=this.toUnsortedArray(),D=0;D<N.length;D++){var l=N[D],f=new V(this.stringForNode(l)),Te=o(f,e);if(Te.booleanValue())return Te}return new Oe(!1)},ie.prototype.compareWithBoolean=function(e,o){return o(this.bool(),e)},ie.prototype.compareWithNodeSet=function(e,o){for(var N=this.toUnsortedArray(),D=function(he,Me){return o(Me,he)},l=0;l<N.length;l++){var f=new H(this.stringForNode(N[l])),Te=e.compareWithString(f,D);if(Te.booleanValue())return Te}return new Oe(!1)},ie.compareWith=c(function(e,o){return Ne.instance_of(o,H)?this.compareWithString(o,e):Ne.instance_of(o,V)?this.compareWithNumber(o,e):Ne.instance_of(o,Oe)?this.compareWithBoolean(o,e):this.compareWithNodeSet(o,e)}),ie.prototype.equals=ie.compareWith(de.equals),ie.prototype.notequal=ie.compareWith(de.notequal),ie.prototype.lessthan=ie.compareWith(de.lessthan),ie.prototype.greaterthan=ie.compareWith(de.greaterthan),ie.prototype.lessthanorequal=ie.compareWith(de.lessthanorequal),ie.prototype.greaterthanorequal=ie.compareWith(de.greaterthanorequal),ie.prototype.union=function(e){var o=new ie;return o.addArray(this.toUnsortedArray()),o.addArray(e.toUnsortedArray()),o},nt.prototype=new Object,nt.prototype.constructor=nt,nt.superclass=Object.prototype;function nt(e,o,N,D){this.isXPathNamespace=!0,this.baseNode=o,this.ownerDocument=D.ownerDocument,this.nodeName=e,this.prefix=e,this.localName=e,this.namespaceURI=null,this.nodeValue=N,this.ownerElement=D,this.nodeType=W.NAMESPACE_NODE}nt.prototype.toString=function(){return'{ "'+this.prefix+'", "'+this.namespaceURI+'" }'},Ze.prototype=new Object,Ze.prototype.constructor=Ze,Ze.superclass=Object.prototype;function Ze(e,o,N){this.variableResolver=e??new et,this.namespaceResolver=o??new je,this.functionResolver=N??new Xe}Ze.prototype.extend=function(e){return ce(new Ze,this,e)},et.prototype=new Object,et.prototype.constructor=et,et.superclass=Object.prototype;function et(){}et.prototype.getVariable=function(e,o){return null},Xe.prototype=new Object,Xe.prototype.constructor=Xe,Xe.superclass=Object.prototype;function Xe(e){this.thisArg=e??Le,this.functions=new Object,this.addStandardFunctions()}Xe.prototype.addStandardFunctions=function(){this.functions["{}last"]=Le.last,this.functions["{}position"]=Le.position,this.functions["{}count"]=Le.count,this.functions["{}id"]=Le.id,this.functions["{}local-name"]=Le.localName,this.functions["{}namespace-uri"]=Le.namespaceURI,this.functions["{}name"]=Le.name,this.functions["{}string"]=Le.string,this.functions["{}concat"]=Le.concat,this.functions["{}starts-with"]=Le.startsWith,this.functions["{}contains"]=Le.contains,this.functions["{}substring-before"]=Le.substringBefore,this.functions["{}substring-after"]=Le.substringAfter,this.functions["{}substring"]=Le.substring,this.functions["{}string-length"]=Le.stringLength,this.functions["{}normalize-space"]=Le.normalizeSpace,this.functions["{}translate"]=Le.translate,this.functions["{}boolean"]=Le.boolean_,this.functions["{}not"]=Le.not,this.functions["{}true"]=Le.true_,this.functions["{}false"]=Le.false_,this.functions["{}lang"]=Le.lang,this.functions["{}number"]=Le.number,this.functions["{}sum"]=Le.sum,this.functions["{}floor"]=Le.floor,this.functions["{}ceiling"]=Le.ceiling,this.functions["{}round"]=Le.round},Xe.prototype.addFunction=function(e,o,N){this.functions["{"+e+"}"+o]=N},Xe.getFunctionFromContext=function(e,o){var N=Ne.resolveQName(e,o.namespaceResolver,o.contextNode,!1);if(N[0]===null)throw new Error("Cannot resolve QName "+name);return o.functionResolver.getFunction(N[1],N[0])},Xe.prototype.getFunction=function(e,o){return this.functions["{"+o+"}"+e]},je.prototype=new Object,je.prototype.constructor=je,je.superclass=Object.prototype;function je(){}je.prototype.getNamespace=function(e,o){if(e=="xml")return ee.XML_NAMESPACE_URI;if(e=="xmlns")return ee.XMLNS_NAMESPACE_URI;for(o.nodeType==W.DOCUMENT_NODE?o=o.documentElement:o.nodeType==W.ATTRIBUTE_NODE?o=M.getOwnerElement(o):o.nodeType!=W.ELEMENT_NODE&&(o=o.parentNode);o!=null&&o.nodeType==W.ELEMENT_NODE;){for(var N=o.attributes,D=0;D<N.length;D++){var l=N.item(D),f=l.name||l.nodeName;if(f==="xmlns"&&e===""||f==="xmlns:"+e)return String(l.value||l.nodeValue)}o=o.parentNode}return null};var Le=new Object;Le.last=function(e){if(arguments.length!=1)throw new Error("Function last expects ()");return new V(e.contextSize)},Le.position=function(e){if(arguments.length!=1)throw new Error("Function position expects ()");return new V(e.contextPosition)},Le.count=function(){var e=arguments[0],o;if(arguments.length!=2||!Ne.instance_of(o=arguments[1].evaluate(e),ie))throw new Error("Function count expects (node-set)");return new V(o.size)},Le.id=function(){var e=arguments[0],o;if(arguments.length!=2)throw new Error("Function id expects (object)");o=arguments[1].evaluate(e),Ne.instance_of(o,ie)?o=o.toArray().join(" "):o=o.stringValue();for(var N=o.split(/[\x0d\x0a\x09\x20]+/),D=new ie,l=e.contextNode.nodeType==W.DOCUMENT_NODE?e.contextNode:e.contextNode.ownerDocument,f=0;f<N.length;f++){var Te;l.getElementById?Te=l.getElementById(N[f]):Te=Ne.getElementById(l,N[f]),Te!=null&&D.add(Te)}return D},Le.localName=function(e,o){var N;if(arguments.length==1)N=e.contextNode;else if(arguments.length==2)N=o.evaluate(e).first();else throw new Error("Function local-name expects (node-set?)");return N==null?new H(""):new H(N.localName||N.baseName||N.target||N.nodeName||"")},Le.namespaceURI=function(){var e=arguments[0],o;if(arguments.length==1)o=e.contextNode;else if(arguments.length==2)o=arguments[1].evaluate(e).first();else throw new Error("Function namespace-uri expects (node-set?)");return o==null?new H(""):new H(o.namespaceURI||"")},Le.name=function(){var e=arguments[0],o;if(arguments.length==1)o=e.contextNode;else if(arguments.length==2)o=arguments[1].evaluate(e).first();else throw new Error("Function name expects (node-set?)");return o==null?new H(""):o.nodeType==W.ELEMENT_NODE?new H(o.nodeName):o.nodeType==W.ATTRIBUTE_NODE?new H(o.name||o.nodeName):o.nodeType===W.PROCESSING_INSTRUCTION_NODE?new H(o.target||o.nodeName):o.localName==null?new H(""):new H(o.localName)},Le.string=function(){var e=arguments[0];if(arguments.length==1)return new H(ie.prototype.stringForNode(e.contextNode));if(arguments.length==2)return arguments[1].evaluate(e).string();throw new Error("Function string expects (object?)")},Le.concat=function(e){if(arguments.length<3)throw new Error("Function concat expects (string, string[, string]*)");for(var o="",N=1;N<arguments.length;N++)o+=arguments[N].evaluate(e).stringValue();return new H(o)},Le.startsWith=function(){var e=arguments[0];if(arguments.length!=3)throw new Error("Function startsWith expects (string, string)");var o=arguments[1].evaluate(e).stringValue(),N=arguments[2].evaluate(e).stringValue();return new Oe(o.substring(0,N.length)==N)},Le.contains=function(){var e=arguments[0];if(arguments.length!=3)throw new Error("Function contains expects (string, string)");var o=arguments[1].evaluate(e).stringValue(),N=arguments[2].evaluate(e).stringValue();return new Oe(o.indexOf(N)!==-1)},Le.substringBefore=function(){var e=arguments[0];if(arguments.length!=3)throw new Error("Function substring-before expects (string, string)");var o=arguments[1].evaluate(e).stringValue(),N=arguments[2].evaluate(e).stringValue();return new H(o.substring(0,o.indexOf(N)))},Le.substringAfter=function(){var e=arguments[0];if(arguments.length!=3)throw new Error("Function substring-after expects (string, string)");var o=arguments[1].evaluate(e).stringValue(),N=arguments[2].evaluate(e).stringValue();if(N.length==0)return new H(o);var D=o.indexOf(N);return D==-1?new H(""):new H(o.substring(D+N.length))},Le.substring=function(){var e=arguments[0];if(!(arguments.length==3||arguments.length==4))throw new Error("Function substring expects (string, number, number?)");var o=arguments[1].evaluate(e).stringValue(),N=Math.round(arguments[2].evaluate(e).numberValue())-1,D=arguments.length==4?N+Math.round(arguments[3].evaluate(e).numberValue()):void 0;return new H(o.substring(N,D))},Le.stringLength=function(){var e=arguments[0],o;if(arguments.length==1)o=ie.prototype.stringForNode(e.contextNode);else if(arguments.length==2)o=arguments[1].evaluate(e).stringValue();else throw new Error("Function string-length expects (string?)");return new V(o.length)},Le.normalizeSpace=function(){var e=arguments[0],o;if(arguments.length==1)o=ie.prototype.stringForNode(e.contextNode);else if(arguments.length==2)o=arguments[1].evaluate(e).stringValue();else throw new Error("Function normalize-space expects (string?)");for(var N=0,D=o.length-1;Ne.isSpace(o.charCodeAt(D));)D--;for(var l="";N<=D&&Ne.isSpace(o.charCodeAt(N));)N++;for(;N<=D;)if(Ne.isSpace(o.charCodeAt(N)))for(l+=" ";N<=D&&Ne.isSpace(o.charCodeAt(N));)N++;else l+=o.charAt(N),N++;return new H(l)},Le.translate=function(e,o,N,D){if(arguments.length!=4)throw new Error("Function translate expects (string, string, string)");var l=o.evaluate(e).stringValue(),f=N.evaluate(e).stringValue(),Te=D.evaluate(e).stringValue(),he=i(function(ae,Re,Ke){return Re in ae||(ae[Re]=Ke>Te.length?"":Te[Ke]),ae},{},f),Me=Y("",O(function(ae){return ae in he?he[ae]:ae},l));return new H(Me)},Le.boolean_=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function boolean expects (object)");return arguments[1].evaluate(e).bool()},Le.not=function(e,o){if(arguments.length!=2)throw new Error("Function not expects (object)");return o.evaluate(e).bool().not()},Le.true_=function(){if(arguments.length!=1)throw new Error("Function true expects ()");return Oe.true_},Le.false_=function(){if(arguments.length!=1)throw new Error("Function false expects ()");return Oe.false_},Le.lang=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function lang expects (string)");for(var o,N=e.contextNode;N!=null&&N.nodeType!=W.DOCUMENT_NODE;N=N.parentNode){var D=N.getAttributeNS(ee.XML_NAMESPACE_URI,"lang");if(D!=null){o=String(D);break}}if(o==null)return Oe.false_;var l=arguments[1].evaluate(e).stringValue();return new Oe(o.substring(0,l.length)==l&&(o.length==l.length||o.charAt(l.length)=="-"))},Le.number=function(){var e=arguments[0];if(!(arguments.length==1||arguments.length==2))throw new Error("Function number expects (object?)");return arguments.length==1?new V(ie.prototype.stringForNode(e.contextNode)):arguments[1].evaluate(e).number()},Le.sum=function(){var e=arguments[0],o;if(arguments.length!=2||!Ne.instance_of(o=arguments[1].evaluate(e),ie))throw new Error("Function sum expects (node-set)");o=o.toUnsortedArray();for(var N=0,D=0;D<o.length;D++)N+=new V(ie.prototype.stringForNode(o[D])).numberValue();return new V(N)},Le.floor=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function floor expects (number)");return new V(Math.floor(arguments[1].evaluate(e).numberValue()))},Le.ceiling=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function ceiling expects (number)");return new V(Math.ceil(arguments[1].evaluate(e).numberValue()))},Le.round=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function round expects (number)");return new V(Math.round(arguments[1].evaluate(e).numberValue()))};var Ne=new Object,Ft=function(e){return e&&(e.nodeType===W.ATTRIBUTE_NODE||e.ownerElement||e.isXPathNamespace)};Ne.splitQName=function(e){var o=e.indexOf(":");return o==-1?[null,e]:[e.substring(0,o),e.substring(o+1)]},Ne.resolveQName=function(e,o,N,D){var l=Ne.splitQName(e);return l[0]!=null?l[0]=o.getNamespace(l[0],N):D?(l[0]=o.getNamespace("",N),l[0]==null&&(l[0]="")):l[0]="",l},Ne.isSpace=function(e){return e==9||e==13||e==10||e==32},Ne.isLetter=function(e){return e>=65&&e<=90||e>=97&&e<=122||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=255||e>=256&&e<=305||e>=308&&e<=318||e>=321&&e<=328||e>=330&&e<=382||e>=384&&e<=451||e>=461&&e<=496||e>=500&&e<=501||e>=506&&e<=535||e>=592&&e<=680||e>=699&&e<=705||e==902||e>=904&&e<=906||e==908||e>=910&&e<=929||e>=931&&e<=974||e>=976&&e<=982||e==986||e==988||e==990||e==992||e>=994&&e<=1011||e>=1025&&e<=1036||e>=1038&&e<=1103||e>=1105&&e<=1116||e>=1118&&e<=1153||e>=1168&&e<=1220||e>=1223&&e<=1224||e>=1227&&e<=1228||e>=1232&&e<=1259||e>=1262&&e<=1269||e>=1272&&e<=1273||e>=1329&&e<=1366||e==1369||e>=1377&&e<=1414||e>=1488&&e<=1514||e>=1520&&e<=1522||e>=1569&&e<=1594||e>=1601&&e<=1610||e>=1649&&e<=1719||e>=1722&&e<=1726||e>=1728&&e<=1742||e>=1744&&e<=1747||e==1749||e>=1765&&e<=1766||e>=2309&&e<=2361||e==2365||e>=2392&&e<=2401||e>=2437&&e<=2444||e>=2447&&e<=2448||e>=2451&&e<=2472||e>=2474&&e<=2480||e==2482||e>=2486&&e<=2489||e>=2524&&e<=2525||e>=2527&&e<=2529||e>=2544&&e<=2545||e>=2565&&e<=2570||e>=2575&&e<=2576||e>=2579&&e<=2600||e>=2602&&e<=2608||e>=2610&&e<=2611||e>=2613&&e<=2614||e>=2616&&e<=2617||e>=2649&&e<=2652||e==2654||e>=2674&&e<=2676||e>=2693&&e<=2699||e==2701||e>=2703&&e<=2705||e>=2707&&e<=2728||e>=2730&&e<=2736||e>=2738&&e<=2739||e>=2741&&e<=2745||e==2749||e==2784||e>=2821&&e<=2828||e>=2831&&e<=2832||e>=2835&&e<=2856||e>=2858&&e<=2864||e>=2866&&e<=2867||e>=2870&&e<=2873||e==2877||e>=2908&&e<=2909||e>=2911&&e<=2913||e>=2949&&e<=2954||e>=2958&&e<=2960||e>=2962&&e<=2965||e>=2969&&e<=2970||e==2972||e>=2974&&e<=2975||e>=2979&&e<=2980||e>=2984&&e<=2986||e>=2990&&e<=2997||e>=2999&&e<=3001||e>=3077&&e<=3084||e>=3086&&e<=3088||e>=3090&&e<=3112||e>=3114&&e<=3123||e>=3125&&e<=3129||e>=3168&&e<=3169||e>=3205&&e<=3212||e>=3214&&e<=3216||e>=3218&&e<=3240||e>=3242&&e<=3251||e>=3253&&e<=3257||e==3294||e>=3296&&e<=3297||e>=3333&&e<=3340||e>=3342&&e<=3344||e>=3346&&e<=3368||e>=3370&&e<=3385||e>=3424&&e<=3425||e>=3585&&e<=3630||e==3632||e>=3634&&e<=3635||e>=3648&&e<=3653||e>=3713&&e<=3714||e==3716||e>=3719&&e<=3720||e==3722||e==3725||e>=3732&&e<=3735||e>=3737&&e<=3743||e>=3745&&e<=3747||e==3749||e==3751||e>=3754&&e<=3755||e>=3757&&e<=3758||e==3760||e>=3762&&e<=3763||e==3773||e>=3776&&e<=3780||e>=3904&&e<=3911||e>=3913&&e<=3945||e>=4256&&e<=4293||e>=4304&&e<=4342||e==4352||e>=4354&&e<=4355||e>=4357&&e<=4359||e==4361||e>=4363&&e<=4364||e>=4366&&e<=4370||e==4412||e==4414||e==4416||e==4428||e==4430||e==4432||e>=4436&&e<=4437||e==4441||e>=4447&&e<=4449||e==4451||e==4453||e==4455||e==4457||e>=4461&&e<=4462||e>=4466&&e<=4467||e==4469||e==4510||e==4520||e==4523||e>=4526&&e<=4527||e>=4535&&e<=4536||e==4538||e>=4540&&e<=4546||e==4587||e==4592||e==4601||e>=7680&&e<=7835||e>=7840&&e<=7929||e>=7936&&e<=7957||e>=7960&&e<=7965||e>=7968&&e<=8005||e>=8008&&e<=8013||e>=8016&&e<=8023||e==8025||e==8027||e==8029||e>=8031&&e<=8061||e>=8064&&e<=8116||e>=8118&&e<=8124||e==8126||e>=8130&&e<=8132||e>=8134&&e<=8140||e>=8144&&e<=8147||e>=8150&&e<=8155||e>=8160&&e<=8172||e>=8178&&e<=8180||e>=8182&&e<=8188||e==8486||e>=8490&&e<=8491||e==8494||e>=8576&&e<=8578||e>=12353&&e<=12436||e>=12449&&e<=12538||e>=12549&&e<=12588||e>=44032&&e<=55203||e>=19968&&e<=40869||e==12295||e>=12321&&e<=12329},Ne.isNCNameChar=function(e){return e>=48&&e<=57||e>=1632&&e<=1641||e>=1776&&e<=1785||e>=2406&&e<=2415||e>=2534&&e<=2543||e>=2662&&e<=2671||e>=2790&&e<=2799||e>=2918&&e<=2927||e>=3047&&e<=3055||e>=3174&&e<=3183||e>=3302&&e<=3311||e>=3430&&e<=3439||e>=3664&&e<=3673||e>=3792&&e<=3801||e>=3872&&e<=3881||e==46||e==45||e==95||Ne.isLetter(e)||e>=768&&e<=837||e>=864&&e<=865||e>=1155&&e<=1158||e>=1425&&e<=1441||e>=1443&&e<=1465||e>=1467&&e<=1469||e==1471||e>=1473&&e<=1474||e==1476||e>=1611&&e<=1618||e==1648||e>=1750&&e<=1756||e>=1757&&e<=1759||e>=1760&&e<=1764||e>=1767&&e<=1768||e>=1770&&e<=1773||e>=2305&&e<=2307||e==2364||e>=2366&&e<=2380||e==2381||e>=2385&&e<=2388||e>=2402&&e<=2403||e>=2433&&e<=2435||e==2492||e==2494||e==2495||e>=2496&&e<=2500||e>=2503&&e<=2504||e>=2507&&e<=2509||e==2519||e>=2530&&e<=2531||e==2562||e==2620||e==2622||e==2623||e>=2624&&e<=2626||e>=2631&&e<=2632||e>=2635&&e<=2637||e>=2672&&e<=2673||e>=2689&&e<=2691||e==2748||e>=2750&&e<=2757||e>=2759&&e<=2761||e>=2763&&e<=2765||e>=2817&&e<=2819||e==2876||e>=2878&&e<=2883||e>=2887&&e<=2888||e>=2891&&e<=2893||e>=2902&&e<=2903||e>=2946&&e<=2947||e>=3006&&e<=3010||e>=3014&&e<=3016||e>=3018&&e<=3021||e==3031||e>=3073&&e<=3075||e>=3134&&e<=3140||e>=3142&&e<=3144||e>=3146&&e<=3149||e>=3157&&e<=3158||e>=3202&&e<=3203||e>=3262&&e<=3268||e>=3270&&e<=3272||e>=3274&&e<=3277||e>=3285&&e<=3286||e>=3330&&e<=3331||e>=3390&&e<=3395||e>=3398&&e<=3400||e>=3402&&e<=3405||e==3415||e==3633||e>=3636&&e<=3642||e>=3655&&e<=3662||e==3761||e>=3764&&e<=3769||e>=3771&&e<=3772||e>=3784&&e<=3789||e>=3864&&e<=3865||e==3893||e==3895||e==3897||e==3902||e==3903||e>=3953&&e<=3972||e>=3974&&e<=3979||e>=3984&&e<=3989||e==3991||e>=3993&&e<=4013||e>=4017&&e<=4023||e==4025||e>=8400&&e<=8412||e==8417||e>=12330&&e<=12335||e==12441||e==12442||e==183||e==720||e==721||e==903||e==1600||e==3654||e==3782||e==12293||e>=12337&&e<=12341||e>=12445&&e<=12446||e>=12540&&e<=12542},Ne.coalesceText=function(e){for(var o=e.firstChild;o!=null;o=o.nextSibling)if(o.nodeType==W.TEXT_NODE||o.nodeType==W.CDATA_SECTION_NODE){var N=o.nodeValue,D=o;for(o=o.nextSibling;o!=null&&(o.nodeType==W.TEXT_NODE||o.nodeType==W.CDATA_SECTION_NODE);){N+=o.nodeValue;var l=o;o=o.nextSibling,l.parentNode.removeChild(l)}if(D.nodeType==W.CDATA_SECTION_NODE){var f=D.parentNode;if(D.nextSibling==null)f.removeChild(D),f.appendChild(f.ownerDocument.createTextNode(N));else{var Te=D.nextSibling;f.removeChild(D),f.insertBefore(f.ownerDocument.createTextNode(N),Te)}}else D.nodeValue=N;if(o==null)break}else o.nodeType==W.ELEMENT_NODE&&Ne.coalesceText(o)},Ne.instance_of=function(e,o){for(;e!=null;){if(e.constructor===o)return!0;if(e===Object)return!1;e=e.constructor.superclass}return!1},Ne.getElementById=function(e,o){if(e.nodeType==W.ELEMENT_NODE&&(e.getAttribute("id")==o||e.getAttributeNS(null,"id")==o))return e;for(var N=e.firstChild;N!=null;N=N.nextSibling){var D=Ne.getElementById(N,o);if(D!=null)return D}return null};var qe=function(){function e(N,D){var l=D?": "+D.toString():"";switch(N){case o.INVALID_EXPRESSION_ERR:return"Invalid expression"+l;case o.TYPE_ERR:return"Type error"+l}return null}function o(N,D,l){var f=Error.call(this,e(N,D)||l);return f.code=N,f.exception=D,f}return o.prototype=Object.create(Error.prototype),o.prototype.constructor=o,o.superclass=Error,o.prototype.toString=function(){return this.message},o.fromMessage=function(N,D){return new o(null,D,N)},o.INVALID_EXPRESSION_ERR=51,o.TYPE_ERR=52,o}();We.prototype={},We.prototype.constructor=We,We.superclass=Object.prototype;function We(e,o,N){this.xpath=N.parse(e),this.context=new Ze,this.context.namespaceResolver=new Rt(o)}We.getOwnerDocument=function(e){return e.nodeType===W.DOCUMENT_NODE?e:e.ownerDocument},We.detectHtmlDom=function(e){if(!e)return!1;var o=We.getOwnerDocument(e);try{return o.implementation.hasFeature("HTML","2.0")}catch{return!0}},We.prototype.evaluate=function(e,o,N){this.context.expressionContextNode=e,this.context.caseInsensitive=We.detectHtmlDom(e);var D=this.xpath.evaluate(this.context);return new fe(D,o)},Rt.prototype={},Rt.prototype.constructor=Rt,Rt.superclass=Object.prototype;function Rt(e){this.xpathNSResolver=e}Rt.prototype.getNamespace=function(e,o){return this.xpathNSResolver==null?null:this.xpathNSResolver.lookupNamespaceURI(e)},st.prototype={},st.prototype.constructor=st,st.superclass=Object.prototype;function st(e){this.node=e,this.namespaceResolver=new je}st.prototype.lookupNamespaceURI=function(e){return this.namespaceResolver.getNamespace(e,this.node)},fe.prototype={},fe.prototype.constructor=fe,fe.superclass=Object.prototype;function fe(e,o){switch(o==fe.ANY_TYPE&&(e.constructor===H?o=fe.STRING_TYPE:e.constructor===V?o=fe.NUMBER_TYPE:e.constructor===Oe?o=fe.BOOLEAN_TYPE:e.constructor===ie&&(o=fe.UNORDERED_NODE_ITERATOR_TYPE)),this.resultType=o,o){case fe.NUMBER_TYPE:this.numberValue=e.numberValue();return;case fe.STRING_TYPE:this.stringValue=e.stringValue();return;case fe.BOOLEAN_TYPE:this.booleanValue=e.booleanValue();return;case fe.ANY_UNORDERED_NODE_TYPE:case fe.FIRST_ORDERED_NODE_TYPE:if(e.constructor===ie){this.singleNodeValue=e.first();return}break;case fe.UNORDERED_NODE_ITERATOR_TYPE:case fe.ORDERED_NODE_ITERATOR_TYPE:if(e.constructor===ie){this.invalidIteratorState=!1,this.nodes=e.toArray(),this.iteratorIndex=0;return}break;case fe.UNORDERED_NODE_SNAPSHOT_TYPE:case fe.ORDERED_NODE_SNAPSHOT_TYPE:if(e.constructor===ie){this.nodes=e.toArray(),this.snapshotLength=this.nodes.length;return}break}throw new qe(qe.TYPE_ERR)}fe.prototype.iterateNext=function(){if(this.resultType!=fe.UNORDERED_NODE_ITERATOR_TYPE&&this.resultType!=fe.ORDERED_NODE_ITERATOR_TYPE)throw new qe(qe.TYPE_ERR);return this.nodes[this.iteratorIndex++]},fe.prototype.snapshotItem=function(e){if(this.resultType!=fe.UNORDERED_NODE_SNAPSHOT_TYPE&&this.resultType!=fe.ORDERED_NODE_SNAPSHOT_TYPE)throw new qe(qe.TYPE_ERR);return this.nodes[e]},fe.ANY_TYPE=0,fe.NUMBER_TYPE=1,fe.STRING_TYPE=2,fe.BOOLEAN_TYPE=3,fe.UNORDERED_NODE_ITERATOR_TYPE=4,fe.ORDERED_NODE_ITERATOR_TYPE=5,fe.UNORDERED_NODE_SNAPSHOT_TYPE=6,fe.ORDERED_NODE_SNAPSHOT_TYPE=7,fe.ANY_UNORDERED_NODE_TYPE=8,fe.FIRST_ORDERED_NODE_TYPE=9;function R(e,o){e.createExpression=function(N,D){try{return new We(N,D,o)}catch(l){throw new qe(qe.INVALID_EXPRESSION_ERR,l)}},e.createNSResolver=function(N){return new st(N)},e.evaluate=function(N,D,l,f,Te){if(f<0||f>9)throw{code:0,toString:function(){return"Request type not supported"}};return e.createExpression(N,l,o).evaluate(D,f,Te)}}try{var S=!0;try{document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("XPath",null)&&(S=!1)}catch{}S&&R(document,new u)}catch{}R(r,new u),function(){var e=new u,o=new je,N=new Xe,D=new et;function l(ne){return{getNamespace:function(ye,Je){var ut=ne(ye,Je);return ut||o.getNamespace(ye,Je)}}}function f(ne){return l(ne.getNamespace.bind(ne))}function Te(ne){return l(function(ye){return ne[ye]})}function he(ne){return ne&&typeof ne.getNamespace=="function"?f(ne):typeof ne=="function"?l(ne):typeof ne=="object"?Te(ne):o}function Me(ne){if(ne===null||typeof ne>"u"||ne instanceof H||ne instanceof Oe||ne instanceof V||ne instanceof ie)return ne;switch(typeof ne){case"string":return new H(ne);case"boolean":return new Oe(ne);case"number":return new V(ne)}var ye=new ie;return ye.addArray([].concat(ne)),ye}function ae(ne){return function(ye){var Je=Array.prototype.slice.call(arguments,1).map(function(CS){return CS.evaluate(ye)}),ut=ne.apply(this,[].concat(ye,Je));return Me(ut)}}function Re(ne){return{getFunction:function(ye,Je){var ut=ne(ye,Je);return ut?ae(ut):N.getFunction(ye,Je)}}}function Ke(ne){return Re(ne.getFunction.bind(ne))}function ze(ne){return Re(function(ye){return ne[ye]})}function He(ne){return ne&&typeof ne.getFunction=="function"?Ke(ne):typeof ne=="function"?Re(ne):typeof ne=="object"?ze(ne):N}function Tt(ne){return{getVariable:function(ye,Je){var ut=ne(ye,Je);return Me(ut)}}}function tt(ne){if(ne){if(typeof ne.getVariable=="function")return Tt(ne.getVariable.bind(ne));if(typeof ne=="function")return Tt(ne);if(typeof ne=="object")return Tt(function(ye){return ne[ye]})}return D}function lt(ne,ye,Je){ne in Je&&(ye[ne]=Je[ne])}function IS(ne){var ye=new Ze;return ne?(ye.namespaceResolver=he(ne.namespaces),ye.functionResolver=He(ne.functions),ye.variableResolver=tt(ne.variables),ye.expressionContextNode=ne.node,lt("allowAnyNamespaceForNoPrefix",ye,ne),lt("isHtml",ye,ne)):ye.namespaceResolver=o,ye}function OS(ne,ye){var Je=IS(ye);return ne.evaluate(Je)}var lS={evaluate:function(ne){return OS(this.expression,ne)},evaluateNumber:function(ne){return this.evaluate(ne).numberValue()},evaluateString:function(ne){return this.evaluate(ne).stringValue()},evaluateBoolean:function(ne){return this.evaluate(ne).booleanValue()},evaluateNodeSet:function(ne){return this.evaluate(ne).nodeset()},select:function(ne){return this.evaluateNodeSet(ne).toArray()},select1:function(ne){return this.select(ne)[0]}};function uS(ne){var ye=e.parse(ne);return Object.create(lS,{expression:{value:ye}})}r.parse=uS}(),ce(r,{XPath:ee,XPathParser:u,XPathResult:fe,Step:q,PathExpr:M,NodeTest:_,LocationPath:Se,OrOperation:Ce,AndOperation:_e,BarOperation:$,EqualsOperation:pe,NotEqualOperation:b,LessThanOperation:j,GreaterThanOperation:Ie,LessThanOrEqualOperation:me,GreaterThanOrEqualOperation:oe,PlusOperation:w,MinusOperation:P,MultiplyOperation:m,DivOperation:h,ModOperation:y,UnaryMinusOperation:Ee,FunctionCall:Be,VariableReference:se,XPathContext:Ze,XNodeSet:ie,XBoolean:Oe,XString:H,XNumber:V,NamespaceResolver:je,FunctionResolver:Xe,VariableResolver:et,Utilities:Ne}),r.select=function(e,o,N){return r.selectWithResolver(e,o,null,N)},r.useNamespaces=function(e){var o={mappings:e||{},lookupNamespaceURI:function(N){return this.mappings[N]}};return function(N,D,l){return r.selectWithResolver(N,D,o,l)}},r.selectWithResolver=function(e,o,N,D){var l=new We(e,N,new u),f=fe.ANY_TYPE,Te=l.evaluate(o,f,null);return Te.resultType==fe.STRING_TYPE?Te=Te.stringValue:Te.resultType==fe.NUMBER_TYPE?Te=Te.numberValue:Te.resultType==fe.BOOLEAN_TYPE?Te=Te.booleanValue:(Te=Te.nodes,D&&(Te=Te[0])),Te},r.select1=function(e,o){return r.select(e,o,!0)};var L=function(e){return Array.isArray(e)&&e.every(A)},F=function(e){return function(o){return A(o)&&o.nodeType===e}};ce(r,{isNodeLike:A,isArrayOfNodes:L,isElement:F(W.ELEMENT_NODE),isAttribute:F(W.ATTRIBUTE_NODE),isTextNode:F(W.TEXT_NODE),isCDATASection:F(W.CDATA_SECTION_NODE),isProcessingInstruction:F(W.PROCESSING_INSTRUCTION_NODE),isComment:F(W.COMMENT_NODE),isDocumentNode:F(W.DOCUMENT_NODE),isDocumentTypeNode:F(W.DOCUMENT_TYPE_NODE),isDocumentFragment:F(W.DOCUMENT_FRAGMENT_NODE)})})(t)}(qt)),qt}var Yn=xn();const Vn=mE(Yn);var Ut={},at={},Ct={},gE;function Ht(){if(gE)return Ct;gE=1;function E(a,A,c){if(c===void 0&&(c=Array.prototype),a&&typeof c.find=="function")return c.find.call(a,A);for(var I=0;I<a.length;I++)if(Object.prototype.hasOwnProperty.call(a,I)){var i=a[I];if(A.call(void 0,i,I,a))return i}}function t(a,A){return A===void 0&&(A=Object),A&&typeof A.freeze=="function"?A.freeze(a):a}function r(a,A){if(a===null||typeof a!="object")throw new TypeError("target is not an object");for(var c in A)Object.prototype.hasOwnProperty.call(A,c)&&(a[c]=A[c]);return a}var n=t({HTML:"text/html",isHTML:function(a){return a===n.HTML},XML_APPLICATION:"application/xml",XML_TEXT:"text/xml",XML_XHTML_APPLICATION:"application/xhtml+xml",XML_SVG_IMAGE:"image/svg+xml"}),s=t({HTML:"http://www.w3.org/1999/xhtml",isHTML:function(a){return a===s.HTML},SVG:"http://www.w3.org/2000/svg",XML:"http://www.w3.org/XML/1998/namespace",XMLNS:"http://www.w3.org/2000/xmlns/"});return Ct.assign=r,Ct.find=E,Ct.freeze=t,Ct.MIME_TYPE=n,Ct.NAMESPACE=s,Ct}var yE;function GE(){if(yE)return at;yE=1;var E=Ht(),t=E.find,r=E.NAMESPACE;function n(R){return R!==""}function s(R){return R?R.split(/[\t\n\f\r ]+/).filter(n):[]}function a(R,S){return R.hasOwnProperty(S)||(R[S]=!0),R}function A(R){if(!R)return[];var S=s(R);return Object.keys(S.reduce(a,{}))}function c(R){return function(S){return R&&R.indexOf(S)!==-1}}function I(R,S){for(var L in R)Object.prototype.hasOwnProperty.call(R,L)&&(S[L]=R[L])}function i(R,S){var L=R.prototype;if(!(L instanceof S)){let F=function(){};F.prototype=S.prototype,F=new F,I(L,F),R.prototype=L=F}L.constructor!=R&&(typeof R!="function"&&console.error("unknown Class:"+R),L.constructor=R)}var O={},C=O.ELEMENT_NODE=1,p=O.ATTRIBUTE_NODE=2,g=O.TEXT_NODE=3,B=O.CDATA_SECTION_NODE=4,Y=O.ENTITY_REFERENCE_NODE=5,d=O.ENTITY_NODE=6,k=O.PROCESSING_INSTRUCTION_NODE=7,J=O.COMMENT_NODE=8,Z=O.DOCUMENT_NODE=9,De=O.DOCUMENT_TYPE_NODE=10,ce=O.DOCUMENT_FRAGMENT_NODE=11,W=O.NOTATION_NODE=12,u={},ee={};u.INDEX_SIZE_ERR=(ee[1]="Index size error",1),u.DOMSTRING_SIZE_ERR=(ee[2]="DOMString size error",2);var U=u.HIERARCHY_REQUEST_ERR=(ee[3]="Hierarchy request error",3);u.WRONG_DOCUMENT_ERR=(ee[4]="Wrong document",4),u.INVALID_CHARACTER_ERR=(ee[5]="Invalid character",5),u.NO_DATA_ALLOWED_ERR=(ee[6]="No data allowed",6),u.NO_MODIFICATION_ALLOWED_ERR=(ee[7]="No modification allowed",7);var v=u.NOT_FOUND_ERR=(ee[8]="Not found",8);u.NOT_SUPPORTED_ERR=(ee[9]="Not supported",9);var te=u.INUSE_ATTRIBUTE_ERR=(ee[10]="Attribute in use",10);u.INVALID_STATE_ERR=(ee[11]="Invalid state",11),u.SYNTAX_ERR=(ee[12]="Syntax error",12),u.INVALID_MODIFICATION_ERR=(ee[13]="Invalid modification",13),u.NAMESPACE_ERR=(ee[14]="Invalid namespace",14),u.INVALID_ACCESS_ERR=(ee[15]="Invalid access",15);function Ee(R,S){if(S instanceof Error)var L=S;else L=this,Error.call(this,ee[R]),this.message=ee[R],Error.captureStackTrace&&Error.captureStackTrace(this,Ee);return L.code=R,S&&(this.message=this.message+": "+S),L}Ee.prototype=Error.prototype,I(u,Ee);function Q(){}Q.prototype={length:0,item:function(R){return R>=0&&R<this.length?this[R]:null},toString:function(R,S){for(var L=[],F=0;F<this.length;F++)We(this[F],L,R,S);return L.join("")},filter:function(R){return Array.prototype.filter.call(this,R)},indexOf:function(R){return Array.prototype.indexOf.call(this,R)}};function Ce(R,S){this._node=R,this._refresh=S,_e(this)}function _e(R){var S=R._node._inc||R._node.ownerDocument._inc;if(R._inc!==S){var L=R._refresh(R._node);if(fe(R,"length",L.length),!R.$$length||L.length<R.$$length)for(var F=L.length;F in R;F++)Object.prototype.hasOwnProperty.call(R,F)&&delete R[F];I(L,R),R._inc=S}}Ce.prototype.item=function(R){return _e(this),this[R]||null},i(Ce,Q);function pe(){}function b(R,S){for(var L=R.length;L--;)if(R[L]===S)return L}function j(R,S,L,F){if(F?S[b(S,F)]=L:S[S.length++]=L,R){L.ownerElement=R;var e=R.ownerDocument;e&&(F&&y(e,R,F),h(e,R,L))}}function Ie(R,S,L){var F=b(S,L);if(F>=0){for(var e=S.length-1;F<e;)S[F]=S[++F];if(S.length=e,R){var o=R.ownerDocument;o&&(y(o,R,L),L.ownerElement=null)}}else throw new Ee(v,new Error(R.tagName+"@"+L))}pe.prototype={length:0,item:Q.prototype.item,getNamedItem:function(R){for(var S=this.length;S--;){var L=this[S];if(L.nodeName==R)return L}},setNamedItem:function(R){var S=R.ownerElement;if(S&&S!=this._ownerElement)throw new Ee(te);var L=this.getNamedItem(R.nodeName);return j(this._ownerElement,this,R,L),L},setNamedItemNS:function(R){var S=R.ownerElement,L;if(S&&S!=this._ownerElement)throw new Ee(te);return L=this.getNamedItemNS(R.namespaceURI,R.localName),j(this._ownerElement,this,R,L),L},removeNamedItem:function(R){var S=this.getNamedItem(R);return Ie(this._ownerElement,this,S),S},removeNamedItemNS:function(R,S){var L=this.getNamedItemNS(R,S);return Ie(this._ownerElement,this,L),L},getNamedItemNS:function(R,S){for(var L=this.length;L--;){var F=this[L];if(F.localName==S&&F.namespaceURI==R)return F}return null}};function me(){}me.prototype={hasFeature:function(R,S){return!0},createDocument:function(R,S,L){var F=new m;if(F.implementation=this,F.childNodes=new Q,F.doctype=L||null,L&&F.appendChild(L),S){var e=F.createElementNS(R,S);F.appendChild(e)}return F},createDocumentType:function(R,S,L){var F=new ie;return F.name=R,F.nodeName=R,F.publicId=S||"",F.systemId=L||"",F}};function oe(){}oe.prototype={firstChild:null,lastChild:null,previousSibling:null,nextSibling:null,attributes:null,parentNode:null,childNodes:null,ownerDocument:null,nodeValue:null,namespaceURI:null,prefix:null,localName:null,insertBefore:function(R,S){return Be(this,R,S)},replaceChild:function(R,S){Be(this,R,S,se),S&&this.removeChild(S)},removeChild:function(R){return M(this,R)},appendChild:function(R){return this.insertBefore(R,null)},hasChildNodes:function(){return this.firstChild!=null},cloneNode:function(R){return st(this.ownerDocument||this,this,R)},normalize:function(){for(var R=this.firstChild;R;){var S=R.nextSibling;S&&S.nodeType==g&&R.nodeType==g?(this.removeChild(S),R.appendData(S.data)):(R.normalize(),R=S)}},isSupported:function(R,S){return this.ownerDocument.implementation.hasFeature(R,S)},hasAttributes:function(){return this.attributes.length>0},lookupPrefix:function(R){for(var S=this;S;){var L=S._nsMap;if(L){for(var F in L)if(Object.prototype.hasOwnProperty.call(L,F)&&L[F]===R)return F}S=S.nodeType==p?S.ownerDocument:S.parentNode}return null},lookupNamespaceURI:function(R){for(var S=this;S;){var L=S._nsMap;if(L&&Object.prototype.hasOwnProperty.call(L,R))return L[R];S=S.nodeType==p?S.ownerDocument:S.parentNode}return null},isDefaultNamespace:function(R){var S=this.lookupPrefix(R);return S==null}};function w(R){return R=="<"&&"<"||R==">"&&">"||R=="&"&&"&"||R=='"'&&"""||"&#"+R.charCodeAt()+";"}I(O,oe),I(O,oe.prototype);function P(R,S){if(S(R))return!0;if(R=R.firstChild)do if(P(R,S))return!0;while(R=R.nextSibling)}function m(){this.ownerDocument=this}function h(R,S,L){R&&R._inc++;var F=L.namespaceURI;F===r.XMLNS&&(S._nsMap[L.prefix?L.localName:""]=L.value)}function y(R,S,L,F){R&&R._inc++;var e=L.namespaceURI;e===r.XMLNS&&delete S._nsMap[L.prefix?L.localName:""]}function $(R,S,L){if(R&&R._inc){R._inc++;var F=S.childNodes;if(L)F[F.length++]=L;else{for(var e=S.firstChild,o=0;e;)F[o++]=e,e=e.nextSibling;F.length=o,delete F[F.length]}}}function M(R,S){var L=S.previousSibling,F=S.nextSibling;return L?L.nextSibling=F:R.firstChild=F,F?F.previousSibling=L:R.lastChild=L,S.parentNode=null,S.previousSibling=null,S.nextSibling=null,$(R.ownerDocument,R),S}function z(R){return R&&(R.nodeType===oe.DOCUMENT_NODE||R.nodeType===oe.DOCUMENT_FRAGMENT_NODE||R.nodeType===oe.ELEMENT_NODE)}function re(R){return R&&(le(R)||Ue(R)||Ae(R)||R.nodeType===oe.DOCUMENT_FRAGMENT_NODE||R.nodeType===oe.COMMENT_NODE||R.nodeType===oe.PROCESSING_INSTRUCTION_NODE)}function Ae(R){return R&&R.nodeType===oe.DOCUMENT_TYPE_NODE}function le(R){return R&&R.nodeType===oe.ELEMENT_NODE}function Ue(R){return R&&R.nodeType===oe.TEXT_NODE}function Se(R,S){var L=R.childNodes||[];if(t(L,le)||Ae(S))return!1;var F=t(L,Ae);return!(S&&F&&L.indexOf(F)>L.indexOf(S))}function q(R,S){var L=R.childNodes||[];function F(o){return le(o)&&o!==S}if(t(L,F))return!1;var e=t(L,Ae);return!(S&&e&&L.indexOf(e)>L.indexOf(S))}function ge(R,S,L){if(!z(R))throw new Ee(U,"Unexpected parent node type "+R.nodeType);if(L&&L.parentNode!==R)throw new Ee(v,"child not in parent");if(!re(S)||Ae(S)&&R.nodeType!==oe.DOCUMENT_NODE)throw new Ee(U,"Unexpected node type "+S.nodeType+" for parent node type "+R.nodeType)}function _(R,S,L){var F=R.childNodes||[],e=S.childNodes||[];if(S.nodeType===oe.DOCUMENT_FRAGMENT_NODE){var o=e.filter(le);if(o.length>1||t(e,Ue))throw new Ee(U,"More than one element or text in fragment");if(o.length===1&&!Se(R,L))throw new Ee(U,"Element in fragment can not be inserted before doctype")}if(le(S)&&!Se(R,L))throw new Ee(U,"Only one element can be added and only after doctype");if(Ae(S)){if(t(F,Ae))throw new Ee(U,"Only one doctype is allowed");var N=t(F,le);if(L&&F.indexOf(N)<F.indexOf(L))throw new Ee(U,"Doctype can only be inserted before an element");if(!L&&N)throw new Ee(U,"Doctype can not be appended since element is present")}}function se(R,S,L){var F=R.childNodes||[],e=S.childNodes||[];if(S.nodeType===oe.DOCUMENT_FRAGMENT_NODE){var o=e.filter(le);if(o.length>1||t(e,Ue))throw new Ee(U,"More than one element or text in fragment");if(o.length===1&&!q(R,L))throw new Ee(U,"Element in fragment can not be inserted before doctype")}if(le(S)&&!q(R,L))throw new Ee(U,"Only one element can be added and only after doctype");if(Ae(S)){if(t(F,function(l){return Ae(l)&&l!==L}))throw new Ee(U,"Only one doctype is allowed");var N=t(F,le);if(L&&F.indexOf(N)<F.indexOf(L))throw new Ee(U,"Doctype can only be inserted before an element")}}function Be(R,S,L,F){ge(R,S,L),R.nodeType===oe.DOCUMENT_NODE&&(F||_)(R,S,L);var e=S.parentNode;if(e&&e.removeChild(S),S.nodeType===ce){var o=S.firstChild;if(o==null)return S;var N=S.lastChild}else o=N=S;var D=L?L.previousSibling:R.lastChild;o.previousSibling=D,N.nextSibling=L,D?D.nextSibling=o:R.firstChild=o,L==null?R.lastChild=N:L.previousSibling=N;do{o.parentNode=R;var l=R.ownerDocument||R;de(o,l)}while(o!==N&&(o=o.nextSibling));return $(R.ownerDocument||R,R),S.nodeType==ce&&(S.firstChild=S.lastChild=null),S}function de(R,S){if(R.ownerDocument!==S){if(R.ownerDocument=S,R.nodeType===C&&R.attributes)for(var L=0;L<R.attributes.length;L++){var F=R.attributes.item(L);F&&(F.ownerDocument=S)}for(var e=R.firstChild;e;)de(e,S),e=e.nextSibling}}function H(R,S){S.parentNode&&S.parentNode.removeChild(S),S.parentNode=R,S.previousSibling=R.lastChild,S.nextSibling=null,S.previousSibling?S.previousSibling.nextSibling=S:R.firstChild=S,R.lastChild=S,$(R.ownerDocument,R,S);var L=R.ownerDocument||R;return de(S,L),S}m.prototype={nodeName:"#document",nodeType:Z,doctype:null,documentElement:null,_inc:1,insertBefore:function(R,S){if(R.nodeType==ce){for(var L=R.firstChild;L;){var F=L.nextSibling;this.insertBefore(L,S),L=F}return R}return Be(this,R,S),de(R,this),this.documentElement===null&&R.nodeType===C&&(this.documentElement=R),R},removeChild:function(R){return this.documentElement==R&&(this.documentElement=null),M(this,R)},replaceChild:function(R,S){Be(this,R,S,se),de(R,this),S&&this.removeChild(S),le(R)&&(this.documentElement=R)},importNode:function(R,S){return Rt(this,R,S)},getElementById:function(R){var S=null;return P(this.documentElement,function(L){if(L.nodeType==C&&L.getAttribute("id")==R)return S=L,!0}),S},getElementsByClassName:function(R){var S=A(R);return new Ce(this,function(L){var F=[];return S.length>0&&P(L.documentElement,function(e){if(e!==L&&e.nodeType===C){var o=e.getAttribute("class");if(o){var N=R===o;if(!N){var D=A(o);N=S.every(c(D))}N&&F.push(e)}}}),F})},createElement:function(R){var S=new V;S.ownerDocument=this,S.nodeName=R,S.tagName=R,S.localName=R,S.childNodes=new Q;var L=S.attributes=new pe;return L._ownerElement=S,S},createDocumentFragment:function(){var R=new Xe;return R.ownerDocument=this,R.childNodes=new Q,R},createTextNode:function(R){var S=new Oe;return S.ownerDocument=this,S.appendData(R),S},createComment:function(R){var S=new we;return S.ownerDocument=this,S.appendData(R),S},createCDATASection:function(R){var S=new Gt;return S.ownerDocument=this,S.appendData(R),S},createProcessingInstruction:function(R,S){var L=new je;return L.ownerDocument=this,L.tagName=L.nodeName=L.target=R,L.nodeValue=L.data=S,L},createAttribute:function(R){var S=new ve;return S.ownerDocument=this,S.name=R,S.nodeName=R,S.localName=R,S.specified=!0,S},createEntityReference:function(R){var S=new et;return S.ownerDocument=this,S.nodeName=R,S},createElementNS:function(R,S){var L=new V,F=S.split(":"),e=L.attributes=new pe;return L.childNodes=new Q,L.ownerDocument=this,L.nodeName=S,L.tagName=S,L.namespaceURI=R,F.length==2?(L.prefix=F[0],L.localName=F[1]):L.localName=S,e._ownerElement=L,L},createAttributeNS:function(R,S){var L=new ve,F=S.split(":");return L.ownerDocument=this,L.nodeName=S,L.name=S,L.namespaceURI=R,L.specified=!0,F.length==2?(L.prefix=F[0],L.localName=F[1]):L.localName=S,L}},i(m,oe);function V(){this._nsMap={}}V.prototype={nodeType:C,hasAttribute:function(R){return this.getAttributeNode(R)!=null},getAttribute:function(R){var S=this.getAttributeNode(R);return S&&S.value||""},getAttributeNode:function(R){return this.attributes.getNamedItem(R)},setAttribute:function(R,S){var L=this.ownerDocument.createAttribute(R);L.value=L.nodeValue=""+S,this.setAttributeNode(L)},removeAttribute:function(R){var S=this.getAttributeNode(R);S&&this.removeAttributeNode(S)},appendChild:function(R){return R.nodeType===ce?this.insertBefore(R,null):H(this,R)},setAttributeNode:function(R){return this.attributes.setNamedItem(R)},setAttributeNodeNS:function(R){return this.attributes.setNamedItemNS(R)},removeAttributeNode:function(R){return this.attributes.removeNamedItem(R.nodeName)},removeAttributeNS:function(R,S){var L=this.getAttributeNodeNS(R,S);L&&this.removeAttributeNode(L)},hasAttributeNS:function(R,S){return this.getAttributeNodeNS(R,S)!=null},getAttributeNS:function(R,S){var L=this.getAttributeNodeNS(R,S);return L&&L.value||""},setAttributeNS:function(R,S,L){var F=this.ownerDocument.createAttributeNS(R,S);F.value=F.nodeValue=""+L,this.setAttributeNode(F)},getAttributeNodeNS:function(R,S){return this.attributes.getNamedItemNS(R,S)},getElementsByTagName:function(R){return new Ce(this,function(S){var L=[];return P(S,function(F){F!==S&&F.nodeType==C&&(R==="*"||F.tagName==R)&&L.push(F)}),L})},getElementsByTagNameNS:function(R,S){return new Ce(this,function(L){var F=[];return P(L,function(e){e!==L&&e.nodeType===C&&(R==="*"||e.namespaceURI===R)&&(S==="*"||e.localName==S)&&F.push(e)}),F})}},m.prototype.getElementsByTagName=V.prototype.getElementsByTagName,m.prototype.getElementsByTagNameNS=V.prototype.getElementsByTagNameNS,i(V,oe);function ve(){}ve.prototype.nodeType=p,i(ve,oe);function Qe(){}Qe.prototype={data:"",substringData:function(R,S){return this.data.substring(R,R+S)},appendData:function(R){R=this.data+R,this.nodeValue=this.data=R,this.length=R.length},insertData:function(R,S){this.replaceData(R,0,S)},appendChild:function(R){throw new Error(ee[U])},deleteData:function(R,S){this.replaceData(R,S,"")},replaceData:function(R,S,L){var F=this.data.substring(0,R),e=this.data.substring(R+S);L=F+L+e,this.nodeValue=this.data=L,this.length=L.length}},i(Qe,oe);function Oe(){}Oe.prototype={nodeName:"#text",nodeType:g,splitText:function(R){var S=this.data,L=S.substring(R);S=S.substring(0,R),this.data=this.nodeValue=S,this.length=S.length;var F=this.ownerDocument.createTextNode(L);return this.parentNode&&this.parentNode.insertBefore(F,this.nextSibling),F}},i(Oe,Qe);function we(){}we.prototype={nodeName:"#comment",nodeType:J},i(we,Qe);function Gt(){}Gt.prototype={nodeName:"#cdata-section",nodeType:B},i(Gt,Qe);function ie(){}ie.prototype.nodeType=De,i(ie,oe);function nt(){}nt.prototype.nodeType=W,i(nt,oe);function Ze(){}Ze.prototype.nodeType=d,i(Ze,oe);function et(){}et.prototype.nodeType=Y,i(et,oe);function Xe(){}Xe.prototype.nodeName="#document-fragment",Xe.prototype.nodeType=ce,i(Xe,oe);function je(){}je.prototype.nodeType=k,i(je,oe);function Le(){}Le.prototype.serializeToString=function(R,S,L){return Ne.call(R,S,L)},oe.prototype.toString=Ne;function Ne(R,S){var L=[],F=this.nodeType==9&&this.documentElement||this,e=F.prefix,o=F.namespaceURI;if(o&&e==null){var e=F.lookupPrefix(o);if(e==null)var N=[{namespace:o,prefix:null}]}return We(this,L,R,S,N),L.join("")}function Ft(R,S,L){var F=R.prefix||"",e=R.namespaceURI;if(!e||F==="xml"&&e===r.XML||e===r.XMLNS)return!1;for(var o=L.length;o--;){var N=L[o];if(N.prefix===F)return N.namespace!==e}return!0}function qe(R,S,L){R.push(" ",S,'="',L.replace(/[<>&"\t\n\r]/g,w),'"')}function We(R,S,L,F,e){if(e||(e=[]),F)if(R=F(R),R){if(typeof R=="string"){S.push(R);return}}else return;switch(R.nodeType){case C:var o=R.attributes,N=o.length,He=R.firstChild,D=R.tagName;L=r.isHTML(R.namespaceURI)||L;var l=D;if(!L&&!R.prefix&&R.namespaceURI){for(var f,Te=0;Te<o.length;Te++)if(o.item(Te).name==="xmlns"){f=o.item(Te).value;break}if(!f)for(var he=e.length-1;he>=0;he--){var Me=e[he];if(Me.prefix===""&&Me.namespace===R.namespaceURI){f=Me.namespace;break}}if(f!==R.namespaceURI)for(var he=e.length-1;he>=0;he--){var Me=e[he];if(Me.namespace===R.namespaceURI){Me.prefix&&(l=Me.prefix+":"+D);break}}}S.push("<",l);for(var ae=0;ae<N;ae++){var Re=o.item(ae);Re.prefix=="xmlns"?e.push({prefix:Re.localName,namespace:Re.value}):Re.nodeName=="xmlns"&&e.push({prefix:"",namespace:Re.value})}for(var ae=0;ae<N;ae++){var Re=o.item(ae);if(Ft(Re,L,e)){var Ke=Re.prefix||"",ze=Re.namespaceURI;qe(S,Ke?"xmlns:"+Ke:"xmlns",ze),e.push({prefix:Ke,namespace:ze})}We(Re,S,L,F,e)}if(D===l&&Ft(R,L,e)){var Ke=R.prefix||"",ze=R.namespaceURI;qe(S,Ke?"xmlns:"+Ke:"xmlns",ze),e.push({prefix:Ke,namespace:ze})}if(He||L&&!/^(?:meta|link|img|br|hr|input)$/i.test(D)){if(S.push(">"),L&&/^script$/i.test(D))for(;He;)He.data?S.push(He.data):We(He,S,L,F,e.slice()),He=He.nextSibling;else for(;He;)We(He,S,L,F,e.slice()),He=He.nextSibling;S.push("</",l,">")}else S.push("/>");return;case Z:case ce:for(var He=R.firstChild;He;)We(He,S,L,F,e.slice()),He=He.nextSibling;return;case p:return qe(S,R.name,R.value);case g:return S.push(R.data.replace(/[<&>]/g,w));case B:return S.push("<![CDATA[",R.data,"]]>");case J:return S.push("<!--",R.data,"-->");case De:var Tt=R.publicId,tt=R.systemId;if(S.push("<!DOCTYPE ",R.name),Tt)S.push(" PUBLIC ",Tt),tt&&tt!="."&&S.push(" ",tt),S.push(">");else if(tt&&tt!=".")S.push(" SYSTEM ",tt,">");else{var lt=R.internalSubset;lt&&S.push(" [",lt,"]"),S.push(">")}return;case k:return S.push("<?",R.target," ",R.data,"?>");case Y:return S.push("&",R.nodeName,";");default:S.push("??",R.nodeName)}}function Rt(R,S,L){var F;switch(S.nodeType){case C:F=S.cloneNode(!1),F.ownerDocument=R;case ce:break;case p:L=!0;break}if(F||(F=S.cloneNode(!1)),F.ownerDocument=R,F.parentNode=null,L)for(var e=S.firstChild;e;)F.appendChild(Rt(R,e,L)),e=e.nextSibling;return F}function st(R,S,L){var F=new S.constructor;for(var e in S)if(Object.prototype.hasOwnProperty.call(S,e)){var o=S[e];typeof o!="object"&&o!=F[e]&&(F[e]=o)}switch(S.childNodes&&(F.childNodes=new Q),F.ownerDocument=R,F.nodeType){case C:var N=S.attributes,D=F.attributes=new pe,l=N.length;D._ownerElement=F;for(var f=0;f<l;f++)F.setAttributeNode(st(R,N.item(f),!0));break;case p:L=!0}if(L)for(var Te=S.firstChild;Te;)F.appendChild(st(R,Te,L)),Te=Te.nextSibling;return F}function fe(R,S,L){R[S]=L}try{if(Object.defineProperty){let R=function(S){switch(S.nodeType){case C:case ce:var L=[];for(S=S.firstChild;S;)S.nodeType!==7&&S.nodeType!==8&&L.push(R(S)),S=S.nextSibling;return L.join("");default:return S.nodeValue}};Object.defineProperty(Ce.prototype,"length",{get:function(){return _e(this),this.$$length}}),Object.defineProperty(oe.prototype,"textContent",{get:function(){return R(this)},set:function(S){switch(this.nodeType){case C:case ce:for(;this.firstChild;)this.removeChild(this.firstChild);(S||String(S))&&this.appendChild(this.ownerDocument.createTextNode(S));break;default:this.data=S,this.value=S,this.nodeValue=S}}}),fe=function(S,L,F){S["$$"+L]=F}}}catch{}return at.DocumentType=ie,at.DOMException=Ee,at.DOMImplementation=me,at.Element=V,at.Node=oe,at.NodeList=Q,at.XMLSerializer=Le,at}var mt={},Jt={},FE;function vn(){return FE||(FE=1,function(E){var t=Ht().freeze;E.XML_ENTITIES=t({amp:"&",apos:"'",gt:">",lt:"<",quot:'"'}),E.HTML_ENTITIES=t({Aacute:"Á",aacute:"á",Abreve:"Ă",abreve:"ă",ac:"∾",acd:"∿",acE:"∾̳",Acirc:"Â",acirc:"â",acute:"´",Acy:"А",acy:"а",AElig:"Æ",aelig:"æ",af:"",Afr:"𝔄",afr:"𝔞",Agrave:"À",agrave:"à",alefsym:"ℵ",aleph:"ℵ",Alpha:"Α",alpha:"α",Amacr:"Ā",amacr:"ā",amalg:"⨿",AMP:"&",amp:"&",And:"⩓",and:"∧",andand:"⩕",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",ange:"⦤",angle:"∠",angmsd:"∡",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angst:"Å",angzarr:"⍼",Aogon:"Ą",aogon:"ą",Aopf:"𝔸",aopf:"𝕒",ap:"≈",apacir:"⩯",apE:"⩰",ape:"≊",apid:"≋",apos:"'",ApplyFunction:"",approx:"≈",approxeq:"≊",Aring:"Å",aring:"å",Ascr:"𝒜",ascr:"𝒶",Assign:"≔",ast:"*",asymp:"≈",asympeq:"≍",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",awconint:"∳",awint:"⨑",backcong:"≌",backepsilon:"϶",backprime:"‵",backsim:"∽",backsimeq:"⋍",Backslash:"∖",Barv:"⫧",barvee:"⊽",Barwed:"⌆",barwed:"⌅",barwedge:"⌅",bbrk:"⎵",bbrktbrk:"⎶",bcong:"≌",Bcy:"Б",bcy:"б",bdquo:"„",becaus:"∵",Because:"∵",because:"∵",bemptyv:"⦰",bepsi:"϶",bernou:"ℬ",Bernoullis:"ℬ",Beta:"Β",beta:"β",beth:"ℶ",between:"≬",Bfr:"𝔅",bfr:"𝔟",bigcap:"⋂",bigcirc:"◯",bigcup:"⋃",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",bigvee:"⋁",bigwedge:"⋀",bkarow:"⤍",blacklozenge:"⧫",blacksquare:"▪",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",blacktriangleright:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bNot:"⫭",bnot:"⌐",Bopf:"𝔹",bopf:"𝕓",bot:"⊥",bottom:"⊥",bowtie:"⋈",boxbox:"⧉",boxDL:"╗",boxDl:"╖",boxdL:"╕",boxdl:"┐",boxDR:"╔",boxDr:"╓",boxdR:"╒",boxdr:"┌",boxH:"═",boxh:"─",boxHD:"╦",boxHd:"╤",boxhD:"╥",boxhd:"┬",boxHU:"╩",boxHu:"╧",boxhU:"╨",boxhu:"┴",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxUL:"╝",boxUl:"╜",boxuL:"╛",boxul:"┘",boxUR:"╚",boxUr:"╙",boxuR:"╘",boxur:"└",boxV:"║",boxv:"│",boxVH:"╬",boxVh:"╫",boxvH:"╪",boxvh:"┼",boxVL:"╣",boxVl:"╢",boxvL:"╡",boxvl:"┤",boxVR:"╠",boxVr:"╟",boxvR:"╞",boxvr:"├",bprime:"‵",Breve:"˘",breve:"˘",brvbar:"¦",Bscr:"ℬ",bscr:"𝒷",bsemi:"⁏",bsim:"∽",bsime:"⋍",bsol:"\\",bsolb:"⧅",bsolhsub:"⟈",bull:"•",bullet:"•",bump:"≎",bumpE:"⪮",bumpe:"≏",Bumpeq:"≎",bumpeq:"≏",Cacute:"Ć",cacute:"ć",Cap:"⋒",cap:"∩",capand:"⩄",capbrcup:"⩉",capcap:"⩋",capcup:"⩇",capdot:"⩀",CapitalDifferentialD:"ⅅ",caps:"∩︀",caret:"⁁",caron:"ˇ",Cayleys:"ℭ",ccaps:"⩍",Ccaron:"Č",ccaron:"č",Ccedil:"Ç",ccedil:"ç",Ccirc:"Ĉ",ccirc:"ĉ",Cconint:"∰",ccups:"⩌",ccupssm:"⩐",Cdot:"Ċ",cdot:"ċ",cedil:"¸",Cedilla:"¸",cemptyv:"⦲",cent:"¢",CenterDot:"·",centerdot:"·",Cfr:"ℭ",cfr:"𝔠",CHcy:"Ч",chcy:"ч",check:"✓",checkmark:"✓",Chi:"Χ",chi:"χ",cir:"○",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",CircleDot:"⊙",circledR:"®",circledS:"Ⓢ",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",cirE:"⧃",cire:"≗",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"’",clubs:"♣",clubsuit:"♣",Colon:"∷",colon:":",Colone:"⩴",colone:"≔",coloneq:"≔",comma:",",commat:"@",comp:"∁",compfn:"∘",complement:"∁",complexes:"ℂ",cong:"≅",congdot:"⩭",Congruent:"≡",Conint:"∯",conint:"∮",ContourIntegral:"∮",Copf:"ℂ",copf:"𝕔",coprod:"∐",Coproduct:"∐",COPY:"©",copy:"©",copysr:"℗",CounterClockwiseContourIntegral:"∳",crarr:"↵",Cross:"⨯",cross:"✗",Cscr:"𝒞",cscr:"𝒸",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cularrp:"⤽",Cup:"⋓",cup:"∪",cupbrcap:"⩈",CupCap:"≍",cupcap:"⩆",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"∪︀",curarr:"↷",curarrm:"⤼",curlyeqprec:"⋞",curlyeqsucc:"⋟",curlyvee:"⋎",curlywedge:"⋏",curren:"¤",curvearrowleft:"↶",curvearrowright:"↷",cuvee:"⋎",cuwed:"⋏",cwconint:"∲",cwint:"∱",cylcty:"⌭",Dagger:"‡",dagger:"†",daleth:"ℸ",Darr:"↡",dArr:"⇓",darr:"↓",dash:"‐",Dashv:"⫤",dashv:"⊣",dbkarow:"⤏",dblac:"˝",Dcaron:"Ď",dcaron:"ď",Dcy:"Д",dcy:"д",DD:"ⅅ",dd:"ⅆ",ddagger:"‡",ddarr:"⇊",DDotrahd:"⤑",ddotseq:"⩷",deg:"°",Del:"∇",Delta:"Δ",delta:"δ",demptyv:"⦱",dfisht:"⥿",Dfr:"𝔇",dfr:"𝔡",dHar:"⥥",dharl:"⇃",dharr:"⇂",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",diam:"⋄",Diamond:"⋄",diamond:"⋄",diamondsuit:"♦",diams:"♦",die:"¨",DifferentialD:"ⅆ",digamma:"ϝ",disin:"⋲",div:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",DJcy:"Ђ",djcy:"ђ",dlcorn:"⌞",dlcrop:"⌍",dollar:"$",Dopf:"𝔻",dopf:"𝕕",Dot:"¨",dot:"˙",DotDot:"⃜",doteq:"≐",doteqdot:"≑",DotEqual:"≐",dotminus:"∸",dotplus:"∔",dotsquare:"⊡",doublebarwedge:"⌆",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",DownArrow:"↓",Downarrow:"⇓",downarrow:"↓",DownArrowBar:"⤓",DownArrowUpArrow:"⇵",DownBreve:"̑",downdownarrows:"⇊",downharpoonleft:"⇃",downharpoonright:"⇂",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVector:"↽",DownLeftVectorBar:"⥖",DownRightTeeVector:"⥟",DownRightVector:"⇁",DownRightVectorBar:"⥗",DownTee:"⊤",DownTeeArrow:"↧",drbkarow:"⤐",drcorn:"⌟",drcrop:"⌌",Dscr:"𝒟",dscr:"𝒹",DScy:"Ѕ",dscy:"ѕ",dsol:"⧶",Dstrok:"Đ",dstrok:"đ",dtdot:"⋱",dtri:"▿",dtrif:"▾",duarr:"⇵",duhar:"⥯",dwangle:"⦦",DZcy:"Џ",dzcy:"џ",dzigrarr:"⟿",Eacute:"É",eacute:"é",easter:"⩮",Ecaron:"Ě",ecaron:"ě",ecir:"≖",Ecirc:"Ê",ecirc:"ê",ecolon:"≕",Ecy:"Э",ecy:"э",eDDot:"⩷",Edot:"Ė",eDot:"≑",edot:"ė",ee:"ⅇ",efDot:"≒",Efr:"𝔈",efr:"𝔢",eg:"⪚",Egrave:"È",egrave:"è",egs:"⪖",egsdot:"⪘",el:"⪙",Element:"∈",elinters:"⏧",ell:"ℓ",els:"⪕",elsdot:"⪗",Emacr:"Ē",emacr:"ē",empty:"∅",emptyset:"∅",EmptySmallSquare:"◻",emptyv:"∅",EmptyVerySmallSquare:"▫",emsp:" ",emsp13:" ",emsp14:" ",ENG:"Ŋ",eng:"ŋ",ensp:" ",Eogon:"Ę",eogon:"ę",Eopf:"𝔼",eopf:"𝕖",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",Epsilon:"Ε",epsilon:"ε",epsiv:"ϵ",eqcirc:"≖",eqcolon:"≕",eqsim:"≂",eqslantgtr:"⪖",eqslantless:"⪕",Equal:"⩵",equals:"=",EqualTilde:"≂",equest:"≟",Equilibrium:"⇌",equiv:"≡",equivDD:"⩸",eqvparsl:"⧥",erarr:"⥱",erDot:"≓",Escr:"ℰ",escr:"ℯ",esdot:"≐",Esim:"⩳",esim:"≂",Eta:"Η",eta:"η",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",euro:"€",excl:"!",exist:"∃",Exists:"∃",expectation:"ℰ",ExponentialE:"ⅇ",exponentiale:"ⅇ",fallingdotseq:"≒",Fcy:"Ф",fcy:"ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",Ffr:"𝔉",ffr:"𝔣",filig:"fi",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",Fopf:"𝔽",fopf:"𝕗",ForAll:"∀",forall:"∀",fork:"⋔",forkv:"⫙",Fouriertrf:"ℱ",fpartint:"⨍",frac12:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"⁄",frown:"⌢",Fscr:"ℱ",fscr:"𝒻",gacute:"ǵ",Gamma:"Γ",gamma:"γ",Gammad:"Ϝ",gammad:"ϝ",gap:"⪆",Gbreve:"Ğ",gbreve:"ğ",Gcedil:"Ģ",Gcirc:"Ĝ",gcirc:"ĝ",Gcy:"Г",gcy:"г",Gdot:"Ġ",gdot:"ġ",gE:"≧",ge:"≥",gEl:"⪌",gel:"⋛",geq:"≥",geqq:"≧",geqslant:"⩾",ges:"⩾",gescc:"⪩",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",Gfr:"𝔊",gfr:"𝔤",Gg:"⋙",gg:"≫",ggg:"⋙",gimel:"ℷ",GJcy:"Ѓ",gjcy:"ѓ",gl:"≷",gla:"⪥",glE:"⪒",glj:"⪤",gnap:"⪊",gnapprox:"⪊",gnE:"≩",gne:"⪈",gneq:"⪈",gneqq:"≩",gnsim:"⋧",Gopf:"𝔾",gopf:"𝕘",grave:"`",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Gscr:"𝒢",gscr:"ℊ",gsim:"≳",gsime:"⪎",gsiml:"⪐",Gt:"≫",GT:">",gt:">",gtcc:"⪧",gtcir:"⩺",gtdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrapprox:"⪆",gtrarr:"⥸",gtrdot:"⋗",gtreqless:"⋛",gtreqqless:"⪌",gtrless:"≷",gtrsim:"≳",gvertneqq:"≩︀",gvnE:"≩︀",Hacek:"ˇ",hairsp:" ",half:"½",hamilt:"ℋ",HARDcy:"Ъ",hardcy:"ъ",hArr:"⇔",harr:"↔",harrcir:"⥈",harrw:"↭",Hat:"^",hbar:"ℏ",Hcirc:"Ĥ",hcirc:"ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",hercon:"⊹",Hfr:"ℌ",hfr:"𝔥",HilbertSpace:"ℋ",hksearow:"⤥",hkswarow:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",hookrightarrow:"↪",Hopf:"ℍ",hopf:"𝕙",horbar:"―",HorizontalLine:"─",Hscr:"ℋ",hscr:"𝒽",hslash:"ℏ",Hstrok:"Ħ",hstrok:"ħ",HumpDownHump:"≎",HumpEqual:"≏",hybull:"⁃",hyphen:"‐",Iacute:"Í",iacute:"í",ic:"",Icirc:"Î",icirc:"î",Icy:"И",icy:"и",Idot:"İ",IEcy:"Е",iecy:"е",iexcl:"¡",iff:"⇔",Ifr:"ℑ",ifr:"𝔦",Igrave:"Ì",igrave:"ì",ii:"ⅈ",iiiint:"⨌",iiint:"∭",iinfin:"⧜",iiota:"℩",IJlig:"IJ",ijlig:"ij",Im:"ℑ",Imacr:"Ī",imacr:"ī",image:"ℑ",ImaginaryI:"ⅈ",imagline:"ℐ",imagpart:"ℑ",imath:"ı",imof:"⊷",imped:"Ƶ",Implies:"⇒",in:"∈",incare:"℅",infin:"∞",infintie:"⧝",inodot:"ı",Int:"∬",int:"∫",intcal:"⊺",integers:"ℤ",Integral:"∫",intercal:"⊺",Intersection:"⋂",intlarhk:"⨗",intprod:"⨼",InvisibleComma:"",InvisibleTimes:"",IOcy:"Ё",iocy:"ё",Iogon:"Į",iogon:"į",Iopf:"𝕀",iopf:"𝕚",Iota:"Ι",iota:"ι",iprod:"⨼",iquest:"¿",Iscr:"ℐ",iscr:"𝒾",isin:"∈",isindot:"⋵",isinE:"⋹",isins:"⋴",isinsv:"⋳",isinv:"∈",it:"",Itilde:"Ĩ",itilde:"ĩ",Iukcy:"І",iukcy:"і",Iuml:"Ï",iuml:"ï",Jcirc:"Ĵ",jcirc:"ĵ",Jcy:"Й",jcy:"й",Jfr:"𝔍",jfr:"𝔧",jmath:"ȷ",Jopf:"𝕁",jopf:"𝕛",Jscr:"𝒥",jscr:"𝒿",Jsercy:"Ј",jsercy:"ј",Jukcy:"Є",jukcy:"є",Kappa:"Κ",kappa:"κ",kappav:"ϰ",Kcedil:"Ķ",kcedil:"ķ",Kcy:"К",kcy:"к",Kfr:"𝔎",kfr:"𝔨",kgreen:"ĸ",KHcy:"Х",khcy:"х",KJcy:"Ќ",kjcy:"ќ",Kopf:"𝕂",kopf:"𝕜",Kscr:"𝒦",kscr:"𝓀",lAarr:"⇚",Lacute:"Ĺ",lacute:"ĺ",laemptyv:"⦴",lagran:"ℒ",Lambda:"Λ",lambda:"λ",Lang:"⟪",lang:"⟨",langd:"⦑",langle:"⟨",lap:"⪅",Laplacetrf:"ℒ",laquo:"«",Larr:"↞",lArr:"⇐",larr:"←",larrb:"⇤",larrbfs:"⤟",larrfs:"⤝",larrhk:"↩",larrlp:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",lat:"⪫",lAtail:"⤛",latail:"⤙",late:"⪭",lates:"⪭︀",lBarr:"⤎",lbarr:"⤌",lbbrk:"❲",lbrace:"{",lbrack:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",Lcaron:"Ľ",lcaron:"ľ",Lcedil:"Ļ",lcedil:"ļ",lceil:"⌈",lcub:"{",Lcy:"Л",lcy:"л",ldca:"⤶",ldquo:"“",ldquor:"„",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",lE:"≦",le:"≤",LeftAngleBracket:"⟨",LeftArrow:"←",Leftarrow:"⇐",leftarrow:"←",LeftArrowBar:"⇤",LeftArrowRightArrow:"⇆",leftarrowtail:"↢",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVector:"⇃",LeftDownVectorBar:"⥙",LeftFloor:"⌊",leftharpoondown:"↽",leftharpoonup:"↼",leftleftarrows:"⇇",LeftRightArrow:"↔",Leftrightarrow:"⇔",leftrightarrow:"↔",leftrightarrows:"⇆",leftrightharpoons:"⇋",leftrightsquigarrow:"↭",LeftRightVector:"⥎",LeftTee:"⊣",LeftTeeArrow:"↤",LeftTeeVector:"⥚",leftthreetimes:"⋋",LeftTriangle:"⊲",LeftTriangleBar:"⧏",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVector:"↿",LeftUpVectorBar:"⥘",LeftVector:"↼",LeftVectorBar:"⥒",lEg:"⪋",leg:"⋚",leq:"≤",leqq:"≦",leqslant:"⩽",les:"⩽",lescc:"⪨",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessapprox:"⪅",lessdot:"⋖",lesseqgtr:"⋚",lesseqqgtr:"⪋",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",lessgtr:"≶",LessLess:"⪡",lesssim:"≲",LessSlantEqual:"⩽",LessTilde:"≲",lfisht:"⥼",lfloor:"⌊",Lfr:"𝔏",lfr:"𝔩",lg:"≶",lgE:"⪑",lHar:"⥢",lhard:"↽",lharu:"↼",lharul:"⥪",lhblk:"▄",LJcy:"Љ",ljcy:"љ",Ll:"⋘",ll:"≪",llarr:"⇇",llcorner:"⌞",Lleftarrow:"⇚",llhard:"⥫",lltri:"◺",Lmidot:"Ŀ",lmidot:"ŀ",lmoust:"⎰",lmoustache:"⎰",lnap:"⪉",lnapprox:"⪉",lnE:"≨",lne:"⪇",lneq:"⪇",lneqq:"≨",lnsim:"⋦",loang:"⟬",loarr:"⇽",lobrk:"⟦",LongLeftArrow:"⟵",Longleftarrow:"⟸",longleftarrow:"⟵",LongLeftRightArrow:"⟷",Longleftrightarrow:"⟺",longleftrightarrow:"⟷",longmapsto:"⟼",LongRightArrow:"⟶",Longrightarrow:"⟹",longrightarrow:"⟶",looparrowleft:"↫",looparrowright:"↬",lopar:"⦅",Lopf:"𝕃",lopf:"𝕝",loplus:"⨭",lotimes:"⨴",lowast:"∗",lowbar:"_",LowerLeftArrow:"↙",LowerRightArrow:"↘",loz:"◊",lozenge:"◊",lozf:"⧫",lpar:"(",lparlt:"⦓",lrarr:"⇆",lrcorner:"⌟",lrhar:"⇋",lrhard:"⥭",lrm:"",lrtri:"⊿",lsaquo:"‹",Lscr:"ℒ",lscr:"𝓁",Lsh:"↰",lsh:"↰",lsim:"≲",lsime:"⪍",lsimg:"⪏",lsqb:"[",lsquo:"‘",lsquor:"‚",Lstrok:"Ł",lstrok:"ł",Lt:"≪",LT:"<",lt:"<",ltcc:"⪦",ltcir:"⩹",ltdot:"⋖",lthree:"⋋",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltri:"◃",ltrie:"⊴",ltrif:"◂",ltrPar:"⦖",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",macr:"¯",male:"♂",malt:"✠",maltese:"✠",Map:"⤅",map:"↦",mapsto:"↦",mapstodown:"↧",mapstoleft:"↤",mapstoup:"↥",marker:"▮",mcomma:"⨩",Mcy:"М",mcy:"м",mdash:"—",mDDot:"∺",measuredangle:"∡",MediumSpace:" ",Mellintrf:"ℳ",Mfr:"𝔐",mfr:"𝔪",mho:"℧",micro:"µ",mid:"∣",midast:"*",midcir:"⫰",middot:"·",minus:"−",minusb:"⊟",minusd:"∸",minusdu:"⨪",MinusPlus:"∓",mlcp:"⫛",mldr:"…",mnplus:"∓",models:"⊧",Mopf:"𝕄",mopf:"𝕞",mp:"∓",Mscr:"ℳ",mscr:"𝓂",mstpos:"∾",Mu:"Μ",mu:"μ",multimap:"⊸",mumap:"⊸",nabla:"∇",Nacute:"Ń",nacute:"ń",nang:"∠⃒",nap:"≉",napE:"⩰̸",napid:"≋̸",napos:"ʼn",napprox:"≉",natur:"♮",natural:"♮",naturals:"ℕ",nbsp:" ",nbump:"≎̸",nbumpe:"≏̸",ncap:"⩃",Ncaron:"Ň",ncaron:"ň",Ncedil:"Ņ",ncedil:"ņ",ncong:"≇",ncongdot:"⩭̸",ncup:"⩂",Ncy:"Н",ncy:"н",ndash:"–",ne:"≠",nearhk:"⤤",neArr:"⇗",nearr:"↗",nearrow:"↗",nedot:"≐̸",NegativeMediumSpace:"",NegativeThickSpace:"",NegativeThinSpace:"",NegativeVeryThinSpace:"",nequiv:"≢",nesear:"⤨",nesim:"≂̸",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:`
|
|
10
|
-
`,nexist:"∄",nexists:"∄",Nfr:"𝔑",nfr:"𝔫",ngE:"≧̸",nge:"≱",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",nGg:"⋙̸",ngsim:"≵",nGt:"≫⃒",ngt:"≯",ngtr:"≯",nGtv:"≫̸",nhArr:"⇎",nharr:"↮",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",NJcy:"Њ",njcy:"њ",nlArr:"⇍",nlarr:"↚",nldr:"‥",nlE:"≦̸",nle:"≰",nLeftarrow:"⇍",nleftarrow:"↚",nLeftrightarrow:"⇎",nleftrightarrow:"↮",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nLl:"⋘̸",nlsim:"≴",nLt:"≪⃒",nlt:"≮",nltri:"⋪",nltrie:"⋬",nLtv:"≪̸",nmid:"∤",NoBreak:"",NonBreakingSpace:" ",Nopf:"ℕ",nopf:"𝕟",Not:"⫬",not:"¬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",notin:"∉",notindot:"⋵̸",notinE:"⋹̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",NotLeftTriangle:"⋪",NotLeftTriangleBar:"⧏̸",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangle:"⋫",NotRightTriangleBar:"⧐̸",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",npar:"∦",nparallel:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",npre:"⪯̸",nprec:"⊀",npreceq:"⪯̸",nrArr:"⇏",nrarr:"↛",nrarrc:"⤳̸",nrarrw:"↝̸",nRightarrow:"⇏",nrightarrow:"↛",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",Nscr:"𝒩",nscr:"𝓃",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsubE:"⫅̸",nsube:"⊈",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupE:"⫆̸",nsupe:"⊉",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",Ntilde:"Ñ",ntilde:"ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",Nu:"Ν",nu:"ν",num:"#",numero:"№",numsp:" ",nvap:"≍⃒",nVDash:"⊯",nVdash:"⊮",nvDash:"⊭",nvdash:"⊬",nvge:"≥⃒",nvgt:">⃒",nvHarr:"⤄",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwarhk:"⤣",nwArr:"⇖",nwarr:"↖",nwarrow:"↖",nwnear:"⤧",Oacute:"Ó",oacute:"ó",oast:"⊛",ocir:"⊚",Ocirc:"Ô",ocirc:"ô",Ocy:"О",ocy:"о",odash:"⊝",Odblac:"Ő",odblac:"ő",odiv:"⨸",odot:"⊙",odsold:"⦼",OElig:"Œ",oelig:"œ",ofcir:"⦿",Ofr:"𝔒",ofr:"𝔬",ogon:"˛",Ograve:"Ò",ograve:"ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",Omacr:"Ō",omacr:"ō",Omega:"Ω",omega:"ω",Omicron:"Ο",omicron:"ο",omid:"⦶",ominus:"⊖",Oopf:"𝕆",oopf:"𝕠",opar:"⦷",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"‘",operp:"⦹",oplus:"⊕",Or:"⩔",or:"∨",orarr:"↻",ord:"⩝",order:"ℴ",orderof:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oS:"Ⓢ",Oscr:"𝒪",oscr:"ℴ",Oslash:"Ø",oslash:"ø",osol:"⊘",Otilde:"Õ",otilde:"õ",Otimes:"⨷",otimes:"⊗",otimesas:"⨶",Ouml:"Ö",ouml:"ö",ovbar:"⌽",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",par:"∥",para:"¶",parallel:"∥",parsim:"⫳",parsl:"⫽",part:"∂",PartialD:"∂",Pcy:"П",pcy:"п",percnt:"%",period:".",permil:"‰",perp:"⊥",pertenk:"‱",Pfr:"𝔓",pfr:"𝔭",Phi:"Φ",phi:"φ",phiv:"ϕ",phmmat:"ℳ",phone:"☎",Pi:"Π",pi:"π",pitchfork:"⋔",piv:"ϖ",planck:"ℏ",planckh:"ℎ",plankv:"ℏ",plus:"+",plusacir:"⨣",plusb:"⊞",pluscir:"⨢",plusdo:"∔",plusdu:"⨥",pluse:"⩲",PlusMinus:"±",plusmn:"±",plussim:"⨦",plustwo:"⨧",pm:"±",Poincareplane:"ℌ",pointint:"⨕",Popf:"ℙ",popf:"𝕡",pound:"£",Pr:"⪻",pr:"≺",prap:"⪷",prcue:"≼",prE:"⪳",pre:"⪯",prec:"≺",precapprox:"⪷",preccurlyeq:"≼",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",preceq:"⪯",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",precsim:"≾",Prime:"″",prime:"′",primes:"ℙ",prnap:"⪹",prnE:"⪵",prnsim:"⋨",prod:"∏",Product:"∏",profalar:"⌮",profline:"⌒",profsurf:"⌓",prop:"∝",Proportion:"∷",Proportional:"∝",propto:"∝",prsim:"≾",prurel:"⊰",Pscr:"𝒫",pscr:"𝓅",Psi:"Ψ",psi:"ψ",puncsp:" ",Qfr:"𝔔",qfr:"𝔮",qint:"⨌",Qopf:"ℚ",qopf:"𝕢",qprime:"⁗",Qscr:"𝒬",qscr:"𝓆",quaternions:"ℍ",quatint:"⨖",quest:"?",questeq:"≟",QUOT:'"',quot:'"',rAarr:"⇛",race:"∽̱",Racute:"Ŕ",racute:"ŕ",radic:"√",raemptyv:"⦳",Rang:"⟫",rang:"⟩",rangd:"⦒",range:"⦥",rangle:"⟩",raquo:"»",Rarr:"↠",rArr:"⇒",rarr:"→",rarrap:"⥵",rarrb:"⇥",rarrbfs:"⤠",rarrc:"⤳",rarrfs:"⤞",rarrhk:"↪",rarrlp:"↬",rarrpl:"⥅",rarrsim:"⥴",Rarrtl:"⤖",rarrtl:"↣",rarrw:"↝",rAtail:"⤜",ratail:"⤚",ratio:"∶",rationals:"ℚ",RBarr:"⤐",rBarr:"⤏",rbarr:"⤍",rbbrk:"❳",rbrace:"}",rbrack:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",Rcaron:"Ř",rcaron:"ř",Rcedil:"Ŗ",rcedil:"ŗ",rceil:"⌉",rcub:"}",Rcy:"Р",rcy:"р",rdca:"⤷",rdldhar:"⥩",rdquo:"”",rdquor:"”",rdsh:"↳",Re:"ℜ",real:"ℜ",realine:"ℛ",realpart:"ℜ",reals:"ℝ",rect:"▭",REG:"®",reg:"®",ReverseElement:"∋",ReverseEquilibrium:"⇋",ReverseUpEquilibrium:"⥯",rfisht:"⥽",rfloor:"⌋",Rfr:"ℜ",rfr:"𝔯",rHar:"⥤",rhard:"⇁",rharu:"⇀",rharul:"⥬",Rho:"Ρ",rho:"ρ",rhov:"ϱ",RightAngleBracket:"⟩",RightArrow:"→",Rightarrow:"⇒",rightarrow:"→",RightArrowBar:"⇥",RightArrowLeftArrow:"⇄",rightarrowtail:"↣",RightCeiling:"⌉",RightDoubleBracket:"⟧",RightDownTeeVector:"⥝",RightDownVector:"⇂",RightDownVectorBar:"⥕",RightFloor:"⌋",rightharpoondown:"⇁",rightharpoonup:"⇀",rightleftarrows:"⇄",rightleftharpoons:"⇌",rightrightarrows:"⇉",rightsquigarrow:"↝",RightTee:"⊢",RightTeeArrow:"↦",RightTeeVector:"⥛",rightthreetimes:"⋌",RightTriangle:"⊳",RightTriangleBar:"⧐",RightTriangleEqual:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVector:"↾",RightUpVectorBar:"⥔",RightVector:"⇀",RightVectorBar:"⥓",ring:"˚",risingdotseq:"≓",rlarr:"⇄",rlhar:"⇌",rlm:"",rmoust:"⎱",rmoustache:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",robrk:"⟧",ropar:"⦆",Ropf:"ℝ",ropf:"𝕣",roplus:"⨮",rotimes:"⨵",RoundImplies:"⥰",rpar:")",rpargt:"⦔",rppolint:"⨒",rrarr:"⇉",Rrightarrow:"⇛",rsaquo:"›",Rscr:"ℛ",rscr:"𝓇",Rsh:"↱",rsh:"↱",rsqb:"]",rsquo:"’",rsquor:"’",rthree:"⋌",rtimes:"⋊",rtri:"▹",rtrie:"⊵",rtrif:"▸",rtriltri:"⧎",RuleDelayed:"⧴",ruluhar:"⥨",rx:"℞",Sacute:"Ś",sacute:"ś",sbquo:"‚",Sc:"⪼",sc:"≻",scap:"⪸",Scaron:"Š",scaron:"š",sccue:"≽",scE:"⪴",sce:"⪰",Scedil:"Ş",scedil:"ş",Scirc:"Ŝ",scirc:"ŝ",scnap:"⪺",scnE:"⪶",scnsim:"⋩",scpolint:"⨓",scsim:"≿",Scy:"С",scy:"с",sdot:"⋅",sdotb:"⊡",sdote:"⩦",searhk:"⤥",seArr:"⇘",searr:"↘",searrow:"↘",sect:"§",semi:";",seswar:"⤩",setminus:"∖",setmn:"∖",sext:"✶",Sfr:"𝔖",sfr:"𝔰",sfrown:"⌢",sharp:"♯",SHCHcy:"Щ",shchcy:"щ",SHcy:"Ш",shcy:"ш",ShortDownArrow:"↓",ShortLeftArrow:"←",shortmid:"∣",shortparallel:"∥",ShortRightArrow:"→",ShortUpArrow:"↑",shy:"",Sigma:"Σ",sigma:"σ",sigmaf:"ς",sigmav:"ς",sim:"∼",simdot:"⩪",sime:"≃",simeq:"≃",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",slarr:"←",SmallCircle:"∘",smallsetminus:"∖",smashp:"⨳",smeparsl:"⧤",smid:"∣",smile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",SOFTcy:"Ь",softcy:"ь",sol:"/",solb:"⧄",solbar:"⌿",Sopf:"𝕊",sopf:"𝕤",spades:"♠",spadesuit:"♠",spar:"∥",sqcap:"⊓",sqcaps:"⊓︀",sqcup:"⊔",sqcups:"⊔︀",Sqrt:"√",sqsub:"⊏",sqsube:"⊑",sqsubset:"⊏",sqsubseteq:"⊑",sqsup:"⊐",sqsupe:"⊒",sqsupset:"⊐",sqsupseteq:"⊒",squ:"□",Square:"□",square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",squarf:"▪",squf:"▪",srarr:"→",Sscr:"𝒮",sscr:"𝓈",ssetmn:"∖",ssmile:"⌣",sstarf:"⋆",Star:"⋆",star:"☆",starf:"★",straightepsilon:"ϵ",straightphi:"ϕ",strns:"¯",Sub:"⋐",sub:"⊂",subdot:"⪽",subE:"⫅",sube:"⊆",subedot:"⫃",submult:"⫁",subnE:"⫋",subne:"⊊",subplus:"⪿",subrarr:"⥹",Subset:"⋐",subset:"⊂",subseteq:"⊆",subseteqq:"⫅",SubsetEqual:"⊆",subsetneq:"⊊",subsetneqq:"⫋",subsim:"⫇",subsub:"⫕",subsup:"⫓",succ:"≻",succapprox:"⪸",succcurlyeq:"≽",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",succeq:"⪰",succnapprox:"⪺",succneqq:"⪶",succnsim:"⋩",succsim:"≿",SuchThat:"∋",Sum:"∑",sum:"∑",sung:"♪",Sup:"⋑",sup:"⊃",sup1:"¹",sup2:"²",sup3:"³",supdot:"⪾",supdsub:"⫘",supE:"⫆",supe:"⊇",supedot:"⫄",Superset:"⊃",SupersetEqual:"⊇",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supnE:"⫌",supne:"⊋",supplus:"⫀",Supset:"⋑",supset:"⊃",supseteq:"⊇",supseteqq:"⫆",supsetneq:"⊋",supsetneqq:"⫌",supsim:"⫈",supsub:"⫔",supsup:"⫖",swarhk:"⤦",swArr:"⇙",swarr:"↙",swarrow:"↙",swnwar:"⤪",szlig:"ß",Tab:" ",target:"⌖",Tau:"Τ",tau:"τ",tbrk:"⎴",Tcaron:"Ť",tcaron:"ť",Tcedil:"Ţ",tcedil:"ţ",Tcy:"Т",tcy:"т",tdot:"⃛",telrec:"⌕",Tfr:"𝔗",tfr:"𝔱",there4:"∴",Therefore:"∴",therefore:"∴",Theta:"Θ",theta:"θ",thetasym:"ϑ",thetav:"ϑ",thickapprox:"≈",thicksim:"∼",ThickSpace:" ",thinsp:" ",ThinSpace:" ",thkap:"≈",thksim:"∼",THORN:"Þ",thorn:"þ",Tilde:"∼",tilde:"˜",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",times:"×",timesb:"⊠",timesbar:"⨱",timesd:"⨰",tint:"∭",toea:"⤨",top:"⊤",topbot:"⌶",topcir:"⫱",Topf:"𝕋",topf:"𝕥",topfork:"⫚",tosa:"⤩",tprime:"‴",TRADE:"™",trade:"™",triangle:"▵",triangledown:"▿",triangleleft:"◃",trianglelefteq:"⊴",triangleq:"≜",triangleright:"▹",trianglerighteq:"⊵",tridot:"◬",trie:"≜",triminus:"⨺",TripleDot:"⃛",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",Tscr:"𝒯",tscr:"𝓉",TScy:"Ц",tscy:"ц",TSHcy:"Ћ",tshcy:"ћ",Tstrok:"Ŧ",tstrok:"ŧ",twixt:"≬",twoheadleftarrow:"↞",twoheadrightarrow:"↠",Uacute:"Ú",uacute:"ú",Uarr:"↟",uArr:"⇑",uarr:"↑",Uarrocir:"⥉",Ubrcy:"Ў",ubrcy:"ў",Ubreve:"Ŭ",ubreve:"ŭ",Ucirc:"Û",ucirc:"û",Ucy:"У",ucy:"у",udarr:"⇅",Udblac:"Ű",udblac:"ű",udhar:"⥮",ufisht:"⥾",Ufr:"𝔘",ufr:"𝔲",Ugrave:"Ù",ugrave:"ù",uHar:"⥣",uharl:"↿",uharr:"↾",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",Umacr:"Ū",umacr:"ū",uml:"¨",UnderBar:"_",UnderBrace:"⏟",UnderBracket:"⎵",UnderParenthesis:"⏝",Union:"⋃",UnionPlus:"⊎",Uogon:"Ų",uogon:"ų",Uopf:"𝕌",uopf:"𝕦",UpArrow:"↑",Uparrow:"⇑",uparrow:"↑",UpArrowBar:"⤒",UpArrowDownArrow:"⇅",UpDownArrow:"↕",Updownarrow:"⇕",updownarrow:"↕",UpEquilibrium:"⥮",upharpoonleft:"↿",upharpoonright:"↾",uplus:"⊎",UpperLeftArrow:"↖",UpperRightArrow:"↗",Upsi:"ϒ",upsi:"υ",upsih:"ϒ",Upsilon:"Υ",upsilon:"υ",UpTee:"⊥",UpTeeArrow:"↥",upuparrows:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",Uring:"Ů",uring:"ů",urtri:"◹",Uscr:"𝒰",uscr:"𝓊",utdot:"⋰",Utilde:"Ũ",utilde:"ũ",utri:"▵",utrif:"▴",uuarr:"⇈",Uuml:"Ü",uuml:"ü",uwangle:"⦧",vangrt:"⦜",varepsilon:"ϵ",varkappa:"ϰ",varnothing:"∅",varphi:"ϕ",varpi:"ϖ",varpropto:"∝",vArr:"⇕",varr:"↕",varrho:"ϱ",varsigma:"ς",varsubsetneq:"⊊︀",varsubsetneqq:"⫋︀",varsupsetneq:"⊋︀",varsupsetneqq:"⫌︀",vartheta:"ϑ",vartriangleleft:"⊲",vartriangleright:"⊳",Vbar:"⫫",vBar:"⫨",vBarv:"⫩",Vcy:"В",vcy:"в",VDash:"⊫",Vdash:"⊩",vDash:"⊨",vdash:"⊢",Vdashl:"⫦",Vee:"⋁",vee:"∨",veebar:"⊻",veeeq:"≚",vellip:"⋮",Verbar:"‖",verbar:"|",Vert:"‖",vert:"|",VerticalBar:"∣",VerticalLine:"|",VerticalSeparator:"❘",VerticalTilde:"≀",VeryThinSpace:" ",Vfr:"𝔙",vfr:"𝔳",vltri:"⊲",vnsub:"⊂⃒",vnsup:"⊃⃒",Vopf:"𝕍",vopf:"𝕧",vprop:"∝",vrtri:"⊳",Vscr:"𝒱",vscr:"𝓋",vsubnE:"⫋︀",vsubne:"⊊︀",vsupnE:"⫌︀",vsupne:"⊋︀",Vvdash:"⊪",vzigzag:"⦚",Wcirc:"Ŵ",wcirc:"ŵ",wedbar:"⩟",Wedge:"⋀",wedge:"∧",wedgeq:"≙",weierp:"℘",Wfr:"𝔚",wfr:"𝔴",Wopf:"𝕎",wopf:"𝕨",wp:"℘",wr:"≀",wreath:"≀",Wscr:"𝒲",wscr:"𝓌",xcap:"⋂",xcirc:"◯",xcup:"⋃",xdtri:"▽",Xfr:"𝔛",xfr:"𝔵",xhArr:"⟺",xharr:"⟷",Xi:"Ξ",xi:"ξ",xlArr:"⟸",xlarr:"⟵",xmap:"⟼",xnis:"⋻",xodot:"⨀",Xopf:"𝕏",xopf:"𝕩",xoplus:"⨁",xotime:"⨂",xrArr:"⟹",xrarr:"⟶",Xscr:"𝒳",xscr:"𝓍",xsqcup:"⨆",xuplus:"⨄",xutri:"△",xvee:"⋁",xwedge:"⋀",Yacute:"Ý",yacute:"ý",YAcy:"Я",yacy:"я",Ycirc:"Ŷ",ycirc:"ŷ",Ycy:"Ы",ycy:"ы",yen:"¥",Yfr:"𝔜",yfr:"𝔶",YIcy:"Ї",yicy:"ї",Yopf:"𝕐",yopf:"𝕪",Yscr:"𝒴",yscr:"𝓎",YUcy:"Ю",yucy:"ю",Yuml:"Ÿ",yuml:"ÿ",Zacute:"Ź",zacute:"ź",Zcaron:"Ž",zcaron:"ž",Zcy:"З",zcy:"з",Zdot:"Ż",zdot:"ż",zeetrf:"ℨ",ZeroWidthSpace:"",Zeta:"Ζ",zeta:"ζ",Zfr:"ℨ",zfr:"𝔷",ZHcy:"Ж",zhcy:"ж",zigrarr:"⇝",Zopf:"ℤ",zopf:"𝕫",Zscr:"𝒵",zscr:"𝓏",zwj:"",zwnj:""}),E.entityMap=E.HTML_ENTITIES}(Jt)),Jt}var bt={},HE;function wn(){if(HE)return bt;HE=1;var E=Ht().NAMESPACE,t=/[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,r=new RegExp("[\\-\\.0-9"+t.source.slice(1,-1)+"\\u00B7\\u0300-\\u036F\\u203F-\\u2040]"),n=new RegExp("^"+t.source+r.source+"*(?::"+t.source+r.source+"*)?$"),s=0,a=1,A=2,c=3,I=4,i=5,O=6,C=7;function p(U,v){this.message=U,this.locator=v,Error.captureStackTrace&&Error.captureStackTrace(this,p)}p.prototype=new Error,p.prototype.name=p.name;function g(){}g.prototype={parse:function(U,v,te){var Ee=this.domBuilder;Ee.startDocument(),De(v,v={}),B(U,v,te,Ee,this.errorHandler),Ee.endDocument()}};function B(U,v,te,Ee,Q){function Ce(H){if(H>65535){H-=65536;var V=55296+(H>>10),ve=56320+(H&1023);return String.fromCharCode(V,ve)}else return String.fromCharCode(H)}function _e(H){var V=H.slice(1,-1);return Object.hasOwnProperty.call(te,V)?te[V]:V.charAt(0)==="#"?Ce(parseInt(V.substr(1).replace("x","0x"))):(Q.error("entity not found:"+H),H)}function pe(H){if(H>m){var V=U.substring(m,H).replace(/&#?\w+;/g,_e);oe&&b(m),Ee.characters(V,0,H-m),m=H}}function b(H,V){for(;H>=Ie&&(V=me.exec(U));)j=V.index,Ie=j+V[0].length,oe.lineNumber++;oe.columnNumber=H-j+1}for(var j=0,Ie=0,me=/.*(?:\r\n?|\n)|.*$/g,oe=Ee.locator,w=[{currentNSMap:v}],P={},m=0;;){try{var h=U.indexOf("<",m);if(h<0){if(!U.substr(m).match(/^\s*$/)){var y=Ee.doc,$=y.createTextNode(U.substr(m));y.appendChild($),Ee.currentElement=$}return}switch(h>m&&pe(h),U.charAt(h+1)){case"/":var ge=U.indexOf(">",h+3),M=U.substring(h+2,ge).replace(/[ \t\n\r]+$/g,""),z=w.pop();ge<0?(M=U.substring(h+2).replace(/[\s<].*/,""),Q.error("end tag name: "+M+" is not complete:"+z.tagName),ge=h+1+M.length):M.match(/\s</)&&(M=M.replace(/[\s<].*/,""),Q.error("end tag name: "+M+" maybe not complete"),ge=h+1+M.length);var re=z.localNSMap,Ae=z.tagName==M,le=Ae||z.tagName&&z.tagName.toLowerCase()==M.toLowerCase();if(le){if(Ee.endElement(z.uri,z.localName,M),re)for(var Ue in re)Object.prototype.hasOwnProperty.call(re,Ue)&&Ee.endPrefixMapping(Ue);Ae||Q.fatalError("end tag name: "+M+" is not match the current start tagName:"+z.tagName)}else w.push(z);ge++;break;case"?":oe&&b(h),ge=W(U,h,Ee);break;case"!":oe&&b(h),ge=ce(U,h,Ee,Q);break;default:oe&&b(h);var Se=new u,q=w[w.length-1].currentNSMap,ge=d(U,h,Se,q,_e,Q),_=Se.length;if(!Se.closed&&Z(U,ge,Se.tagName,P)&&(Se.closed=!0,te.nbsp||Q.warning("unclosed xml attribute")),oe&&_){for(var se=Y(oe,{}),Be=0;Be<_;Be++){var de=Se[Be];b(de.offset),de.locator=Y(oe,{})}Ee.locator=se,k(Se,Ee,q)&&w.push(Se),Ee.locator=oe}else k(Se,Ee,q)&&w.push(Se);E.isHTML(Se.uri)&&!Se.closed?ge=J(U,ge,Se.tagName,_e,Ee):ge++}}catch(H){if(H instanceof p)throw H;Q.error("element parse error: "+H),ge=-1}ge>m?m=ge:pe(Math.max(h,m)+1)}}function Y(U,v){return v.lineNumber=U.lineNumber,v.columnNumber=U.columnNumber,v}function d(U,v,te,Ee,Q,Ce){function _e(oe,w,P){te.attributeNames.hasOwnProperty(oe)&&Ce.fatalError("Attribute "+oe+" redefined"),te.addValue(oe,w.replace(/[\t\n\r]/g," ").replace(/&#?\w+;/g,Q),P)}for(var pe,b,j=++v,Ie=s;;){var me=U.charAt(j);switch(me){case"=":if(Ie===a)pe=U.slice(v,j),Ie=c;else if(Ie===A)Ie=c;else throw new Error("attribute equal must after attrName");break;case"'":case'"':if(Ie===c||Ie===a)if(Ie===a&&(Ce.warning('attribute value must after "="'),pe=U.slice(v,j)),v=j+1,j=U.indexOf(me,v),j>0)b=U.slice(v,j),_e(pe,b,v-1),Ie=i;else throw new Error("attribute value no end '"+me+"' match");else if(Ie==I)b=U.slice(v,j),_e(pe,b,v),Ce.warning('attribute "'+pe+'" missed start quot('+me+")!!"),v=j+1,Ie=i;else throw new Error('attribute value must after "="');break;case"/":switch(Ie){case s:te.setTagName(U.slice(v,j));case i:case O:case C:Ie=C,te.closed=!0;case I:case a:break;case A:te.closed=!0;break;default:throw new Error("attribute invalid close char('/')")}break;case"":return Ce.error("unexpected end of input"),Ie==s&&te.setTagName(U.slice(v,j)),j;case">":switch(Ie){case s:te.setTagName(U.slice(v,j));case i:case O:case C:break;case I:case a:b=U.slice(v,j),b.slice(-1)==="/"&&(te.closed=!0,b=b.slice(0,-1));case A:Ie===A&&(b=pe),Ie==I?(Ce.warning('attribute "'+b+'" missed quot(")!'),_e(pe,b,v)):((!E.isHTML(Ee[""])||!b.match(/^(?:disabled|checked|selected)$/i))&&Ce.warning('attribute "'+b+'" missed value!! "'+b+'" instead!!'),_e(b,b,v));break;case c:throw new Error("attribute value missed!!")}return j;case"":me=" ";default:if(me<=" ")switch(Ie){case s:te.setTagName(U.slice(v,j)),Ie=O;break;case a:pe=U.slice(v,j),Ie=A;break;case I:var b=U.slice(v,j);Ce.warning('attribute "'+b+'" missed quot(")!!'),_e(pe,b,v);case i:Ie=O;break}else switch(Ie){case A:te.tagName,(!E.isHTML(Ee[""])||!pe.match(/^(?:disabled|checked|selected)$/i))&&Ce.warning('attribute "'+pe+'" missed value!! "'+pe+'" instead2!!'),_e(pe,pe,v),v=j,Ie=a;break;case i:Ce.warning('attribute space is required"'+pe+'"!!');case O:Ie=a,v=j;break;case c:Ie=I,v=j;break;case C:throw new Error("elements closed character '/' and '>' must be connected to")}}j++}}function k(U,v,te){for(var Ee=U.tagName,Q=null,me=U.length;me--;){var Ce=U[me],_e=Ce.qName,pe=Ce.value,oe=_e.indexOf(":");if(oe>0)var b=Ce.prefix=_e.slice(0,oe),j=_e.slice(oe+1),Ie=b==="xmlns"&&j;else j=_e,b=null,Ie=_e==="xmlns"&&"";Ce.localName=j,Ie!==!1&&(Q==null&&(Q={},De(te,te={})),te[Ie]=Q[Ie]=pe,Ce.uri=E.XMLNS,v.startPrefixMapping(Ie,pe))}for(var me=U.length;me--;){Ce=U[me];var b=Ce.prefix;b&&(b==="xml"&&(Ce.uri=E.XML),b!=="xmlns"&&(Ce.uri=te[b||""]))}var oe=Ee.indexOf(":");oe>0?(b=U.prefix=Ee.slice(0,oe),j=U.localName=Ee.slice(oe+1)):(b=null,j=U.localName=Ee);var w=U.uri=te[b||""];if(v.startElement(w,j,Ee,U),U.closed){if(v.endElement(w,j,Ee),Q)for(b in Q)Object.prototype.hasOwnProperty.call(Q,b)&&v.endPrefixMapping(b)}else return U.currentNSMap=te,U.localNSMap=Q,!0}function J(U,v,te,Ee,Q){if(/^(?:script|textarea)$/i.test(te)){var Ce=U.indexOf("</"+te+">",v),_e=U.substring(v+1,Ce);if(/[&<]/.test(_e))return/^script$/i.test(te)?(Q.characters(_e,0,_e.length),Ce):(_e=_e.replace(/&#?\w+;/g,Ee),Q.characters(_e,0,_e.length),Ce)}return v+1}function Z(U,v,te,Ee){var Q=Ee[te];return Q==null&&(Q=U.lastIndexOf("</"+te+">"),Q<v&&(Q=U.lastIndexOf("</"+te)),Ee[te]=Q),Q<v}function De(U,v){for(var te in U)Object.prototype.hasOwnProperty.call(U,te)&&(v[te]=U[te])}function ce(U,v,te,Ee){var Q=U.charAt(v+2);switch(Q){case"-":if(U.charAt(v+3)==="-"){var Ce=U.indexOf("-->",v+4);return Ce>v?(te.comment(U,v+4,Ce-v-4),Ce+3):(Ee.error("Unclosed comment"),-1)}else return-1;default:if(U.substr(v+3,6)=="CDATA["){var Ce=U.indexOf("]]>",v+9);return te.startCDATA(),te.characters(U,v+9,Ce-v-9),te.endCDATA(),Ce+3}var _e=ee(U,v),pe=_e.length;if(pe>1&&/!doctype/i.test(_e[0][0])){var b=_e[1][0],j=!1,Ie=!1;pe>3&&(/^public$/i.test(_e[2][0])?(j=_e[3][0],Ie=pe>4&&_e[4][0]):/^system$/i.test(_e[2][0])&&(Ie=_e[3][0]));var me=_e[pe-1];return te.startDTD(b,j,Ie),te.endDTD(),me.index+me[0].length}}return-1}function W(U,v,te){var Ee=U.indexOf("?>",v);if(Ee){var Q=U.substring(v,Ee).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/);return Q?(Q[0].length,te.processingInstruction(Q[1],Q[2]),Ee+2):-1}return-1}function u(){this.attributeNames={}}u.prototype={setTagName:function(U){if(!n.test(U))throw new Error("invalid tagName:"+U);this.tagName=U},addValue:function(U,v,te){if(!n.test(U))throw new Error("invalid attribute:"+U);this.attributeNames[U]=this.length,this[this.length++]={qName:U,value:v,offset:te}},length:0,getLocalName:function(U){return this[U].localName},getLocator:function(U){return this[U].locator},getQName:function(U){return this[U].qName},getURI:function(U){return this[U].uri},getValue:function(U){return this[U].value}};function ee(U,v){var te,Ee=[],Q=/'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g;for(Q.lastIndex=v,Q.exec(U);te=Q.exec(U);)if(Ee.push(te),te[1])return Ee}return bt.XMLReader=g,bt.ParseError=p,bt}var bE;function Wn(){if(bE)return mt;bE=1;var E=Ht(),t=GE(),r=vn(),n=wn(),s=t.DOMImplementation,a=E.NAMESPACE,A=n.ParseError,c=n.XMLReader;function I(d){return d.replace(/\r[\n\u0085]/g,`
|
|
8
|
+
`)(m);h=z(a.value,H,B),I.value=h}else throw new Error(`Unsupported filter type: ${p.type}`);i.value="",T.nextTick(()=>{ee()})}catch(h){i.value=h instanceof Error?h.message:"Filter execution error",I.value=null}},Z=(p,h="root")=>{const m=new Map,B=(H,te)=>{if(H==null)return H;if(typeof H=="object"&&H.__protected_number__!==void 0){const Ee=parseFloat(H.__protected_number__);return m.set(Ee,te),Ee}if(Array.isArray(H)){const Ee=H.map((Re,Le)=>{const ue=`${te}[${Le}]`,v=B(Re,ue);return m.set(v,ue),v});return m.set(Ee,te),Ee}if(typeof H=="object"){const Ee={};for(const Re in H)if(Object.prototype.hasOwnProperty.call(H,Re)){const Le=te==="root"?Re:`${te}.${Re}`;Ee[Re]=B(H[Re],Le)}return m.set(Ee,te),Ee}return H};return{proxyData:B(p,h),indexMap:m}},z=(p,h,m)=>{if(h===null||typeof h!="object")return h;if(Array.isArray(h))return h.map(H=>{const te=m.get(H);if(te){const Ee=De(p,te);if(Ee!==void 0)return Ee}return z(p,H,m)});const B=m.get(h);if(B){const H=De(p,B);if(H!==void 0)return H}const b={};for(const H in h)Object.prototype.hasOwnProperty.call(h,H)&&(b[H]=z(p,h[H],m));return b},De=(p,h)=>{if(h==="root")return p;const m=[];let B=h.replace(/^root\.?/,"");const b=/([^\[\].]+)|\[(\d+)\]/g;let H;for(;(H=b.exec(B))!==null;)H[1]?m.push(H[1]):H[2]!==void 0&&m.push(parseInt(H[2]));let te=p;for(const Ee of m){if(te==null)return;te=te[Ee]}return te},Ce=()=>{I.value=null,i.value=""},X=()=>{O.value=!0},L=()=>{O.value=!1};T.watch(()=>n.modelValue,p=>{P(p)},{immediate:!0});const k=(p,h,m)=>{const B=te=>{if(te===null||typeof te!="object")return te;if(!Array.isArray(te)&&"__protected_number__"in te&&Object.keys(te).length===1)return`__PROTECTED_NUMBER_${te.__protected_number__}_PROTECTED_NUMBER__`;if(Array.isArray(te))return te.map(Re=>B(Re));const Ee={};for(const[Re,Le]of Object.entries(te))Ee[Re]=B(Le);return Ee},b=B(p);return JSON.stringify(b,h,m).replace(/"__PROTECTED_NUMBER_(.+?)_PROTECTED_NUMBER__"/g,"$1")},g=(p,h)=>{if(!n.readonly)try{const m=x(a.value,p,h),B=k(m,null,2);s("update:modelValue",B)}catch(m){console.error("Failed to update JSON:",m)}},x=(p,h,m)=>{if(!h||h==="root")return m;const B=h.split("."),b=Ue(p,B.slice(0,-1));let H=b;for(let Ee=0;Ee<B.length-1;Ee++){const Re=B[Ee];Re!=="root"&&(Array.isArray(H)?H=H[parseInt(Re)]:H=H[Re])}const te=B[B.length-1];return te==="root"?m:(Array.isArray(H)?H[parseInt(te)]=m:H[te]=m,b)},ne=p=>{C.value.has(p)?C.value.delete(p):C.value.add(p)},ee=()=>{const p=new Set,h=(m,B="")=>{m!==null&&typeof m=="object"&&(p.add(B||"root"),Array.isArray(m)?m.forEach((b,H)=>{const te=B?`${B}.${H}`:`${H}`;h(b,te)}):Object.keys(m).forEach(b=>{const H=B?`${B}.${b}`:b;h(m[b],H)}))};h(w.value),C.value=p,s("expand-all")},Q=()=>{C.value=new Set,s("collapse-all")},Oe=async()=>{if(u.value)try{const p=w.value,h=k(p,null,2);await navigator.clipboard.writeText(h),s("copy-success",h)}catch(p){console.error("Failed to copy JSON:",p),s("copy-error",p instanceof Error?p:new Error("Failed to copy JSON"))}},ce=()=>{if(u.value)try{const p=w.value,h=k(p);s("update:modelValue",h),s("compress",h)}catch(p){console.error("Failed to compress JSON:",p)}},pe=p=>{if(typeof p=="object"&&p!==null&&!Array.isArray(p)&&"__protected_number__"in p&&Object.keys(p).length===1)return p.__protected_number__;if(typeof p=="string")return`"${p}"`;const h=JSON.stringify(p);return h===void 0?"undefined":h},Y=async p=>{try{await navigator.clipboard.writeText(pe(p))}catch(h){console.error("Failed to copy value:",h)}},j=(p,h)=>{if(!n.readonly)try{const m=le(a.value,p,h),B=k(m,null,2);s("update:modelValue",B),q(p,h)}catch(m){console.error("Failed to rename key:",m)}},le=(p,h,m)=>{if(!h||h==="root")return p;const B=h.split("."),b=Ue(p,B.slice(0,-1));if(B.length===1){const Ee=B[0];return b&&typeof b=="object"&&!Array.isArray(b)?Te(b,Ee,m):b}let H=b;for(let Ee=0;Ee<B.length-1;Ee++){const Re=B[Ee];Array.isArray(H)?H=H[parseInt(Re)]:H=H[Re]}const te=B[B.length-1];if(!Array.isArray(H)&&H&&typeof H=="object"){const Ee=Te(H,te,m),Re=B.slice(0,-1);Re.length>0&&he(b,Re,Ee)}return b},Ue=(p,h)=>{if(h.length===0)return p;if(Array.isArray(p)){const m=[...p],B=h[0],b=parseInt(B);return h.length===1||(m[b]=Ue(p[b],h.slice(1))),m}else if(p&&typeof p=="object"){const m={...p},B=h[0];return h.length===1||(m[B]=Ue(p[B],h.slice(1))),m}return p},Te=(p,h,m)=>{if(!p||typeof p!="object"||Array.isArray(p))return p;const B=Object.keys(p),b={};for(const H of B)H===h?b[m]=p[H]:b[H]=p[H];return b},he=(p,h,m)=>{let B=p;for(let H=0;H<h.length-1;H++){const te=h[H];Array.isArray(B)?B=B[parseInt(te)]:B=B[te]}const b=h[h.length-1];Array.isArray(B)?B[parseInt(b)]=m:B[b]=m},q=(p,h)=>{const m=new Set;C.value.forEach(B=>{if(B===p){const b=p.split(".");b[b.length-1]=h,m.add(b.join("."))}else if(B.startsWith(p+".")){const b=p.split(".");b[b.length-1]=h;const H=b.join("."),te=B.substring(p.length);m.add(H+te)}else m.add(B)}),C.value=m};return t({copyJson:Oe,compressSource:ce,expandAll:ee,collapseAll:Q,toggleExpand:ne,updateValue:g,updateKey:j,filter:J,clearFilter:Ce,sortKeys:X,clearSortKeys:L,isSorted:()=>O.value,isValidJson:()=>u.value,getParsedJson:()=>a.value,getFilteredJson:()=>I.value,getExpandedNodes:()=>C.value,getParseError:()=>A.value,getFilterError:()=>i.value,parseJson:p=>P(p),copyValue:p=>Y(p),getValue:p=>pe(p)}),(p,h)=>(T.openBlock(),T.createElementBlock("div",{class:T.normalizeClass(["json-format",`json-format--${d.value.name}`])},[T.createElementVNode("div",Gn,[u.value?i.value?(T.openBlock(),T.createElementBlock("div",Hn,[h[1]||(h[1]=T.createElementVNode("h4",null,"Filter Error:",-1)),T.createElementVNode("pre",null,T.toDisplayString(i.value),1)])):(T.openBlock(),T.createElementBlock("div",bn,[T.createVNode(Bn,{value:w.value,"key-name":"",level:0,expanded:C.value,"is-last":!0,theme:d.value,"onUpdate:value":g,onToggleExpand:ne,onCopy:Y,"onUpdate:key":j},null,8,["value","expanded","theme"])])):(T.openBlock(),T.createElementBlock("div",Fn,[h[0]||(h[0]=T.createElementVNode("h4",null,"JSON Parse Error:",-1)),T.createElementVNode("pre",null,T.toDisplayString(A.value),1)]))])],2))}}),[["__scopeId","data-v-4559cb85"]]);function mE(E){return E&&E.__esModule&&Object.prototype.hasOwnProperty.call(E,"default")?E.default:E}var qt={},BE;function xn(){return BE||(BE=1,function(E){var t=E;(function(r){var n="__namespace",s=function(e){return e==null},a=function(e){return e===n||Number.isInteger(e)&&e>=1&&e<=11},A=function(e){return e&&a(e.nodeType)&&typeof e.nodeName=="string"};function C(e){var o=Array.prototype.slice,N=e.length,D=function(f,oe){return function(){return oe.apply(this,f.concat(o.call(arguments)))}},l=function(){var f=o.call(arguments);return f.length<N?D(f,l):e.apply(this,o.apply(arguments,[0,N]))};return l}var I=function(e,o){for(var N=0;N<o.length;N+=1)e(o[N],N,o)},i=function(e,o,N){var D=o;return I(function(l,f){D=e(D,l,f)},N),D},O=function(e,o){var N=new Array(o.length);return I(function(D,l){N[l]=e(D)},o),N},u=function(e,o){var N=[];return I(function(D,l){e(D,l)&&N.push(D)},o),N},d=function(e,o){for(var N=0;N<e.length;N+=1)if(e[N]===o)return!0;return!1};function U(e){return function(){return e}}function M(e){return e.toString()}var w=function(e,o){return o.join(e)},P=function(e,o,N){return e+N+o},J=Array.prototype.concat,Z=function(e,o){var N=new ie;N.addArray(e);var D=N.toArray();return o?D.reverse():D},z=32767;function De(e){for(var o=[],N=0;N<e.length;N+=z){var D=e.slice(N,N+z);o=J.apply(o,D)}return o}function Ce(e,o){for(var N=Object(e),D=1;D<arguments.length;D++){var l=arguments[D];if(l!=null)for(var f in l)Object.prototype.hasOwnProperty.call(l,f)&&(N[f]=l[f])}return N}var X={ELEMENT_NODE:1,ATTRIBUTE_NODE:2,TEXT_NODE:3,CDATA_SECTION_NODE:4,PROCESSING_INSTRUCTION_NODE:7,COMMENT_NODE:8,DOCUMENT_NODE:9,DOCUMENT_TYPE_NODE:10,DOCUMENT_FRAGMENT_NODE:11,NAMESPACE_NODE:n};L.prototype=new Object,L.prototype.constructor=L,L.superclass=Object.prototype;function L(){this.init()}L.prototype.init=function(){this.reduceActions=[],this.reduceActions[3]=function(e){return new Oe(e[0],e[2])},this.reduceActions[5]=function(e){return new ce(e[0],e[2])},this.reduceActions[7]=function(e){return new pe(e[0],e[2])},this.reduceActions[8]=function(e){return new Y(e[0],e[2])},this.reduceActions[10]=function(e){return new j(e[0],e[2])},this.reduceActions[11]=function(e){return new le(e[0],e[2])},this.reduceActions[12]=function(e){return new Ue(e[0],e[2])},this.reduceActions[13]=function(e){return new Te(e[0],e[2])},this.reduceActions[15]=function(e){return new he(e[0],e[2])},this.reduceActions[16]=function(e){return new q(e[0],e[2])},this.reduceActions[18]=function(e){return new p(e[0],e[2])},this.reduceActions[19]=function(e){return new h(e[0],e[2])},this.reduceActions[20]=function(e){return new m(e[0],e[2])},this.reduceActions[22]=function(e){return new ee(e[1])},this.reduceActions[24]=function(e){return new B(e[0],e[2])},this.reduceActions[25]=function(e){return new b(void 0,void 0,e[0])},this.reduceActions[27]=function(e){return e[0].locationPath=e[2],e[0]},this.reduceActions[28]=function(e){return e[0].locationPath=e[2],e[0].locationPath.steps.unshift(new v(v.DESCENDANTORSELF,c.nodeTest,[])),e[0]},this.reduceActions[29]=function(e){return new b(e[0],[],void 0)},this.reduceActions[30]=function(e){return Se.instance_of(e[0],b)?(e[0].filterPredicates==null&&(e[0].filterPredicates=[]),e[0].filterPredicates.push(e[1]),e[0]):new b(e[0],[e[1]],void 0)},this.reduceActions[32]=function(e){return e[1]},this.reduceActions[33]=function(e){return new F(e[0])},this.reduceActions[34]=function(e){return new W(e[0])},this.reduceActions[36]=function(e){return new ge(e[0],[])},this.reduceActions[37]=function(e){return new ge(e[0],e[2])},this.reduceActions[38]=function(e){return[e[0]]},this.reduceActions[39]=function(e){return e[2].unshift(e[0]),e[2]},this.reduceActions[43]=function(e){return new ue(!0,[])},this.reduceActions[44]=function(e){return e[1].absolute=!0,e[1]},this.reduceActions[46]=function(e){return new ue(!1,[e[0]])},this.reduceActions[47]=function(e){return e[0].steps.push(e[2]),e[0]},this.reduceActions[49]=function(e){return new v(e[0],e[1],[])},this.reduceActions[50]=function(e){return new v(v.CHILD,e[0],[])},this.reduceActions[51]=function(e){return new v(e[0],e[1],e[2])},this.reduceActions[52]=function(e){return new v(v.CHILD,e[0],e[1])},this.reduceActions[54]=function(e){return[e[0]]},this.reduceActions[55]=function(e){return e[1].unshift(e[0]),e[1]},this.reduceActions[56]=function(e){return e[0]=="ancestor"?v.ANCESTOR:e[0]=="ancestor-or-self"?v.ANCESTORORSELF:e[0]=="attribute"?v.ATTRIBUTE:e[0]=="child"?v.CHILD:e[0]=="descendant"?v.DESCENDANT:e[0]=="descendant-or-self"?v.DESCENDANTORSELF:e[0]=="following"?v.FOLLOWING:e[0]=="following-sibling"?v.FOLLOWINGSIBLING:e[0]=="namespace"?v.NAMESPACE:e[0]=="parent"?v.PARENT:e[0]=="preceding"?v.PRECEDING:e[0]=="preceding-sibling"?v.PRECEDINGSIBLING:e[0]=="self"?v.SELF:-1},this.reduceActions[57]=function(e){return v.ATTRIBUTE},this.reduceActions[59]=function(e){return e[0]=="comment"?c.commentTest:e[0]=="text"?c.textTest:e[0]=="processing-instruction"?c.anyPiTest:e[0]=="node"?c.nodeTest:new c(-1,void 0)},this.reduceActions[60]=function(e){return new c.PITest(e[2])},this.reduceActions[61]=function(e){return e[1]},this.reduceActions[63]=function(e){return e[1].absolute=!0,e[1].steps.unshift(new v(v.DESCENDANTORSELF,c.nodeTest,[])),e[1]},this.reduceActions[64]=function(e){return e[0].steps.push(new v(v.DESCENDANTORSELF,c.nodeTest,[])),e[0].steps.push(e[2]),e[0]},this.reduceActions[65]=function(e){return new v(v.SELF,c.nodeTest,[])},this.reduceActions[66]=function(e){return new v(v.PARENT,c.nodeTest,[])},this.reduceActions[67]=function(e){return new re(e[1])},this.reduceActions[68]=function(e){return c.nameTestAny},this.reduceActions[69]=function(e){return new c.NameTestPrefixAny(e[0].split(":")[0])},this.reduceActions[70]=function(e){return new c.NameTestQName(e[0])}},L.actionTable=[" s s sssssssss s ss s ss"," s ","r rrrrrrrrr rrrrrrr rr r "," rrrrr "," s s sssssssss s ss s ss","rs rrrrrrrr s sssssrrrrrr rrs rs "," s s sssssssss s ss s ss"," s "," s ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr "," s "," s "," s s sssss s s ","r rrrrrrrrr rrrrrrr rr r ","a ","r s rr r ","r sr rr r ","r s rr s rr r ","r rssrr rss rr r ","r rrrrr rrrss rr r ","r rrrrrsss rrrrr rr r ","r rrrrrrrr rrrrr rr r ","r rrrrrrrr rrrrrs rr r ","r rrrrrrrr rrrrrr rr r ","r rrrrrrrr rrrrrr rr r ","r srrrrrrrr rrrrrrs rr sr ","r srrrrrrrr rrrrrrs rr r ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrr rrrrrr rr r ","r rrrrrrrr rrrrrr rr r ","r rrrrrrrrr rrrrrrr rr r ","r rrrrrrrrr rrrrrrr rr r "," sssss ","r rrrrrrrrr rrrrrrr rr sr ","r rrrrrrrrr rrrrrrr rr r ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr "," s ","r srrrrrrrr rrrrrrs rr r ","r rrrrrrrr rrrrr rr r "," s "," s "," rrrrr "," s s sssssssss s sss s ss","r srrrrrrrr rrrrrrs rr r "," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss s ss s ss"," s s sssssssss ss s ss"," s s sssssssss s ss s ss"," s s sssss s s "," s s sssss s s ","r rrrrrrrrr rrrrrrr rr rr "," s s sssss s s "," s s sssss s s ","r rrrrrrrrr rrrrrrr rr sr ","r rrrrrrrrr rrrrrrr rr sr ","r rrrrrrrrr rrrrrrr rr r ","r rrrrrrrrr rrrrrrr rr rr "," s ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr "," rr "," s "," rs ","r sr rr r ","r s rr s rr r ","r rssrr rss rr r ","r rssrr rss rr r ","r rrrrr rrrss rr r ","r rrrrr rrrss rr r ","r rrrrr rrrss rr r ","r rrrrr rrrss rr r ","r rrrrrsss rrrrr rr r ","r rrrrrsss rrrrr rr r ","r rrrrrrrr rrrrr rr r ","r rrrrrrrr rrrrr rr r ","r rrrrrrrr rrrrr rr r ","r rrrrrrrr rrrrrr rr r "," r "," s ","r srrrrrrrr rrrrrrs rr r ","r srrrrrrrr rrrrrrs rr r ","r rrrrrrrrr rrrrrrr rr r ","r rrrrrrrrr rrrrrrr rr r ","r rrrrrrrrr rrrrrrr rr r ","r rrrrrrrrr rrrrrrr rr r ","r rrrrrrrrr rrrrrrr rr rr ","r rrrrrrrrr rrrrrrr rr rr "," s s sssssssss s ss s ss","r rrrrrrrrr rrrrrrr rr rr "," r "],L.actionTableNumber=[` 1 0 /.-,+*)(' & %$ # "!`," J ","a aaaaaaaaa aaaaaaa aa a "," YYYYY ",` 1 0 /.-,+*)(' & %$ # "!`,`K1 KKKKKKKK . +*)('KKKKKK KK# K" `,` 1 0 /.-,+*)(' & %$ # "!`," N "," O ","e eeeeeeeee eeeeeee ee ee ","f fffffffff fffffff ff ff ","d ddddddddd ddddddd dd dd ","B BBBBBBBBB BBBBBBB BB BB ","A AAAAAAAAA AAAAAAA AA AA "," P "," Q ",` 1 . +*)(' # " `,"b bbbbbbbbb bbbbbbb bb b "," ","! S !! ! ",'" T" "" " ',"$ V $$ U $$ $ ","& &ZY&& &XW && & ",") ))))) )))\\[ )) ) ",". ....._^] ..... .. . ","1 11111111 11111 11 1 ","5 55555555 55555` 55 5 ","7 77777777 777777 77 7 ","9 99999999 999999 99 9 ",": c:::::::: ::::::b :: a: ","I fIIIIIIII IIIIIIe II I ","= ========= ======= == == ","? ????????? ??????? ?? ?? ","C CCCCCCCCC CCCCCCC CC CC ","J JJJJJJJJ JJJJJJ JJ J ","M MMMMMMMM MMMMMM MM M ","N NNNNNNNNN NNNNNNN NN N ","P PPPPPPPPP PPPPPPP PP P "," +*)(' ","R RRRRRRRRR RRRRRRR RR aR ","U UUUUUUUUU UUUUUUU UU U ","Z ZZZZZZZZZ ZZZZZZZ ZZ ZZ ","c ccccccccc ccccccc cc cc "," j ","L fLLLLLLLL LLLLLLe LL L ","6 66666666 66666 66 6 "," k "," l "," XXXXX ",` 1 0 /.-,+*)(' & %$m # "!`,"_ f________ ______e __ _ ",` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 0 /.-,+*)(' %$ # "!`,` 1 0 /.-,+*)(' & %$ # "!`,` 1 . +*)(' # " `,` 1 . +*)(' # " `,"> >>>>>>>>> >>>>>>> >> >> ",` 1 . +*)(' # " `,` 1 . +*)(' # " `,"Q QQQQQQQQQ QQQQQQQ QQ aQ ","V VVVVVVVVV VVVVVVV VV aV ","T TTTTTTTTT TTTTTTT TT T ","@ @@@@@@@@@ @@@@@@@ @@ @@ "," ","[ [[[[[[[[[ [[[[[[[ [[ [[ ","D DDDDDDDDD DDDDDDD DD DD "," HH "," "," F ","# T# ## # ","% V %% U %% % ","' 'ZY'' 'XW '' ' ","( (ZY(( (XW (( ( ","+ +++++ +++\\[ ++ + ","* ***** ***\\[ ** * ","- ----- ---\\[ -- - ",", ,,,,, ,,,\\[ ,, , ","0 00000_^] 00000 00 0 ","/ /////_^] ///// // / ","2 22222222 22222 22 2 ","3 33333333 33333 33 3 ","4 44444444 44444 44 4 ","8 88888888 888888 88 8 "," ^ "," ","; f;;;;;;;; ;;;;;;e ;; ; ","< f<<<<<<<< <<<<<<e << < ","O OOOOOOOOO OOOOOOO OO O ","` ````````` ``````` `` ` ","S SSSSSSSSS SSSSSSS SS S ","W WWWWWWWWW WWWWWWW WW W ","\\ \\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\ \\\\ \\\\ ","E EEEEEEEEE EEEEEEE EE EE ",` 1 0 /.-,+*)(' & %$ # "!`,"] ]]]]]]]]] ]]]]]]] ]] ]] "," G "],L.gotoTable=["3456789:;<=>?@ AB CDEFGH IJ "," "," "," ","L456789:;<=>?@ AB CDEFGH IJ "," M EFGH IJ "," N;<=>?@ AB CDEFGH IJ "," "," "," "," "," "," "," "," "," "," S EFGH IJ "," "," "," "," "," "," "," "," "," "," "," "," "," e "," "," "," "," "," "," "," "," "," h J "," i j "," "," "," "," "," "," "," "," "," ","o456789:;<=>?@ ABpqCDEFGH IJ "," "," r6789:;<=>?@ AB CDEFGH IJ "," s789:;<=>?@ AB CDEFGH IJ "," t89:;<=>?@ AB CDEFGH IJ "," u89:;<=>?@ AB CDEFGH IJ "," v9:;<=>?@ AB CDEFGH IJ "," w9:;<=>?@ AB CDEFGH IJ "," x9:;<=>?@ AB CDEFGH IJ "," y9:;<=>?@ AB CDEFGH IJ "," z:;<=>?@ AB CDEFGH IJ "," {:;<=>?@ AB CDEFGH IJ "," |;<=>?@ AB CDEFGH IJ "," };<=>?@ AB CDEFGH IJ "," ~;<=>?@ AB CDEFGH IJ "," =>?@ AB CDEFGH IJ ","456789:;<=>?@ AB CDEFGH IJ"," EFGH IJ "," EFGH IJ "," "," GH IJ ","
GH IJ "," i "," i "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," ","o456789:;<=>?@ ABqCDEFGH IJ "," "," "],L.productions=[[1,1,2],[2,1,3],[3,1,4],[3,3,3,-9,4],[4,1,5],[4,3,4,-8,5],[5,1,6],[5,3,5,-22,6],[5,3,5,-5,6],[6,1,7],[6,3,6,-23,7],[6,3,6,-24,7],[6,3,6,-6,7],[6,3,6,-7,7],[7,1,8],[7,3,7,-25,8],[7,3,7,-26,8],[8,1,9],[8,3,8,-12,9],[8,3,8,-11,9],[8,3,8,-10,9],[9,1,10],[9,2,-26,9],[10,1,11],[10,3,10,-27,11],[11,1,12],[11,1,13],[11,3,13,-28,14],[11,3,13,-4,14],[13,1,15],[13,2,13,16],[15,1,17],[15,3,-29,2,-30],[15,1,-15],[15,1,-16],[15,1,18],[18,3,-13,-29,-30],[18,4,-13,-29,19,-30],[19,1,20],[19,3,20,-31,19],[20,1,2],[12,1,14],[12,1,21],[21,1,-28],[21,2,-28,14],[21,1,22],[14,1,23],[14,3,14,-28,23],[14,1,24],[23,2,25,26],[23,1,26],[23,3,25,26,27],[23,2,26,27],[23,1,28],[27,1,16],[27,2,16,27],[25,2,-14,-3],[25,1,-32],[26,1,29],[26,3,-20,-29,-30],[26,4,-21,-29,-15,-30],[16,3,-33,30,-34],[30,1,2],[22,2,-4,14],[24,3,14,-4,23],[28,1,-35],[28,1,-2],[17,2,-36,-18],[29,1,-17],[29,1,-19],[29,1,-18]],L.DOUBLEDOT=2,L.DOUBLECOLON=3,L.DOUBLESLASH=4,L.NOTEQUAL=5,L.LESSTHANOREQUAL=6,L.GREATERTHANOREQUAL=7,L.AND=8,L.OR=9,L.MOD=10,L.DIV=11,L.MULTIPLYOPERATOR=12,L.FUNCTIONNAME=13,L.AXISNAME=14,L.LITERAL=15,L.NUMBER=16,L.ASTERISKNAMETEST=17,L.QNAME=18,L.NCNAMECOLONASTERISK=19,L.NODETYPE=20,L.PROCESSINGINSTRUCTIONWITHLITERAL=21,L.EQUALS=22,L.LESSTHAN=23,L.GREATERTHAN=24,L.PLUS=25,L.MINUS=26,L.BAR=27,L.SLASH=28,L.LEFTPARENTHESIS=29,L.RIGHTPARENTHESIS=30,L.COMMA=31,L.AT=32,L.LEFTBRACKET=33,L.RIGHTBRACKET=34,L.DOT=35,L.DOLLAR=36,L.prototype.tokenize=function(e){for(var o=[],N=[],D=e+"\0",l=0,f=D.charAt(l++);;){for(;f==" "||f==" "||f=="\r"||f==`
|
|
9
|
+
`;)f=D.charAt(l++);if(f=="\0"||l>=D.length)break;if(f=="("){o.push(L.LEFTPARENTHESIS),N.push(f),f=D.charAt(l++);continue}if(f==")"){o.push(L.RIGHTPARENTHESIS),N.push(f),f=D.charAt(l++);continue}if(f=="["){o.push(L.LEFTBRACKET),N.push(f),f=D.charAt(l++);continue}if(f=="]"){o.push(L.RIGHTBRACKET),N.push(f),f=D.charAt(l++);continue}if(f=="@"){o.push(L.AT),N.push(f),f=D.charAt(l++);continue}if(f==","){o.push(L.COMMA),N.push(f),f=D.charAt(l++);continue}if(f=="|"){o.push(L.BAR),N.push(f),f=D.charAt(l++);continue}if(f=="+"){o.push(L.PLUS),N.push(f),f=D.charAt(l++);continue}if(f=="-"){o.push(L.MINUS),N.push(f),f=D.charAt(l++);continue}if(f=="="){o.push(L.EQUALS),N.push(f),f=D.charAt(l++);continue}if(f=="$"){o.push(L.DOLLAR),N.push(f),f=D.charAt(l++);continue}if(f=="."){if(f=D.charAt(l++),f=="."){o.push(L.DOUBLEDOT),N.push(".."),f=D.charAt(l++);continue}if(f>="0"&&f<="9"){var oe="."+f;for(f=D.charAt(l++);f>="0"&&f<="9";)oe+=f,f=D.charAt(l++);o.push(L.NUMBER),N.push(oe);continue}o.push(L.DOT),N.push(".");continue}if(f=="'"||f=='"'){for(var me=f,Be="";l<D.length&&(f=D.charAt(l))!==me;)Be+=f,l+=1;if(f!==me)throw qe.fromMessage("Unterminated string literal: "+me+Be);l+=1,o.push(L.LITERAL),N.push(Be),f=D.charAt(l++);continue}if(f>="0"&&f<="9"){var oe=f;for(f=D.charAt(l++);f>="0"&&f<="9";)oe+=f,f=D.charAt(l++);if(f=="."&&D.charAt(l)>="0"&&D.charAt(l)<="9")for(oe+=f,oe+=D.charAt(l++),f=D.charAt(l++);f>="0"&&f<="9";)oe+=f,f=D.charAt(l++);o.push(L.NUMBER),N.push(oe);continue}if(f=="*"){if(o.length>0){var ae=o[o.length-1];if(ae!=L.AT&&ae!=L.DOUBLECOLON&&ae!=L.LEFTPARENTHESIS&&ae!=L.LEFTBRACKET&&ae!=L.AND&&ae!=L.OR&&ae!=L.MOD&&ae!=L.DIV&&ae!=L.MULTIPLYOPERATOR&&ae!=L.SLASH&&ae!=L.DOUBLESLASH&&ae!=L.BAR&&ae!=L.PLUS&&ae!=L.MINUS&&ae!=L.EQUALS&&ae!=L.NOTEQUAL&&ae!=L.LESSTHAN&&ae!=L.LESSTHANOREQUAL&&ae!=L.GREATERTHAN&&ae!=L.GREATERTHANOREQUAL){o.push(L.MULTIPLYOPERATOR),N.push(f),f=D.charAt(l++);continue}}o.push(L.ASTERISKNAMETEST),N.push(f),f=D.charAt(l++);continue}if(f==":"&&D.charAt(l)==":"){o.push(L.DOUBLECOLON),N.push("::"),l++,f=D.charAt(l++);continue}if(f=="/"){if(f=D.charAt(l++),f=="/"){o.push(L.DOUBLESLASH),N.push("//"),f=D.charAt(l++);continue}o.push(L.SLASH),N.push("/");continue}if(f=="!"&&D.charAt(l)=="="){o.push(L.NOTEQUAL),N.push("!="),l++,f=D.charAt(l++);continue}if(f=="<"){if(D.charAt(l)=="="){o.push(L.LESSTHANOREQUAL),N.push("<="),l++,f=D.charAt(l++);continue}o.push(L.LESSTHAN),N.push("<"),f=D.charAt(l++);continue}if(f==">"){if(D.charAt(l)=="="){o.push(L.GREATERTHANOREQUAL),N.push(">="),l++,f=D.charAt(l++);continue}o.push(L.GREATERTHAN),N.push(">"),f=D.charAt(l++);continue}if(f=="_"||Se.isLetter(f.charCodeAt(0))){var Ae=f;for(f=D.charAt(l++);Se.isNCNameChar(f.charCodeAt(0));)Ae+=f,f=D.charAt(l++);if(o.length>0){var ae=o[o.length-1];if(ae!=L.AT&&ae!=L.DOUBLECOLON&&ae!=L.LEFTPARENTHESIS&&ae!=L.LEFTBRACKET&&ae!=L.AND&&ae!=L.OR&&ae!=L.MOD&&ae!=L.DIV&&ae!=L.MULTIPLYOPERATOR&&ae!=L.SLASH&&ae!=L.DOUBLESLASH&&ae!=L.BAR&&ae!=L.PLUS&&ae!=L.MINUS&&ae!=L.EQUALS&&ae!=L.NOTEQUAL&&ae!=L.LESSTHAN&&ae!=L.LESSTHANOREQUAL&&ae!=L.GREATERTHAN&&ae!=L.GREATERTHANOREQUAL){if(Ae=="and"){o.push(L.AND),N.push(Ae);continue}if(Ae=="or"){o.push(L.OR),N.push(Ae);continue}if(Ae=="mod"){o.push(L.MOD),N.push(Ae);continue}if(Ae=="div"){o.push(L.DIV),N.push(Ae);continue}}}if(f==":"){if(D.charAt(l)=="*"){o.push(L.NCNAMECOLONASTERISK),N.push(Ae+":*"),l++,f=D.charAt(l++);continue}if(D.charAt(l)=="_"||Se.isLetter(D.charCodeAt(l))){for(Ae+=":",f=D.charAt(l++);Se.isNCNameChar(f.charCodeAt(0));)Ae+=f,f=D.charAt(l++);if(f=="("){o.push(L.FUNCTIONNAME),N.push(Ae);continue}o.push(L.QNAME),N.push(Ae);continue}if(D.charAt(l)==":"){o.push(L.AXISNAME),N.push(Ae);continue}}if(f=="("){if(Ae=="comment"||Ae=="text"||Ae=="node"){o.push(L.NODETYPE),N.push(Ae);continue}if(Ae=="processing-instruction"){D.charAt(l)==")"?o.push(L.NODETYPE):o.push(L.PROCESSINGINSTRUCTIONWITHLITERAL),N.push(Ae);continue}o.push(L.FUNCTIONNAME),N.push(Ae);continue}o.push(L.QNAME),N.push(Ae);continue}throw new Error("Unexpected character "+f)}return o.push(1),N.push("[EOF]"),[o,N]},L.SHIFT="s",L.REDUCE="r",L.ACCEPT="a",L.prototype.parse=function(Be){if(!Be)throw new Error("XPath expression unspecified.");if(typeof Be!="string")throw new Error("XPath expression must be a string.");var o,N,D=this.tokenize(Be);if(D!=null){o=D[0],N=D[1];var l=0,f=[],oe=[],me=[],Be,ae,Ae;for(f.push(0),oe.push(1),me.push("_S"),ae=o[l],Ae=N[l++];;)switch(Be=f[f.length-1],L.actionTable[Be].charAt(ae-1)){case L.SHIFT:oe.push(-ae),me.push(Ae),f.push(L.actionTableNumber[Be].charCodeAt(ae-1)-32),ae=o[l],Ae=N[l++];break;case L.REDUCE:for(var Ke=L.productions[L.actionTableNumber[Be].charCodeAt(ae-1)-32][1],ze=[],He=0;He<Ke;He++)oe.pop(),ze.unshift(me.pop()),f.pop();var Tt=f[f.length-1];oe.push(L.productions[L.actionTableNumber[Be].charCodeAt(ae-1)-32][0]),this.reduceActions[L.actionTableNumber[Be].charCodeAt(ae-1)-32]==null?me.push(ze[0]):me.push(this.reduceActions[L.actionTableNumber[Be].charCodeAt(ae-1)-32](ze)),f.push(L.gotoTable[Tt].charCodeAt(L.productions[L.actionTableNumber[Be].charCodeAt(ae-1)-32][0]-2)-33);break;case L.ACCEPT:return new k(me.pop());default:throw new Error("XPath parse error")}}},k.prototype=new Object,k.prototype.constructor=k,k.superclass=Object.prototype;function k(e){this.expression=e}k.prototype.toString=function(){return this.expression.toString()};function g(e,o,N){o in e||(e[o]=N)}k.prototype.evaluate=function(e){var o=e.expressionContextNode;if(!(s(o)||A(o)))throw new Error("Context node does not appear to be a valid DOM node.");return e.contextNode=e.expressionContextNode,e.contextSize=1,e.contextPosition=1,e.isHtml&&(g(e,"caseInsensitive",!0),g(e,"allowAnyNamespaceForNoPrefix",!0)),g(e,"caseInsensitive",!1),this.expression.evaluate(e)},k.XML_NAMESPACE_URI="http://www.w3.org/XML/1998/namespace",k.XMLNS_NAMESPACE_URI="http://www.w3.org/2000/xmlns/",x.prototype=new Object,x.prototype.constructor=x,x.superclass=Object.prototype;function x(){}x.prototype.init=function(){},x.prototype.toString=function(){return"<Expression>"},x.prototype.evaluate=function(e){throw new Error("Could not evaluate expression.")},ne.prototype=new x,ne.prototype.constructor=ne,ne.superclass=x.prototype;function ne(e){arguments.length>0&&this.init(e)}ne.prototype.init=function(e){this.rhs=e},ee.prototype=new ne,ee.prototype.constructor=ee,ee.superclass=ne.prototype;function ee(e){arguments.length>0&&this.init(e)}ee.prototype.init=function(e){ee.superclass.init.call(this,e)},ee.prototype.evaluate=function(e){return this.rhs.evaluate(e).number().negate()},ee.prototype.toString=function(){return"-"+this.rhs.toString()},Q.prototype=new x,Q.prototype.constructor=Q,Q.superclass=x.prototype;function Q(e,o){arguments.length>0&&this.init(e,o)}Q.prototype.init=function(e,o){this.lhs=e,this.rhs=o},Oe.prototype=new Q,Oe.prototype.constructor=Oe,Oe.superclass=Q.prototype;function Oe(e,o){arguments.length>0&&this.init(e,o)}Oe.prototype.init=function(e,o){Oe.superclass.init.call(this,e,o)},Oe.prototype.toString=function(){return"("+this.lhs.toString()+" or "+this.rhs.toString()+")"},Oe.prototype.evaluate=function(e){var o=this.lhs.evaluate(e).bool();return o.booleanValue()?o:this.rhs.evaluate(e).bool()},ce.prototype=new Q,ce.prototype.constructor=ce,ce.superclass=Q.prototype;function ce(e,o){arguments.length>0&&this.init(e,o)}ce.prototype.init=function(e,o){ce.superclass.init.call(this,e,o)},ce.prototype.toString=function(){return"("+this.lhs.toString()+" and "+this.rhs.toString()+")"},ce.prototype.evaluate=function(e){var o=this.lhs.evaluate(e).bool();return o.booleanValue()?this.rhs.evaluate(e).bool():o},pe.prototype=new Q,pe.prototype.constructor=pe,pe.superclass=Q.prototype;function pe(e,o){arguments.length>0&&this.init(e,o)}pe.prototype.init=function(e,o){pe.superclass.init.call(this,e,o)},pe.prototype.toString=function(){return"("+this.lhs.toString()+" = "+this.rhs.toString()+")"},pe.prototype.evaluate=function(e){return this.lhs.evaluate(e).equals(this.rhs.evaluate(e))},Y.prototype=new Q,Y.prototype.constructor=Y,Y.superclass=Q.prototype;function Y(e,o){arguments.length>0&&this.init(e,o)}Y.prototype.init=function(e,o){Y.superclass.init.call(this,e,o)},Y.prototype.toString=function(){return"("+this.lhs.toString()+" != "+this.rhs.toString()+")"},Y.prototype.evaluate=function(e){return this.lhs.evaluate(e).notequal(this.rhs.evaluate(e))},j.prototype=new Q,j.prototype.constructor=j,j.superclass=Q.prototype;function j(e,o){arguments.length>0&&this.init(e,o)}j.prototype.init=function(e,o){j.superclass.init.call(this,e,o)},j.prototype.evaluate=function(e){return this.lhs.evaluate(e).lessthan(this.rhs.evaluate(e))},j.prototype.toString=function(){return"("+this.lhs.toString()+" < "+this.rhs.toString()+")"},le.prototype=new Q,le.prototype.constructor=le,le.superclass=Q.prototype;function le(e,o){arguments.length>0&&this.init(e,o)}le.prototype.init=function(e,o){le.superclass.init.call(this,e,o)},le.prototype.evaluate=function(e){return this.lhs.evaluate(e).greaterthan(this.rhs.evaluate(e))},le.prototype.toString=function(){return"("+this.lhs.toString()+" > "+this.rhs.toString()+")"},Ue.prototype=new Q,Ue.prototype.constructor=Ue,Ue.superclass=Q.prototype;function Ue(e,o){arguments.length>0&&this.init(e,o)}Ue.prototype.init=function(e,o){Ue.superclass.init.call(this,e,o)},Ue.prototype.evaluate=function(e){return this.lhs.evaluate(e).lessthanorequal(this.rhs.evaluate(e))},Ue.prototype.toString=function(){return"("+this.lhs.toString()+" <= "+this.rhs.toString()+")"},Te.prototype=new Q,Te.prototype.constructor=Te,Te.superclass=Q.prototype;function Te(e,o){arguments.length>0&&this.init(e,o)}Te.prototype.init=function(e,o){Te.superclass.init.call(this,e,o)},Te.prototype.evaluate=function(e){return this.lhs.evaluate(e).greaterthanorequal(this.rhs.evaluate(e))},Te.prototype.toString=function(){return"("+this.lhs.toString()+" >= "+this.rhs.toString()+")"},he.prototype=new Q,he.prototype.constructor=he,he.superclass=Q.prototype;function he(e,o){arguments.length>0&&this.init(e,o)}he.prototype.init=function(e,o){he.superclass.init.call(this,e,o)},he.prototype.evaluate=function(e){return this.lhs.evaluate(e).number().plus(this.rhs.evaluate(e).number())},he.prototype.toString=function(){return"("+this.lhs.toString()+" + "+this.rhs.toString()+")"},q.prototype=new Q,q.prototype.constructor=q,q.superclass=Q.prototype;function q(e,o){arguments.length>0&&this.init(e,o)}q.prototype.init=function(e,o){q.superclass.init.call(this,e,o)},q.prototype.evaluate=function(e){return this.lhs.evaluate(e).number().minus(this.rhs.evaluate(e).number())},q.prototype.toString=function(){return"("+this.lhs.toString()+" - "+this.rhs.toString()+")"},p.prototype=new Q,p.prototype.constructor=p,p.superclass=Q.prototype;function p(e,o){arguments.length>0&&this.init(e,o)}p.prototype.init=function(e,o){p.superclass.init.call(this,e,o)},p.prototype.evaluate=function(e){return this.lhs.evaluate(e).number().multiply(this.rhs.evaluate(e).number())},p.prototype.toString=function(){return"("+this.lhs.toString()+" * "+this.rhs.toString()+")"},h.prototype=new Q,h.prototype.constructor=h,h.superclass=Q.prototype;function h(e,o){arguments.length>0&&this.init(e,o)}h.prototype.init=function(e,o){h.superclass.init.call(this,e,o)},h.prototype.evaluate=function(e){return this.lhs.evaluate(e).number().div(this.rhs.evaluate(e).number())},h.prototype.toString=function(){return"("+this.lhs.toString()+" div "+this.rhs.toString()+")"},m.prototype=new Q,m.prototype.constructor=m,m.superclass=Q.prototype;function m(e,o){arguments.length>0&&this.init(e,o)}m.prototype.init=function(e,o){m.superclass.init.call(this,e,o)},m.prototype.evaluate=function(e){return this.lhs.evaluate(e).number().mod(this.rhs.evaluate(e).number())},m.prototype.toString=function(){return"("+this.lhs.toString()+" mod "+this.rhs.toString()+")"},B.prototype=new Q,B.prototype.constructor=B,B.superclass=Q.prototype;function B(e,o){arguments.length>0&&this.init(e,o)}B.prototype.init=function(e,o){B.superclass.init.call(this,e,o)},B.prototype.evaluate=function(e){return this.lhs.evaluate(e).nodeset().union(this.rhs.evaluate(e).nodeset())},B.prototype.toString=function(){return O(M,[this.lhs,this.rhs]).join(" | ")},b.prototype=new x,b.prototype.constructor=b,b.superclass=x.prototype;function b(e,o,N){arguments.length>0&&this.init(e,o,N)}b.prototype.init=function(e,o,N){b.superclass.init.call(this),this.filter=e,this.filterPredicates=o,this.locationPath=N};function H(e){for(;e&&e.parentNode;)e=e.parentNode;return e}var te=function(e,o,N,D){if(e.length===0)return N;var l=o.extend({});return i(function(f,oe){return l.contextSize=f.length,u(function(me,Be){return l.contextNode=me,l.contextPosition=Be+1,b.predicateMatches(oe,l)},f)},Z(N,D),e)};b.getRoot=function(e,o){var N=o[0];if(N&&N.nodeType===X.DOCUMENT_NODE)return N;if(e.virtualRoot)return e.virtualRoot;if(!N)throw new Error("Context node not found when determining document root.");var D=N.ownerDocument;if(D)return D;for(var l=N;l.parentNode!=null;)l=l.parentNode;return l};var Ee=function(e){var o=String(e.name);return o==="xmlns"?"":o.substring(0,6)==="xmlns:"?o.substring(6,o.length):null};b.applyStep=function(e,o,N){if(!N)throw new Error("Context node not found when evaluating XPath step: "+e);var D=[];switch(o.contextNode=N,e.axis){case v.ANCESTOR:if(o.contextNode===o.virtualRoot)break;var l;for(o.contextNode.nodeType==X.ATTRIBUTE_NODE?l=b.getOwnerElement(o.contextNode):l=o.contextNode.parentNode;l!=null&&(e.nodeTest.matches(l,o)&&D.push(l),l!==o.virtualRoot);)l=l.parentNode;break;case v.ANCESTORORSELF:for(var l=o.contextNode;l!=null&&(e.nodeTest.matches(l,o)&&D.push(l),l!==o.virtualRoot);l=l.nodeType==X.ATTRIBUTE_NODE?b.getOwnerElement(l):l.parentNode);break;case v.ATTRIBUTE:var f=o.contextNode.attributes;if(f!=null)for(var oe=0;oe<f.length;oe++){var l=f.item(oe);e.nodeTest.matches(l,o)&&D.push(l)}break;case v.CHILD:for(var l=o.contextNode.firstChild;l!=null;l=l.nextSibling)e.nodeTest.matches(l,o)&&D.push(l);break;case v.DESCENDANT:for(var Ae=[o.contextNode.firstChild];Ae.length>0;)for(var l=Ae.pop();l!=null;)e.nodeTest.matches(l,o)&&D.push(l),l.firstChild!=null?(Ae.push(l.nextSibling),l=l.firstChild):l=l.nextSibling;break;case v.DESCENDANTORSELF:e.nodeTest.matches(o.contextNode,o)&&D.push(o.contextNode);for(var Ae=[o.contextNode.firstChild];Ae.length>0;)for(var l=Ae.pop();l!=null;)e.nodeTest.matches(l,o)&&D.push(l),l.firstChild!=null?(Ae.push(l.nextSibling),l=l.firstChild):l=l.nextSibling;break;case v.FOLLOWING:if(o.contextNode===o.virtualRoot)break;var Ae=[];o.contextNode.firstChild!=null?Ae.unshift(o.contextNode.firstChild):Ae.unshift(o.contextNode.nextSibling);for(var l=o.contextNode.parentNode;l!=null&&l.nodeType!=X.DOCUMENT_NODE&&l!==o.virtualRoot;l=l.parentNode)Ae.unshift(l.nextSibling);do for(var l=Ae.pop();l!=null;)e.nodeTest.matches(l,o)&&D.push(l),l.firstChild!=null?(Ae.push(l.nextSibling),l=l.firstChild):l=l.nextSibling;while(Ae.length>0);break;case v.FOLLOWINGSIBLING:if(o.contextNode===o.virtualRoot)break;for(var l=o.contextNode.nextSibling;l!=null;l=l.nextSibling)e.nodeTest.matches(l,o)&&D.push(l);break;case v.NAMESPACE:var me={};if(o.contextNode.nodeType==X.ELEMENT_NODE){me.xml=new nt("xml",null,k.XML_NAMESPACE_URI,o.contextNode);for(var l=o.contextNode;l!=null&&l.nodeType==X.ELEMENT_NODE;l=l.parentNode)for(var oe=0;oe<l.attributes.length;oe++){var Be=l.attributes.item(oe),ae=Ee(Be);ae!=null&&me[ae]==null&&(me[ae]=new nt(ae,Be,Be.value,o.contextNode))}for(var ae in me){var N=me[ae];e.nodeTest.matches(N,o)&&D.push(N)}}break;case v.PARENT:l=null,o.contextNode!==o.virtualRoot&&(o.contextNode.nodeType==X.ATTRIBUTE_NODE?l=b.getOwnerElement(o.contextNode):l=o.contextNode.parentNode),l!=null&&e.nodeTest.matches(l,o)&&D.push(l);break;case v.PRECEDING:var Ae;o.virtualRoot!=null?Ae=[o.virtualRoot]:Ae=[H(o.contextNode)];e:for(;Ae.length>0;)for(var l=Ae.pop();l!=null;){if(l==o.contextNode)break e;e.nodeTest.matches(l,o)&&D.unshift(l),l.firstChild!=null?(Ae.push(l.nextSibling),l=l.firstChild):l=l.nextSibling}break;case v.PRECEDINGSIBLING:if(o.contextNode===o.virtualRoot)break;for(var l=o.contextNode.previousSibling;l!=null;l=l.previousSibling)e.nodeTest.matches(l,o)&&D.push(l);break;case v.SELF:e.nodeTest.matches(o.contextNode,o)&&D.push(o.contextNode);break}return D};function Re(e,o,N){return te(e.predicates,o,b.applyStep(e,o,N),d(fe,e.axis))}function Le(e,o,N){return De(O(Re.bind(null,N,e),o))}b.applySteps=function(e,o,N){return i(Le.bind(null,o),N,e)},b.prototype.applyFilter=function(e,o){if(!this.filter)return{nodes:[e.contextNode]};var N=this.filter.evaluate(e);if(!Se.instance_of(N,ie)){if(this.filterPredicates!=null&&this.filterPredicates.length>0||this.locationPath!=null)throw new Error("Path expression filter must evaluate to a nodeset if predicates or location path are used");return{nonNodes:N}}return{nodes:te(this.filterPredicates||[],o,N.toUnsortedArray(),!1)}},b.applyLocationPath=function(e,o,N){if(!e)return N;var D=e.absolute?[b.getRoot(o,N)]:N;return b.applySteps(e.steps,o,D)},b.prototype.evaluate=function(e){var o=Ce(new Ze,e),N=this.applyFilter(e,o);if("nonNodes"in N)return N.nonNodes;var D=new ie;return D.addArray(b.applyLocationPath(this.locationPath,o,N.nodes)),D},b.predicateMatches=function(e,o){var N=e.evaluate(o);return Se.instance_of(N,W)?o.contextPosition===N.numberValue():N.booleanValue()},b.predicateString=function(e){return P("[","]",e.toString())},b.predicatesString=function(e){return w("",O(b.predicateString,e))},b.prototype.toString=function(){if(this.filter!=null){var e=M(this.filter);return Se.instance_of(this.filter,F)?P("'","'",e):this.filterPredicates!=null&&this.filterPredicates.length?P("(",")",e)+b.predicatesString(this.filterPredicates):this.locationPath!=null?e+(this.locationPath.absolute?"":"/")+M(this.locationPath):e}return M(this.locationPath)},b.getOwnerElement=function(e){if(e.ownerElement)return e.ownerElement;try{if(e.selectSingleNode)return e.selectSingleNode("..")}catch{}for(var o=e.nodeType==X.DOCUMENT_NODE?e:e.ownerDocument,N=o.getElementsByTagName("*"),D=0;D<N.length;D++)for(var l=N.item(D),f=l.attributes,oe=0;oe<f.length;oe++){var me=f.item(oe);if(me===e)return l}return null},ue.prototype=new Object,ue.prototype.constructor=ue,ue.superclass=Object.prototype;function ue(e,o){arguments.length>0&&this.init(e,o)}ue.prototype.init=function(e,o){this.absolute=e,this.steps=o},ue.prototype.toString=function(){return(this.absolute?"/":"")+O(M,this.steps).join("/")},v.prototype=new Object,v.prototype.constructor=v,v.superclass=Object.prototype;function v(e,o,N){arguments.length>0&&this.init(e,o,N)}v.prototype.init=function(e,o,N){this.axis=e,this.nodeTest=o,this.predicates=N},v.prototype.toString=function(){return v.STEPNAMES[this.axis]+"::"+this.nodeTest.toString()+b.predicatesString(this.predicates)},v.ANCESTOR=0,v.ANCESTORORSELF=1,v.ATTRIBUTE=2,v.CHILD=3,v.DESCENDANT=4,v.DESCENDANTORSELF=5,v.FOLLOWING=6,v.FOLLOWINGSIBLING=7,v.NAMESPACE=8,v.PARENT=9,v.PRECEDING=10,v.PRECEDINGSIBLING=11,v.SELF=12,v.STEPNAMES=i(function(e,o){return e[o[0]]=o[1],e},{},[[v.ANCESTOR,"ancestor"],[v.ANCESTORORSELF,"ancestor-or-self"],[v.ATTRIBUTE,"attribute"],[v.CHILD,"child"],[v.DESCENDANT,"descendant"],[v.DESCENDANTORSELF,"descendant-or-self"],[v.FOLLOWING,"following"],[v.FOLLOWINGSIBLING,"following-sibling"],[v.NAMESPACE,"namespace"],[v.PARENT,"parent"],[v.PRECEDING,"preceding"],[v.PRECEDINGSIBLING,"preceding-sibling"],[v.SELF,"self"]]);var fe=[v.ANCESTOR,v.ANCESTORORSELF,v.PARENT,v.PRECEDING,v.PRECEDINGSIBLING];c.prototype=new Object,c.prototype.constructor=c,c.superclass=Object.prototype;function c(e,o){arguments.length>0&&this.init(e,o)}c.prototype.init=function(e,o){this.type=e,this.value=o},c.prototype.toString=function(){return"<unknown nodetest type>"},c.prototype.matches=function(e,o){console.warn("unknown node test type")},c.NAMETESTANY=0,c.NAMETESTPREFIXANY=1,c.NAMETESTQNAME=2,c.COMMENT=3,c.TEXT=4,c.PI=5,c.NODE=6,c.isNodeType=function(e){return function(o){return d(e,o.nodeType)}},c.makeNodeTestType=function(e,o,N){var D=N||function(){};return D.prototype=new c(e),D.prototype.constructor=D,Ce(D.prototype,o),D},c.makeNodeTypeTest=function(e,o,N){return new(c.makeNodeTestType(e,{matches:c.isNodeType(o),toString:U(N)}))},c.hasPrefix=function(e){return e.prefix||(e.nodeName||e.tagName).indexOf(":")!==-1},c.isElementOrAttribute=c.isNodeType([1,2]),c.nameSpaceMatches=function(e,o,N){var D=N.namespaceURI||"";if(!e)return!D||o.allowAnyNamespaceForNoPrefix&&!c.hasPrefix(N);var l=o.namespaceResolver.getNamespace(e,o.expressionContextNode);if(l==null)throw new Error("Cannot resolve QName "+e);return l===D},c.localNameMatches=function(e,o,N){var D=N.localName||N.nodeName;return o.caseInsensitive?e.toLowerCase()===D.toLowerCase():e===D},c.NameTestPrefixAny=c.makeNodeTestType(c.NAMETESTPREFIXANY,{matches:function(e,o){return c.isElementOrAttribute(e)&&c.nameSpaceMatches(this.prefix,o,e)},toString:function(){return this.prefix+":*"}},function(o){this.prefix=o}),c.NameTestQName=c.makeNodeTestType(c.NAMETESTQNAME,{matches:function(e,o){return c.isNodeType([X.ELEMENT_NODE,X.ATTRIBUTE_NODE,X.NAMESPACE_NODE])(e)&&c.nameSpaceMatches(this.prefix,o,e)&&c.localNameMatches(this.localName,o,e)},toString:function(){return this.name}},function(o){var N=o.split(":");this.name=o,this.prefix=N.length>1?N[0]:null,this.localName=N[N.length>1?1:0]}),c.PITest=c.makeNodeTestType(c.PI,{matches:function(e,o){return c.isNodeType([X.PROCESSING_INSTRUCTION_NODE])(e)&&(e.target||e.nodeName)===this.name},toString:function(){return P('processing-instruction("','")',this.name)}},function(e){this.name=e}),c.nameTestAny=c.makeNodeTypeTest(c.NAMETESTANY,[X.ELEMENT_NODE,X.ATTRIBUTE_NODE,X.NAMESPACE_NODE],"*"),c.textTest=c.makeNodeTypeTest(c.TEXT,[X.TEXT_NODE,X.CDATA_SECTION_NODE],"text()"),c.commentTest=c.makeNodeTypeTest(c.COMMENT,[X.COMMENT_NODE],"comment()"),c.nodeTest=c.makeNodeTypeTest(c.NODE,[X.ELEMENT_NODE,X.ATTRIBUTE_NODE,X.TEXT_NODE,X.CDATA_SECTION_NODE,X.PROCESSING_INSTRUCTION_NODE,X.COMMENT_NODE,X.DOCUMENT_NODE],"node()"),c.anyPiTest=c.makeNodeTypeTest(c.PI,[X.PROCESSING_INSTRUCTION_NODE],"processing-instruction()"),re.prototype=new x,re.prototype.constructor=re,re.superclass=x.prototype;function re(e){arguments.length>0&&this.init(e)}re.prototype.init=function(e){this.variable=e},re.prototype.toString=function(){return"$"+this.variable},re.prototype.evaluate=function(e){var o=Se.resolveQName(this.variable,e.namespaceResolver,e.contextNode,!1);if(o[0]==null)throw new Error("Cannot resolve QName "+fn);var N=e.variableResolver.getVariable(o[1],o[0]);if(!N)throw qe.fromMessage("Undeclared variable: "+this.toString());return N},ge.prototype=new x,ge.prototype.constructor=ge,ge.superclass=x.prototype;function ge(e,o){arguments.length>0&&this.init(e,o)}ge.prototype.init=function(e,o){this.functionName=e,this.arguments=o},ge.prototype.toString=function(){for(var e=this.functionName+"(",o=0;o<this.arguments.length;o++)o>0&&(e+=", "),e+=this.arguments[o].toString();return e+")"},ge.prototype.evaluate=function(e){var o=Xe.getFunctionFromContext(this.functionName,e);if(!o)throw new Error("Unknown function "+this.functionName);var N=[e].concat(this.arguments);return o.apply(e.functionResolver.thisArg,N)};var de=new Object;de.equals=function(e,o){return e.equals(o)},de.notequal=function(e,o){return e.notequal(o)},de.lessthan=function(e,o){return e.lessthan(o)},de.greaterthan=function(e,o){return e.greaterthan(o)},de.lessthanorequal=function(e,o){return e.lessthanorequal(o)},de.greaterthanorequal=function(e,o){return e.greaterthanorequal(o)},F.prototype=new x,F.prototype.constructor=F,F.superclass=x.prototype;function F(e){arguments.length>0&&this.init(e)}F.prototype.init=function(e){this.str=String(e)},F.prototype.toString=function(){return this.str},F.prototype.evaluate=function(e){return this},F.prototype.string=function(){return this},F.prototype.number=function(){return new W(this.str)},F.prototype.bool=function(){return new Ne(this.str)},F.prototype.nodeset=function(){throw new Error("Cannot convert string to nodeset")},F.prototype.stringValue=function(){return this.str},F.prototype.numberValue=function(){return this.number().numberValue()},F.prototype.booleanValue=function(){return this.bool().booleanValue()},F.prototype.equals=function(e){return Se.instance_of(e,Ne)?this.bool().equals(e):Se.instance_of(e,W)?this.number().equals(e):Se.instance_of(e,ie)?e.compareWithString(this,de.equals):new Ne(this.str==e.str)},F.prototype.notequal=function(e){return Se.instance_of(e,Ne)?this.bool().notequal(e):Se.instance_of(e,W)?this.number().notequal(e):Se.instance_of(e,ie)?e.compareWithString(this,de.notequal):new Ne(this.str!=e.str)},F.prototype.lessthan=function(e){return this.number().lessthan(e)},F.prototype.greaterthan=function(e){return this.number().greaterthan(e)},F.prototype.lessthanorequal=function(e){return this.number().lessthanorequal(e)},F.prototype.greaterthanorequal=function(e){return this.number().greaterthanorequal(e)},W.prototype=new x,W.prototype.constructor=W,W.superclass=x.prototype;function W(e){arguments.length>0&&this.init(e)}W.prototype.init=function(e){this.num=typeof e=="string"?this.parse(e):Number(e)},W.prototype.numberFormat=/^\s*-?[0-9]*\.?[0-9]+\s*$/,W.prototype.parse=function(e){return this.numberFormat.test(e)?parseFloat(e):Number.NaN};function ve(e){for(var o=e.split("e-"),N=o[0].replace(".",""),D=Number(o[1]),l=0;l<D-1;l+=1)N="0"+N;return"0."+N}function Qe(e){for(var o=e.split("e"),N=o[0].replace(".",""),D=Number(o[1]),l=D+1-N.length,f=0;f<l;f+=1)N+="0";return N}W.prototype.toString=function(){var e=this.num.toString();return e.indexOf("e-")!==-1?ve(e):e.indexOf("e")!==-1?Qe(e):e},W.prototype.evaluate=function(e){return this},W.prototype.string=function(){return new F(this.toString())},W.prototype.number=function(){return this},W.prototype.bool=function(){return new Ne(this.num)},W.prototype.nodeset=function(){throw new Error("Cannot convert number to nodeset")},W.prototype.stringValue=function(){return this.string().stringValue()},W.prototype.numberValue=function(){return this.num},W.prototype.booleanValue=function(){return this.bool().booleanValue()},W.prototype.negate=function(){return new W(-this.num)},W.prototype.equals=function(e){return Se.instance_of(e,Ne)?this.bool().equals(e):Se.instance_of(e,F)?this.equals(e.number()):Se.instance_of(e,ie)?e.compareWithNumber(this,de.equals):new Ne(this.num==e.num)},W.prototype.notequal=function(e){return Se.instance_of(e,Ne)?this.bool().notequal(e):Se.instance_of(e,F)?this.notequal(e.number()):Se.instance_of(e,ie)?e.compareWithNumber(this,de.notequal):new Ne(this.num!=e.num)},W.prototype.lessthan=function(e){return Se.instance_of(e,ie)?e.compareWithNumber(this,de.greaterthan):Se.instance_of(e,Ne)||Se.instance_of(e,F)?this.lessthan(e.number()):new Ne(this.num<e.num)},W.prototype.greaterthan=function(e){return Se.instance_of(e,ie)?e.compareWithNumber(this,de.lessthan):Se.instance_of(e,Ne)||Se.instance_of(e,F)?this.greaterthan(e.number()):new Ne(this.num>e.num)},W.prototype.lessthanorequal=function(e){return Se.instance_of(e,ie)?e.compareWithNumber(this,de.greaterthanorequal):Se.instance_of(e,Ne)||Se.instance_of(e,F)?this.lessthanorequal(e.number()):new Ne(this.num<=e.num)},W.prototype.greaterthanorequal=function(e){return Se.instance_of(e,ie)?e.compareWithNumber(this,de.lessthanorequal):Se.instance_of(e,Ne)||Se.instance_of(e,F)?this.greaterthanorequal(e.number()):new Ne(this.num>=e.num)},W.prototype.plus=function(e){return new W(this.num+e.num)},W.prototype.minus=function(e){return new W(this.num-e.num)},W.prototype.multiply=function(e){return new W(this.num*e.num)},W.prototype.div=function(e){return new W(this.num/e.num)},W.prototype.mod=function(e){return new W(this.num%e.num)},Ne.prototype=new x,Ne.prototype.constructor=Ne,Ne.superclass=x.prototype;function Ne(e){arguments.length>0&&this.init(e)}Ne.prototype.init=function(e){this.b=!!e},Ne.prototype.toString=function(){return this.b.toString()},Ne.prototype.evaluate=function(e){return this},Ne.prototype.string=function(){return new F(this.b)},Ne.prototype.number=function(){return new W(this.b)},Ne.prototype.bool=function(){return this},Ne.prototype.nodeset=function(){throw new Error("Cannot convert boolean to nodeset")},Ne.prototype.stringValue=function(){return this.string().stringValue()},Ne.prototype.numberValue=function(){return this.number().numberValue()},Ne.prototype.booleanValue=function(){return this.b},Ne.prototype.not=function(){return new Ne(!this.b)},Ne.prototype.equals=function(e){return Se.instance_of(e,F)||Se.instance_of(e,W)?this.equals(e.bool()):Se.instance_of(e,ie)?e.compareWithBoolean(this,de.equals):new Ne(this.b==e.b)},Ne.prototype.notequal=function(e){return Se.instance_of(e,F)||Se.instance_of(e,W)?this.notequal(e.bool()):Se.instance_of(e,ie)?e.compareWithBoolean(this,de.notequal):new Ne(this.b!=e.b)},Ne.prototype.lessthan=function(e){return this.number().lessthan(e)},Ne.prototype.greaterthan=function(e){return this.number().greaterthan(e)},Ne.prototype.lessthanorequal=function(e){return this.number().lessthanorequal(e)},Ne.prototype.greaterthanorequal=function(e){return this.number().greaterthanorequal(e)},Ne.true_=new Ne(!0),Ne.false_=new Ne(!1),we.prototype=new Object,we.prototype.constructor=we,we.superclass=Object.prototype;function we(e){this.init(e)}we.prototype.init=function(e){this.left=null,this.right=null,this.node=e,this.depth=1},we.prototype.balance=function(){var e=this.left==null?0:this.left.depth,o=this.right==null?0:this.right.depth;if(e>o+1){var N=this.left.left==null?0:this.left.left.depth,D=this.left.right==null?0:this.left.right.depth;N<D&&this.left.rotateRR(),this.rotateLL()}else if(e+1<o){var l=this.right.right==null?0:this.right.right.depth,f=this.right.left==null?0:this.right.left.depth;f>l&&this.right.rotateLL(),this.rotateRR()}},we.prototype.rotateLL=function(){var e=this.node,o=this.right;this.node=this.left.node,this.right=this.left,this.left=this.left.left,this.right.left=this.right.right,this.right.right=o,this.right.node=e,this.right.updateInNewLocation(),this.updateInNewLocation()},we.prototype.rotateRR=function(){var e=this.node,o=this.left;this.node=this.right.node,this.left=this.right,this.right=this.right.right,this.left.right=this.left.left,this.left.left=o,this.left.node=e,this.left.updateInNewLocation(),this.updateInNewLocation()},we.prototype.updateInNewLocation=function(){this.getDepthFromChildren()},we.prototype.getDepthFromChildren=function(){this.depth=this.node==null?0:1,this.left!=null&&(this.depth=this.left.depth+1),this.right!=null&&this.depth<=this.right.depth&&(this.depth=this.right.depth+1)};function Gt(e,o){if(e===o)return 0;if(e.compareDocumentPosition){var N=e.compareDocumentPosition(o);return N&1||N&10?1:N&20?-1:0}for(var D=0,l=0,f=e;f!=null;f=f.parentNode||f.ownerElement)D++;for(var oe=o;oe!=null;oe=oe.parentNode||oe.ownerElement)l++;if(D>l){for(;D>l;)e=e.parentNode||e.ownerElement,D--;if(e===o)return 1}else if(l>D){for(;l>D;)o=o.parentNode||o.ownerElement,l--;if(e===o)return-1}for(var me=e.parentNode||e.ownerElement,Be=o.parentNode||o.ownerElement;me!==Be;)e=me,o=Be,me=e.parentNode||e.ownerElement,Be=o.parentNode||o.ownerElement;var ae=Ft(e),Ae=Ft(o);if(ae&&!Ae)return-1;if(!ae&&Ae)return 1;if(e.isXPathNamespace){if(e.nodeValue===k.XML_NAMESPACE_URI||!o.isXPathNamespace)return-1;if(o.nodeValue===k.XML_NAMESPACE_URI)return 1}else if(o.isXPathNamespace)return 1;if(me)for(var Ke=ae?me.attributes:me.childNodes,ze=Ke.length,He=e.baseNode||e,Tt=o.baseNode||o,tt=0;tt<ze;tt+=1){var lt=Ke[tt];if(lt===He)return-1;if(lt===Tt)return 1}throw new Error("Unexpected: could not determine node order")}we.prototype.add=function(e){if(e===this.node)return!1;var o=Gt(e,this.node),N=!1;return o==-1?this.left==null?(this.left=new we(e),N=!0):(N=this.left.add(e),N&&this.balance()):o==1&&(this.right==null?(this.right=new we(e),N=!0):(N=this.right.add(e),N&&this.balance())),N&&this.getDepthFromChildren(),N},ie.prototype=new x,ie.prototype.constructor=ie,ie.superclass=x.prototype;function ie(){this.init()}ie.prototype.init=function(){this.tree=null,this.nodes=[],this.size=0},ie.prototype.toString=function(){var e=this.first();return e==null?"":this.stringForNode(e)},ie.prototype.evaluate=function(e){return this},ie.prototype.string=function(){return new F(this.toString())},ie.prototype.stringValue=function(){return this.toString()},ie.prototype.number=function(){return new W(this.string())},ie.prototype.numberValue=function(){return Number(this.string())},ie.prototype.bool=function(){return new Ne(this.booleanValue())},ie.prototype.booleanValue=function(){return!!this.size},ie.prototype.nodeset=function(){return this},ie.prototype.stringForNode=function(e){return e.nodeType==X.DOCUMENT_NODE||e.nodeType==X.ELEMENT_NODE||e.nodeType===X.DOCUMENT_FRAGMENT_NODE?this.stringForContainerNode(e):e.nodeType===X.ATTRIBUTE_NODE?e.value||e.nodeValue:e.isNamespaceNode?e.namespace:e.nodeValue},ie.prototype.stringForContainerNode=function(e){for(var o="",N=e.firstChild;N!=null;N=N.nextSibling){var D=N.nodeType;(D===1||D===3||D===4||D===9||D===11)&&(o+=this.stringForNode(N))}return o},ie.prototype.buildTree=function(){if(!this.tree&&this.nodes.length){this.tree=new we(this.nodes[0]);for(var e=1;e<this.nodes.length;e+=1)this.tree.add(this.nodes[e])}return this.tree},ie.prototype.first=function(){var e=this.buildTree();if(e==null)return null;for(;e.left!=null;)e=e.left;return e.node},ie.prototype.add=function(e){for(var o=0;o<this.nodes.length;o+=1)if(e===this.nodes[o])return;this.tree=null,this.nodes.push(e),this.size+=1},ie.prototype.addArray=function(e){var o=this;I(function(N){o.add(N)},e)},ie.prototype.toArray=function(){var e=[];return this.toArrayRec(this.buildTree(),e),e},ie.prototype.toArrayRec=function(e,o){e!=null&&(this.toArrayRec(e.left,o),o.push(e.node),this.toArrayRec(e.right,o))},ie.prototype.toUnsortedArray=function(){return this.nodes.slice()},ie.prototype.compareWithString=function(e,o){for(var N=this.toUnsortedArray(),D=0;D<N.length;D++){var l=N[D],f=new F(this.stringForNode(l)),oe=o(f,e);if(oe.booleanValue())return oe}return new Ne(!1)},ie.prototype.compareWithNumber=function(e,o){for(var N=this.toUnsortedArray(),D=0;D<N.length;D++){var l=N[D],f=new W(this.stringForNode(l)),oe=o(f,e);if(oe.booleanValue())return oe}return new Ne(!1)},ie.prototype.compareWithBoolean=function(e,o){return o(this.bool(),e)},ie.prototype.compareWithNodeSet=function(e,o){for(var N=this.toUnsortedArray(),D=function(me,Be){return o(Be,me)},l=0;l<N.length;l++){var f=new F(this.stringForNode(N[l])),oe=e.compareWithString(f,D);if(oe.booleanValue())return oe}return new Ne(!1)},ie.compareWith=C(function(e,o){return Se.instance_of(o,F)?this.compareWithString(o,e):Se.instance_of(o,W)?this.compareWithNumber(o,e):Se.instance_of(o,Ne)?this.compareWithBoolean(o,e):this.compareWithNodeSet(o,e)}),ie.prototype.equals=ie.compareWith(de.equals),ie.prototype.notequal=ie.compareWith(de.notequal),ie.prototype.lessthan=ie.compareWith(de.lessthan),ie.prototype.greaterthan=ie.compareWith(de.greaterthan),ie.prototype.lessthanorequal=ie.compareWith(de.lessthanorequal),ie.prototype.greaterthanorequal=ie.compareWith(de.greaterthanorequal),ie.prototype.union=function(e){var o=new ie;return o.addArray(this.toUnsortedArray()),o.addArray(e.toUnsortedArray()),o},nt.prototype=new Object,nt.prototype.constructor=nt,nt.superclass=Object.prototype;function nt(e,o,N,D){this.isXPathNamespace=!0,this.baseNode=o,this.ownerDocument=D.ownerDocument,this.nodeName=e,this.prefix=e,this.localName=e,this.namespaceURI=null,this.nodeValue=N,this.ownerElement=D,this.nodeType=X.NAMESPACE_NODE}nt.prototype.toString=function(){return'{ "'+this.prefix+'", "'+this.namespaceURI+'" }'},Ze.prototype=new Object,Ze.prototype.constructor=Ze,Ze.superclass=Object.prototype;function Ze(e,o,N){this.variableResolver=e??new et,this.namespaceResolver=o??new je,this.functionResolver=N??new Xe}Ze.prototype.extend=function(e){return Ce(new Ze,this,e)},et.prototype=new Object,et.prototype.constructor=et,et.superclass=Object.prototype;function et(){}et.prototype.getVariable=function(e,o){return null},Xe.prototype=new Object,Xe.prototype.constructor=Xe,Xe.superclass=Object.prototype;function Xe(e){this.thisArg=e??_e,this.functions=new Object,this.addStandardFunctions()}Xe.prototype.addStandardFunctions=function(){this.functions["{}last"]=_e.last,this.functions["{}position"]=_e.position,this.functions["{}count"]=_e.count,this.functions["{}id"]=_e.id,this.functions["{}local-name"]=_e.localName,this.functions["{}namespace-uri"]=_e.namespaceURI,this.functions["{}name"]=_e.name,this.functions["{}string"]=_e.string,this.functions["{}concat"]=_e.concat,this.functions["{}starts-with"]=_e.startsWith,this.functions["{}contains"]=_e.contains,this.functions["{}substring-before"]=_e.substringBefore,this.functions["{}substring-after"]=_e.substringAfter,this.functions["{}substring"]=_e.substring,this.functions["{}string-length"]=_e.stringLength,this.functions["{}normalize-space"]=_e.normalizeSpace,this.functions["{}translate"]=_e.translate,this.functions["{}boolean"]=_e.boolean_,this.functions["{}not"]=_e.not,this.functions["{}true"]=_e.true_,this.functions["{}false"]=_e.false_,this.functions["{}lang"]=_e.lang,this.functions["{}number"]=_e.number,this.functions["{}sum"]=_e.sum,this.functions["{}floor"]=_e.floor,this.functions["{}ceiling"]=_e.ceiling,this.functions["{}round"]=_e.round},Xe.prototype.addFunction=function(e,o,N){this.functions["{"+e+"}"+o]=N},Xe.getFunctionFromContext=function(e,o){var N=Se.resolveQName(e,o.namespaceResolver,o.contextNode,!1);if(N[0]===null)throw new Error("Cannot resolve QName "+name);return o.functionResolver.getFunction(N[1],N[0])},Xe.prototype.getFunction=function(e,o){return this.functions["{"+o+"}"+e]},je.prototype=new Object,je.prototype.constructor=je,je.superclass=Object.prototype;function je(){}je.prototype.getNamespace=function(e,o){if(e=="xml")return k.XML_NAMESPACE_URI;if(e=="xmlns")return k.XMLNS_NAMESPACE_URI;for(o.nodeType==X.DOCUMENT_NODE?o=o.documentElement:o.nodeType==X.ATTRIBUTE_NODE?o=b.getOwnerElement(o):o.nodeType!=X.ELEMENT_NODE&&(o=o.parentNode);o!=null&&o.nodeType==X.ELEMENT_NODE;){for(var N=o.attributes,D=0;D<N.length;D++){var l=N.item(D),f=l.name||l.nodeName;if(f==="xmlns"&&e===""||f==="xmlns:"+e)return String(l.value||l.nodeValue)}o=o.parentNode}return null};var _e=new Object;_e.last=function(e){if(arguments.length!=1)throw new Error("Function last expects ()");return new W(e.contextSize)},_e.position=function(e){if(arguments.length!=1)throw new Error("Function position expects ()");return new W(e.contextPosition)},_e.count=function(){var e=arguments[0],o;if(arguments.length!=2||!Se.instance_of(o=arguments[1].evaluate(e),ie))throw new Error("Function count expects (node-set)");return new W(o.size)},_e.id=function(){var e=arguments[0],o;if(arguments.length!=2)throw new Error("Function id expects (object)");o=arguments[1].evaluate(e),Se.instance_of(o,ie)?o=o.toArray().join(" "):o=o.stringValue();for(var N=o.split(/[\x0d\x0a\x09\x20]+/),D=new ie,l=e.contextNode.nodeType==X.DOCUMENT_NODE?e.contextNode:e.contextNode.ownerDocument,f=0;f<N.length;f++){var oe;l.getElementById?oe=l.getElementById(N[f]):oe=Se.getElementById(l,N[f]),oe!=null&&D.add(oe)}return D},_e.localName=function(e,o){var N;if(arguments.length==1)N=e.contextNode;else if(arguments.length==2)N=o.evaluate(e).first();else throw new Error("Function local-name expects (node-set?)");return N==null?new F(""):new F(N.localName||N.baseName||N.target||N.nodeName||"")},_e.namespaceURI=function(){var e=arguments[0],o;if(arguments.length==1)o=e.contextNode;else if(arguments.length==2)o=arguments[1].evaluate(e).first();else throw new Error("Function namespace-uri expects (node-set?)");return o==null?new F(""):new F(o.namespaceURI||"")},_e.name=function(){var e=arguments[0],o;if(arguments.length==1)o=e.contextNode;else if(arguments.length==2)o=arguments[1].evaluate(e).first();else throw new Error("Function name expects (node-set?)");return o==null?new F(""):o.nodeType==X.ELEMENT_NODE?new F(o.nodeName):o.nodeType==X.ATTRIBUTE_NODE?new F(o.name||o.nodeName):o.nodeType===X.PROCESSING_INSTRUCTION_NODE?new F(o.target||o.nodeName):o.localName==null?new F(""):new F(o.localName)},_e.string=function(){var e=arguments[0];if(arguments.length==1)return new F(ie.prototype.stringForNode(e.contextNode));if(arguments.length==2)return arguments[1].evaluate(e).string();throw new Error("Function string expects (object?)")},_e.concat=function(e){if(arguments.length<3)throw new Error("Function concat expects (string, string[, string]*)");for(var o="",N=1;N<arguments.length;N++)o+=arguments[N].evaluate(e).stringValue();return new F(o)},_e.startsWith=function(){var e=arguments[0];if(arguments.length!=3)throw new Error("Function startsWith expects (string, string)");var o=arguments[1].evaluate(e).stringValue(),N=arguments[2].evaluate(e).stringValue();return new Ne(o.substring(0,N.length)==N)},_e.contains=function(){var e=arguments[0];if(arguments.length!=3)throw new Error("Function contains expects (string, string)");var o=arguments[1].evaluate(e).stringValue(),N=arguments[2].evaluate(e).stringValue();return new Ne(o.indexOf(N)!==-1)},_e.substringBefore=function(){var e=arguments[0];if(arguments.length!=3)throw new Error("Function substring-before expects (string, string)");var o=arguments[1].evaluate(e).stringValue(),N=arguments[2].evaluate(e).stringValue();return new F(o.substring(0,o.indexOf(N)))},_e.substringAfter=function(){var e=arguments[0];if(arguments.length!=3)throw new Error("Function substring-after expects (string, string)");var o=arguments[1].evaluate(e).stringValue(),N=arguments[2].evaluate(e).stringValue();if(N.length==0)return new F(o);var D=o.indexOf(N);return D==-1?new F(""):new F(o.substring(D+N.length))},_e.substring=function(){var e=arguments[0];if(!(arguments.length==3||arguments.length==4))throw new Error("Function substring expects (string, number, number?)");var o=arguments[1].evaluate(e).stringValue(),N=Math.round(arguments[2].evaluate(e).numberValue())-1,D=arguments.length==4?N+Math.round(arguments[3].evaluate(e).numberValue()):void 0;return new F(o.substring(N,D))},_e.stringLength=function(){var e=arguments[0],o;if(arguments.length==1)o=ie.prototype.stringForNode(e.contextNode);else if(arguments.length==2)o=arguments[1].evaluate(e).stringValue();else throw new Error("Function string-length expects (string?)");return new W(o.length)},_e.normalizeSpace=function(){var e=arguments[0],o;if(arguments.length==1)o=ie.prototype.stringForNode(e.contextNode);else if(arguments.length==2)o=arguments[1].evaluate(e).stringValue();else throw new Error("Function normalize-space expects (string?)");for(var N=0,D=o.length-1;Se.isSpace(o.charCodeAt(D));)D--;for(var l="";N<=D&&Se.isSpace(o.charCodeAt(N));)N++;for(;N<=D;)if(Se.isSpace(o.charCodeAt(N)))for(l+=" ";N<=D&&Se.isSpace(o.charCodeAt(N));)N++;else l+=o.charAt(N),N++;return new F(l)},_e.translate=function(e,o,N,D){if(arguments.length!=4)throw new Error("Function translate expects (string, string, string)");var l=o.evaluate(e).stringValue(),f=N.evaluate(e).stringValue(),oe=D.evaluate(e).stringValue(),me=i(function(ae,Ae,Ke){return Ae in ae||(ae[Ae]=Ke>oe.length?"":oe[Ke]),ae},{},f),Be=w("",O(function(ae){return ae in me?me[ae]:ae},l));return new F(Be)},_e.boolean_=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function boolean expects (object)");return arguments[1].evaluate(e).bool()},_e.not=function(e,o){if(arguments.length!=2)throw new Error("Function not expects (object)");return o.evaluate(e).bool().not()},_e.true_=function(){if(arguments.length!=1)throw new Error("Function true expects ()");return Ne.true_},_e.false_=function(){if(arguments.length!=1)throw new Error("Function false expects ()");return Ne.false_},_e.lang=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function lang expects (string)");for(var o,N=e.contextNode;N!=null&&N.nodeType!=X.DOCUMENT_NODE;N=N.parentNode){var D=N.getAttributeNS(k.XML_NAMESPACE_URI,"lang");if(D!=null){o=String(D);break}}if(o==null)return Ne.false_;var l=arguments[1].evaluate(e).stringValue();return new Ne(o.substring(0,l.length)==l&&(o.length==l.length||o.charAt(l.length)=="-"))},_e.number=function(){var e=arguments[0];if(!(arguments.length==1||arguments.length==2))throw new Error("Function number expects (object?)");return arguments.length==1?new W(ie.prototype.stringForNode(e.contextNode)):arguments[1].evaluate(e).number()},_e.sum=function(){var e=arguments[0],o;if(arguments.length!=2||!Se.instance_of(o=arguments[1].evaluate(e),ie))throw new Error("Function sum expects (node-set)");o=o.toUnsortedArray();for(var N=0,D=0;D<o.length;D++)N+=new W(ie.prototype.stringForNode(o[D])).numberValue();return new W(N)},_e.floor=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function floor expects (number)");return new W(Math.floor(arguments[1].evaluate(e).numberValue()))},_e.ceiling=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function ceiling expects (number)");return new W(Math.ceil(arguments[1].evaluate(e).numberValue()))},_e.round=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function round expects (number)");return new W(Math.round(arguments[1].evaluate(e).numberValue()))};var Se=new Object,Ft=function(e){return e&&(e.nodeType===X.ATTRIBUTE_NODE||e.ownerElement||e.isXPathNamespace)};Se.splitQName=function(e){var o=e.indexOf(":");return o==-1?[null,e]:[e.substring(0,o),e.substring(o+1)]},Se.resolveQName=function(e,o,N,D){var l=Se.splitQName(e);return l[0]!=null?l[0]=o.getNamespace(l[0],N):D?(l[0]=o.getNamespace("",N),l[0]==null&&(l[0]="")):l[0]="",l},Se.isSpace=function(e){return e==9||e==13||e==10||e==32},Se.isLetter=function(e){return e>=65&&e<=90||e>=97&&e<=122||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=255||e>=256&&e<=305||e>=308&&e<=318||e>=321&&e<=328||e>=330&&e<=382||e>=384&&e<=451||e>=461&&e<=496||e>=500&&e<=501||e>=506&&e<=535||e>=592&&e<=680||e>=699&&e<=705||e==902||e>=904&&e<=906||e==908||e>=910&&e<=929||e>=931&&e<=974||e>=976&&e<=982||e==986||e==988||e==990||e==992||e>=994&&e<=1011||e>=1025&&e<=1036||e>=1038&&e<=1103||e>=1105&&e<=1116||e>=1118&&e<=1153||e>=1168&&e<=1220||e>=1223&&e<=1224||e>=1227&&e<=1228||e>=1232&&e<=1259||e>=1262&&e<=1269||e>=1272&&e<=1273||e>=1329&&e<=1366||e==1369||e>=1377&&e<=1414||e>=1488&&e<=1514||e>=1520&&e<=1522||e>=1569&&e<=1594||e>=1601&&e<=1610||e>=1649&&e<=1719||e>=1722&&e<=1726||e>=1728&&e<=1742||e>=1744&&e<=1747||e==1749||e>=1765&&e<=1766||e>=2309&&e<=2361||e==2365||e>=2392&&e<=2401||e>=2437&&e<=2444||e>=2447&&e<=2448||e>=2451&&e<=2472||e>=2474&&e<=2480||e==2482||e>=2486&&e<=2489||e>=2524&&e<=2525||e>=2527&&e<=2529||e>=2544&&e<=2545||e>=2565&&e<=2570||e>=2575&&e<=2576||e>=2579&&e<=2600||e>=2602&&e<=2608||e>=2610&&e<=2611||e>=2613&&e<=2614||e>=2616&&e<=2617||e>=2649&&e<=2652||e==2654||e>=2674&&e<=2676||e>=2693&&e<=2699||e==2701||e>=2703&&e<=2705||e>=2707&&e<=2728||e>=2730&&e<=2736||e>=2738&&e<=2739||e>=2741&&e<=2745||e==2749||e==2784||e>=2821&&e<=2828||e>=2831&&e<=2832||e>=2835&&e<=2856||e>=2858&&e<=2864||e>=2866&&e<=2867||e>=2870&&e<=2873||e==2877||e>=2908&&e<=2909||e>=2911&&e<=2913||e>=2949&&e<=2954||e>=2958&&e<=2960||e>=2962&&e<=2965||e>=2969&&e<=2970||e==2972||e>=2974&&e<=2975||e>=2979&&e<=2980||e>=2984&&e<=2986||e>=2990&&e<=2997||e>=2999&&e<=3001||e>=3077&&e<=3084||e>=3086&&e<=3088||e>=3090&&e<=3112||e>=3114&&e<=3123||e>=3125&&e<=3129||e>=3168&&e<=3169||e>=3205&&e<=3212||e>=3214&&e<=3216||e>=3218&&e<=3240||e>=3242&&e<=3251||e>=3253&&e<=3257||e==3294||e>=3296&&e<=3297||e>=3333&&e<=3340||e>=3342&&e<=3344||e>=3346&&e<=3368||e>=3370&&e<=3385||e>=3424&&e<=3425||e>=3585&&e<=3630||e==3632||e>=3634&&e<=3635||e>=3648&&e<=3653||e>=3713&&e<=3714||e==3716||e>=3719&&e<=3720||e==3722||e==3725||e>=3732&&e<=3735||e>=3737&&e<=3743||e>=3745&&e<=3747||e==3749||e==3751||e>=3754&&e<=3755||e>=3757&&e<=3758||e==3760||e>=3762&&e<=3763||e==3773||e>=3776&&e<=3780||e>=3904&&e<=3911||e>=3913&&e<=3945||e>=4256&&e<=4293||e>=4304&&e<=4342||e==4352||e>=4354&&e<=4355||e>=4357&&e<=4359||e==4361||e>=4363&&e<=4364||e>=4366&&e<=4370||e==4412||e==4414||e==4416||e==4428||e==4430||e==4432||e>=4436&&e<=4437||e==4441||e>=4447&&e<=4449||e==4451||e==4453||e==4455||e==4457||e>=4461&&e<=4462||e>=4466&&e<=4467||e==4469||e==4510||e==4520||e==4523||e>=4526&&e<=4527||e>=4535&&e<=4536||e==4538||e>=4540&&e<=4546||e==4587||e==4592||e==4601||e>=7680&&e<=7835||e>=7840&&e<=7929||e>=7936&&e<=7957||e>=7960&&e<=7965||e>=7968&&e<=8005||e>=8008&&e<=8013||e>=8016&&e<=8023||e==8025||e==8027||e==8029||e>=8031&&e<=8061||e>=8064&&e<=8116||e>=8118&&e<=8124||e==8126||e>=8130&&e<=8132||e>=8134&&e<=8140||e>=8144&&e<=8147||e>=8150&&e<=8155||e>=8160&&e<=8172||e>=8178&&e<=8180||e>=8182&&e<=8188||e==8486||e>=8490&&e<=8491||e==8494||e>=8576&&e<=8578||e>=12353&&e<=12436||e>=12449&&e<=12538||e>=12549&&e<=12588||e>=44032&&e<=55203||e>=19968&&e<=40869||e==12295||e>=12321&&e<=12329},Se.isNCNameChar=function(e){return e>=48&&e<=57||e>=1632&&e<=1641||e>=1776&&e<=1785||e>=2406&&e<=2415||e>=2534&&e<=2543||e>=2662&&e<=2671||e>=2790&&e<=2799||e>=2918&&e<=2927||e>=3047&&e<=3055||e>=3174&&e<=3183||e>=3302&&e<=3311||e>=3430&&e<=3439||e>=3664&&e<=3673||e>=3792&&e<=3801||e>=3872&&e<=3881||e==46||e==45||e==95||Se.isLetter(e)||e>=768&&e<=837||e>=864&&e<=865||e>=1155&&e<=1158||e>=1425&&e<=1441||e>=1443&&e<=1465||e>=1467&&e<=1469||e==1471||e>=1473&&e<=1474||e==1476||e>=1611&&e<=1618||e==1648||e>=1750&&e<=1756||e>=1757&&e<=1759||e>=1760&&e<=1764||e>=1767&&e<=1768||e>=1770&&e<=1773||e>=2305&&e<=2307||e==2364||e>=2366&&e<=2380||e==2381||e>=2385&&e<=2388||e>=2402&&e<=2403||e>=2433&&e<=2435||e==2492||e==2494||e==2495||e>=2496&&e<=2500||e>=2503&&e<=2504||e>=2507&&e<=2509||e==2519||e>=2530&&e<=2531||e==2562||e==2620||e==2622||e==2623||e>=2624&&e<=2626||e>=2631&&e<=2632||e>=2635&&e<=2637||e>=2672&&e<=2673||e>=2689&&e<=2691||e==2748||e>=2750&&e<=2757||e>=2759&&e<=2761||e>=2763&&e<=2765||e>=2817&&e<=2819||e==2876||e>=2878&&e<=2883||e>=2887&&e<=2888||e>=2891&&e<=2893||e>=2902&&e<=2903||e>=2946&&e<=2947||e>=3006&&e<=3010||e>=3014&&e<=3016||e>=3018&&e<=3021||e==3031||e>=3073&&e<=3075||e>=3134&&e<=3140||e>=3142&&e<=3144||e>=3146&&e<=3149||e>=3157&&e<=3158||e>=3202&&e<=3203||e>=3262&&e<=3268||e>=3270&&e<=3272||e>=3274&&e<=3277||e>=3285&&e<=3286||e>=3330&&e<=3331||e>=3390&&e<=3395||e>=3398&&e<=3400||e>=3402&&e<=3405||e==3415||e==3633||e>=3636&&e<=3642||e>=3655&&e<=3662||e==3761||e>=3764&&e<=3769||e>=3771&&e<=3772||e>=3784&&e<=3789||e>=3864&&e<=3865||e==3893||e==3895||e==3897||e==3902||e==3903||e>=3953&&e<=3972||e>=3974&&e<=3979||e>=3984&&e<=3989||e==3991||e>=3993&&e<=4013||e>=4017&&e<=4023||e==4025||e>=8400&&e<=8412||e==8417||e>=12330&&e<=12335||e==12441||e==12442||e==183||e==720||e==721||e==903||e==1600||e==3654||e==3782||e==12293||e>=12337&&e<=12341||e>=12445&&e<=12446||e>=12540&&e<=12542},Se.coalesceText=function(e){for(var o=e.firstChild;o!=null;o=o.nextSibling)if(o.nodeType==X.TEXT_NODE||o.nodeType==X.CDATA_SECTION_NODE){var N=o.nodeValue,D=o;for(o=o.nextSibling;o!=null&&(o.nodeType==X.TEXT_NODE||o.nodeType==X.CDATA_SECTION_NODE);){N+=o.nodeValue;var l=o;o=o.nextSibling,l.parentNode.removeChild(l)}if(D.nodeType==X.CDATA_SECTION_NODE){var f=D.parentNode;if(D.nextSibling==null)f.removeChild(D),f.appendChild(f.ownerDocument.createTextNode(N));else{var oe=D.nextSibling;f.removeChild(D),f.insertBefore(f.ownerDocument.createTextNode(N),oe)}}else D.nodeValue=N;if(o==null)break}else o.nodeType==X.ELEMENT_NODE&&Se.coalesceText(o)},Se.instance_of=function(e,o){for(;e!=null;){if(e.constructor===o)return!0;if(e===Object)return!1;e=e.constructor.superclass}return!1},Se.getElementById=function(e,o){if(e.nodeType==X.ELEMENT_NODE&&(e.getAttribute("id")==o||e.getAttributeNS(null,"id")==o))return e;for(var N=e.firstChild;N!=null;N=N.nextSibling){var D=Se.getElementById(N,o);if(D!=null)return D}return null};var qe=function(){function e(N,D){var l=D?": "+D.toString():"";switch(N){case o.INVALID_EXPRESSION_ERR:return"Invalid expression"+l;case o.TYPE_ERR:return"Type error"+l}return null}function o(N,D,l){var f=Error.call(this,e(N,D)||l);return f.code=N,f.exception=D,f}return o.prototype=Object.create(Error.prototype),o.prototype.constructor=o,o.superclass=Error,o.prototype.toString=function(){return this.message},o.fromMessage=function(N,D){return new o(null,D,N)},o.INVALID_EXPRESSION_ERR=51,o.TYPE_ERR=52,o}();We.prototype={},We.prototype.constructor=We,We.superclass=Object.prototype;function We(e,o,N){this.xpath=N.parse(e),this.context=new Ze,this.context.namespaceResolver=new Rt(o)}We.getOwnerDocument=function(e){return e.nodeType===X.DOCUMENT_NODE?e:e.ownerDocument},We.detectHtmlDom=function(e){if(!e)return!1;var o=We.getOwnerDocument(e);try{return o.implementation.hasFeature("HTML","2.0")}catch{return!0}},We.prototype.evaluate=function(e,o,N){this.context.expressionContextNode=e,this.context.caseInsensitive=We.detectHtmlDom(e);var D=this.xpath.evaluate(this.context);return new Me(D,o)},Rt.prototype={},Rt.prototype.constructor=Rt,Rt.superclass=Object.prototype;function Rt(e){this.xpathNSResolver=e}Rt.prototype.getNamespace=function(e,o){return this.xpathNSResolver==null?null:this.xpathNSResolver.lookupNamespaceURI(e)},st.prototype={},st.prototype.constructor=st,st.superclass=Object.prototype;function st(e){this.node=e,this.namespaceResolver=new je}st.prototype.lookupNamespaceURI=function(e){return this.namespaceResolver.getNamespace(e,this.node)},Me.prototype={},Me.prototype.constructor=Me,Me.superclass=Object.prototype;function Me(e,o){switch(o==Me.ANY_TYPE&&(e.constructor===F?o=Me.STRING_TYPE:e.constructor===W?o=Me.NUMBER_TYPE:e.constructor===Ne?o=Me.BOOLEAN_TYPE:e.constructor===ie&&(o=Me.UNORDERED_NODE_ITERATOR_TYPE)),this.resultType=o,o){case Me.NUMBER_TYPE:this.numberValue=e.numberValue();return;case Me.STRING_TYPE:this.stringValue=e.stringValue();return;case Me.BOOLEAN_TYPE:this.booleanValue=e.booleanValue();return;case Me.ANY_UNORDERED_NODE_TYPE:case Me.FIRST_ORDERED_NODE_TYPE:if(e.constructor===ie){this.singleNodeValue=e.first();return}break;case Me.UNORDERED_NODE_ITERATOR_TYPE:case Me.ORDERED_NODE_ITERATOR_TYPE:if(e.constructor===ie){this.invalidIteratorState=!1,this.nodes=e.toArray(),this.iteratorIndex=0;return}break;case Me.UNORDERED_NODE_SNAPSHOT_TYPE:case Me.ORDERED_NODE_SNAPSHOT_TYPE:if(e.constructor===ie){this.nodes=e.toArray(),this.snapshotLength=this.nodes.length;return}break}throw new qe(qe.TYPE_ERR)}Me.prototype.iterateNext=function(){if(this.resultType!=Me.UNORDERED_NODE_ITERATOR_TYPE&&this.resultType!=Me.ORDERED_NODE_ITERATOR_TYPE)throw new qe(qe.TYPE_ERR);return this.nodes[this.iteratorIndex++]},Me.prototype.snapshotItem=function(e){if(this.resultType!=Me.UNORDERED_NODE_SNAPSHOT_TYPE&&this.resultType!=Me.ORDERED_NODE_SNAPSHOT_TYPE)throw new qe(qe.TYPE_ERR);return this.nodes[e]},Me.ANY_TYPE=0,Me.NUMBER_TYPE=1,Me.STRING_TYPE=2,Me.BOOLEAN_TYPE=3,Me.UNORDERED_NODE_ITERATOR_TYPE=4,Me.ORDERED_NODE_ITERATOR_TYPE=5,Me.UNORDERED_NODE_SNAPSHOT_TYPE=6,Me.ORDERED_NODE_SNAPSHOT_TYPE=7,Me.ANY_UNORDERED_NODE_TYPE=8,Me.FIRST_ORDERED_NODE_TYPE=9;function R(e,o){e.createExpression=function(N,D){try{return new We(N,D,o)}catch(l){throw new qe(qe.INVALID_EXPRESSION_ERR,l)}},e.createNSResolver=function(N){return new st(N)},e.evaluate=function(N,D,l,f,oe){if(f<0||f>9)throw{code:0,toString:function(){return"Request type not supported"}};return e.createExpression(N,l,o).evaluate(D,f,oe)}}try{var S=!0;try{document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("XPath",null)&&(S=!1)}catch{}S&&R(document,new L)}catch{}R(r,new L),function(){var e=new L,o=new je,N=new Xe,D=new et;function l(se){return{getNamespace:function(ye,Je){var ut=se(ye,Je);return ut||o.getNamespace(ye,Je)}}}function f(se){return l(se.getNamespace.bind(se))}function oe(se){return l(function(ye){return se[ye]})}function me(se){return se&&typeof se.getNamespace=="function"?f(se):typeof se=="function"?l(se):typeof se=="object"?oe(se):o}function Be(se){if(se===null||typeof se>"u"||se instanceof F||se instanceof Ne||se instanceof W||se instanceof ie)return se;switch(typeof se){case"string":return new F(se);case"boolean":return new Ne(se);case"number":return new W(se)}var ye=new ie;return ye.addArray([].concat(se)),ye}function ae(se){return function(ye){var Je=Array.prototype.slice.call(arguments,1).map(function(CS){return CS.evaluate(ye)}),ut=se.apply(this,[].concat(ye,Je));return Be(ut)}}function Ae(se){return{getFunction:function(ye,Je){var ut=se(ye,Je);return ut?ae(ut):N.getFunction(ye,Je)}}}function Ke(se){return Ae(se.getFunction.bind(se))}function ze(se){return Ae(function(ye){return se[ye]})}function He(se){return se&&typeof se.getFunction=="function"?Ke(se):typeof se=="function"?Ae(se):typeof se=="object"?ze(se):N}function Tt(se){return{getVariable:function(ye,Je){var ut=se(ye,Je);return Be(ut)}}}function tt(se){if(se){if(typeof se.getVariable=="function")return Tt(se.getVariable.bind(se));if(typeof se=="function")return Tt(se);if(typeof se=="object")return Tt(function(ye){return se[ye]})}return D}function lt(se,ye,Je){se in Je&&(ye[se]=Je[se])}function IS(se){var ye=new Ze;return se?(ye.namespaceResolver=me(se.namespaces),ye.functionResolver=He(se.functions),ye.variableResolver=tt(se.variables),ye.expressionContextNode=se.node,lt("allowAnyNamespaceForNoPrefix",ye,se),lt("isHtml",ye,se)):ye.namespaceResolver=o,ye}function OS(se,ye){var Je=IS(ye);return se.evaluate(Je)}var lS={evaluate:function(se){return OS(this.expression,se)},evaluateNumber:function(se){return this.evaluate(se).numberValue()},evaluateString:function(se){return this.evaluate(se).stringValue()},evaluateBoolean:function(se){return this.evaluate(se).booleanValue()},evaluateNodeSet:function(se){return this.evaluate(se).nodeset()},select:function(se){return this.evaluateNodeSet(se).toArray()},select1:function(se){return this.select(se)[0]}};function uS(se){var ye=e.parse(se);return Object.create(lS,{expression:{value:ye}})}r.parse=uS}(),Ce(r,{XPath:k,XPathParser:L,XPathResult:Me,Step:v,PathExpr:b,NodeTest:c,LocationPath:ue,OrOperation:Oe,AndOperation:ce,BarOperation:B,EqualsOperation:pe,NotEqualOperation:Y,LessThanOperation:j,GreaterThanOperation:le,LessThanOrEqualOperation:Ue,GreaterThanOrEqualOperation:Te,PlusOperation:he,MinusOperation:q,MultiplyOperation:p,DivOperation:h,ModOperation:m,UnaryMinusOperation:ee,FunctionCall:ge,VariableReference:re,XPathContext:Ze,XNodeSet:ie,XBoolean:Ne,XString:F,XNumber:W,NamespaceResolver:je,FunctionResolver:Xe,VariableResolver:et,Utilities:Se}),r.select=function(e,o,N){return r.selectWithResolver(e,o,null,N)},r.useNamespaces=function(e){var o={mappings:e||{},lookupNamespaceURI:function(N){return this.mappings[N]}};return function(N,D,l){return r.selectWithResolver(N,D,o,l)}},r.selectWithResolver=function(e,o,N,D){var l=new We(e,N,new L),f=Me.ANY_TYPE,oe=l.evaluate(o,f,null);return oe.resultType==Me.STRING_TYPE?oe=oe.stringValue:oe.resultType==Me.NUMBER_TYPE?oe=oe.numberValue:oe.resultType==Me.BOOLEAN_TYPE?oe=oe.booleanValue:(oe=oe.nodes,D&&(oe=oe[0])),oe},r.select1=function(e,o){return r.select(e,o,!0)};var _=function(e){return Array.isArray(e)&&e.every(A)},G=function(e){return function(o){return A(o)&&o.nodeType===e}};Ce(r,{isNodeLike:A,isArrayOfNodes:_,isElement:G(X.ELEMENT_NODE),isAttribute:G(X.ATTRIBUTE_NODE),isTextNode:G(X.TEXT_NODE),isCDATASection:G(X.CDATA_SECTION_NODE),isProcessingInstruction:G(X.PROCESSING_INSTRUCTION_NODE),isComment:G(X.COMMENT_NODE),isDocumentNode:G(X.DOCUMENT_NODE),isDocumentTypeNode:G(X.DOCUMENT_TYPE_NODE),isDocumentFragment:G(X.DOCUMENT_FRAGMENT_NODE)})})(t)}(qt)),qt}var Yn=xn();const Vn=mE(Yn);var Ut={},at={},Ct={},gE;function Ht(){if(gE)return Ct;gE=1;function E(a,A,C){if(C===void 0&&(C=Array.prototype),a&&typeof C.find=="function")return C.find.call(a,A);for(var I=0;I<a.length;I++)if(Object.prototype.hasOwnProperty.call(a,I)){var i=a[I];if(A.call(void 0,i,I,a))return i}}function t(a,A){return A===void 0&&(A=Object),A&&typeof A.freeze=="function"?A.freeze(a):a}function r(a,A){if(a===null||typeof a!="object")throw new TypeError("target is not an object");for(var C in A)Object.prototype.hasOwnProperty.call(A,C)&&(a[C]=A[C]);return a}var n=t({HTML:"text/html",isHTML:function(a){return a===n.HTML},XML_APPLICATION:"application/xml",XML_TEXT:"text/xml",XML_XHTML_APPLICATION:"application/xhtml+xml",XML_SVG_IMAGE:"image/svg+xml"}),s=t({HTML:"http://www.w3.org/1999/xhtml",isHTML:function(a){return a===s.HTML},SVG:"http://www.w3.org/2000/svg",XML:"http://www.w3.org/XML/1998/namespace",XMLNS:"http://www.w3.org/2000/xmlns/"});return Ct.assign=r,Ct.find=E,Ct.freeze=t,Ct.MIME_TYPE=n,Ct.NAMESPACE=s,Ct}var yE;function GE(){if(yE)return at;yE=1;var E=Ht(),t=E.find,r=E.NAMESPACE;function n(R){return R!==""}function s(R){return R?R.split(/[\t\n\f\r ]+/).filter(n):[]}function a(R,S){return R.hasOwnProperty(S)||(R[S]=!0),R}function A(R){if(!R)return[];var S=s(R);return Object.keys(S.reduce(a,{}))}function C(R){return function(S){return R&&R.indexOf(S)!==-1}}function I(R,S){for(var _ in R)Object.prototype.hasOwnProperty.call(R,_)&&(S[_]=R[_])}function i(R,S){var _=R.prototype;if(!(_ instanceof S)){let G=function(){};G.prototype=S.prototype,G=new G,I(_,G),R.prototype=_=G}_.constructor!=R&&(typeof R!="function"&&console.error("unknown Class:"+R),_.constructor=R)}var O={},u=O.ELEMENT_NODE=1,d=O.ATTRIBUTE_NODE=2,U=O.TEXT_NODE=3,M=O.CDATA_SECTION_NODE=4,w=O.ENTITY_REFERENCE_NODE=5,P=O.ENTITY_NODE=6,J=O.PROCESSING_INSTRUCTION_NODE=7,Z=O.COMMENT_NODE=8,z=O.DOCUMENT_NODE=9,De=O.DOCUMENT_TYPE_NODE=10,Ce=O.DOCUMENT_FRAGMENT_NODE=11,X=O.NOTATION_NODE=12,L={},k={};L.INDEX_SIZE_ERR=(k[1]="Index size error",1),L.DOMSTRING_SIZE_ERR=(k[2]="DOMString size error",2);var g=L.HIERARCHY_REQUEST_ERR=(k[3]="Hierarchy request error",3);L.WRONG_DOCUMENT_ERR=(k[4]="Wrong document",4),L.INVALID_CHARACTER_ERR=(k[5]="Invalid character",5),L.NO_DATA_ALLOWED_ERR=(k[6]="No data allowed",6),L.NO_MODIFICATION_ALLOWED_ERR=(k[7]="No modification allowed",7);var x=L.NOT_FOUND_ERR=(k[8]="Not found",8);L.NOT_SUPPORTED_ERR=(k[9]="Not supported",9);var ne=L.INUSE_ATTRIBUTE_ERR=(k[10]="Attribute in use",10);L.INVALID_STATE_ERR=(k[11]="Invalid state",11),L.SYNTAX_ERR=(k[12]="Syntax error",12),L.INVALID_MODIFICATION_ERR=(k[13]="Invalid modification",13),L.NAMESPACE_ERR=(k[14]="Invalid namespace",14),L.INVALID_ACCESS_ERR=(k[15]="Invalid access",15);function ee(R,S){if(S instanceof Error)var _=S;else _=this,Error.call(this,k[R]),this.message=k[R],Error.captureStackTrace&&Error.captureStackTrace(this,ee);return _.code=R,S&&(this.message=this.message+": "+S),_}ee.prototype=Error.prototype,I(L,ee);function Q(){}Q.prototype={length:0,item:function(R){return R>=0&&R<this.length?this[R]:null},toString:function(R,S){for(var _=[],G=0;G<this.length;G++)We(this[G],_,R,S);return _.join("")},filter:function(R){return Array.prototype.filter.call(this,R)},indexOf:function(R){return Array.prototype.indexOf.call(this,R)}};function Oe(R,S){this._node=R,this._refresh=S,ce(this)}function ce(R){var S=R._node._inc||R._node.ownerDocument._inc;if(R._inc!==S){var _=R._refresh(R._node);if(Me(R,"length",_.length),!R.$$length||_.length<R.$$length)for(var G=_.length;G in R;G++)Object.prototype.hasOwnProperty.call(R,G)&&delete R[G];I(_,R),R._inc=S}}Oe.prototype.item=function(R){return ce(this),this[R]||null},i(Oe,Q);function pe(){}function Y(R,S){for(var _=R.length;_--;)if(R[_]===S)return _}function j(R,S,_,G){if(G?S[Y(S,G)]=_:S[S.length++]=_,R){_.ownerElement=R;var e=R.ownerDocument;e&&(G&&m(e,R,G),h(e,R,_))}}function le(R,S,_){var G=Y(S,_);if(G>=0){for(var e=S.length-1;G<e;)S[G]=S[++G];if(S.length=e,R){var o=R.ownerDocument;o&&(m(o,R,_),_.ownerElement=null)}}else throw new ee(x,new Error(R.tagName+"@"+_))}pe.prototype={length:0,item:Q.prototype.item,getNamedItem:function(R){for(var S=this.length;S--;){var _=this[S];if(_.nodeName==R)return _}},setNamedItem:function(R){var S=R.ownerElement;if(S&&S!=this._ownerElement)throw new ee(ne);var _=this.getNamedItem(R.nodeName);return j(this._ownerElement,this,R,_),_},setNamedItemNS:function(R){var S=R.ownerElement,_;if(S&&S!=this._ownerElement)throw new ee(ne);return _=this.getNamedItemNS(R.namespaceURI,R.localName),j(this._ownerElement,this,R,_),_},removeNamedItem:function(R){var S=this.getNamedItem(R);return le(this._ownerElement,this,S),S},removeNamedItemNS:function(R,S){var _=this.getNamedItemNS(R,S);return le(this._ownerElement,this,_),_},getNamedItemNS:function(R,S){for(var _=this.length;_--;){var G=this[_];if(G.localName==S&&G.namespaceURI==R)return G}return null}};function Ue(){}Ue.prototype={hasFeature:function(R,S){return!0},createDocument:function(R,S,_){var G=new p;if(G.implementation=this,G.childNodes=new Q,G.doctype=_||null,_&&G.appendChild(_),S){var e=G.createElementNS(R,S);G.appendChild(e)}return G},createDocumentType:function(R,S,_){var G=new ie;return G.name=R,G.nodeName=R,G.publicId=S||"",G.systemId=_||"",G}};function Te(){}Te.prototype={firstChild:null,lastChild:null,previousSibling:null,nextSibling:null,attributes:null,parentNode:null,childNodes:null,ownerDocument:null,nodeValue:null,namespaceURI:null,prefix:null,localName:null,insertBefore:function(R,S){return ge(this,R,S)},replaceChild:function(R,S){ge(this,R,S,re),S&&this.removeChild(S)},removeChild:function(R){return b(this,R)},appendChild:function(R){return this.insertBefore(R,null)},hasChildNodes:function(){return this.firstChild!=null},cloneNode:function(R){return st(this.ownerDocument||this,this,R)},normalize:function(){for(var R=this.firstChild;R;){var S=R.nextSibling;S&&S.nodeType==U&&R.nodeType==U?(this.removeChild(S),R.appendData(S.data)):(R.normalize(),R=S)}},isSupported:function(R,S){return this.ownerDocument.implementation.hasFeature(R,S)},hasAttributes:function(){return this.attributes.length>0},lookupPrefix:function(R){for(var S=this;S;){var _=S._nsMap;if(_){for(var G in _)if(Object.prototype.hasOwnProperty.call(_,G)&&_[G]===R)return G}S=S.nodeType==d?S.ownerDocument:S.parentNode}return null},lookupNamespaceURI:function(R){for(var S=this;S;){var _=S._nsMap;if(_&&Object.prototype.hasOwnProperty.call(_,R))return _[R];S=S.nodeType==d?S.ownerDocument:S.parentNode}return null},isDefaultNamespace:function(R){var S=this.lookupPrefix(R);return S==null}};function he(R){return R=="<"&&"<"||R==">"&&">"||R=="&"&&"&"||R=='"'&&"""||"&#"+R.charCodeAt()+";"}I(O,Te),I(O,Te.prototype);function q(R,S){if(S(R))return!0;if(R=R.firstChild)do if(q(R,S))return!0;while(R=R.nextSibling)}function p(){this.ownerDocument=this}function h(R,S,_){R&&R._inc++;var G=_.namespaceURI;G===r.XMLNS&&(S._nsMap[_.prefix?_.localName:""]=_.value)}function m(R,S,_,G){R&&R._inc++;var e=_.namespaceURI;e===r.XMLNS&&delete S._nsMap[_.prefix?_.localName:""]}function B(R,S,_){if(R&&R._inc){R._inc++;var G=S.childNodes;if(_)G[G.length++]=_;else{for(var e=S.firstChild,o=0;e;)G[o++]=e,e=e.nextSibling;G.length=o,delete G[G.length]}}}function b(R,S){var _=S.previousSibling,G=S.nextSibling;return _?_.nextSibling=G:R.firstChild=G,G?G.previousSibling=_:R.lastChild=_,S.parentNode=null,S.previousSibling=null,S.nextSibling=null,B(R.ownerDocument,R),S}function H(R){return R&&(R.nodeType===Te.DOCUMENT_NODE||R.nodeType===Te.DOCUMENT_FRAGMENT_NODE||R.nodeType===Te.ELEMENT_NODE)}function te(R){return R&&(Re(R)||Le(R)||Ee(R)||R.nodeType===Te.DOCUMENT_FRAGMENT_NODE||R.nodeType===Te.COMMENT_NODE||R.nodeType===Te.PROCESSING_INSTRUCTION_NODE)}function Ee(R){return R&&R.nodeType===Te.DOCUMENT_TYPE_NODE}function Re(R){return R&&R.nodeType===Te.ELEMENT_NODE}function Le(R){return R&&R.nodeType===Te.TEXT_NODE}function ue(R,S){var _=R.childNodes||[];if(t(_,Re)||Ee(S))return!1;var G=t(_,Ee);return!(S&&G&&_.indexOf(G)>_.indexOf(S))}function v(R,S){var _=R.childNodes||[];function G(o){return Re(o)&&o!==S}if(t(_,G))return!1;var e=t(_,Ee);return!(S&&e&&_.indexOf(e)>_.indexOf(S))}function fe(R,S,_){if(!H(R))throw new ee(g,"Unexpected parent node type "+R.nodeType);if(_&&_.parentNode!==R)throw new ee(x,"child not in parent");if(!te(S)||Ee(S)&&R.nodeType!==Te.DOCUMENT_NODE)throw new ee(g,"Unexpected node type "+S.nodeType+" for parent node type "+R.nodeType)}function c(R,S,_){var G=R.childNodes||[],e=S.childNodes||[];if(S.nodeType===Te.DOCUMENT_FRAGMENT_NODE){var o=e.filter(Re);if(o.length>1||t(e,Le))throw new ee(g,"More than one element or text in fragment");if(o.length===1&&!ue(R,_))throw new ee(g,"Element in fragment can not be inserted before doctype")}if(Re(S)&&!ue(R,_))throw new ee(g,"Only one element can be added and only after doctype");if(Ee(S)){if(t(G,Ee))throw new ee(g,"Only one doctype is allowed");var N=t(G,Re);if(_&&G.indexOf(N)<G.indexOf(_))throw new ee(g,"Doctype can only be inserted before an element");if(!_&&N)throw new ee(g,"Doctype can not be appended since element is present")}}function re(R,S,_){var G=R.childNodes||[],e=S.childNodes||[];if(S.nodeType===Te.DOCUMENT_FRAGMENT_NODE){var o=e.filter(Re);if(o.length>1||t(e,Le))throw new ee(g,"More than one element or text in fragment");if(o.length===1&&!v(R,_))throw new ee(g,"Element in fragment can not be inserted before doctype")}if(Re(S)&&!v(R,_))throw new ee(g,"Only one element can be added and only after doctype");if(Ee(S)){if(t(G,function(l){return Ee(l)&&l!==_}))throw new ee(g,"Only one doctype is allowed");var N=t(G,Re);if(_&&G.indexOf(N)<G.indexOf(_))throw new ee(g,"Doctype can only be inserted before an element")}}function ge(R,S,_,G){fe(R,S,_),R.nodeType===Te.DOCUMENT_NODE&&(G||c)(R,S,_);var e=S.parentNode;if(e&&e.removeChild(S),S.nodeType===Ce){var o=S.firstChild;if(o==null)return S;var N=S.lastChild}else o=N=S;var D=_?_.previousSibling:R.lastChild;o.previousSibling=D,N.nextSibling=_,D?D.nextSibling=o:R.firstChild=o,_==null?R.lastChild=N:_.previousSibling=N;do{o.parentNode=R;var l=R.ownerDocument||R;de(o,l)}while(o!==N&&(o=o.nextSibling));return B(R.ownerDocument||R,R),S.nodeType==Ce&&(S.firstChild=S.lastChild=null),S}function de(R,S){if(R.ownerDocument!==S){if(R.ownerDocument=S,R.nodeType===u&&R.attributes)for(var _=0;_<R.attributes.length;_++){var G=R.attributes.item(_);G&&(G.ownerDocument=S)}for(var e=R.firstChild;e;)de(e,S),e=e.nextSibling}}function F(R,S){S.parentNode&&S.parentNode.removeChild(S),S.parentNode=R,S.previousSibling=R.lastChild,S.nextSibling=null,S.previousSibling?S.previousSibling.nextSibling=S:R.firstChild=S,R.lastChild=S,B(R.ownerDocument,R,S);var _=R.ownerDocument||R;return de(S,_),S}p.prototype={nodeName:"#document",nodeType:z,doctype:null,documentElement:null,_inc:1,insertBefore:function(R,S){if(R.nodeType==Ce){for(var _=R.firstChild;_;){var G=_.nextSibling;this.insertBefore(_,S),_=G}return R}return ge(this,R,S),de(R,this),this.documentElement===null&&R.nodeType===u&&(this.documentElement=R),R},removeChild:function(R){return this.documentElement==R&&(this.documentElement=null),b(this,R)},replaceChild:function(R,S){ge(this,R,S,re),de(R,this),S&&this.removeChild(S),Re(R)&&(this.documentElement=R)},importNode:function(R,S){return Rt(this,R,S)},getElementById:function(R){var S=null;return q(this.documentElement,function(_){if(_.nodeType==u&&_.getAttribute("id")==R)return S=_,!0}),S},getElementsByClassName:function(R){var S=A(R);return new Oe(this,function(_){var G=[];return S.length>0&&q(_.documentElement,function(e){if(e!==_&&e.nodeType===u){var o=e.getAttribute("class");if(o){var N=R===o;if(!N){var D=A(o);N=S.every(C(D))}N&&G.push(e)}}}),G})},createElement:function(R){var S=new W;S.ownerDocument=this,S.nodeName=R,S.tagName=R,S.localName=R,S.childNodes=new Q;var _=S.attributes=new pe;return _._ownerElement=S,S},createDocumentFragment:function(){var R=new Xe;return R.ownerDocument=this,R.childNodes=new Q,R},createTextNode:function(R){var S=new Ne;return S.ownerDocument=this,S.appendData(R),S},createComment:function(R){var S=new we;return S.ownerDocument=this,S.appendData(R),S},createCDATASection:function(R){var S=new Gt;return S.ownerDocument=this,S.appendData(R),S},createProcessingInstruction:function(R,S){var _=new je;return _.ownerDocument=this,_.tagName=_.nodeName=_.target=R,_.nodeValue=_.data=S,_},createAttribute:function(R){var S=new ve;return S.ownerDocument=this,S.name=R,S.nodeName=R,S.localName=R,S.specified=!0,S},createEntityReference:function(R){var S=new et;return S.ownerDocument=this,S.nodeName=R,S},createElementNS:function(R,S){var _=new W,G=S.split(":"),e=_.attributes=new pe;return _.childNodes=new Q,_.ownerDocument=this,_.nodeName=S,_.tagName=S,_.namespaceURI=R,G.length==2?(_.prefix=G[0],_.localName=G[1]):_.localName=S,e._ownerElement=_,_},createAttributeNS:function(R,S){var _=new ve,G=S.split(":");return _.ownerDocument=this,_.nodeName=S,_.name=S,_.namespaceURI=R,_.specified=!0,G.length==2?(_.prefix=G[0],_.localName=G[1]):_.localName=S,_}},i(p,Te);function W(){this._nsMap={}}W.prototype={nodeType:u,hasAttribute:function(R){return this.getAttributeNode(R)!=null},getAttribute:function(R){var S=this.getAttributeNode(R);return S&&S.value||""},getAttributeNode:function(R){return this.attributes.getNamedItem(R)},setAttribute:function(R,S){var _=this.ownerDocument.createAttribute(R);_.value=_.nodeValue=""+S,this.setAttributeNode(_)},removeAttribute:function(R){var S=this.getAttributeNode(R);S&&this.removeAttributeNode(S)},appendChild:function(R){return R.nodeType===Ce?this.insertBefore(R,null):F(this,R)},setAttributeNode:function(R){return this.attributes.setNamedItem(R)},setAttributeNodeNS:function(R){return this.attributes.setNamedItemNS(R)},removeAttributeNode:function(R){return this.attributes.removeNamedItem(R.nodeName)},removeAttributeNS:function(R,S){var _=this.getAttributeNodeNS(R,S);_&&this.removeAttributeNode(_)},hasAttributeNS:function(R,S){return this.getAttributeNodeNS(R,S)!=null},getAttributeNS:function(R,S){var _=this.getAttributeNodeNS(R,S);return _&&_.value||""},setAttributeNS:function(R,S,_){var G=this.ownerDocument.createAttributeNS(R,S);G.value=G.nodeValue=""+_,this.setAttributeNode(G)},getAttributeNodeNS:function(R,S){return this.attributes.getNamedItemNS(R,S)},getElementsByTagName:function(R){return new Oe(this,function(S){var _=[];return q(S,function(G){G!==S&&G.nodeType==u&&(R==="*"||G.tagName==R)&&_.push(G)}),_})},getElementsByTagNameNS:function(R,S){return new Oe(this,function(_){var G=[];return q(_,function(e){e!==_&&e.nodeType===u&&(R==="*"||e.namespaceURI===R)&&(S==="*"||e.localName==S)&&G.push(e)}),G})}},p.prototype.getElementsByTagName=W.prototype.getElementsByTagName,p.prototype.getElementsByTagNameNS=W.prototype.getElementsByTagNameNS,i(W,Te);function ve(){}ve.prototype.nodeType=d,i(ve,Te);function Qe(){}Qe.prototype={data:"",substringData:function(R,S){return this.data.substring(R,R+S)},appendData:function(R){R=this.data+R,this.nodeValue=this.data=R,this.length=R.length},insertData:function(R,S){this.replaceData(R,0,S)},appendChild:function(R){throw new Error(k[g])},deleteData:function(R,S){this.replaceData(R,S,"")},replaceData:function(R,S,_){var G=this.data.substring(0,R),e=this.data.substring(R+S);_=G+_+e,this.nodeValue=this.data=_,this.length=_.length}},i(Qe,Te);function Ne(){}Ne.prototype={nodeName:"#text",nodeType:U,splitText:function(R){var S=this.data,_=S.substring(R);S=S.substring(0,R),this.data=this.nodeValue=S,this.length=S.length;var G=this.ownerDocument.createTextNode(_);return this.parentNode&&this.parentNode.insertBefore(G,this.nextSibling),G}},i(Ne,Qe);function we(){}we.prototype={nodeName:"#comment",nodeType:Z},i(we,Qe);function Gt(){}Gt.prototype={nodeName:"#cdata-section",nodeType:M},i(Gt,Qe);function ie(){}ie.prototype.nodeType=De,i(ie,Te);function nt(){}nt.prototype.nodeType=X,i(nt,Te);function Ze(){}Ze.prototype.nodeType=P,i(Ze,Te);function et(){}et.prototype.nodeType=w,i(et,Te);function Xe(){}Xe.prototype.nodeName="#document-fragment",Xe.prototype.nodeType=Ce,i(Xe,Te);function je(){}je.prototype.nodeType=J,i(je,Te);function _e(){}_e.prototype.serializeToString=function(R,S,_){return Se.call(R,S,_)},Te.prototype.toString=Se;function Se(R,S){var _=[],G=this.nodeType==9&&this.documentElement||this,e=G.prefix,o=G.namespaceURI;if(o&&e==null){var e=G.lookupPrefix(o);if(e==null)var N=[{namespace:o,prefix:null}]}return We(this,_,R,S,N),_.join("")}function Ft(R,S,_){var G=R.prefix||"",e=R.namespaceURI;if(!e||G==="xml"&&e===r.XML||e===r.XMLNS)return!1;for(var o=_.length;o--;){var N=_[o];if(N.prefix===G)return N.namespace!==e}return!0}function qe(R,S,_){R.push(" ",S,'="',_.replace(/[<>&"\t\n\r]/g,he),'"')}function We(R,S,_,G,e){if(e||(e=[]),G)if(R=G(R),R){if(typeof R=="string"){S.push(R);return}}else return;switch(R.nodeType){case u:var o=R.attributes,N=o.length,He=R.firstChild,D=R.tagName;_=r.isHTML(R.namespaceURI)||_;var l=D;if(!_&&!R.prefix&&R.namespaceURI){for(var f,oe=0;oe<o.length;oe++)if(o.item(oe).name==="xmlns"){f=o.item(oe).value;break}if(!f)for(var me=e.length-1;me>=0;me--){var Be=e[me];if(Be.prefix===""&&Be.namespace===R.namespaceURI){f=Be.namespace;break}}if(f!==R.namespaceURI)for(var me=e.length-1;me>=0;me--){var Be=e[me];if(Be.namespace===R.namespaceURI){Be.prefix&&(l=Be.prefix+":"+D);break}}}S.push("<",l);for(var ae=0;ae<N;ae++){var Ae=o.item(ae);Ae.prefix=="xmlns"?e.push({prefix:Ae.localName,namespace:Ae.value}):Ae.nodeName=="xmlns"&&e.push({prefix:"",namespace:Ae.value})}for(var ae=0;ae<N;ae++){var Ae=o.item(ae);if(Ft(Ae,_,e)){var Ke=Ae.prefix||"",ze=Ae.namespaceURI;qe(S,Ke?"xmlns:"+Ke:"xmlns",ze),e.push({prefix:Ke,namespace:ze})}We(Ae,S,_,G,e)}if(D===l&&Ft(R,_,e)){var Ke=R.prefix||"",ze=R.namespaceURI;qe(S,Ke?"xmlns:"+Ke:"xmlns",ze),e.push({prefix:Ke,namespace:ze})}if(He||_&&!/^(?:meta|link|img|br|hr|input)$/i.test(D)){if(S.push(">"),_&&/^script$/i.test(D))for(;He;)He.data?S.push(He.data):We(He,S,_,G,e.slice()),He=He.nextSibling;else for(;He;)We(He,S,_,G,e.slice()),He=He.nextSibling;S.push("</",l,">")}else S.push("/>");return;case z:case Ce:for(var He=R.firstChild;He;)We(He,S,_,G,e.slice()),He=He.nextSibling;return;case d:return qe(S,R.name,R.value);case U:return S.push(R.data.replace(/[<&>]/g,he));case M:return S.push("<![CDATA[",R.data,"]]>");case Z:return S.push("<!--",R.data,"-->");case De:var Tt=R.publicId,tt=R.systemId;if(S.push("<!DOCTYPE ",R.name),Tt)S.push(" PUBLIC ",Tt),tt&&tt!="."&&S.push(" ",tt),S.push(">");else if(tt&&tt!=".")S.push(" SYSTEM ",tt,">");else{var lt=R.internalSubset;lt&&S.push(" [",lt,"]"),S.push(">")}return;case J:return S.push("<?",R.target," ",R.data,"?>");case w:return S.push("&",R.nodeName,";");default:S.push("??",R.nodeName)}}function Rt(R,S,_){var G;switch(S.nodeType){case u:G=S.cloneNode(!1),G.ownerDocument=R;case Ce:break;case d:_=!0;break}if(G||(G=S.cloneNode(!1)),G.ownerDocument=R,G.parentNode=null,_)for(var e=S.firstChild;e;)G.appendChild(Rt(R,e,_)),e=e.nextSibling;return G}function st(R,S,_){var G=new S.constructor;for(var e in S)if(Object.prototype.hasOwnProperty.call(S,e)){var o=S[e];typeof o!="object"&&o!=G[e]&&(G[e]=o)}switch(S.childNodes&&(G.childNodes=new Q),G.ownerDocument=R,G.nodeType){case u:var N=S.attributes,D=G.attributes=new pe,l=N.length;D._ownerElement=G;for(var f=0;f<l;f++)G.setAttributeNode(st(R,N.item(f),!0));break;case d:_=!0}if(_)for(var oe=S.firstChild;oe;)G.appendChild(st(R,oe,_)),oe=oe.nextSibling;return G}function Me(R,S,_){R[S]=_}try{if(Object.defineProperty){let R=function(S){switch(S.nodeType){case u:case Ce:var _=[];for(S=S.firstChild;S;)S.nodeType!==7&&S.nodeType!==8&&_.push(R(S)),S=S.nextSibling;return _.join("");default:return S.nodeValue}};Object.defineProperty(Oe.prototype,"length",{get:function(){return ce(this),this.$$length}}),Object.defineProperty(Te.prototype,"textContent",{get:function(){return R(this)},set:function(S){switch(this.nodeType){case u:case Ce:for(;this.firstChild;)this.removeChild(this.firstChild);(S||String(S))&&this.appendChild(this.ownerDocument.createTextNode(S));break;default:this.data=S,this.value=S,this.nodeValue=S}}}),Me=function(S,_,G){S["$$"+_]=G}}}catch{}return at.DocumentType=ie,at.DOMException=ee,at.DOMImplementation=Ue,at.Element=W,at.Node=Te,at.NodeList=Q,at.XMLSerializer=_e,at}var mt={},Jt={},FE;function vn(){return FE||(FE=1,function(E){var t=Ht().freeze;E.XML_ENTITIES=t({amp:"&",apos:"'",gt:">",lt:"<",quot:'"'}),E.HTML_ENTITIES=t({Aacute:"Á",aacute:"á",Abreve:"Ă",abreve:"ă",ac:"∾",acd:"∿",acE:"∾̳",Acirc:"Â",acirc:"â",acute:"´",Acy:"А",acy:"а",AElig:"Æ",aelig:"æ",af:"",Afr:"𝔄",afr:"𝔞",Agrave:"À",agrave:"à",alefsym:"ℵ",aleph:"ℵ",Alpha:"Α",alpha:"α",Amacr:"Ā",amacr:"ā",amalg:"⨿",AMP:"&",amp:"&",And:"⩓",and:"∧",andand:"⩕",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",ange:"⦤",angle:"∠",angmsd:"∡",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angst:"Å",angzarr:"⍼",Aogon:"Ą",aogon:"ą",Aopf:"𝔸",aopf:"𝕒",ap:"≈",apacir:"⩯",apE:"⩰",ape:"≊",apid:"≋",apos:"'",ApplyFunction:"",approx:"≈",approxeq:"≊",Aring:"Å",aring:"å",Ascr:"𝒜",ascr:"𝒶",Assign:"≔",ast:"*",asymp:"≈",asympeq:"≍",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",awconint:"∳",awint:"⨑",backcong:"≌",backepsilon:"϶",backprime:"‵",backsim:"∽",backsimeq:"⋍",Backslash:"∖",Barv:"⫧",barvee:"⊽",Barwed:"⌆",barwed:"⌅",barwedge:"⌅",bbrk:"⎵",bbrktbrk:"⎶",bcong:"≌",Bcy:"Б",bcy:"б",bdquo:"„",becaus:"∵",Because:"∵",because:"∵",bemptyv:"⦰",bepsi:"϶",bernou:"ℬ",Bernoullis:"ℬ",Beta:"Β",beta:"β",beth:"ℶ",between:"≬",Bfr:"𝔅",bfr:"𝔟",bigcap:"⋂",bigcirc:"◯",bigcup:"⋃",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",bigvee:"⋁",bigwedge:"⋀",bkarow:"⤍",blacklozenge:"⧫",blacksquare:"▪",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",blacktriangleright:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bNot:"⫭",bnot:"⌐",Bopf:"𝔹",bopf:"𝕓",bot:"⊥",bottom:"⊥",bowtie:"⋈",boxbox:"⧉",boxDL:"╗",boxDl:"╖",boxdL:"╕",boxdl:"┐",boxDR:"╔",boxDr:"╓",boxdR:"╒",boxdr:"┌",boxH:"═",boxh:"─",boxHD:"╦",boxHd:"╤",boxhD:"╥",boxhd:"┬",boxHU:"╩",boxHu:"╧",boxhU:"╨",boxhu:"┴",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxUL:"╝",boxUl:"╜",boxuL:"╛",boxul:"┘",boxUR:"╚",boxUr:"╙",boxuR:"╘",boxur:"└",boxV:"║",boxv:"│",boxVH:"╬",boxVh:"╫",boxvH:"╪",boxvh:"┼",boxVL:"╣",boxVl:"╢",boxvL:"╡",boxvl:"┤",boxVR:"╠",boxVr:"╟",boxvR:"╞",boxvr:"├",bprime:"‵",Breve:"˘",breve:"˘",brvbar:"¦",Bscr:"ℬ",bscr:"𝒷",bsemi:"⁏",bsim:"∽",bsime:"⋍",bsol:"\\",bsolb:"⧅",bsolhsub:"⟈",bull:"•",bullet:"•",bump:"≎",bumpE:"⪮",bumpe:"≏",Bumpeq:"≎",bumpeq:"≏",Cacute:"Ć",cacute:"ć",Cap:"⋒",cap:"∩",capand:"⩄",capbrcup:"⩉",capcap:"⩋",capcup:"⩇",capdot:"⩀",CapitalDifferentialD:"ⅅ",caps:"∩︀",caret:"⁁",caron:"ˇ",Cayleys:"ℭ",ccaps:"⩍",Ccaron:"Č",ccaron:"č",Ccedil:"Ç",ccedil:"ç",Ccirc:"Ĉ",ccirc:"ĉ",Cconint:"∰",ccups:"⩌",ccupssm:"⩐",Cdot:"Ċ",cdot:"ċ",cedil:"¸",Cedilla:"¸",cemptyv:"⦲",cent:"¢",CenterDot:"·",centerdot:"·",Cfr:"ℭ",cfr:"𝔠",CHcy:"Ч",chcy:"ч",check:"✓",checkmark:"✓",Chi:"Χ",chi:"χ",cir:"○",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",CircleDot:"⊙",circledR:"®",circledS:"Ⓢ",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",cirE:"⧃",cire:"≗",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"’",clubs:"♣",clubsuit:"♣",Colon:"∷",colon:":",Colone:"⩴",colone:"≔",coloneq:"≔",comma:",",commat:"@",comp:"∁",compfn:"∘",complement:"∁",complexes:"ℂ",cong:"≅",congdot:"⩭",Congruent:"≡",Conint:"∯",conint:"∮",ContourIntegral:"∮",Copf:"ℂ",copf:"𝕔",coprod:"∐",Coproduct:"∐",COPY:"©",copy:"©",copysr:"℗",CounterClockwiseContourIntegral:"∳",crarr:"↵",Cross:"⨯",cross:"✗",Cscr:"𝒞",cscr:"𝒸",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cularrp:"⤽",Cup:"⋓",cup:"∪",cupbrcap:"⩈",CupCap:"≍",cupcap:"⩆",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"∪︀",curarr:"↷",curarrm:"⤼",curlyeqprec:"⋞",curlyeqsucc:"⋟",curlyvee:"⋎",curlywedge:"⋏",curren:"¤",curvearrowleft:"↶",curvearrowright:"↷",cuvee:"⋎",cuwed:"⋏",cwconint:"∲",cwint:"∱",cylcty:"⌭",Dagger:"‡",dagger:"†",daleth:"ℸ",Darr:"↡",dArr:"⇓",darr:"↓",dash:"‐",Dashv:"⫤",dashv:"⊣",dbkarow:"⤏",dblac:"˝",Dcaron:"Ď",dcaron:"ď",Dcy:"Д",dcy:"д",DD:"ⅅ",dd:"ⅆ",ddagger:"‡",ddarr:"⇊",DDotrahd:"⤑",ddotseq:"⩷",deg:"°",Del:"∇",Delta:"Δ",delta:"δ",demptyv:"⦱",dfisht:"⥿",Dfr:"𝔇",dfr:"𝔡",dHar:"⥥",dharl:"⇃",dharr:"⇂",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",diam:"⋄",Diamond:"⋄",diamond:"⋄",diamondsuit:"♦",diams:"♦",die:"¨",DifferentialD:"ⅆ",digamma:"ϝ",disin:"⋲",div:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",DJcy:"Ђ",djcy:"ђ",dlcorn:"⌞",dlcrop:"⌍",dollar:"$",Dopf:"𝔻",dopf:"𝕕",Dot:"¨",dot:"˙",DotDot:"⃜",doteq:"≐",doteqdot:"≑",DotEqual:"≐",dotminus:"∸",dotplus:"∔",dotsquare:"⊡",doublebarwedge:"⌆",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",DownArrow:"↓",Downarrow:"⇓",downarrow:"↓",DownArrowBar:"⤓",DownArrowUpArrow:"⇵",DownBreve:"̑",downdownarrows:"⇊",downharpoonleft:"⇃",downharpoonright:"⇂",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVector:"↽",DownLeftVectorBar:"⥖",DownRightTeeVector:"⥟",DownRightVector:"⇁",DownRightVectorBar:"⥗",DownTee:"⊤",DownTeeArrow:"↧",drbkarow:"⤐",drcorn:"⌟",drcrop:"⌌",Dscr:"𝒟",dscr:"𝒹",DScy:"Ѕ",dscy:"ѕ",dsol:"⧶",Dstrok:"Đ",dstrok:"đ",dtdot:"⋱",dtri:"▿",dtrif:"▾",duarr:"⇵",duhar:"⥯",dwangle:"⦦",DZcy:"Џ",dzcy:"џ",dzigrarr:"⟿",Eacute:"É",eacute:"é",easter:"⩮",Ecaron:"Ě",ecaron:"ě",ecir:"≖",Ecirc:"Ê",ecirc:"ê",ecolon:"≕",Ecy:"Э",ecy:"э",eDDot:"⩷",Edot:"Ė",eDot:"≑",edot:"ė",ee:"ⅇ",efDot:"≒",Efr:"𝔈",efr:"𝔢",eg:"⪚",Egrave:"È",egrave:"è",egs:"⪖",egsdot:"⪘",el:"⪙",Element:"∈",elinters:"⏧",ell:"ℓ",els:"⪕",elsdot:"⪗",Emacr:"Ē",emacr:"ē",empty:"∅",emptyset:"∅",EmptySmallSquare:"◻",emptyv:"∅",EmptyVerySmallSquare:"▫",emsp:" ",emsp13:" ",emsp14:" ",ENG:"Ŋ",eng:"ŋ",ensp:" ",Eogon:"Ę",eogon:"ę",Eopf:"𝔼",eopf:"𝕖",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",Epsilon:"Ε",epsilon:"ε",epsiv:"ϵ",eqcirc:"≖",eqcolon:"≕",eqsim:"≂",eqslantgtr:"⪖",eqslantless:"⪕",Equal:"⩵",equals:"=",EqualTilde:"≂",equest:"≟",Equilibrium:"⇌",equiv:"≡",equivDD:"⩸",eqvparsl:"⧥",erarr:"⥱",erDot:"≓",Escr:"ℰ",escr:"ℯ",esdot:"≐",Esim:"⩳",esim:"≂",Eta:"Η",eta:"η",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",euro:"€",excl:"!",exist:"∃",Exists:"∃",expectation:"ℰ",ExponentialE:"ⅇ",exponentiale:"ⅇ",fallingdotseq:"≒",Fcy:"Ф",fcy:"ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",Ffr:"𝔉",ffr:"𝔣",filig:"fi",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",Fopf:"𝔽",fopf:"𝕗",ForAll:"∀",forall:"∀",fork:"⋔",forkv:"⫙",Fouriertrf:"ℱ",fpartint:"⨍",frac12:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"⁄",frown:"⌢",Fscr:"ℱ",fscr:"𝒻",gacute:"ǵ",Gamma:"Γ",gamma:"γ",Gammad:"Ϝ",gammad:"ϝ",gap:"⪆",Gbreve:"Ğ",gbreve:"ğ",Gcedil:"Ģ",Gcirc:"Ĝ",gcirc:"ĝ",Gcy:"Г",gcy:"г",Gdot:"Ġ",gdot:"ġ",gE:"≧",ge:"≥",gEl:"⪌",gel:"⋛",geq:"≥",geqq:"≧",geqslant:"⩾",ges:"⩾",gescc:"⪩",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",Gfr:"𝔊",gfr:"𝔤",Gg:"⋙",gg:"≫",ggg:"⋙",gimel:"ℷ",GJcy:"Ѓ",gjcy:"ѓ",gl:"≷",gla:"⪥",glE:"⪒",glj:"⪤",gnap:"⪊",gnapprox:"⪊",gnE:"≩",gne:"⪈",gneq:"⪈",gneqq:"≩",gnsim:"⋧",Gopf:"𝔾",gopf:"𝕘",grave:"`",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Gscr:"𝒢",gscr:"ℊ",gsim:"≳",gsime:"⪎",gsiml:"⪐",Gt:"≫",GT:">",gt:">",gtcc:"⪧",gtcir:"⩺",gtdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrapprox:"⪆",gtrarr:"⥸",gtrdot:"⋗",gtreqless:"⋛",gtreqqless:"⪌",gtrless:"≷",gtrsim:"≳",gvertneqq:"≩︀",gvnE:"≩︀",Hacek:"ˇ",hairsp:" ",half:"½",hamilt:"ℋ",HARDcy:"Ъ",hardcy:"ъ",hArr:"⇔",harr:"↔",harrcir:"⥈",harrw:"↭",Hat:"^",hbar:"ℏ",Hcirc:"Ĥ",hcirc:"ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",hercon:"⊹",Hfr:"ℌ",hfr:"𝔥",HilbertSpace:"ℋ",hksearow:"⤥",hkswarow:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",hookrightarrow:"↪",Hopf:"ℍ",hopf:"𝕙",horbar:"―",HorizontalLine:"─",Hscr:"ℋ",hscr:"𝒽",hslash:"ℏ",Hstrok:"Ħ",hstrok:"ħ",HumpDownHump:"≎",HumpEqual:"≏",hybull:"⁃",hyphen:"‐",Iacute:"Í",iacute:"í",ic:"",Icirc:"Î",icirc:"î",Icy:"И",icy:"и",Idot:"İ",IEcy:"Е",iecy:"е",iexcl:"¡",iff:"⇔",Ifr:"ℑ",ifr:"𝔦",Igrave:"Ì",igrave:"ì",ii:"ⅈ",iiiint:"⨌",iiint:"∭",iinfin:"⧜",iiota:"℩",IJlig:"IJ",ijlig:"ij",Im:"ℑ",Imacr:"Ī",imacr:"ī",image:"ℑ",ImaginaryI:"ⅈ",imagline:"ℐ",imagpart:"ℑ",imath:"ı",imof:"⊷",imped:"Ƶ",Implies:"⇒",in:"∈",incare:"℅",infin:"∞",infintie:"⧝",inodot:"ı",Int:"∬",int:"∫",intcal:"⊺",integers:"ℤ",Integral:"∫",intercal:"⊺",Intersection:"⋂",intlarhk:"⨗",intprod:"⨼",InvisibleComma:"",InvisibleTimes:"",IOcy:"Ё",iocy:"ё",Iogon:"Į",iogon:"į",Iopf:"𝕀",iopf:"𝕚",Iota:"Ι",iota:"ι",iprod:"⨼",iquest:"¿",Iscr:"ℐ",iscr:"𝒾",isin:"∈",isindot:"⋵",isinE:"⋹",isins:"⋴",isinsv:"⋳",isinv:"∈",it:"",Itilde:"Ĩ",itilde:"ĩ",Iukcy:"І",iukcy:"і",Iuml:"Ï",iuml:"ï",Jcirc:"Ĵ",jcirc:"ĵ",Jcy:"Й",jcy:"й",Jfr:"𝔍",jfr:"𝔧",jmath:"ȷ",Jopf:"𝕁",jopf:"𝕛",Jscr:"𝒥",jscr:"𝒿",Jsercy:"Ј",jsercy:"ј",Jukcy:"Є",jukcy:"є",Kappa:"Κ",kappa:"κ",kappav:"ϰ",Kcedil:"Ķ",kcedil:"ķ",Kcy:"К",kcy:"к",Kfr:"𝔎",kfr:"𝔨",kgreen:"ĸ",KHcy:"Х",khcy:"х",KJcy:"Ќ",kjcy:"ќ",Kopf:"𝕂",kopf:"𝕜",Kscr:"𝒦",kscr:"𝓀",lAarr:"⇚",Lacute:"Ĺ",lacute:"ĺ",laemptyv:"⦴",lagran:"ℒ",Lambda:"Λ",lambda:"λ",Lang:"⟪",lang:"⟨",langd:"⦑",langle:"⟨",lap:"⪅",Laplacetrf:"ℒ",laquo:"«",Larr:"↞",lArr:"⇐",larr:"←",larrb:"⇤",larrbfs:"⤟",larrfs:"⤝",larrhk:"↩",larrlp:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",lat:"⪫",lAtail:"⤛",latail:"⤙",late:"⪭",lates:"⪭︀",lBarr:"⤎",lbarr:"⤌",lbbrk:"❲",lbrace:"{",lbrack:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",Lcaron:"Ľ",lcaron:"ľ",Lcedil:"Ļ",lcedil:"ļ",lceil:"⌈",lcub:"{",Lcy:"Л",lcy:"л",ldca:"⤶",ldquo:"“",ldquor:"„",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",lE:"≦",le:"≤",LeftAngleBracket:"⟨",LeftArrow:"←",Leftarrow:"⇐",leftarrow:"←",LeftArrowBar:"⇤",LeftArrowRightArrow:"⇆",leftarrowtail:"↢",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVector:"⇃",LeftDownVectorBar:"⥙",LeftFloor:"⌊",leftharpoondown:"↽",leftharpoonup:"↼",leftleftarrows:"⇇",LeftRightArrow:"↔",Leftrightarrow:"⇔",leftrightarrow:"↔",leftrightarrows:"⇆",leftrightharpoons:"⇋",leftrightsquigarrow:"↭",LeftRightVector:"⥎",LeftTee:"⊣",LeftTeeArrow:"↤",LeftTeeVector:"⥚",leftthreetimes:"⋋",LeftTriangle:"⊲",LeftTriangleBar:"⧏",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVector:"↿",LeftUpVectorBar:"⥘",LeftVector:"↼",LeftVectorBar:"⥒",lEg:"⪋",leg:"⋚",leq:"≤",leqq:"≦",leqslant:"⩽",les:"⩽",lescc:"⪨",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessapprox:"⪅",lessdot:"⋖",lesseqgtr:"⋚",lesseqqgtr:"⪋",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",lessgtr:"≶",LessLess:"⪡",lesssim:"≲",LessSlantEqual:"⩽",LessTilde:"≲",lfisht:"⥼",lfloor:"⌊",Lfr:"𝔏",lfr:"𝔩",lg:"≶",lgE:"⪑",lHar:"⥢",lhard:"↽",lharu:"↼",lharul:"⥪",lhblk:"▄",LJcy:"Љ",ljcy:"љ",Ll:"⋘",ll:"≪",llarr:"⇇",llcorner:"⌞",Lleftarrow:"⇚",llhard:"⥫",lltri:"◺",Lmidot:"Ŀ",lmidot:"ŀ",lmoust:"⎰",lmoustache:"⎰",lnap:"⪉",lnapprox:"⪉",lnE:"≨",lne:"⪇",lneq:"⪇",lneqq:"≨",lnsim:"⋦",loang:"⟬",loarr:"⇽",lobrk:"⟦",LongLeftArrow:"⟵",Longleftarrow:"⟸",longleftarrow:"⟵",LongLeftRightArrow:"⟷",Longleftrightarrow:"⟺",longleftrightarrow:"⟷",longmapsto:"⟼",LongRightArrow:"⟶",Longrightarrow:"⟹",longrightarrow:"⟶",looparrowleft:"↫",looparrowright:"↬",lopar:"⦅",Lopf:"𝕃",lopf:"𝕝",loplus:"⨭",lotimes:"⨴",lowast:"∗",lowbar:"_",LowerLeftArrow:"↙",LowerRightArrow:"↘",loz:"◊",lozenge:"◊",lozf:"⧫",lpar:"(",lparlt:"⦓",lrarr:"⇆",lrcorner:"⌟",lrhar:"⇋",lrhard:"⥭",lrm:"",lrtri:"⊿",lsaquo:"‹",Lscr:"ℒ",lscr:"𝓁",Lsh:"↰",lsh:"↰",lsim:"≲",lsime:"⪍",lsimg:"⪏",lsqb:"[",lsquo:"‘",lsquor:"‚",Lstrok:"Ł",lstrok:"ł",Lt:"≪",LT:"<",lt:"<",ltcc:"⪦",ltcir:"⩹",ltdot:"⋖",lthree:"⋋",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltri:"◃",ltrie:"⊴",ltrif:"◂",ltrPar:"⦖",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",macr:"¯",male:"♂",malt:"✠",maltese:"✠",Map:"⤅",map:"↦",mapsto:"↦",mapstodown:"↧",mapstoleft:"↤",mapstoup:"↥",marker:"▮",mcomma:"⨩",Mcy:"М",mcy:"м",mdash:"—",mDDot:"∺",measuredangle:"∡",MediumSpace:" ",Mellintrf:"ℳ",Mfr:"𝔐",mfr:"𝔪",mho:"℧",micro:"µ",mid:"∣",midast:"*",midcir:"⫰",middot:"·",minus:"−",minusb:"⊟",minusd:"∸",minusdu:"⨪",MinusPlus:"∓",mlcp:"⫛",mldr:"…",mnplus:"∓",models:"⊧",Mopf:"𝕄",mopf:"𝕞",mp:"∓",Mscr:"ℳ",mscr:"𝓂",mstpos:"∾",Mu:"Μ",mu:"μ",multimap:"⊸",mumap:"⊸",nabla:"∇",Nacute:"Ń",nacute:"ń",nang:"∠⃒",nap:"≉",napE:"⩰̸",napid:"≋̸",napos:"ʼn",napprox:"≉",natur:"♮",natural:"♮",naturals:"ℕ",nbsp:" ",nbump:"≎̸",nbumpe:"≏̸",ncap:"⩃",Ncaron:"Ň",ncaron:"ň",Ncedil:"Ņ",ncedil:"ņ",ncong:"≇",ncongdot:"⩭̸",ncup:"⩂",Ncy:"Н",ncy:"н",ndash:"–",ne:"≠",nearhk:"⤤",neArr:"⇗",nearr:"↗",nearrow:"↗",nedot:"≐̸",NegativeMediumSpace:"",NegativeThickSpace:"",NegativeThinSpace:"",NegativeVeryThinSpace:"",nequiv:"≢",nesear:"⤨",nesim:"≂̸",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:`
|
|
10
|
+
`,nexist:"∄",nexists:"∄",Nfr:"𝔑",nfr:"𝔫",ngE:"≧̸",nge:"≱",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",nGg:"⋙̸",ngsim:"≵",nGt:"≫⃒",ngt:"≯",ngtr:"≯",nGtv:"≫̸",nhArr:"⇎",nharr:"↮",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",NJcy:"Њ",njcy:"њ",nlArr:"⇍",nlarr:"↚",nldr:"‥",nlE:"≦̸",nle:"≰",nLeftarrow:"⇍",nleftarrow:"↚",nLeftrightarrow:"⇎",nleftrightarrow:"↮",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nLl:"⋘̸",nlsim:"≴",nLt:"≪⃒",nlt:"≮",nltri:"⋪",nltrie:"⋬",nLtv:"≪̸",nmid:"∤",NoBreak:"",NonBreakingSpace:" ",Nopf:"ℕ",nopf:"𝕟",Not:"⫬",not:"¬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",notin:"∉",notindot:"⋵̸",notinE:"⋹̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",NotLeftTriangle:"⋪",NotLeftTriangleBar:"⧏̸",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangle:"⋫",NotRightTriangleBar:"⧐̸",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",npar:"∦",nparallel:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",npre:"⪯̸",nprec:"⊀",npreceq:"⪯̸",nrArr:"⇏",nrarr:"↛",nrarrc:"⤳̸",nrarrw:"↝̸",nRightarrow:"⇏",nrightarrow:"↛",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",Nscr:"𝒩",nscr:"𝓃",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsubE:"⫅̸",nsube:"⊈",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupE:"⫆̸",nsupe:"⊉",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",Ntilde:"Ñ",ntilde:"ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",Nu:"Ν",nu:"ν",num:"#",numero:"№",numsp:" ",nvap:"≍⃒",nVDash:"⊯",nVdash:"⊮",nvDash:"⊭",nvdash:"⊬",nvge:"≥⃒",nvgt:">⃒",nvHarr:"⤄",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwarhk:"⤣",nwArr:"⇖",nwarr:"↖",nwarrow:"↖",nwnear:"⤧",Oacute:"Ó",oacute:"ó",oast:"⊛",ocir:"⊚",Ocirc:"Ô",ocirc:"ô",Ocy:"О",ocy:"о",odash:"⊝",Odblac:"Ő",odblac:"ő",odiv:"⨸",odot:"⊙",odsold:"⦼",OElig:"Œ",oelig:"œ",ofcir:"⦿",Ofr:"𝔒",ofr:"𝔬",ogon:"˛",Ograve:"Ò",ograve:"ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",Omacr:"Ō",omacr:"ō",Omega:"Ω",omega:"ω",Omicron:"Ο",omicron:"ο",omid:"⦶",ominus:"⊖",Oopf:"𝕆",oopf:"𝕠",opar:"⦷",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"‘",operp:"⦹",oplus:"⊕",Or:"⩔",or:"∨",orarr:"↻",ord:"⩝",order:"ℴ",orderof:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oS:"Ⓢ",Oscr:"𝒪",oscr:"ℴ",Oslash:"Ø",oslash:"ø",osol:"⊘",Otilde:"Õ",otilde:"õ",Otimes:"⨷",otimes:"⊗",otimesas:"⨶",Ouml:"Ö",ouml:"ö",ovbar:"⌽",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",par:"∥",para:"¶",parallel:"∥",parsim:"⫳",parsl:"⫽",part:"∂",PartialD:"∂",Pcy:"П",pcy:"п",percnt:"%",period:".",permil:"‰",perp:"⊥",pertenk:"‱",Pfr:"𝔓",pfr:"𝔭",Phi:"Φ",phi:"φ",phiv:"ϕ",phmmat:"ℳ",phone:"☎",Pi:"Π",pi:"π",pitchfork:"⋔",piv:"ϖ",planck:"ℏ",planckh:"ℎ",plankv:"ℏ",plus:"+",plusacir:"⨣",plusb:"⊞",pluscir:"⨢",plusdo:"∔",plusdu:"⨥",pluse:"⩲",PlusMinus:"±",plusmn:"±",plussim:"⨦",plustwo:"⨧",pm:"±",Poincareplane:"ℌ",pointint:"⨕",Popf:"ℙ",popf:"𝕡",pound:"£",Pr:"⪻",pr:"≺",prap:"⪷",prcue:"≼",prE:"⪳",pre:"⪯",prec:"≺",precapprox:"⪷",preccurlyeq:"≼",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",preceq:"⪯",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",precsim:"≾",Prime:"″",prime:"′",primes:"ℙ",prnap:"⪹",prnE:"⪵",prnsim:"⋨",prod:"∏",Product:"∏",profalar:"⌮",profline:"⌒",profsurf:"⌓",prop:"∝",Proportion:"∷",Proportional:"∝",propto:"∝",prsim:"≾",prurel:"⊰",Pscr:"𝒫",pscr:"𝓅",Psi:"Ψ",psi:"ψ",puncsp:" ",Qfr:"𝔔",qfr:"𝔮",qint:"⨌",Qopf:"ℚ",qopf:"𝕢",qprime:"⁗",Qscr:"𝒬",qscr:"𝓆",quaternions:"ℍ",quatint:"⨖",quest:"?",questeq:"≟",QUOT:'"',quot:'"',rAarr:"⇛",race:"∽̱",Racute:"Ŕ",racute:"ŕ",radic:"√",raemptyv:"⦳",Rang:"⟫",rang:"⟩",rangd:"⦒",range:"⦥",rangle:"⟩",raquo:"»",Rarr:"↠",rArr:"⇒",rarr:"→",rarrap:"⥵",rarrb:"⇥",rarrbfs:"⤠",rarrc:"⤳",rarrfs:"⤞",rarrhk:"↪",rarrlp:"↬",rarrpl:"⥅",rarrsim:"⥴",Rarrtl:"⤖",rarrtl:"↣",rarrw:"↝",rAtail:"⤜",ratail:"⤚",ratio:"∶",rationals:"ℚ",RBarr:"⤐",rBarr:"⤏",rbarr:"⤍",rbbrk:"❳",rbrace:"}",rbrack:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",Rcaron:"Ř",rcaron:"ř",Rcedil:"Ŗ",rcedil:"ŗ",rceil:"⌉",rcub:"}",Rcy:"Р",rcy:"р",rdca:"⤷",rdldhar:"⥩",rdquo:"”",rdquor:"”",rdsh:"↳",Re:"ℜ",real:"ℜ",realine:"ℛ",realpart:"ℜ",reals:"ℝ",rect:"▭",REG:"®",reg:"®",ReverseElement:"∋",ReverseEquilibrium:"⇋",ReverseUpEquilibrium:"⥯",rfisht:"⥽",rfloor:"⌋",Rfr:"ℜ",rfr:"𝔯",rHar:"⥤",rhard:"⇁",rharu:"⇀",rharul:"⥬",Rho:"Ρ",rho:"ρ",rhov:"ϱ",RightAngleBracket:"⟩",RightArrow:"→",Rightarrow:"⇒",rightarrow:"→",RightArrowBar:"⇥",RightArrowLeftArrow:"⇄",rightarrowtail:"↣",RightCeiling:"⌉",RightDoubleBracket:"⟧",RightDownTeeVector:"⥝",RightDownVector:"⇂",RightDownVectorBar:"⥕",RightFloor:"⌋",rightharpoondown:"⇁",rightharpoonup:"⇀",rightleftarrows:"⇄",rightleftharpoons:"⇌",rightrightarrows:"⇉",rightsquigarrow:"↝",RightTee:"⊢",RightTeeArrow:"↦",RightTeeVector:"⥛",rightthreetimes:"⋌",RightTriangle:"⊳",RightTriangleBar:"⧐",RightTriangleEqual:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVector:"↾",RightUpVectorBar:"⥔",RightVector:"⇀",RightVectorBar:"⥓",ring:"˚",risingdotseq:"≓",rlarr:"⇄",rlhar:"⇌",rlm:"",rmoust:"⎱",rmoustache:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",robrk:"⟧",ropar:"⦆",Ropf:"ℝ",ropf:"𝕣",roplus:"⨮",rotimes:"⨵",RoundImplies:"⥰",rpar:")",rpargt:"⦔",rppolint:"⨒",rrarr:"⇉",Rrightarrow:"⇛",rsaquo:"›",Rscr:"ℛ",rscr:"𝓇",Rsh:"↱",rsh:"↱",rsqb:"]",rsquo:"’",rsquor:"’",rthree:"⋌",rtimes:"⋊",rtri:"▹",rtrie:"⊵",rtrif:"▸",rtriltri:"⧎",RuleDelayed:"⧴",ruluhar:"⥨",rx:"℞",Sacute:"Ś",sacute:"ś",sbquo:"‚",Sc:"⪼",sc:"≻",scap:"⪸",Scaron:"Š",scaron:"š",sccue:"≽",scE:"⪴",sce:"⪰",Scedil:"Ş",scedil:"ş",Scirc:"Ŝ",scirc:"ŝ",scnap:"⪺",scnE:"⪶",scnsim:"⋩",scpolint:"⨓",scsim:"≿",Scy:"С",scy:"с",sdot:"⋅",sdotb:"⊡",sdote:"⩦",searhk:"⤥",seArr:"⇘",searr:"↘",searrow:"↘",sect:"§",semi:";",seswar:"⤩",setminus:"∖",setmn:"∖",sext:"✶",Sfr:"𝔖",sfr:"𝔰",sfrown:"⌢",sharp:"♯",SHCHcy:"Щ",shchcy:"щ",SHcy:"Ш",shcy:"ш",ShortDownArrow:"↓",ShortLeftArrow:"←",shortmid:"∣",shortparallel:"∥",ShortRightArrow:"→",ShortUpArrow:"↑",shy:"",Sigma:"Σ",sigma:"σ",sigmaf:"ς",sigmav:"ς",sim:"∼",simdot:"⩪",sime:"≃",simeq:"≃",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",slarr:"←",SmallCircle:"∘",smallsetminus:"∖",smashp:"⨳",smeparsl:"⧤",smid:"∣",smile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",SOFTcy:"Ь",softcy:"ь",sol:"/",solb:"⧄",solbar:"⌿",Sopf:"𝕊",sopf:"𝕤",spades:"♠",spadesuit:"♠",spar:"∥",sqcap:"⊓",sqcaps:"⊓︀",sqcup:"⊔",sqcups:"⊔︀",Sqrt:"√",sqsub:"⊏",sqsube:"⊑",sqsubset:"⊏",sqsubseteq:"⊑",sqsup:"⊐",sqsupe:"⊒",sqsupset:"⊐",sqsupseteq:"⊒",squ:"□",Square:"□",square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",squarf:"▪",squf:"▪",srarr:"→",Sscr:"𝒮",sscr:"𝓈",ssetmn:"∖",ssmile:"⌣",sstarf:"⋆",Star:"⋆",star:"☆",starf:"★",straightepsilon:"ϵ",straightphi:"ϕ",strns:"¯",Sub:"⋐",sub:"⊂",subdot:"⪽",subE:"⫅",sube:"⊆",subedot:"⫃",submult:"⫁",subnE:"⫋",subne:"⊊",subplus:"⪿",subrarr:"⥹",Subset:"⋐",subset:"⊂",subseteq:"⊆",subseteqq:"⫅",SubsetEqual:"⊆",subsetneq:"⊊",subsetneqq:"⫋",subsim:"⫇",subsub:"⫕",subsup:"⫓",succ:"≻",succapprox:"⪸",succcurlyeq:"≽",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",succeq:"⪰",succnapprox:"⪺",succneqq:"⪶",succnsim:"⋩",succsim:"≿",SuchThat:"∋",Sum:"∑",sum:"∑",sung:"♪",Sup:"⋑",sup:"⊃",sup1:"¹",sup2:"²",sup3:"³",supdot:"⪾",supdsub:"⫘",supE:"⫆",supe:"⊇",supedot:"⫄",Superset:"⊃",SupersetEqual:"⊇",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supnE:"⫌",supne:"⊋",supplus:"⫀",Supset:"⋑",supset:"⊃",supseteq:"⊇",supseteqq:"⫆",supsetneq:"⊋",supsetneqq:"⫌",supsim:"⫈",supsub:"⫔",supsup:"⫖",swarhk:"⤦",swArr:"⇙",swarr:"↙",swarrow:"↙",swnwar:"⤪",szlig:"ß",Tab:" ",target:"⌖",Tau:"Τ",tau:"τ",tbrk:"⎴",Tcaron:"Ť",tcaron:"ť",Tcedil:"Ţ",tcedil:"ţ",Tcy:"Т",tcy:"т",tdot:"⃛",telrec:"⌕",Tfr:"𝔗",tfr:"𝔱",there4:"∴",Therefore:"∴",therefore:"∴",Theta:"Θ",theta:"θ",thetasym:"ϑ",thetav:"ϑ",thickapprox:"≈",thicksim:"∼",ThickSpace:" ",thinsp:" ",ThinSpace:" ",thkap:"≈",thksim:"∼",THORN:"Þ",thorn:"þ",Tilde:"∼",tilde:"˜",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",times:"×",timesb:"⊠",timesbar:"⨱",timesd:"⨰",tint:"∭",toea:"⤨",top:"⊤",topbot:"⌶",topcir:"⫱",Topf:"𝕋",topf:"𝕥",topfork:"⫚",tosa:"⤩",tprime:"‴",TRADE:"™",trade:"™",triangle:"▵",triangledown:"▿",triangleleft:"◃",trianglelefteq:"⊴",triangleq:"≜",triangleright:"▹",trianglerighteq:"⊵",tridot:"◬",trie:"≜",triminus:"⨺",TripleDot:"⃛",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",Tscr:"𝒯",tscr:"𝓉",TScy:"Ц",tscy:"ц",TSHcy:"Ћ",tshcy:"ћ",Tstrok:"Ŧ",tstrok:"ŧ",twixt:"≬",twoheadleftarrow:"↞",twoheadrightarrow:"↠",Uacute:"Ú",uacute:"ú",Uarr:"↟",uArr:"⇑",uarr:"↑",Uarrocir:"⥉",Ubrcy:"Ў",ubrcy:"ў",Ubreve:"Ŭ",ubreve:"ŭ",Ucirc:"Û",ucirc:"û",Ucy:"У",ucy:"у",udarr:"⇅",Udblac:"Ű",udblac:"ű",udhar:"⥮",ufisht:"⥾",Ufr:"𝔘",ufr:"𝔲",Ugrave:"Ù",ugrave:"ù",uHar:"⥣",uharl:"↿",uharr:"↾",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",Umacr:"Ū",umacr:"ū",uml:"¨",UnderBar:"_",UnderBrace:"⏟",UnderBracket:"⎵",UnderParenthesis:"⏝",Union:"⋃",UnionPlus:"⊎",Uogon:"Ų",uogon:"ų",Uopf:"𝕌",uopf:"𝕦",UpArrow:"↑",Uparrow:"⇑",uparrow:"↑",UpArrowBar:"⤒",UpArrowDownArrow:"⇅",UpDownArrow:"↕",Updownarrow:"⇕",updownarrow:"↕",UpEquilibrium:"⥮",upharpoonleft:"↿",upharpoonright:"↾",uplus:"⊎",UpperLeftArrow:"↖",UpperRightArrow:"↗",Upsi:"ϒ",upsi:"υ",upsih:"ϒ",Upsilon:"Υ",upsilon:"υ",UpTee:"⊥",UpTeeArrow:"↥",upuparrows:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",Uring:"Ů",uring:"ů",urtri:"◹",Uscr:"𝒰",uscr:"𝓊",utdot:"⋰",Utilde:"Ũ",utilde:"ũ",utri:"▵",utrif:"▴",uuarr:"⇈",Uuml:"Ü",uuml:"ü",uwangle:"⦧",vangrt:"⦜",varepsilon:"ϵ",varkappa:"ϰ",varnothing:"∅",varphi:"ϕ",varpi:"ϖ",varpropto:"∝",vArr:"⇕",varr:"↕",varrho:"ϱ",varsigma:"ς",varsubsetneq:"⊊︀",varsubsetneqq:"⫋︀",varsupsetneq:"⊋︀",varsupsetneqq:"⫌︀",vartheta:"ϑ",vartriangleleft:"⊲",vartriangleright:"⊳",Vbar:"⫫",vBar:"⫨",vBarv:"⫩",Vcy:"В",vcy:"в",VDash:"⊫",Vdash:"⊩",vDash:"⊨",vdash:"⊢",Vdashl:"⫦",Vee:"⋁",vee:"∨",veebar:"⊻",veeeq:"≚",vellip:"⋮",Verbar:"‖",verbar:"|",Vert:"‖",vert:"|",VerticalBar:"∣",VerticalLine:"|",VerticalSeparator:"❘",VerticalTilde:"≀",VeryThinSpace:" ",Vfr:"𝔙",vfr:"𝔳",vltri:"⊲",vnsub:"⊂⃒",vnsup:"⊃⃒",Vopf:"𝕍",vopf:"𝕧",vprop:"∝",vrtri:"⊳",Vscr:"𝒱",vscr:"𝓋",vsubnE:"⫋︀",vsubne:"⊊︀",vsupnE:"⫌︀",vsupne:"⊋︀",Vvdash:"⊪",vzigzag:"⦚",Wcirc:"Ŵ",wcirc:"ŵ",wedbar:"⩟",Wedge:"⋀",wedge:"∧",wedgeq:"≙",weierp:"℘",Wfr:"𝔚",wfr:"𝔴",Wopf:"𝕎",wopf:"𝕨",wp:"℘",wr:"≀",wreath:"≀",Wscr:"𝒲",wscr:"𝓌",xcap:"⋂",xcirc:"◯",xcup:"⋃",xdtri:"▽",Xfr:"𝔛",xfr:"𝔵",xhArr:"⟺",xharr:"⟷",Xi:"Ξ",xi:"ξ",xlArr:"⟸",xlarr:"⟵",xmap:"⟼",xnis:"⋻",xodot:"⨀",Xopf:"𝕏",xopf:"𝕩",xoplus:"⨁",xotime:"⨂",xrArr:"⟹",xrarr:"⟶",Xscr:"𝒳",xscr:"𝓍",xsqcup:"⨆",xuplus:"⨄",xutri:"△",xvee:"⋁",xwedge:"⋀",Yacute:"Ý",yacute:"ý",YAcy:"Я",yacy:"я",Ycirc:"Ŷ",ycirc:"ŷ",Ycy:"Ы",ycy:"ы",yen:"¥",Yfr:"𝔜",yfr:"𝔶",YIcy:"Ї",yicy:"ї",Yopf:"𝕐",yopf:"𝕪",Yscr:"𝒴",yscr:"𝓎",YUcy:"Ю",yucy:"ю",Yuml:"Ÿ",yuml:"ÿ",Zacute:"Ź",zacute:"ź",Zcaron:"Ž",zcaron:"ž",Zcy:"З",zcy:"з",Zdot:"Ż",zdot:"ż",zeetrf:"ℨ",ZeroWidthSpace:"",Zeta:"Ζ",zeta:"ζ",Zfr:"ℨ",zfr:"𝔷",ZHcy:"Ж",zhcy:"ж",zigrarr:"⇝",Zopf:"ℤ",zopf:"𝕫",Zscr:"𝒵",zscr:"𝓏",zwj:"",zwnj:""}),E.entityMap=E.HTML_ENTITIES}(Jt)),Jt}var bt={},HE;function wn(){if(HE)return bt;HE=1;var E=Ht().NAMESPACE,t=/[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,r=new RegExp("[\\-\\.0-9"+t.source.slice(1,-1)+"\\u00B7\\u0300-\\u036F\\u203F-\\u2040]"),n=new RegExp("^"+t.source+r.source+"*(?::"+t.source+r.source+"*)?$"),s=0,a=1,A=2,C=3,I=4,i=5,O=6,u=7;function d(g,x){this.message=g,this.locator=x,Error.captureStackTrace&&Error.captureStackTrace(this,d)}d.prototype=new Error,d.prototype.name=d.name;function U(){}U.prototype={parse:function(g,x,ne){var ee=this.domBuilder;ee.startDocument(),De(x,x={}),M(g,x,ne,ee,this.errorHandler),ee.endDocument()}};function M(g,x,ne,ee,Q){function Oe(F){if(F>65535){F-=65536;var W=55296+(F>>10),ve=56320+(F&1023);return String.fromCharCode(W,ve)}else return String.fromCharCode(F)}function ce(F){var W=F.slice(1,-1);return Object.hasOwnProperty.call(ne,W)?ne[W]:W.charAt(0)==="#"?Oe(parseInt(W.substr(1).replace("x","0x"))):(Q.error("entity not found:"+F),F)}function pe(F){if(F>p){var W=g.substring(p,F).replace(/&#?\w+;/g,ce);Te&&Y(p),ee.characters(W,0,F-p),p=F}}function Y(F,W){for(;F>=le&&(W=Ue.exec(g));)j=W.index,le=j+W[0].length,Te.lineNumber++;Te.columnNumber=F-j+1}for(var j=0,le=0,Ue=/.*(?:\r\n?|\n)|.*$/g,Te=ee.locator,he=[{currentNSMap:x}],q={},p=0;;){try{var h=g.indexOf("<",p);if(h<0){if(!g.substr(p).match(/^\s*$/)){var m=ee.doc,B=m.createTextNode(g.substr(p));m.appendChild(B),ee.currentElement=B}return}switch(h>p&&pe(h),g.charAt(h+1)){case"/":var fe=g.indexOf(">",h+3),b=g.substring(h+2,fe).replace(/[ \t\n\r]+$/g,""),H=he.pop();fe<0?(b=g.substring(h+2).replace(/[\s<].*/,""),Q.error("end tag name: "+b+" is not complete:"+H.tagName),fe=h+1+b.length):b.match(/\s</)&&(b=b.replace(/[\s<].*/,""),Q.error("end tag name: "+b+" maybe not complete"),fe=h+1+b.length);var te=H.localNSMap,Ee=H.tagName==b,Re=Ee||H.tagName&&H.tagName.toLowerCase()==b.toLowerCase();if(Re){if(ee.endElement(H.uri,H.localName,b),te)for(var Le in te)Object.prototype.hasOwnProperty.call(te,Le)&&ee.endPrefixMapping(Le);Ee||Q.fatalError("end tag name: "+b+" is not match the current start tagName:"+H.tagName)}else he.push(H);fe++;break;case"?":Te&&Y(h),fe=X(g,h,ee);break;case"!":Te&&Y(h),fe=Ce(g,h,ee,Q);break;default:Te&&Y(h);var ue=new L,v=he[he.length-1].currentNSMap,fe=P(g,h,ue,v,ce,Q),c=ue.length;if(!ue.closed&&z(g,fe,ue.tagName,q)&&(ue.closed=!0,ne.nbsp||Q.warning("unclosed xml attribute")),Te&&c){for(var re=w(Te,{}),ge=0;ge<c;ge++){var de=ue[ge];Y(de.offset),de.locator=w(Te,{})}ee.locator=re,J(ue,ee,v)&&he.push(ue),ee.locator=Te}else J(ue,ee,v)&&he.push(ue);E.isHTML(ue.uri)&&!ue.closed?fe=Z(g,fe,ue.tagName,ce,ee):fe++}}catch(F){if(F instanceof d)throw F;Q.error("element parse error: "+F),fe=-1}fe>p?p=fe:pe(Math.max(h,p)+1)}}function w(g,x){return x.lineNumber=g.lineNumber,x.columnNumber=g.columnNumber,x}function P(g,x,ne,ee,Q,Oe){function ce(Te,he,q){ne.attributeNames.hasOwnProperty(Te)&&Oe.fatalError("Attribute "+Te+" redefined"),ne.addValue(Te,he.replace(/[\t\n\r]/g," ").replace(/&#?\w+;/g,Q),q)}for(var pe,Y,j=++x,le=s;;){var Ue=g.charAt(j);switch(Ue){case"=":if(le===a)pe=g.slice(x,j),le=C;else if(le===A)le=C;else throw new Error("attribute equal must after attrName");break;case"'":case'"':if(le===C||le===a)if(le===a&&(Oe.warning('attribute value must after "="'),pe=g.slice(x,j)),x=j+1,j=g.indexOf(Ue,x),j>0)Y=g.slice(x,j),ce(pe,Y,x-1),le=i;else throw new Error("attribute value no end '"+Ue+"' match");else if(le==I)Y=g.slice(x,j),ce(pe,Y,x),Oe.warning('attribute "'+pe+'" missed start quot('+Ue+")!!"),x=j+1,le=i;else throw new Error('attribute value must after "="');break;case"/":switch(le){case s:ne.setTagName(g.slice(x,j));case i:case O:case u:le=u,ne.closed=!0;case I:case a:break;case A:ne.closed=!0;break;default:throw new Error("attribute invalid close char('/')")}break;case"":return Oe.error("unexpected end of input"),le==s&&ne.setTagName(g.slice(x,j)),j;case">":switch(le){case s:ne.setTagName(g.slice(x,j));case i:case O:case u:break;case I:case a:Y=g.slice(x,j),Y.slice(-1)==="/"&&(ne.closed=!0,Y=Y.slice(0,-1));case A:le===A&&(Y=pe),le==I?(Oe.warning('attribute "'+Y+'" missed quot(")!'),ce(pe,Y,x)):((!E.isHTML(ee[""])||!Y.match(/^(?:disabled|checked|selected)$/i))&&Oe.warning('attribute "'+Y+'" missed value!! "'+Y+'" instead!!'),ce(Y,Y,x));break;case C:throw new Error("attribute value missed!!")}return j;case"":Ue=" ";default:if(Ue<=" ")switch(le){case s:ne.setTagName(g.slice(x,j)),le=O;break;case a:pe=g.slice(x,j),le=A;break;case I:var Y=g.slice(x,j);Oe.warning('attribute "'+Y+'" missed quot(")!!'),ce(pe,Y,x);case i:le=O;break}else switch(le){case A:ne.tagName,(!E.isHTML(ee[""])||!pe.match(/^(?:disabled|checked|selected)$/i))&&Oe.warning('attribute "'+pe+'" missed value!! "'+pe+'" instead2!!'),ce(pe,pe,x),x=j,le=a;break;case i:Oe.warning('attribute space is required"'+pe+'"!!');case O:le=a,x=j;break;case C:le=I,x=j;break;case u:throw new Error("elements closed character '/' and '>' must be connected to")}}j++}}function J(g,x,ne){for(var ee=g.tagName,Q=null,Ue=g.length;Ue--;){var Oe=g[Ue],ce=Oe.qName,pe=Oe.value,Te=ce.indexOf(":");if(Te>0)var Y=Oe.prefix=ce.slice(0,Te),j=ce.slice(Te+1),le=Y==="xmlns"&&j;else j=ce,Y=null,le=ce==="xmlns"&&"";Oe.localName=j,le!==!1&&(Q==null&&(Q={},De(ne,ne={})),ne[le]=Q[le]=pe,Oe.uri=E.XMLNS,x.startPrefixMapping(le,pe))}for(var Ue=g.length;Ue--;){Oe=g[Ue];var Y=Oe.prefix;Y&&(Y==="xml"&&(Oe.uri=E.XML),Y!=="xmlns"&&(Oe.uri=ne[Y||""]))}var Te=ee.indexOf(":");Te>0?(Y=g.prefix=ee.slice(0,Te),j=g.localName=ee.slice(Te+1)):(Y=null,j=g.localName=ee);var he=g.uri=ne[Y||""];if(x.startElement(he,j,ee,g),g.closed){if(x.endElement(he,j,ee),Q)for(Y in Q)Object.prototype.hasOwnProperty.call(Q,Y)&&x.endPrefixMapping(Y)}else return g.currentNSMap=ne,g.localNSMap=Q,!0}function Z(g,x,ne,ee,Q){if(/^(?:script|textarea)$/i.test(ne)){var Oe=g.indexOf("</"+ne+">",x),ce=g.substring(x+1,Oe);if(/[&<]/.test(ce))return/^script$/i.test(ne)?(Q.characters(ce,0,ce.length),Oe):(ce=ce.replace(/&#?\w+;/g,ee),Q.characters(ce,0,ce.length),Oe)}return x+1}function z(g,x,ne,ee){var Q=ee[ne];return Q==null&&(Q=g.lastIndexOf("</"+ne+">"),Q<x&&(Q=g.lastIndexOf("</"+ne)),ee[ne]=Q),Q<x}function De(g,x){for(var ne in g)Object.prototype.hasOwnProperty.call(g,ne)&&(x[ne]=g[ne])}function Ce(g,x,ne,ee){var Q=g.charAt(x+2);switch(Q){case"-":if(g.charAt(x+3)==="-"){var Oe=g.indexOf("-->",x+4);return Oe>x?(ne.comment(g,x+4,Oe-x-4),Oe+3):(ee.error("Unclosed comment"),-1)}else return-1;default:if(g.substr(x+3,6)=="CDATA["){var Oe=g.indexOf("]]>",x+9);return ne.startCDATA(),ne.characters(g,x+9,Oe-x-9),ne.endCDATA(),Oe+3}var ce=k(g,x),pe=ce.length;if(pe>1&&/!doctype/i.test(ce[0][0])){var Y=ce[1][0],j=!1,le=!1;pe>3&&(/^public$/i.test(ce[2][0])?(j=ce[3][0],le=pe>4&&ce[4][0]):/^system$/i.test(ce[2][0])&&(le=ce[3][0]));var Ue=ce[pe-1];return ne.startDTD(Y,j,le),ne.endDTD(),Ue.index+Ue[0].length}}return-1}function X(g,x,ne){var ee=g.indexOf("?>",x);if(ee){var Q=g.substring(x,ee).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/);return Q?(Q[0].length,ne.processingInstruction(Q[1],Q[2]),ee+2):-1}return-1}function L(){this.attributeNames={}}L.prototype={setTagName:function(g){if(!n.test(g))throw new Error("invalid tagName:"+g);this.tagName=g},addValue:function(g,x,ne){if(!n.test(g))throw new Error("invalid attribute:"+g);this.attributeNames[g]=this.length,this[this.length++]={qName:g,value:x,offset:ne}},length:0,getLocalName:function(g){return this[g].localName},getLocator:function(g){return this[g].locator},getQName:function(g){return this[g].qName},getURI:function(g){return this[g].uri},getValue:function(g){return this[g].value}};function k(g,x){var ne,ee=[],Q=/'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g;for(Q.lastIndex=x,Q.exec(g);ne=Q.exec(g);)if(ee.push(ne),ne[1])return ee}return bt.XMLReader=U,bt.ParseError=d,bt}var bE;function Wn(){if(bE)return mt;bE=1;var E=Ht(),t=GE(),r=vn(),n=wn(),s=t.DOMImplementation,a=E.NAMESPACE,A=n.ParseError,C=n.XMLReader;function I(P){return P.replace(/\r[\n\u0085]/g,`
|
|
11
11
|
`).replace(/[\r\u0085\u2028]/g,`
|
|
12
|
-
`)}function i(
|
|
13
|
-
@`+(d.systemId||"")+"#[line:"+d.lineNumber+",col:"+d.columnNumber+"]"}function B(d,k,J){return typeof d=="string"?d.substr(k,J):d.length>=k+J||k?new java.lang.String(d,k,J)+"":d}"endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g,function(d){C.prototype[d]=function(){return null}});function Y(d,k){d.currentElement?d.currentElement.appendChild(k):d.doc.appendChild(k)}return mt.__DOMHandler=C,mt.normalizeLineEndings=I,mt.DOMParser=i,mt}var xE;function Xn(){if(xE)return Ut;xE=1;var E=GE();return Ut.DOMImplementation=E.DOMImplementation,Ut.XMLSerializer=E.XMLSerializer,Ut.DOMParser=Wn().DOMParser,Ut}var YE=Xn();const Kn={key:0,class:"xml-node__comment"},kn={key:1,class:"xml-node__cdata"},$n={key:2,class:"xml-node__element"},qn={key:0,class:"xml-node__line"},Jn=["contenteditable","onKeydown"],Qn=["contenteditable","onDblclick","onKeydown"],Zn=["contenteditable","onDblclick","onKeydown"],jn=["contenteditable","onKeydown"],zn={key:1,class:"xml-node__line"},es=["contenteditable","onKeydown"],ts=["contenteditable","onDblclick","onKeydown"],Es=["contenteditable","onDblclick","onKeydown"],rs=["contenteditable","onKeydown"],ns={key:2,class:"xml-node__line"},ss=["contenteditable","onKeydown"],Ts=["contenteditable","onDblclick","onKeydown"],os=["contenteditable","onDblclick","onKeydown"],as={key:3,class:"xml-node__line"},is=["contenteditable","onKeydown"],As=["contenteditable","onDblclick","onKeydown"],Rs=["contenteditable","onDblclick","onKeydown"],Ss={key:4},Ns={key:0,class:"xml-node__line"},Is=["contenteditable","onKeydown"],Os=["contenteditable","onDblclick","onKeydown"],ls=["contenteditable","onDblclick","onKeydown"],us=["title"],Cs={class:"xml-node__line"},cs=["title"],_s=["contenteditable","onKeydown"],Ls={key:1},Ds=["contenteditable","onKeydown"],ps=["contenteditable","onDblclick","onKeydown"],ds=["contenteditable","onDblclick","onKeydown"],Ps=["title"],fs={key:0,class:"xml-node__children"},hs={key:0,class:"xml-node__text"},Ms=["contenteditable","onKeydown"],Us={key:1,class:"xml-node__line"},ms=Pt(T.defineComponent({__name:"XmlNode",props:{node:{},index:{},level:{default:0},parentPath:{default:""},expanded:{},theme:{},selfClosingTags:{default:()=>new Set}},emits:["toggle-expand","copy","update:tagName","update:attributeName","update:attributeValue","update:textContent","update:cdataContent"],setup(E,{emit:t}){T.useCssVars(_=>({"451d9899":_.theme.colors.collapsedText,"6296679a":_.theme.colors.collapsedBackground,cd71bc7c:_.theme.colors.collapsedBackgroundHover,"30a02a6b":_.theme.colors.indentLine}));const r=E,n=t,s=T.ref(!1),a=T.ref(null),A=T.ref(null),c=T.ref(!1),I=T.ref(!1),i=T.ref(""),O=T.ref(""),C=T.ref(""),p=T.ref(""),g=T.ref(""),B=T.ref(null),Y=T.ref(null),d=T.ref(null),k=T.ref(null),J=T.ref(null),Z=T.computed(()=>Object.keys(r.node).find(se=>!se.startsWith(":")&&!se.startsWith("#"))||""),De=T.computed(()=>Z.value?r.parentPath?`${r.parentPath}.${Z.value}[${r.index}]`:`${Z.value}[${r.index}]`:""),ce=T.computed(()=>r.expanded.has(De.value)),W=T.computed(()=>r.node["#comment"]?"comment":r.node.__cdata?"cdata":Z.value?"element":"unknown"),u=T.computed(()=>{const _=r.node[":@"]||{},se={};return Object.keys(_).forEach(Be=>{Be.startsWith("@_")&&(se[Be.substring(2)]=_[Be])}),se}),ee=T.computed(()=>{if(W.value!=="element"||!Z.value)return[];const _=r.node[Z.value];return Array.isArray(_)?_:[]}),U=T.computed(()=>ee.value.some(_=>_.__cdata)),v=T.computed(()=>{if(!U.value)return"";const _=ee.value.find(se=>se.__cdata);if(_&&Array.isArray(_.__cdata)){const se=_.__cdata;if(se.length>0&&se[0]["#text"])return se[0]["#text"]}return""}),te=T.computed(()=>{if(W.value!=="element"||!Z.value||U.value)return"";const _=r.node[Z.value];if(!Array.isArray(_))return"";const se=_.find(Be=>Be["#text"]);return se?se["#text"]:""}),Ee=T.computed(()=>{if(W.value!=="comment")return"";const _=r.node["#comment"];return Array.isArray(_)&&_.length>0&&_[0]["#text"]||""}),Q=T.computed(()=>ee.value.some(_=>Object.keys(_).some(Be=>!Be.startsWith("#")&&!Be.startsWith(":")))),Ce=T.computed(()=>Q.value?ee.value.filter(_=>Object.keys(_).some(Be=>!Be.startsWith("#")&&!Be.startsWith(":"))).length:0),_e=T.computed(()=>W.value==="element"&&!Q.value&&te.value!==""),pe=T.computed(()=>W.value==="element"&&!Q.value&&te.value===""),b=T.computed(()=>pe.value?r.node[":selfClosing"]===!0:!1),j=()=>{Q.value&&n("toggle-expand",De.value)},Ie=(_,se)=>`${De.value}-child-${se}`,me=()=>`${De.value}.${Z.value}`,oe=()=>{s.value=!0,i.value=Z.value,T.nextTick(()=>{if(B.value){B.value.focus();const _=document.createRange();_.selectNodeContents(B.value);const se=window.getSelection();se?.removeAllRanges(),se?.addRange(_)}})},w=_=>{a.value=_,O.value=_,T.nextTick(()=>{if(Y.value){Y.value.focus();const se=document.createRange();se.selectNodeContents(Y.value);const Be=window.getSelection();Be?.removeAllRanges(),Be?.addRange(se)}})},P=_=>{A.value=_,C.value=u.value[_]||"",T.nextTick(()=>{if(d.value){d.value.focus();const se=document.createRange();se.selectNodeContents(d.value);const Be=window.getSelection();Be?.removeAllRanges(),Be?.addRange(se)}})},m=()=>{c.value=!0,p.value=te.value,T.nextTick(()=>{if(k.value){k.value.focus();const _=document.createRange();_.selectNodeContents(k.value);const se=window.getSelection();se?.removeAllRanges(),se?.addRange(_)}})},h=()=>{if(!s.value)return;const _=B.value?.innerText.trim()||"";if(!_||_===Z.value){s.value=!1;return}s.value=!1,n("update:tagName",De.value,Z.value,_)},y=()=>{if(!a.value)return;const _=a.value,se=Y.value?.innerText.trim()||"";if(!se||se===_){a.value=null;return}a.value=null,n("update:attributeName",De.value,_,se)},$=()=>{if(!A.value)return;const _=A.value,se=d.value?.innerText.trim()||"";A.value=null,n("update:attributeValue",De.value,_,se)},M=()=>{if(!c.value)return;const _=k.value?.innerText||"";if(_===te.value){c.value=!1;return}c.value=!1,n("update:textContent",De.value,_)},z=()=>{s.value=!1,i.value=Z.value},re=()=>{a.value&&(O.value=a.value,a.value=null)},Ae=()=>{A.value&&(C.value=u.value[A.value]||"",A.value=null)},le=()=>{c.value=!1,p.value=te.value},Ue=()=>{I.value=!0,g.value=v.value,T.nextTick(()=>{if(J.value){J.value.focus();const _=document.createRange();_.selectNodeContents(J.value);const se=window.getSelection();se?.removeAllRanges(),se?.addRange(_)}})},Se=()=>{if(!I.value)return;const _=J.value?.innerText||"";if(_===v.value){I.value=!1;return}I.value=!1,n("update:cdataContent",De.value,_)},q=()=>{I.value=!1,g.value=v.value},ge=_=>{Q.value&&(_.preventDefault(),oe())};return(_,se)=>{const Be=T.resolveComponent("XmlNode",!0);return T.openBlock(),T.createElementBlock("div",{class:"xml-node",style:T.normalizeStyle({paddingLeft:_.level>0?"16px":"0"})},[W.value==="comment"?(T.openBlock(),T.createElementBlock("div",Kn,[T.createElementVNode("span",{style:T.normalizeStyle({color:_.theme.colors.xmlComment})}," <!-- "+T.toDisplayString(Ee.value)+" --> ",5)])):W.value==="cdata"?(T.openBlock(),T.createElementBlock("div",kn,[T.createElementVNode("span",{style:T.normalizeStyle({color:_.theme.colors.xmlCdata})}," <![CDATA["+T.toDisplayString(_.node.__cdata)+"]]> ",5)])):W.value==="element"?(T.openBlock(),T.createElementBlock("div",$n,[U.value?(T.openBlock(),T.createElementBlock("div",qn,[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},"<",4),T.createElementVNode("span",{class:"xml-node__tag xml-node__tag--editable",style:T.normalizeStyle({color:_.theme.colors.xmlTag}),contenteditable:s.value,onDblclick:oe,onContextmenu:ge,onKeydown:[T.withKeys(T.withModifiers(h,["prevent"]),["enter"]),T.withKeys(z,["escape"])],onBlur:h,ref_key:"tagNameRef",ref:B,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:Z.value),45,Jn),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(u.value,(de,H)=>(T.openBlock(),T.createElementBlock("span",{key:H,class:"xml-node__attribute"},[T.createElementVNode("span",{class:"xml-node__attr-name xml-node__attr-name--editable",style:T.normalizeStyle({color:_.theme.colors.xmlAttribute}),contenteditable:a.value===H,onDblclick:V=>w(H),onKeydown:[T.withKeys(T.withModifiers(y,["prevent"]),["enter"]),T.withKeys(re,["escape"])],onBlur:y,ref_for:!0,ref:V=>{a.value===H&&(Y.value=V)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===H?O.value:H),45,Qn),T.createElementVNode("span",{class:"xml-node__equals",style:T.normalizeStyle({color:_.theme.colors.xmlEquals})},"=",4),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:_.theme.colors.xmlQuote})},'"',4),T.createElementVNode("span",{class:"xml-node__attr-value xml-node__attr-value--editable",style:T.normalizeStyle({color:_.theme.colors.xmlAttributeValue}),contenteditable:A.value===H,onDblclick:V=>P(H),onKeydown:[T.withKeys(T.withModifiers($,["prevent"]),["enter"]),T.withKeys(Ae,["escape"])],onBlur:$,ref_for:!0,ref:V=>{A.value===H&&(d.value=V)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===H?C.value:de),45,Zn),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:_.theme.colors.xmlQuote})},'"',4)]))),128)),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},">",4),T.createElementVNode("span",{class:"xml-node__cdata",style:T.normalizeStyle({color:_.theme.colors.xmlCdata})},"<![CDATA[",4),T.createElementVNode("span",{class:"xml-node__cdata-content xml-node__cdata-content--editable",style:T.normalizeStyle({color:_.theme.colors.xmlCdata}),contenteditable:I.value,onDblclick:Ue,onKeydown:[T.withKeys(T.withModifiers(Se,["prevent"]),["enter"]),T.withKeys(q,["escape"])],onBlur:Se,ref_key:"cdataContentRef",ref:J,title:"Double-click to edit CDATA content"},T.toDisplayString(I.value?g.value:v.value),45,jn),T.createElementVNode("span",{class:"xml-node__cdata",style:T.normalizeStyle({color:_.theme.colors.xmlCdata})},"]]>",4),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},"</",4),T.createElementVNode("span",{class:"xml-node__tag",style:T.normalizeStyle({color:_.theme.colors.xmlTag})},T.toDisplayString(s.value?i.value:Z.value),5),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},">",4)])):_e.value?(T.openBlock(),T.createElementBlock("div",zn,[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},"<",4),T.createElementVNode("span",{class:"xml-node__tag xml-node__tag--editable",style:T.normalizeStyle({color:_.theme.colors.xmlTag}),contenteditable:s.value,onDblclick:oe,onContextmenu:ge,onKeydown:[T.withKeys(T.withModifiers(h,["prevent"]),["enter"]),T.withKeys(z,["escape"])],onBlur:h,ref_key:"tagNameRef",ref:B,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:Z.value),45,es),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(u.value,(de,H)=>(T.openBlock(),T.createElementBlock("span",{key:H,class:"xml-node__attribute"},[T.createElementVNode("span",{class:"xml-node__attr-name xml-node__attr-name--editable",style:T.normalizeStyle({color:_.theme.colors.xmlAttribute}),contenteditable:a.value===H,onDblclick:V=>w(H),onKeydown:[T.withKeys(T.withModifiers(y,["prevent"]),["enter"]),T.withKeys(re,["escape"])],onBlur:y,ref_for:!0,ref:V=>{a.value===H&&(Y.value=V)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===H?O.value:H),45,ts),T.createElementVNode("span",{class:"xml-node__equals",style:T.normalizeStyle({color:_.theme.colors.xmlEquals})},"=",4),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:_.theme.colors.xmlQuote})},'"',4),T.createElementVNode("span",{class:"xml-node__attr-value xml-node__attr-value--editable",style:T.normalizeStyle({color:_.theme.colors.xmlAttributeValue}),contenteditable:A.value===H,onDblclick:V=>P(H),onKeydown:[T.withKeys(T.withModifiers($,["prevent"]),["enter"]),T.withKeys(Ae,["escape"])],onBlur:$,ref_for:!0,ref:V=>{A.value===H&&(d.value=V)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===H?C.value:de),45,Es),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:_.theme.colors.xmlQuote})},'"',4)]))),128)),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},">",4),T.createElementVNode("span",{class:"xml-node__text-content xml-node__text-content--editable",style:T.normalizeStyle({color:_.theme.colors.xmlText}),contenteditable:c.value,onDblclick:m,onKeydown:[T.withKeys(T.withModifiers(M,["prevent"]),["enter"]),T.withKeys(le,["escape"])],onBlur:M,ref_key:"textContentRef",ref:k,title:"Double-click to edit text content"},T.toDisplayString(c.value?p.value:te.value),45,rs),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},"</",4),T.createElementVNode("span",{class:"xml-node__tag",style:T.normalizeStyle({color:_.theme.colors.xmlTag})},T.toDisplayString(s.value?i.value:Z.value),5),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},">",4)])):pe.value&&b.value?(T.openBlock(),T.createElementBlock("div",ns,[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},"<",4),T.createElementVNode("span",{class:"xml-node__tag xml-node__tag--editable",style:T.normalizeStyle({color:_.theme.colors.xmlTag}),contenteditable:s.value,onDblclick:oe,onContextmenu:ge,onKeydown:[T.withKeys(T.withModifiers(h,["prevent"]),["enter"]),T.withKeys(z,["escape"])],onBlur:h,ref_key:"tagNameRef",ref:B,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:Z.value),45,ss),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(u.value,(de,H)=>(T.openBlock(),T.createElementBlock("span",{key:H,class:"xml-node__attribute"},[T.createElementVNode("span",{class:"xml-node__attr-name xml-node__attr-name--editable",style:T.normalizeStyle({color:_.theme.colors.xmlAttribute}),contenteditable:a.value===H,onDblclick:V=>w(H),onKeydown:[T.withKeys(T.withModifiers(y,["prevent"]),["enter"]),T.withKeys(re,["escape"])],onBlur:y,ref_for:!0,ref:V=>{a.value===H&&(Y.value=V)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===H?O.value:H),45,Ts),T.createElementVNode("span",{class:"xml-node__equals",style:T.normalizeStyle({color:_.theme.colors.xmlEquals})},"=",4),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:_.theme.colors.xmlQuote})},'"',4),T.createElementVNode("span",{class:"xml-node__attr-value xml-node__attr-value--editable",style:T.normalizeStyle({color:_.theme.colors.xmlAttributeValue}),contenteditable:A.value===H,onDblclick:V=>P(H),onKeydown:[T.withKeys(T.withModifiers($,["prevent"]),["enter"]),T.withKeys(Ae,["escape"])],onBlur:$,ref_for:!0,ref:V=>{A.value===H&&(d.value=V)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===H?C.value:de),45,os),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:_.theme.colors.xmlQuote})},'"',4)]))),128)),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})}," />",4)])):pe.value?(T.openBlock(),T.createElementBlock("div",as,[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},"<",4),T.createElementVNode("span",{class:"xml-node__tag xml-node__tag--editable",style:T.normalizeStyle({color:_.theme.colors.xmlTag}),contenteditable:s.value,onDblclick:oe,onContextmenu:ge,onKeydown:[T.withKeys(T.withModifiers(h,["prevent"]),["enter"]),T.withKeys(z,["escape"])],onBlur:h,ref_key:"tagNameRef",ref:B,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:Z.value),45,is),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(u.value,(de,H)=>(T.openBlock(),T.createElementBlock("span",{key:H,class:"xml-node__attribute"},[T.createElementVNode("span",{class:"xml-node__attr-name xml-node__attr-name--editable",style:T.normalizeStyle({color:_.theme.colors.xmlAttribute}),contenteditable:a.value===H,onDblclick:V=>w(H),onKeydown:[T.withKeys(T.withModifiers(y,["prevent"]),["enter"]),T.withKeys(re,["escape"])],onBlur:y,ref_for:!0,ref:V=>{a.value===H&&(Y.value=V)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===H?O.value:H),45,As),T.createElementVNode("span",{class:"xml-node__equals",style:T.normalizeStyle({color:_.theme.colors.xmlEquals})},"=",4),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:_.theme.colors.xmlQuote})},'"',4),T.createElementVNode("span",{class:"xml-node__attr-value xml-node__attr-value--editable",style:T.normalizeStyle({color:_.theme.colors.xmlAttributeValue}),contenteditable:A.value===H,onDblclick:V=>P(H),onKeydown:[T.withKeys(T.withModifiers($,["prevent"]),["enter"]),T.withKeys(Ae,["escape"])],onBlur:$,ref_for:!0,ref:V=>{A.value===H&&(d.value=V)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===H?C.value:de),45,Rs),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:_.theme.colors.xmlQuote})},'"',4)]))),128)),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},"></",4),T.createElementVNode("span",{class:"xml-node__tag",style:T.normalizeStyle({color:_.theme.colors.xmlTag})},T.toDisplayString(s.value?i.value:Z.value),5),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},">",4)])):(T.openBlock(),T.createElementBlock("div",Ss,[!ce.value&&Q.value?(T.openBlock(),T.createElementBlock("div",Ns,[T.createElementVNode("span",{class:"xml-node__clickable-part",onClick:se[0]||(se[0]=de=>j()),title:"Click to expand"},[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},"<",4),T.createElementVNode("span",{class:"xml-node__tag xml-node__tag--editable",style:T.normalizeStyle({color:_.theme.colors.xmlTag}),contenteditable:s.value,onDblclick:T.withModifiers(oe,["stop"]),onContextmenu:ge,onKeydown:[T.withKeys(T.withModifiers(h,["prevent"]),["enter"]),T.withKeys(z,["escape"])],onBlur:h,ref_key:"tagNameRef",ref:B,title:"Double-click or right-click to edit tag name"},T.toDisplayString(s.value?i.value:Z.value),45,Is)]),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(u.value,(de,H)=>(T.openBlock(),T.createElementBlock("span",{key:H,class:"xml-node__attribute"},[T.createElementVNode("span",{class:"xml-node__attr-name xml-node__attr-name--editable",style:T.normalizeStyle({color:_.theme.colors.xmlAttribute}),contenteditable:a.value===H,onDblclick:V=>w(H),onKeydown:[T.withKeys(T.withModifiers(y,["prevent"]),["enter"]),T.withKeys(re,["escape"])],onBlur:y,ref_for:!0,ref:V=>{a.value===H&&(Y.value=V)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===H?O.value:H),45,Os),T.createElementVNode("span",{class:"xml-node__equals",style:T.normalizeStyle({color:_.theme.colors.xmlEquals})},"=",4),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:_.theme.colors.xmlQuote})},'"',4),T.createElementVNode("span",{class:"xml-node__attr-value xml-node__attr-value--editable",style:T.normalizeStyle({color:_.theme.colors.xmlAttributeValue}),contenteditable:A.value===H,onDblclick:V=>P(H),onKeydown:[T.withKeys(T.withModifiers($,["prevent"]),["enter"]),T.withKeys(Ae,["escape"])],onBlur:$,ref_for:!0,ref:V=>{A.value===H&&(d.value=V)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===H?C.value:de),45,ls),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:_.theme.colors.xmlQuote})},'"',4)]))),128)),T.createElementVNode("span",{class:"xml-node__clickable-part",onClick:se[1]||(se[1]=de=>j()),title:"Click to expand"},[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},">",4)]),T.createElementVNode("span",{class:"xml-node__collapsed-badge",onClick:se[2]||(se[2]=de=>j()),title:`Click to expand ${Ce.value} tag${Ce.value>1?"s":""}`},T.toDisplayString(Ce.value)+" tag"+T.toDisplayString(Ce.value>1?"s":""),9,us),T.createElementVNode("span",{class:"xml-node__clickable-part",onClick:se[3]||(se[3]=de=>j()),title:"Click to expand"},[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},"</",4),T.createElementVNode("span",{class:"xml-node__tag",style:T.normalizeStyle({color:_.theme.colors.xmlTag})},T.toDisplayString(s.value?i.value:Z.value),5),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},">",4)])])):(T.openBlock(),T.createElementBlock(T.Fragment,{key:1},[T.createElementVNode("div",Cs,[Q.value?(T.openBlock(),T.createElementBlock("span",{key:0,class:"xml-node__clickable-part",onClick:se[4]||(se[4]=de=>j()),title:ce.value?"Click to collapse":"Click to expand"},[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},"<",4),T.createElementVNode("span",{class:"xml-node__tag xml-node__tag--editable",style:T.normalizeStyle({color:_.theme.colors.xmlTag}),contenteditable:s.value,onDblclick:T.withModifiers(oe,["stop"]),onContextmenu:ge,onKeydown:[T.withKeys(T.withModifiers(h,["prevent"]),["enter"]),T.withKeys(z,["escape"])],onBlur:h,ref_key:"tagNameRef",ref:B,title:"Double-click or right-click to edit tag name"},T.toDisplayString(s.value?i.value:Z.value),45,_s)],8,cs)):(T.openBlock(),T.createElementBlock("span",Ls,[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},"<",4),T.createElementVNode("span",{class:"xml-node__tag xml-node__tag--editable",style:T.normalizeStyle({color:_.theme.colors.xmlTag}),contenteditable:s.value,onDblclick:oe,onKeydown:[T.withKeys(T.withModifiers(h,["prevent"]),["enter"]),T.withKeys(z,["escape"])],onBlur:h,ref_key:"tagNameRef",ref:B,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:Z.value),45,Ds)])),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(u.value,(de,H)=>(T.openBlock(),T.createElementBlock("span",{key:H,class:"xml-node__attribute"},[T.createElementVNode("span",{class:"xml-node__attr-name xml-node__attr-name--editable",style:T.normalizeStyle({color:_.theme.colors.xmlAttribute}),contenteditable:a.value===H,onDblclick:V=>w(H),onKeydown:[T.withKeys(T.withModifiers(y,["prevent"]),["enter"]),T.withKeys(re,["escape"])],onBlur:y,ref_for:!0,ref:V=>{a.value===H&&(Y.value=V)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===H?O.value:H),45,ps),T.createElementVNode("span",{class:"xml-node__equals",style:T.normalizeStyle({color:_.theme.colors.xmlEquals})},"=",4),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:_.theme.colors.xmlQuote})},'"',4),T.createElementVNode("span",{class:"xml-node__attr-value xml-node__attr-value--editable",style:T.normalizeStyle({color:_.theme.colors.xmlAttributeValue}),contenteditable:A.value===H,onDblclick:V=>P(H),onKeydown:[T.withKeys(T.withModifiers($,["prevent"]),["enter"]),T.withKeys(Ae,["escape"])],onBlur:$,ref_for:!0,ref:V=>{A.value===H&&(d.value=V)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===H?C.value:de),45,ds),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:_.theme.colors.xmlQuote})},'"',4)]))),128)),Q.value?(T.openBlock(),T.createElementBlock("span",{key:2,class:"xml-node__clickable-part",onClick:se[5]||(se[5]=de=>j()),title:ce.value?"Click to collapse":"Click to expand"},[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},">",4)],8,Ps)):(T.openBlock(),T.createElementBlock("span",{key:3,class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},T.toDisplayString(Q.value?">":"/>"),5))]),ce.value&&Q.value?(T.openBlock(),T.createElementBlock("div",fs,[ee.value.length===0&&te.value.trim()?(T.openBlock(),T.createElementBlock("div",hs,[T.createElementVNode("span",{class:"xml-node__text-content xml-node__text-content--editable",style:T.normalizeStyle({color:_.theme.colors.xmlText}),contenteditable:c.value,onDblclick:m,onKeydown:[T.withKeys(T.withModifiers(M,["prevent"]),["enter"]),T.withKeys(le,["escape"])],onBlur:M,ref_key:"textContentRef",ref:k,title:"Double-click to edit text content"},T.toDisplayString(c.value?p.value:te.value),45,Ms)])):T.createCommentVNode("",!0),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(ee.value,(de,H)=>(T.openBlock(),T.createBlock(Be,{key:Ie(de,H),node:de,index:H,level:_.level+1,"parent-path":me(),expanded:_.expanded,theme:_.theme,selfClosingTags:_.selfClosingTags,onToggleExpand:se[6]||(se[6]=V=>_.$emit("toggle-expand",V)),onCopy:se[7]||(se[7]=V=>_.$emit("copy",V)),"onUpdate:tagName":se[8]||(se[8]=(V,ve,Qe)=>_.$emit("update:tagName",V,ve,Qe)),"onUpdate:attributeName":se[9]||(se[9]=(V,ve,Qe)=>_.$emit("update:attributeName",V,ve,Qe)),"onUpdate:attributeValue":se[10]||(se[10]=(V,ve,Qe)=>_.$emit("update:attributeValue",V,ve,Qe)),"onUpdate:textContent":se[11]||(se[11]=(V,ve)=>_.$emit("update:textContent",V,ve)),"onUpdate:cdataContent":se[12]||(se[12]=(V,ve)=>_.$emit("update:cdataContent",V,ve))},null,8,["node","index","level","parent-path","expanded","theme","selfClosingTags"]))),128))])):T.createCommentVNode("",!0),ce.value&&Q.value?(T.openBlock(),T.createElementBlock("div",Us,[T.createElementVNode("span",{class:"xml-node__clickable-part",onClick:se[13]||(se[13]=de=>j()),title:"Click to collapse"},[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},"</",4),T.createElementVNode("span",{class:"xml-node__tag",style:T.normalizeStyle({color:_.theme.colors.xmlTag})},T.toDisplayString(s.value?i.value:Z.value),5),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:_.theme.colors.xmlBracket})},">",4)])])):T.createCommentVNode("",!0)],64))]))])):T.createCommentVNode("",!0)],4)}}}),[["__scopeId","data-v-2ea5f623"]]),VE={"github-light":{name:"github-light",colors:{background:"#ffffff",surfaceBackground:"#f6f8fa",border:"#d0d7de",text:"#24292f",textSecondary:"#57606a",buttonBackground:"#f6f8fa",buttonBackgroundHover:"#f3f4f6",buttonBorder:"#d0d7de",buttonText:"#24292f",buttonPrimary:"#1f883d",buttonPrimaryHover:"#1a7f37",success:"#1f883d",successBackground:"#dafbe1",error:"#cf222e",errorBackground:"#ffebe9",xmlTag:"#116329",xmlAttribute:"#0550ae",xmlAttributeValue:"#0a3069",xmlText:"#24292f",xmlComment:"#6e7781",xmlCdata:"#8250df",xmlDeclaration:"#953800",xmlBracket:"#6e7781",xmlEquals:"#6e7781",xmlQuote:"#0550ae",collapsedBackground:"#ddf4ff",collapsedBackgroundHover:"#b6e3ff",collapsedText:"#0969da",indentLine:"#d0d7de"}},"github-dark":{name:"github-dark",colors:{background:"#0d1117",surfaceBackground:"#161b22",border:"#30363d",text:"#c9d1d9",textSecondary:"#8b949e",buttonBackground:"#21262d",buttonBackgroundHover:"#30363d",buttonBorder:"#30363d",buttonText:"#c9d1d9",buttonPrimary:"#238636",buttonPrimaryHover:"#2ea043",success:"#3fb950",successBackground:"#0f2e1c",error:"#f85149",errorBackground:"#3d1319",xmlTag:"#7ee787",xmlAttribute:"#79c0ff",xmlAttributeValue:"#a5d6ff",xmlText:"#c9d1d9",xmlComment:"#8b949e",xmlCdata:"#d2a8ff",xmlDeclaration:"#ffa657",xmlBracket:"#8b949e",xmlEquals:"#8b949e",xmlQuote:"#79c0ff",collapsedBackground:"#1c2128",collapsedBackgroundHover:"#2d333b",collapsedText:"#79c0ff",indentLine:"#30363d"}},"min-light":{name:"min-light",colors:{background:"#ffffff",surfaceBackground:"#fafafa",border:"#e5e5e5",text:"#171717",textSecondary:"#737373",buttonBackground:"#fafafa",buttonBackgroundHover:"#f5f5f5",buttonBorder:"#e5e5e5",buttonText:"#171717",buttonPrimary:"#22c55e",buttonPrimaryHover:"#16a34a",success:"#22c55e",successBackground:"#dcfce7",error:"#ef4444",errorBackground:"#fee2e2",xmlTag:"#16a34a",xmlAttribute:"#2563eb",xmlAttributeValue:"#1e40af",xmlText:"#171717",xmlComment:"#737373",xmlCdata:"#9333ea",xmlDeclaration:"#ea580c",xmlBracket:"#737373",xmlEquals:"#737373",xmlQuote:"#2563eb",collapsedBackground:"#e0f2fe",collapsedBackgroundHover:"#bae6fd",collapsedText:"#0284c7",indentLine:"#e5e7eb"}},"slack-ochin":{name:"slack-ochin",colors:{background:"#fef5ed",surfaceBackground:"#fef9f3",border:"#e9dcc9",text:"#3d3c40",textSecondary:"#616061",buttonBackground:"#fef9f3",buttonBackgroundHover:"#f9f0e5",buttonBorder:"#e9dcc9",buttonText:"#3d3c40",buttonPrimary:"#007a5a",buttonPrimaryHover:"#006644",success:"#007a5a",successBackground:"#d1f4e0",error:"#e01e5a",errorBackground:"#ffdbea",xmlTag:"#007a5a",xmlAttribute:"#1264a3",xmlAttributeValue:"#0b4c8c",xmlText:"#3d3c40",xmlComment:"#616061",xmlCdata:"#8b2eff",xmlDeclaration:"#e8912d",xmlBracket:"#616061",xmlEquals:"#616061",xmlQuote:"#1264a3",collapsedBackground:"#ffe8d6",collapsedBackgroundHover:"#ffd4b0",collapsedText:"#d73502",indentLine:"#e8d5b7"}}},Bs=E=>VE[E]||VE["github-light"],vE=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",gs=vE+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040",ys="["+vE+"]["+gs+"]*",Gs=new RegExp("^"+ys+"$");function wE(E,t){const r=[];let n=t.exec(E);for(;n;){const s=[];s.startIndex=t.lastIndex-n[0].length;const a=n.length;for(let A=0;A<a;A++)s.push(n[A]);r.push(s),n=t.exec(E)}return r}const xt=function(E){const t=Gs.exec(E);return!(t===null||typeof t>"u")};function Fs(E){return typeof E<"u"}const Hs={allowBooleanAttributes:!1,unpairedTags:[]};function WE(E,t){t=Object.assign({},Hs,t);const r=[];let n=!1,s=!1;E[0]==="\uFEFF"&&(E=E.substr(1));for(let a=0;a<E.length;a++)if(E[a]==="<"&&E[a+1]==="?"){if(a+=2,a=KE(E,a),a.err)return a}else if(E[a]==="<"){let A=a;if(a++,E[a]==="!"){a=kE(E,a);continue}else{let c=!1;E[a]==="/"&&(c=!0,a++);let I="";for(;a<E.length&&E[a]!==">"&&E[a]!==" "&&E[a]!==" "&&E[a]!==`
|
|
14
|
-
`&&E[a]!=="\r";a++)I+=E[a];if(I=I.trim(),I[I.length-1]==="/"&&(I=I.substring(0,I.length-1),a--),!Xs(I)){let
|
|
15
|
-
`||E==="\r"}function KE(E,t){const r=t;for(;t<E.length;t++)if(E[t]=="?"||E[t]==" "){const n=E.substr(r,t-r);if(t>5&&n==="xml")return be("InvalidXml","XML declaration allowed only at the start of the document.",ke(E,t));if(E[t]=="?"&&E[t+1]==">"){t++;break}else continue}return t}function kE(E,t){if(E.length>t+5&&E[t+1]==="-"&&E[t+2]==="-"){for(t+=3;t<E.length;t++)if(E[t]==="-"&&E[t+1]==="-"&&E[t+2]===">"){t+=2;break}}else if(E.length>t+8&&E[t+1]==="D"&&E[t+2]==="O"&&E[t+3]==="C"&&E[t+4]==="T"&&E[t+5]==="Y"&&E[t+6]==="P"&&E[t+7]==="E"){let r=1;for(t+=8;t<E.length;t++)if(E[t]==="<")r++;else if(E[t]===">"&&(r--,r===0))break}else if(E.length>t+9&&E[t+1]==="["&&E[t+2]==="C"&&E[t+3]==="D"&&E[t+4]==="A"&&E[t+5]==="T"&&E[t+6]==="A"&&E[t+7]==="["){for(t+=8;t<E.length;t++)if(E[t]==="]"&&E[t+1]==="]"&&E[t+2]===">"){t+=2;break}}return t}const bs='"',xs="'";function Ys(E,t){let r="",n="",s=!1;for(;t<E.length;t++){if(E[t]===bs||E[t]===xs)n===""?n=E[t]:n!==E[t]||(n="");else if(E[t]===">"&&n===""){s=!0;break}r+=E[t]}return n!==""?!1:{value:r,index:t,tagClosed:s}}const Vs=new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`,"g");function $E(E,t){const r=wE(E,Vs),n={};for(let s=0;s<r.length;s++){if(r[s][1].length===0)return be("InvalidAttr","Attribute '"+r[s][2]+"' has no space in starting.",Bt(r[s]));if(r[s][3]!==void 0&&r[s][4]===void 0)return be("InvalidAttr","Attribute '"+r[s][2]+"' is without value.",Bt(r[s]));if(r[s][3]===void 0&&!t.allowBooleanAttributes)return be("InvalidAttr","boolean attribute '"+r[s][2]+"' is not allowed.",Bt(r[s]));const a=r[s][2];if(!Ws(a))return be("InvalidAttr","Attribute '"+a+"' is an invalid name.",Bt(r[s]));if(!n.hasOwnProperty(a))n[a]=1;else return be("InvalidAttr","Attribute '"+a+"' is repeated.",Bt(r[s]))}return!0}function vs(E,t){let r=/\d/;for(E[t]==="x"&&(t++,r=/[\da-fA-F]/);t<E.length;t++){if(E[t]===";")return t;if(!E[t].match(r))break}return-1}function ws(E,t){if(t++,E[t]===";")return-1;if(E[t]==="#")return t++,vs(E,t);let r=0;for(;t<E.length;t++,r++)if(!(E[t].match(/\w/)&&r<20)){if(E[t]===";")break;return-1}return t}function be(E,t,r){return{err:{code:E,msg:t,line:r.line||r,col:r.col}}}function Ws(E){return xt(E)}function Xs(E){return xt(E)}function ke(E,t){const r=E.substring(0,t).split(/\r?\n/);return{line:r.length,col:r[r.length-1].length+1}}function Bt(E){return E.startIndex+E[1].length}const Ks={preserveOrder:!1,attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,removeNSPrefix:!1,allowBooleanAttributes:!1,parseTagValue:!0,parseAttributeValue:!1,trimValues:!0,cdataPropName:!1,numberParseOptions:{hex:!0,leadingZeros:!0,eNotation:!0},tagValueProcessor:function(E,t){return t},attributeValueProcessor:function(E,t){return t},stopNodes:[],alwaysCreateTextNode:!1,isArray:()=>!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(E,t,r){return E},captureMetaData:!1},ks=function(E){return Object.assign({},Ks,E)};let Yt;typeof Symbol!="function"?Yt="@@xmlMetadata":Yt=Symbol("XML Node Metadata");class ct{constructor(t){this.tagname=t,this.child=[],this[":@"]={}}add(t,r){t==="__proto__"&&(t="#__proto__"),this.child.push({[t]:r})}addChild(t,r){t.tagname==="__proto__"&&(t.tagname="#__proto__"),t[":@"]&&Object.keys(t[":@"]).length>0?this.child.push({[t.tagname]:t.child,":@":t[":@"]}):this.child.push({[t.tagname]:t.child}),r!==void 0&&(this.child[this.child.length-1][Yt]={startIndex:r})}static getMetaDataSymbol(){return Yt}}class $s{constructor(t){this.suppressValidationErr=!t}readDocType(t,r){const n={};if(t[r+3]==="O"&&t[r+4]==="C"&&t[r+5]==="T"&&t[r+6]==="Y"&&t[r+7]==="P"&&t[r+8]==="E"){r=r+9;let s=1,a=!1,A=!1,c="";for(;r<t.length;r++)if(t[r]==="<"&&!A){if(a&&_t(t,"!ENTITY",r)){r+=7;let I,i;[I,i,r]=this.readEntityExp(t,r+1,this.suppressValidationErr),i.indexOf("&")===-1&&(n[I]={regx:RegExp(`&${I};`,"g"),val:i})}else if(a&&_t(t,"!ELEMENT",r)){r+=8;const{index:I}=this.readElementExp(t,r+1);r=I}else if(a&&_t(t,"!ATTLIST",r))r+=8;else if(a&&_t(t,"!NOTATION",r)){r+=9;const{index:I}=this.readNotationExp(t,r+1,this.suppressValidationErr);r=I}else if(_t(t,"!--",r))A=!0;else throw new Error("Invalid DOCTYPE");s++,c=""}else if(t[r]===">"){if(A?t[r-1]==="-"&&t[r-2]==="-"&&(A=!1,s--):s--,s===0)break}else t[r]==="["?a=!0:c+=t[r];if(s!==0)throw new Error("Unclosed DOCTYPE")}else throw new Error("Invalid Tag instead of DOCTYPE");return{entities:n,i:r}}readEntityExp(t,r){r=$e(t,r);let n="";for(;r<t.length&&!/\s/.test(t[r])&&t[r]!=='"'&&t[r]!=="'";)n+=t[r],r++;if(gt(n),r=$e(t,r),!this.suppressValidationErr){if(t.substring(r,r+6).toUpperCase()==="SYSTEM")throw new Error("External entities are not supported");if(t[r]==="%")throw new Error("Parameter entities are not supported")}let s="";return[r,s]=this.readIdentifierVal(t,r,"entity"),r--,[n,s,r]}readNotationExp(t,r){r=$e(t,r);let n="";for(;r<t.length&&!/\s/.test(t[r]);)n+=t[r],r++;!this.suppressValidationErr&>(n),r=$e(t,r);const s=t.substring(r,r+6).toUpperCase();if(!this.suppressValidationErr&&s!=="SYSTEM"&&s!=="PUBLIC")throw new Error(`Expected SYSTEM or PUBLIC, found "${s}"`);r+=s.length,r=$e(t,r);let a=null,A=null;if(s==="PUBLIC")[r,a]=this.readIdentifierVal(t,r,"publicIdentifier"),r=$e(t,r),(t[r]==='"'||t[r]==="'")&&([r,A]=this.readIdentifierVal(t,r,"systemIdentifier"));else if(s==="SYSTEM"&&([r,A]=this.readIdentifierVal(t,r,"systemIdentifier"),!this.suppressValidationErr&&!A))throw new Error("Missing mandatory system identifier for SYSTEM notation");return{notationName:n,publicIdentifier:a,systemIdentifier:A,index:--r}}readIdentifierVal(t,r,n){let s="";const a=t[r];if(a!=='"'&&a!=="'")throw new Error(`Expected quoted string, found "${a}"`);for(r++;r<t.length&&t[r]!==a;)s+=t[r],r++;if(t[r]!==a)throw new Error(`Unterminated ${n} value`);return r++,[r,s]}readElementExp(t,r){r=$e(t,r);let n="";for(;r<t.length&&!/\s/.test(t[r]);)n+=t[r],r++;if(!this.suppressValidationErr&&!xt(n))throw new Error(`Invalid element name: "${n}"`);r=$e(t,r);let s="";if(t[r]==="E"&&_t(t,"MPTY",r))r+=4;else if(t[r]==="A"&&_t(t,"NY",r))r+=2;else if(t[r]==="("){for(r++;r<t.length&&t[r]!==")";)s+=t[r],r++;if(t[r]!==")")throw new Error("Unterminated content model")}else if(!this.suppressValidationErr)throw new Error(`Invalid Element Expression, found "${t[r]}"`);return{elementName:n,contentModel:s.trim(),index:r}}readAttlistExp(t,r){r=$e(t,r);let n="";for(;r<t.length&&!/\s/.test(t[r]);)n+=t[r],r++;gt(n),r=$e(t,r);let s="";for(;r<t.length&&!/\s/.test(t[r]);)s+=t[r],r++;if(!gt(s))throw new Error(`Invalid attribute name: "${s}"`);r=$e(t,r);let a="";if(t.substring(r,r+8).toUpperCase()==="NOTATION"){if(a="NOTATION",r+=8,r=$e(t,r),t[r]!=="(")throw new Error(`Expected '(', found "${t[r]}"`);r++;let c=[];for(;r<t.length&&t[r]!==")";){let I="";for(;r<t.length&&t[r]!=="|"&&t[r]!==")";)I+=t[r],r++;if(I=I.trim(),!gt(I))throw new Error(`Invalid notation name: "${I}"`);c.push(I),t[r]==="|"&&(r++,r=$e(t,r))}if(t[r]!==")")throw new Error("Unterminated list of notations");r++,a+=" ("+c.join("|")+")"}else{for(;r<t.length&&!/\s/.test(t[r]);)a+=t[r],r++;const c=["CDATA","ID","IDREF","IDREFS","ENTITY","ENTITIES","NMTOKEN","NMTOKENS"];if(!this.suppressValidationErr&&!c.includes(a.toUpperCase()))throw new Error(`Invalid attribute type: "${a}"`)}r=$e(t,r);let A="";return t.substring(r,r+8).toUpperCase()==="#REQUIRED"?(A="#REQUIRED",r+=8):t.substring(r,r+7).toUpperCase()==="#IMPLIED"?(A="#IMPLIED",r+=7):[r,A]=this.readIdentifierVal(t,r,"ATTLIST"),{elementName:n,attributeName:s,attributeType:a,defaultValue:A,index:r}}}const $e=(E,t)=>{for(;t<E.length&&/\s/.test(E[t]);)t++;return t};function _t(E,t,r){for(let n=0;n<t.length;n++)if(t[n]!==E[r+n+1])return!1;return!0}function gt(E){if(xt(E))return E;throw new Error(`Invalid entity name ${E}`)}const qs=/^[-+]?0x[a-fA-F0-9]+$/,Js=/^([\-\+])?(0*)([0-9]*(\.[0-9]*)?)$/,Qs={hex:!0,leadingZeros:!0,decimalPoint:".",eNotation:!0};function Zs(E,t={}){if(t=Object.assign({},Qs,t),!E||typeof E!="string")return E;let r=E.trim();if(t.skipLike!==void 0&&t.skipLike.test(r))return E;if(E==="0")return 0;if(t.hex&&qs.test(r))return tT(r,16);if(r.search(/.+[eE].+/)!==-1)return zs(E,r,t);{const n=Js.exec(r);if(n){const s=n[1]||"",a=n[2];let A=eT(n[3]);const c=s?E[a.length+1]===".":E[a.length]===".";if(!t.leadingZeros&&(a.length>1||a.length===1&&!c))return E;{const I=Number(r),i=String(I);if(I===0)return I;if(i.search(/[eE]/)!==-1)return t.eNotation?I:E;if(r.indexOf(".")!==-1)return i==="0"||i===A||i===`${s}${A}`?I:E;let O=a?A:r;return a?O===i||s+O===i?I:E:O===i||O===s+i?I:E}}else return E}}const js=/^([-+])?(0*)(\d*(\.\d*)?[eE][-\+]?\d+)$/;function zs(E,t,r){if(!r.eNotation)return E;const n=t.match(js);if(n){let s=n[1]||"";const a=n[3].indexOf("e")===-1?"E":"e",A=n[2],c=s?E[A.length+1]===a:E[A.length]===a;return A.length>1&&c?E:A.length===1&&(n[3].startsWith(`.${a}`)||n[3][0]===a)?Number(t):r.leadingZeros&&!c?(t=(n[1]||"")+n[3],Number(t)):E}else return E}function eT(E){return E&&E.indexOf(".")!==-1&&(E=E.replace(/0+$/,""),E==="."?E="0":E[0]==="."?E="0"+E:E[E.length-1]==="."&&(E=E.substring(0,E.length-1))),E}function tT(E,t){if(parseInt)return parseInt(E,t);if(Number.parseInt)return Number.parseInt(E,t);if(window&&window.parseInt)return window.parseInt(E,t);throw new Error("parseInt, Number.parseInt, window.parseInt are not supported")}function qE(E){return typeof E=="function"?E:Array.isArray(E)?t=>{for(const r of E)if(typeof r=="string"&&t===r||r instanceof RegExp&&r.test(t))return!0}:()=>!1}class ET{constructor(t){this.options=t,this.currentNode=null,this.tagsNodeStack=[],this.docTypeEntities={},this.lastEntities={apos:{regex:/&(apos|#39|#x27);/g,val:"'"},gt:{regex:/&(gt|#62|#x3E);/g,val:">"},lt:{regex:/&(lt|#60|#x3C);/g,val:"<"},quot:{regex:/&(quot|#34|#x22);/g,val:'"'}},this.ampEntity={regex:/&(amp|#38|#x26);/g,val:"&"},this.htmlEntities={space:{regex:/&(nbsp|#160);/g,val:" "},cent:{regex:/&(cent|#162);/g,val:"¢"},pound:{regex:/&(pound|#163);/g,val:"£"},yen:{regex:/&(yen|#165);/g,val:"¥"},euro:{regex:/&(euro|#8364);/g,val:"€"},copyright:{regex:/&(copy|#169);/g,val:"©"},reg:{regex:/&(reg|#174);/g,val:"®"},inr:{regex:/&(inr|#8377);/g,val:"₹"},num_dec:{regex:/&#([0-9]{1,7});/g,val:(r,n)=>String.fromCodePoint(Number.parseInt(n,10))},num_hex:{regex:/&#x([0-9a-fA-F]{1,6});/g,val:(r,n)=>String.fromCodePoint(Number.parseInt(n,16))}},this.addExternalEntities=rT,this.parseXml=aT,this.parseTextData=nT,this.resolveNameSpace=sT,this.buildAttributesMap=oT,this.isItStopNode=ST,this.replaceEntitiesValue=AT,this.readStopNodeData=IT,this.saveTextToParentTag=RT,this.addChild=iT,this.ignoreAttributesFn=qE(this.options.ignoreAttributes)}}function rT(E){const t=Object.keys(E);for(let r=0;r<t.length;r++){const n=t[r];this.lastEntities[n]={regex:new RegExp("&"+n+";","g"),val:E[n]}}}function nT(E,t,r,n,s,a,A){if(E!==void 0&&(this.options.trimValues&&!n&&(E=E.trim()),E.length>0)){A||(E=this.replaceEntitiesValue(E));const c=this.options.tagValueProcessor(t,E,r,s,a);return c==null?E:typeof c!=typeof E||c!==E?c:this.options.trimValues?Zt(E,this.options.parseTagValue,this.options.numberParseOptions):E.trim()===E?Zt(E,this.options.parseTagValue,this.options.numberParseOptions):E}}function sT(E){if(this.options.removeNSPrefix){const t=E.split(":"),r=E.charAt(0)==="/"?"/":"";if(t[0]==="xmlns")return"";t.length===2&&(E=r+t[1])}return E}const TT=new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`,"gm");function oT(E,t,r){if(this.options.ignoreAttributes!==!0&&typeof E=="string"){const n=wE(E,TT),s=n.length,a={};for(let A=0;A<s;A++){const c=this.resolveNameSpace(n[A][1]);if(this.ignoreAttributesFn(c,t))continue;let I=n[A][4],i=this.options.attributeNamePrefix+c;if(c.length)if(this.options.transformAttributeName&&(i=this.options.transformAttributeName(i)),i==="__proto__"&&(i="#__proto__"),I!==void 0){this.options.trimValues&&(I=I.trim()),I=this.replaceEntitiesValue(I);const O=this.options.attributeValueProcessor(c,I,t);O==null?a[i]=I:typeof O!=typeof I||O!==I?a[i]=O:a[i]=Zt(I,this.options.parseAttributeValue,this.options.numberParseOptions)}else this.options.allowBooleanAttributes&&(a[i]=!0)}if(!Object.keys(a).length)return;if(this.options.attributesGroupName){const A={};return A[this.options.attributesGroupName]=a,A}return a}}const aT=function(E){E=E.replace(/\r\n?/g,`
|
|
16
|
-
`);const t=new ct("!xml");let r=t,n="",s="";const a=new $s(this.options.processEntities);for(let A=0;A<E.length;A++)if(E[A]==="<")if(E[A+1]==="/"){const I=Lt(E,">",A,"Closing Tag is not closed.");let i=E.substring(A+2,I).trim();if(this.options.removeNSPrefix){const
|
|
17
|
-
`;function LT(E,t){let r="";return t.format&&t.indentBy.length>0&&(r=_T),QE(E,t,"",r)}function QE(E,t,r,n){let s="",a=!1;for(let A=0;A<E.length;A++){const
|
|
12
|
+
`)}function i(P){this.options=P||{locator:{}}}i.prototype.parseFromString=function(P,J){var Z=this.options,z=new C,De=Z.domBuilder||new u,Ce=Z.errorHandler,X=Z.locator,L=Z.xmlns||{},k=/\/x?html?$/.test(J),g=k?r.HTML_ENTITIES:r.XML_ENTITIES;X&&De.setDocumentLocator(X),z.errorHandler=O(Ce,De,X),z.domBuilder=Z.domBuilder||De,k&&(L[""]=a.HTML),L.xml=L.xml||a.XML;var x=Z.normalizeLineEndings||I;return P&&typeof P=="string"?z.parse(x(P),L,g):z.errorHandler.error("invalid doc source"),De.doc};function O(P,J,Z){if(!P){if(J instanceof u)return J;P=J}var z={},De=P instanceof Function;Z=Z||{};function Ce(X){var L=P[X];!L&&De&&(L=P.length==2?function(k){P(X,k)}:P),z[X]=L&&function(k){L("[xmldom "+X+"] "+k+U(Z))}||function(){}}return Ce("warning"),Ce("error"),Ce("fatalError"),z}function u(){this.cdata=!1}function d(P,J){J.lineNumber=P.lineNumber,J.columnNumber=P.columnNumber}u.prototype={startDocument:function(){this.doc=new s().createDocument(null,null,null),this.locator&&(this.doc.documentURI=this.locator.systemId)},startElement:function(P,J,Z,z){var De=this.doc,Ce=De.createElementNS(P,Z||J),X=z.length;w(this,Ce),this.currentElement=Ce,this.locator&&d(this.locator,Ce);for(var L=0;L<X;L++){var P=z.getURI(L),k=z.getValue(L),Z=z.getQName(L),g=De.createAttributeNS(P,Z);this.locator&&d(z.getLocator(L),g),g.value=g.nodeValue=k,Ce.setAttributeNode(g)}},endElement:function(P,J,Z){var z=this.currentElement;z.tagName,this.currentElement=z.parentNode},startPrefixMapping:function(P,J){},endPrefixMapping:function(P){},processingInstruction:function(P,J){var Z=this.doc.createProcessingInstruction(P,J);this.locator&&d(this.locator,Z),w(this,Z)},ignorableWhitespace:function(P,J,Z){},characters:function(P,J,Z){if(P=M.apply(this,arguments),P){if(this.cdata)var z=this.doc.createCDATASection(P);else var z=this.doc.createTextNode(P);this.currentElement?this.currentElement.appendChild(z):/^\s*$/.test(P)&&this.doc.appendChild(z),this.locator&&d(this.locator,z)}},skippedEntity:function(P){},endDocument:function(){this.doc.normalize()},setDocumentLocator:function(P){(this.locator=P)&&(P.lineNumber=0)},comment:function(P,J,Z){P=M.apply(this,arguments);var z=this.doc.createComment(P);this.locator&&d(this.locator,z),w(this,z)},startCDATA:function(){this.cdata=!0},endCDATA:function(){this.cdata=!1},startDTD:function(P,J,Z){var z=this.doc.implementation;if(z&&z.createDocumentType){var De=z.createDocumentType(P,J,Z);this.locator&&d(this.locator,De),w(this,De),this.doc.doctype=De}},warning:function(P){console.warn("[xmldom warning] "+P,U(this.locator))},error:function(P){console.error("[xmldom error] "+P,U(this.locator))},fatalError:function(P){throw new A(P,this.locator)}};function U(P){if(P)return`
|
|
13
|
+
@`+(P.systemId||"")+"#[line:"+P.lineNumber+",col:"+P.columnNumber+"]"}function M(P,J,Z){return typeof P=="string"?P.substr(J,Z):P.length>=J+Z||J?new java.lang.String(P,J,Z)+"":P}"endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g,function(P){u.prototype[P]=function(){return null}});function w(P,J){P.currentElement?P.currentElement.appendChild(J):P.doc.appendChild(J)}return mt.__DOMHandler=u,mt.normalizeLineEndings=I,mt.DOMParser=i,mt}var xE;function Xn(){if(xE)return Ut;xE=1;var E=GE();return Ut.DOMImplementation=E.DOMImplementation,Ut.XMLSerializer=E.XMLSerializer,Ut.DOMParser=Wn().DOMParser,Ut}var YE=Xn();const Kn={key:0,class:"xml-node__comment"},kn={key:1,class:"xml-node__cdata"},$n={key:2,class:"xml-node__element"},qn={key:0,class:"xml-node__line"},Jn=["contenteditable","onKeydown"],Qn=["contenteditable","onDblclick","onKeydown"],Zn=["contenteditable","onDblclick","onKeydown"],jn=["contenteditable","onKeydown"],zn={key:1,class:"xml-node__line"},es=["contenteditable","onKeydown"],ts=["contenteditable","onDblclick","onKeydown"],Es=["contenteditable","onDblclick","onKeydown"],rs=["contenteditable","onKeydown"],ns={key:2,class:"xml-node__line"},ss=["contenteditable","onKeydown"],Ts=["contenteditable","onDblclick","onKeydown"],os=["contenteditable","onDblclick","onKeydown"],as={key:3,class:"xml-node__line"},is=["contenteditable","onKeydown"],As=["contenteditable","onDblclick","onKeydown"],Rs=["contenteditable","onDblclick","onKeydown"],Ss={key:4},Ns={key:0,class:"xml-node__line"},Is=["contenteditable","onKeydown"],Os=["contenteditable","onDblclick","onKeydown"],ls=["contenteditable","onDblclick","onKeydown"],us=["title"],Cs={class:"xml-node__line"},cs=["title"],_s=["contenteditable","onKeydown"],Ls={key:1},Ds=["contenteditable","onKeydown"],ps=["contenteditable","onDblclick","onKeydown"],ds=["contenteditable","onDblclick","onKeydown"],Ps=["title"],fs={key:0,class:"xml-node__children"},hs={key:0,class:"xml-node__text"},Ms=["contenteditable","onKeydown"],Us={key:1,class:"xml-node__line"},ms=Pt(T.defineComponent({__name:"XmlNode",props:{node:{},index:{},level:{default:0},parentPath:{default:""},expanded:{},theme:{},selfClosingTags:{default:()=>new Set}},emits:["toggle-expand","copy","update:tagName","update:attributeName","update:attributeValue","update:textContent","update:cdataContent"],setup(E,{emit:t}){T.useCssVars(c=>({"451d9899":c.theme.colors.collapsedText,"6296679a":c.theme.colors.collapsedBackground,cd71bc7c:c.theme.colors.collapsedBackgroundHover,"30a02a6b":c.theme.colors.indentLine}));const r=E,n=t,s=T.ref(!1),a=T.ref(null),A=T.ref(null),C=T.ref(!1),I=T.ref(!1),i=T.ref(""),O=T.ref(""),u=T.ref(""),d=T.ref(""),U=T.ref(""),M=T.ref(null),w=T.ref(null),P=T.ref(null),J=T.ref(null),Z=T.ref(null),z=T.computed(()=>Object.keys(r.node).find(re=>!re.startsWith(":")&&!re.startsWith("#"))||""),De=T.computed(()=>z.value?r.parentPath?`${r.parentPath}.${z.value}[${r.index}]`:`${z.value}[${r.index}]`:""),Ce=T.computed(()=>r.expanded.has(De.value)),X=T.computed(()=>r.node["#comment"]?"comment":r.node.__cdata?"cdata":z.value?"element":"unknown"),L=T.computed(()=>{const c=r.node[":@"]||{},re={};return Object.keys(c).forEach(ge=>{ge.startsWith("@_")&&(re[ge.substring(2)]=c[ge])}),re}),k=T.computed(()=>{if(X.value!=="element"||!z.value)return[];const c=r.node[z.value];return Array.isArray(c)?c:[]}),g=T.computed(()=>k.value.some(c=>c.__cdata)),x=T.computed(()=>{if(!g.value)return"";const c=k.value.find(re=>re.__cdata);if(c&&Array.isArray(c.__cdata)){const re=c.__cdata;if(re.length>0&&re[0]["#text"])return re[0]["#text"]}return""}),ne=T.computed(()=>{if(X.value!=="element"||!z.value||g.value)return"";const c=r.node[z.value];if(!Array.isArray(c))return"";const re=c.find(ge=>ge["#text"]);return re?re["#text"]:""}),ee=T.computed(()=>{if(X.value!=="comment")return"";const c=r.node["#comment"];return Array.isArray(c)&&c.length>0&&c[0]["#text"]||""}),Q=T.computed(()=>k.value.some(c=>Object.keys(c).some(ge=>!ge.startsWith("#")&&!ge.startsWith(":")))),Oe=T.computed(()=>Q.value?k.value.filter(c=>Object.keys(c).some(ge=>!ge.startsWith("#")&&!ge.startsWith(":"))).length:0),ce=T.computed(()=>X.value==="element"&&!Q.value&&ne.value!==""),pe=T.computed(()=>X.value==="element"&&!Q.value&&ne.value===""),Y=T.computed(()=>pe.value?r.node[":selfClosing"]===!0:!1),j=()=>{Q.value&&n("toggle-expand",De.value)},le=(c,re)=>`${De.value}-child-${re}`,Ue=()=>`${De.value}.${z.value}`,Te=()=>{s.value=!0,i.value=z.value,T.nextTick(()=>{if(M.value){M.value.focus();const c=document.createRange();c.selectNodeContents(M.value);const re=window.getSelection();re?.removeAllRanges(),re?.addRange(c)}})},he=c=>{a.value=c,O.value=c,T.nextTick(()=>{if(w.value){w.value.focus();const re=document.createRange();re.selectNodeContents(w.value);const ge=window.getSelection();ge?.removeAllRanges(),ge?.addRange(re)}})},q=c=>{A.value=c,u.value=L.value[c]||"",T.nextTick(()=>{if(P.value){P.value.focus();const re=document.createRange();re.selectNodeContents(P.value);const ge=window.getSelection();ge?.removeAllRanges(),ge?.addRange(re)}})},p=()=>{C.value=!0,d.value=ne.value,T.nextTick(()=>{if(J.value){J.value.focus();const c=document.createRange();c.selectNodeContents(J.value);const re=window.getSelection();re?.removeAllRanges(),re?.addRange(c)}})},h=()=>{if(!s.value)return;const c=M.value?.innerText.trim()||"";if(!c||c===z.value){s.value=!1;return}s.value=!1,n("update:tagName",De.value,z.value,c)},m=()=>{if(!a.value)return;const c=a.value,re=w.value?.innerText.trim()||"";if(!re||re===c){a.value=null;return}a.value=null,n("update:attributeName",De.value,c,re)},B=()=>{if(!A.value)return;const c=A.value,re=P.value?.innerText.trim()||"";A.value=null,n("update:attributeValue",De.value,c,re)},b=()=>{if(!C.value)return;const c=J.value?.innerText||"";if(c===ne.value){C.value=!1;return}C.value=!1,n("update:textContent",De.value,c)},H=()=>{s.value=!1,i.value=z.value},te=()=>{a.value&&(O.value=a.value,a.value=null)},Ee=()=>{A.value&&(u.value=L.value[A.value]||"",A.value=null)},Re=()=>{C.value=!1,d.value=ne.value},Le=()=>{I.value=!0,U.value=x.value,T.nextTick(()=>{if(Z.value){Z.value.focus();const c=document.createRange();c.selectNodeContents(Z.value);const re=window.getSelection();re?.removeAllRanges(),re?.addRange(c)}})},ue=()=>{if(!I.value)return;const c=Z.value?.innerText||"";if(c===x.value){I.value=!1;return}I.value=!1,n("update:cdataContent",De.value,c)},v=()=>{I.value=!1,U.value=x.value},fe=c=>{Q.value&&(c.preventDefault(),Te())};return(c,re)=>{const ge=T.resolveComponent("XmlNode",!0);return T.openBlock(),T.createElementBlock("div",{class:"xml-node",style:T.normalizeStyle({paddingLeft:c.level>0?"16px":"0"})},[X.value==="comment"?(T.openBlock(),T.createElementBlock("div",Kn,[T.createElementVNode("span",{style:T.normalizeStyle({color:c.theme.colors.xmlComment})}," <!-- "+T.toDisplayString(ee.value)+" --> ",5)])):X.value==="cdata"?(T.openBlock(),T.createElementBlock("div",kn,[T.createElementVNode("span",{style:T.normalizeStyle({color:c.theme.colors.xmlCdata})}," <![CDATA["+T.toDisplayString(c.node.__cdata)+"]]> ",5)])):X.value==="element"?(T.openBlock(),T.createElementBlock("div",$n,[g.value?(T.openBlock(),T.createElementBlock("div",qn,[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},"<",4),T.createElementVNode("span",{class:"xml-node__tag xml-node__tag--editable",style:T.normalizeStyle({color:c.theme.colors.xmlTag}),contenteditable:s.value,onDblclick:Te,onContextmenu:fe,onKeydown:[T.withKeys(T.withModifiers(h,["prevent"]),["enter"]),T.withKeys(H,["escape"])],onBlur:h,ref_key:"tagNameRef",ref:M,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:z.value),45,Jn),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(L.value,(de,F)=>(T.openBlock(),T.createElementBlock("span",{key:F,class:"xml-node__attribute"},[T.createElementVNode("span",{class:"xml-node__attr-name xml-node__attr-name--editable",style:T.normalizeStyle({color:c.theme.colors.xmlAttribute}),contenteditable:a.value===F,onDblclick:W=>he(F),onKeydown:[T.withKeys(T.withModifiers(m,["prevent"]),["enter"]),T.withKeys(te,["escape"])],onBlur:m,ref_for:!0,ref:W=>{a.value===F&&(w.value=W)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===F?O.value:F),45,Qn),T.createElementVNode("span",{class:"xml-node__equals",style:T.normalizeStyle({color:c.theme.colors.xmlEquals})},"=",4),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:c.theme.colors.xmlQuote})},'"',4),T.createElementVNode("span",{class:"xml-node__attr-value xml-node__attr-value--editable",style:T.normalizeStyle({color:c.theme.colors.xmlAttributeValue}),contenteditable:A.value===F,onDblclick:W=>q(F),onKeydown:[T.withKeys(T.withModifiers(B,["prevent"]),["enter"]),T.withKeys(Ee,["escape"])],onBlur:B,ref_for:!0,ref:W=>{A.value===F&&(P.value=W)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===F?u.value:de),45,Zn),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:c.theme.colors.xmlQuote})},'"',4)]))),128)),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},">",4),T.createElementVNode("span",{class:"xml-node__cdata",style:T.normalizeStyle({color:c.theme.colors.xmlCdata})},"<![CDATA[",4),T.createElementVNode("span",{class:"xml-node__cdata-content xml-node__cdata-content--editable",style:T.normalizeStyle({color:c.theme.colors.xmlCdata}),contenteditable:I.value,onDblclick:Le,onKeydown:[T.withKeys(T.withModifiers(ue,["prevent"]),["enter"]),T.withKeys(v,["escape"])],onBlur:ue,ref_key:"cdataContentRef",ref:Z,title:"Double-click to edit CDATA content"},T.toDisplayString(I.value?U.value:x.value),45,jn),T.createElementVNode("span",{class:"xml-node__cdata",style:T.normalizeStyle({color:c.theme.colors.xmlCdata})},"]]>",4),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},"</",4),T.createElementVNode("span",{class:"xml-node__tag",style:T.normalizeStyle({color:c.theme.colors.xmlTag})},T.toDisplayString(s.value?i.value:z.value),5),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},">",4)])):ce.value?(T.openBlock(),T.createElementBlock("div",zn,[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},"<",4),T.createElementVNode("span",{class:"xml-node__tag xml-node__tag--editable",style:T.normalizeStyle({color:c.theme.colors.xmlTag}),contenteditable:s.value,onDblclick:Te,onContextmenu:fe,onKeydown:[T.withKeys(T.withModifiers(h,["prevent"]),["enter"]),T.withKeys(H,["escape"])],onBlur:h,ref_key:"tagNameRef",ref:M,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:z.value),45,es),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(L.value,(de,F)=>(T.openBlock(),T.createElementBlock("span",{key:F,class:"xml-node__attribute"},[T.createElementVNode("span",{class:"xml-node__attr-name xml-node__attr-name--editable",style:T.normalizeStyle({color:c.theme.colors.xmlAttribute}),contenteditable:a.value===F,onDblclick:W=>he(F),onKeydown:[T.withKeys(T.withModifiers(m,["prevent"]),["enter"]),T.withKeys(te,["escape"])],onBlur:m,ref_for:!0,ref:W=>{a.value===F&&(w.value=W)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===F?O.value:F),45,ts),T.createElementVNode("span",{class:"xml-node__equals",style:T.normalizeStyle({color:c.theme.colors.xmlEquals})},"=",4),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:c.theme.colors.xmlQuote})},'"',4),T.createElementVNode("span",{class:"xml-node__attr-value xml-node__attr-value--editable",style:T.normalizeStyle({color:c.theme.colors.xmlAttributeValue}),contenteditable:A.value===F,onDblclick:W=>q(F),onKeydown:[T.withKeys(T.withModifiers(B,["prevent"]),["enter"]),T.withKeys(Ee,["escape"])],onBlur:B,ref_for:!0,ref:W=>{A.value===F&&(P.value=W)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===F?u.value:de),45,Es),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:c.theme.colors.xmlQuote})},'"',4)]))),128)),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},">",4),T.createElementVNode("span",{class:"xml-node__text-content xml-node__text-content--editable",style:T.normalizeStyle({color:c.theme.colors.xmlText}),contenteditable:C.value,onDblclick:p,onKeydown:[T.withKeys(T.withModifiers(b,["prevent"]),["enter"]),T.withKeys(Re,["escape"])],onBlur:b,ref_key:"textContentRef",ref:J,title:"Double-click to edit text content"},T.toDisplayString(C.value?d.value:ne.value),45,rs),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},"</",4),T.createElementVNode("span",{class:"xml-node__tag",style:T.normalizeStyle({color:c.theme.colors.xmlTag})},T.toDisplayString(s.value?i.value:z.value),5),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},">",4)])):pe.value&&Y.value?(T.openBlock(),T.createElementBlock("div",ns,[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},"<",4),T.createElementVNode("span",{class:"xml-node__tag xml-node__tag--editable",style:T.normalizeStyle({color:c.theme.colors.xmlTag}),contenteditable:s.value,onDblclick:Te,onContextmenu:fe,onKeydown:[T.withKeys(T.withModifiers(h,["prevent"]),["enter"]),T.withKeys(H,["escape"])],onBlur:h,ref_key:"tagNameRef",ref:M,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:z.value),45,ss),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(L.value,(de,F)=>(T.openBlock(),T.createElementBlock("span",{key:F,class:"xml-node__attribute"},[T.createElementVNode("span",{class:"xml-node__attr-name xml-node__attr-name--editable",style:T.normalizeStyle({color:c.theme.colors.xmlAttribute}),contenteditable:a.value===F,onDblclick:W=>he(F),onKeydown:[T.withKeys(T.withModifiers(m,["prevent"]),["enter"]),T.withKeys(te,["escape"])],onBlur:m,ref_for:!0,ref:W=>{a.value===F&&(w.value=W)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===F?O.value:F),45,Ts),T.createElementVNode("span",{class:"xml-node__equals",style:T.normalizeStyle({color:c.theme.colors.xmlEquals})},"=",4),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:c.theme.colors.xmlQuote})},'"',4),T.createElementVNode("span",{class:"xml-node__attr-value xml-node__attr-value--editable",style:T.normalizeStyle({color:c.theme.colors.xmlAttributeValue}),contenteditable:A.value===F,onDblclick:W=>q(F),onKeydown:[T.withKeys(T.withModifiers(B,["prevent"]),["enter"]),T.withKeys(Ee,["escape"])],onBlur:B,ref_for:!0,ref:W=>{A.value===F&&(P.value=W)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===F?u.value:de),45,os),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:c.theme.colors.xmlQuote})},'"',4)]))),128)),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})}," />",4)])):pe.value?(T.openBlock(),T.createElementBlock("div",as,[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},"<",4),T.createElementVNode("span",{class:"xml-node__tag xml-node__tag--editable",style:T.normalizeStyle({color:c.theme.colors.xmlTag}),contenteditable:s.value,onDblclick:Te,onContextmenu:fe,onKeydown:[T.withKeys(T.withModifiers(h,["prevent"]),["enter"]),T.withKeys(H,["escape"])],onBlur:h,ref_key:"tagNameRef",ref:M,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:z.value),45,is),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(L.value,(de,F)=>(T.openBlock(),T.createElementBlock("span",{key:F,class:"xml-node__attribute"},[T.createElementVNode("span",{class:"xml-node__attr-name xml-node__attr-name--editable",style:T.normalizeStyle({color:c.theme.colors.xmlAttribute}),contenteditable:a.value===F,onDblclick:W=>he(F),onKeydown:[T.withKeys(T.withModifiers(m,["prevent"]),["enter"]),T.withKeys(te,["escape"])],onBlur:m,ref_for:!0,ref:W=>{a.value===F&&(w.value=W)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===F?O.value:F),45,As),T.createElementVNode("span",{class:"xml-node__equals",style:T.normalizeStyle({color:c.theme.colors.xmlEquals})},"=",4),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:c.theme.colors.xmlQuote})},'"',4),T.createElementVNode("span",{class:"xml-node__attr-value xml-node__attr-value--editable",style:T.normalizeStyle({color:c.theme.colors.xmlAttributeValue}),contenteditable:A.value===F,onDblclick:W=>q(F),onKeydown:[T.withKeys(T.withModifiers(B,["prevent"]),["enter"]),T.withKeys(Ee,["escape"])],onBlur:B,ref_for:!0,ref:W=>{A.value===F&&(P.value=W)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===F?u.value:de),45,Rs),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:c.theme.colors.xmlQuote})},'"',4)]))),128)),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},"></",4),T.createElementVNode("span",{class:"xml-node__tag",style:T.normalizeStyle({color:c.theme.colors.xmlTag})},T.toDisplayString(s.value?i.value:z.value),5),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},">",4)])):(T.openBlock(),T.createElementBlock("div",Ss,[!Ce.value&&Q.value?(T.openBlock(),T.createElementBlock("div",Ns,[T.createElementVNode("span",{class:"xml-node__clickable-part",onClick:re[0]||(re[0]=de=>j()),title:"Click to expand"},[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},"<",4),T.createElementVNode("span",{class:"xml-node__tag xml-node__tag--editable",style:T.normalizeStyle({color:c.theme.colors.xmlTag}),contenteditable:s.value,onDblclick:T.withModifiers(Te,["stop"]),onContextmenu:fe,onKeydown:[T.withKeys(T.withModifiers(h,["prevent"]),["enter"]),T.withKeys(H,["escape"])],onBlur:h,ref_key:"tagNameRef",ref:M,title:"Double-click or right-click to edit tag name"},T.toDisplayString(s.value?i.value:z.value),45,Is)]),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(L.value,(de,F)=>(T.openBlock(),T.createElementBlock("span",{key:F,class:"xml-node__attribute"},[T.createElementVNode("span",{class:"xml-node__attr-name xml-node__attr-name--editable",style:T.normalizeStyle({color:c.theme.colors.xmlAttribute}),contenteditable:a.value===F,onDblclick:W=>he(F),onKeydown:[T.withKeys(T.withModifiers(m,["prevent"]),["enter"]),T.withKeys(te,["escape"])],onBlur:m,ref_for:!0,ref:W=>{a.value===F&&(w.value=W)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===F?O.value:F),45,Os),T.createElementVNode("span",{class:"xml-node__equals",style:T.normalizeStyle({color:c.theme.colors.xmlEquals})},"=",4),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:c.theme.colors.xmlQuote})},'"',4),T.createElementVNode("span",{class:"xml-node__attr-value xml-node__attr-value--editable",style:T.normalizeStyle({color:c.theme.colors.xmlAttributeValue}),contenteditable:A.value===F,onDblclick:W=>q(F),onKeydown:[T.withKeys(T.withModifiers(B,["prevent"]),["enter"]),T.withKeys(Ee,["escape"])],onBlur:B,ref_for:!0,ref:W=>{A.value===F&&(P.value=W)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===F?u.value:de),45,ls),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:c.theme.colors.xmlQuote})},'"',4)]))),128)),T.createElementVNode("span",{class:"xml-node__clickable-part",onClick:re[1]||(re[1]=de=>j()),title:"Click to expand"},[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},">",4)]),T.createElementVNode("span",{class:"xml-node__collapsed-badge",onClick:re[2]||(re[2]=de=>j()),title:`Click to expand ${Oe.value} tag${Oe.value>1?"s":""}`},T.toDisplayString(Oe.value)+" tag"+T.toDisplayString(Oe.value>1?"s":""),9,us),T.createElementVNode("span",{class:"xml-node__clickable-part",onClick:re[3]||(re[3]=de=>j()),title:"Click to expand"},[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},"</",4),T.createElementVNode("span",{class:"xml-node__tag",style:T.normalizeStyle({color:c.theme.colors.xmlTag})},T.toDisplayString(s.value?i.value:z.value),5),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},">",4)])])):(T.openBlock(),T.createElementBlock(T.Fragment,{key:1},[T.createElementVNode("div",Cs,[Q.value?(T.openBlock(),T.createElementBlock("span",{key:0,class:"xml-node__clickable-part",onClick:re[4]||(re[4]=de=>j()),title:Ce.value?"Click to collapse":"Click to expand"},[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},"<",4),T.createElementVNode("span",{class:"xml-node__tag xml-node__tag--editable",style:T.normalizeStyle({color:c.theme.colors.xmlTag}),contenteditable:s.value,onDblclick:T.withModifiers(Te,["stop"]),onContextmenu:fe,onKeydown:[T.withKeys(T.withModifiers(h,["prevent"]),["enter"]),T.withKeys(H,["escape"])],onBlur:h,ref_key:"tagNameRef",ref:M,title:"Double-click or right-click to edit tag name"},T.toDisplayString(s.value?i.value:z.value),45,_s)],8,cs)):(T.openBlock(),T.createElementBlock("span",Ls,[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},"<",4),T.createElementVNode("span",{class:"xml-node__tag xml-node__tag--editable",style:T.normalizeStyle({color:c.theme.colors.xmlTag}),contenteditable:s.value,onDblclick:Te,onKeydown:[T.withKeys(T.withModifiers(h,["prevent"]),["enter"]),T.withKeys(H,["escape"])],onBlur:h,ref_key:"tagNameRef",ref:M,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:z.value),45,Ds)])),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(L.value,(de,F)=>(T.openBlock(),T.createElementBlock("span",{key:F,class:"xml-node__attribute"},[T.createElementVNode("span",{class:"xml-node__attr-name xml-node__attr-name--editable",style:T.normalizeStyle({color:c.theme.colors.xmlAttribute}),contenteditable:a.value===F,onDblclick:W=>he(F),onKeydown:[T.withKeys(T.withModifiers(m,["prevent"]),["enter"]),T.withKeys(te,["escape"])],onBlur:m,ref_for:!0,ref:W=>{a.value===F&&(w.value=W)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===F?O.value:F),45,ps),T.createElementVNode("span",{class:"xml-node__equals",style:T.normalizeStyle({color:c.theme.colors.xmlEquals})},"=",4),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:c.theme.colors.xmlQuote})},'"',4),T.createElementVNode("span",{class:"xml-node__attr-value xml-node__attr-value--editable",style:T.normalizeStyle({color:c.theme.colors.xmlAttributeValue}),contenteditable:A.value===F,onDblclick:W=>q(F),onKeydown:[T.withKeys(T.withModifiers(B,["prevent"]),["enter"]),T.withKeys(Ee,["escape"])],onBlur:B,ref_for:!0,ref:W=>{A.value===F&&(P.value=W)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===F?u.value:de),45,ds),T.createElementVNode("span",{class:"xml-node__quote",style:T.normalizeStyle({color:c.theme.colors.xmlQuote})},'"',4)]))),128)),Q.value?(T.openBlock(),T.createElementBlock("span",{key:2,class:"xml-node__clickable-part",onClick:re[5]||(re[5]=de=>j()),title:Ce.value?"Click to collapse":"Click to expand"},[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},">",4)],8,Ps)):(T.openBlock(),T.createElementBlock("span",{key:3,class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},T.toDisplayString(Q.value?">":"/>"),5))]),Ce.value&&Q.value?(T.openBlock(),T.createElementBlock("div",fs,[k.value.length===0&&ne.value.trim()?(T.openBlock(),T.createElementBlock("div",hs,[T.createElementVNode("span",{class:"xml-node__text-content xml-node__text-content--editable",style:T.normalizeStyle({color:c.theme.colors.xmlText}),contenteditable:C.value,onDblclick:p,onKeydown:[T.withKeys(T.withModifiers(b,["prevent"]),["enter"]),T.withKeys(Re,["escape"])],onBlur:b,ref_key:"textContentRef",ref:J,title:"Double-click to edit text content"},T.toDisplayString(C.value?d.value:ne.value),45,Ms)])):T.createCommentVNode("",!0),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(k.value,(de,F)=>(T.openBlock(),T.createBlock(ge,{key:le(de,F),node:de,index:F,level:c.level+1,"parent-path":Ue(),expanded:c.expanded,theme:c.theme,selfClosingTags:c.selfClosingTags,onToggleExpand:re[6]||(re[6]=W=>c.$emit("toggle-expand",W)),onCopy:re[7]||(re[7]=W=>c.$emit("copy",W)),"onUpdate:tagName":re[8]||(re[8]=(W,ve,Qe)=>c.$emit("update:tagName",W,ve,Qe)),"onUpdate:attributeName":re[9]||(re[9]=(W,ve,Qe)=>c.$emit("update:attributeName",W,ve,Qe)),"onUpdate:attributeValue":re[10]||(re[10]=(W,ve,Qe)=>c.$emit("update:attributeValue",W,ve,Qe)),"onUpdate:textContent":re[11]||(re[11]=(W,ve)=>c.$emit("update:textContent",W,ve)),"onUpdate:cdataContent":re[12]||(re[12]=(W,ve)=>c.$emit("update:cdataContent",W,ve))},null,8,["node","index","level","parent-path","expanded","theme","selfClosingTags"]))),128))])):T.createCommentVNode("",!0),Ce.value&&Q.value?(T.openBlock(),T.createElementBlock("div",Us,[T.createElementVNode("span",{class:"xml-node__clickable-part",onClick:re[13]||(re[13]=de=>j()),title:"Click to collapse"},[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},"</",4),T.createElementVNode("span",{class:"xml-node__tag",style:T.normalizeStyle({color:c.theme.colors.xmlTag})},T.toDisplayString(s.value?i.value:z.value),5),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},">",4)])])):T.createCommentVNode("",!0)],64))]))])):T.createCommentVNode("",!0)],4)}}}),[["__scopeId","data-v-2ea5f623"]]),VE={"github-light":{name:"github-light",colors:{background:"#ffffff",surfaceBackground:"#f6f8fa",border:"#d0d7de",text:"#24292f",textSecondary:"#57606a",buttonBackground:"#f6f8fa",buttonBackgroundHover:"#f3f4f6",buttonBorder:"#d0d7de",buttonText:"#24292f",buttonPrimary:"#1f883d",buttonPrimaryHover:"#1a7f37",success:"#1f883d",successBackground:"#dafbe1",error:"#cf222e",errorBackground:"#ffebe9",xmlTag:"#116329",xmlAttribute:"#0550ae",xmlAttributeValue:"#0a3069",xmlText:"#24292f",xmlComment:"#6e7781",xmlCdata:"#8250df",xmlDeclaration:"#953800",xmlBracket:"#6e7781",xmlEquals:"#6e7781",xmlQuote:"#0550ae",collapsedBackground:"#ddf4ff",collapsedBackgroundHover:"#b6e3ff",collapsedText:"#0969da",indentLine:"#d0d7de"}},"github-dark":{name:"github-dark",colors:{background:"#0d1117",surfaceBackground:"#161b22",border:"#30363d",text:"#c9d1d9",textSecondary:"#8b949e",buttonBackground:"#21262d",buttonBackgroundHover:"#30363d",buttonBorder:"#30363d",buttonText:"#c9d1d9",buttonPrimary:"#238636",buttonPrimaryHover:"#2ea043",success:"#3fb950",successBackground:"#0f2e1c",error:"#f85149",errorBackground:"#3d1319",xmlTag:"#7ee787",xmlAttribute:"#79c0ff",xmlAttributeValue:"#a5d6ff",xmlText:"#c9d1d9",xmlComment:"#8b949e",xmlCdata:"#d2a8ff",xmlDeclaration:"#ffa657",xmlBracket:"#8b949e",xmlEquals:"#8b949e",xmlQuote:"#79c0ff",collapsedBackground:"#1c2128",collapsedBackgroundHover:"#2d333b",collapsedText:"#79c0ff",indentLine:"#30363d"}},"min-light":{name:"min-light",colors:{background:"#ffffff",surfaceBackground:"#fafafa",border:"#e5e5e5",text:"#171717",textSecondary:"#737373",buttonBackground:"#fafafa",buttonBackgroundHover:"#f5f5f5",buttonBorder:"#e5e5e5",buttonText:"#171717",buttonPrimary:"#22c55e",buttonPrimaryHover:"#16a34a",success:"#22c55e",successBackground:"#dcfce7",error:"#ef4444",errorBackground:"#fee2e2",xmlTag:"#16a34a",xmlAttribute:"#2563eb",xmlAttributeValue:"#1e40af",xmlText:"#171717",xmlComment:"#737373",xmlCdata:"#9333ea",xmlDeclaration:"#ea580c",xmlBracket:"#737373",xmlEquals:"#737373",xmlQuote:"#2563eb",collapsedBackground:"#e0f2fe",collapsedBackgroundHover:"#bae6fd",collapsedText:"#0284c7",indentLine:"#e5e7eb"}},"slack-ochin":{name:"slack-ochin",colors:{background:"#fef5ed",surfaceBackground:"#fef9f3",border:"#e9dcc9",text:"#3d3c40",textSecondary:"#616061",buttonBackground:"#fef9f3",buttonBackgroundHover:"#f9f0e5",buttonBorder:"#e9dcc9",buttonText:"#3d3c40",buttonPrimary:"#007a5a",buttonPrimaryHover:"#006644",success:"#007a5a",successBackground:"#d1f4e0",error:"#e01e5a",errorBackground:"#ffdbea",xmlTag:"#007a5a",xmlAttribute:"#1264a3",xmlAttributeValue:"#0b4c8c",xmlText:"#3d3c40",xmlComment:"#616061",xmlCdata:"#8b2eff",xmlDeclaration:"#e8912d",xmlBracket:"#616061",xmlEquals:"#616061",xmlQuote:"#1264a3",collapsedBackground:"#ffe8d6",collapsedBackgroundHover:"#ffd4b0",collapsedText:"#d73502",indentLine:"#e8d5b7"}}},Bs=E=>VE[E]||VE["github-light"],vE=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",gs=vE+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040",ys="["+vE+"]["+gs+"]*",Gs=new RegExp("^"+ys+"$");function wE(E,t){const r=[];let n=t.exec(E);for(;n;){const s=[];s.startIndex=t.lastIndex-n[0].length;const a=n.length;for(let A=0;A<a;A++)s.push(n[A]);r.push(s),n=t.exec(E)}return r}const xt=function(E){const t=Gs.exec(E);return!(t===null||typeof t>"u")};function Fs(E){return typeof E<"u"}const Hs={allowBooleanAttributes:!1,unpairedTags:[]};function WE(E,t){t=Object.assign({},Hs,t);const r=[];let n=!1,s=!1;E[0]==="\uFEFF"&&(E=E.substr(1));for(let a=0;a<E.length;a++)if(E[a]==="<"&&E[a+1]==="?"){if(a+=2,a=KE(E,a),a.err)return a}else if(E[a]==="<"){let A=a;if(a++,E[a]==="!"){a=kE(E,a);continue}else{let C=!1;E[a]==="/"&&(C=!0,a++);let I="";for(;a<E.length&&E[a]!==">"&&E[a]!==" "&&E[a]!==" "&&E[a]!==`
|
|
14
|
+
`&&E[a]!=="\r";a++)I+=E[a];if(I=I.trim(),I[I.length-1]==="/"&&(I=I.substring(0,I.length-1),a--),!Xs(I)){let u;return I.trim().length===0?u="Invalid space after '<'.":u="Tag '"+I+"' is an invalid name.",be("InvalidTag",u,ke(E,a))}const i=Ys(E,a);if(i===!1)return be("InvalidAttr","Attributes for '"+I+"' have open quote.",ke(E,a));let O=i.value;if(a=i.index,O[O.length-1]==="/"){const u=a-O.length;O=O.substring(0,O.length-1);const d=$E(O,t);if(d===!0)n=!0;else return be(d.err.code,d.err.msg,ke(E,u+d.err.line))}else if(C)if(i.tagClosed){if(O.trim().length>0)return be("InvalidTag","Closing tag '"+I+"' can't have attributes or invalid starting.",ke(E,A));if(r.length===0)return be("InvalidTag","Closing tag '"+I+"' has not been opened.",ke(E,A));{const u=r.pop();if(I!==u.tagName){let d=ke(E,u.tagStartPos);return be("InvalidTag","Expected closing tag '"+u.tagName+"' (opened in line "+d.line+", col "+d.col+") instead of closing tag '"+I+"'.",ke(E,A))}r.length==0&&(s=!0)}}else return be("InvalidTag","Closing tag '"+I+"' doesn't have proper closing.",ke(E,a));else{const u=$E(O,t);if(u!==!0)return be(u.err.code,u.err.msg,ke(E,a-O.length+u.err.line));if(s===!0)return be("InvalidXml","Multiple possible root nodes found.",ke(E,a));t.unpairedTags.indexOf(I)!==-1||r.push({tagName:I,tagStartPos:A}),n=!0}for(a++;a<E.length;a++)if(E[a]==="<")if(E[a+1]==="!"){a++,a=kE(E,a);continue}else if(E[a+1]==="?"){if(a=KE(E,++a),a.err)return a}else break;else if(E[a]==="&"){const u=ws(E,a);if(u==-1)return be("InvalidChar","char '&' is not expected.",ke(E,a));a=u}else if(s===!0&&!XE(E[a]))return be("InvalidXml","Extra text at the end",ke(E,a));E[a]==="<"&&a--}}else{if(XE(E[a]))continue;return be("InvalidChar","char '"+E[a]+"' is not expected.",ke(E,a))}if(n){if(r.length==1)return be("InvalidTag","Unclosed tag '"+r[0].tagName+"'.",ke(E,r[0].tagStartPos));if(r.length>0)return be("InvalidXml","Invalid '"+JSON.stringify(r.map(a=>a.tagName),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1})}else return be("InvalidXml","Start tag expected.",1);return!0}function XE(E){return E===" "||E===" "||E===`
|
|
15
|
+
`||E==="\r"}function KE(E,t){const r=t;for(;t<E.length;t++)if(E[t]=="?"||E[t]==" "){const n=E.substr(r,t-r);if(t>5&&n==="xml")return be("InvalidXml","XML declaration allowed only at the start of the document.",ke(E,t));if(E[t]=="?"&&E[t+1]==">"){t++;break}else continue}return t}function kE(E,t){if(E.length>t+5&&E[t+1]==="-"&&E[t+2]==="-"){for(t+=3;t<E.length;t++)if(E[t]==="-"&&E[t+1]==="-"&&E[t+2]===">"){t+=2;break}}else if(E.length>t+8&&E[t+1]==="D"&&E[t+2]==="O"&&E[t+3]==="C"&&E[t+4]==="T"&&E[t+5]==="Y"&&E[t+6]==="P"&&E[t+7]==="E"){let r=1;for(t+=8;t<E.length;t++)if(E[t]==="<")r++;else if(E[t]===">"&&(r--,r===0))break}else if(E.length>t+9&&E[t+1]==="["&&E[t+2]==="C"&&E[t+3]==="D"&&E[t+4]==="A"&&E[t+5]==="T"&&E[t+6]==="A"&&E[t+7]==="["){for(t+=8;t<E.length;t++)if(E[t]==="]"&&E[t+1]==="]"&&E[t+2]===">"){t+=2;break}}return t}const bs='"',xs="'";function Ys(E,t){let r="",n="",s=!1;for(;t<E.length;t++){if(E[t]===bs||E[t]===xs)n===""?n=E[t]:n!==E[t]||(n="");else if(E[t]===">"&&n===""){s=!0;break}r+=E[t]}return n!==""?!1:{value:r,index:t,tagClosed:s}}const Vs=new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`,"g");function $E(E,t){const r=wE(E,Vs),n={};for(let s=0;s<r.length;s++){if(r[s][1].length===0)return be("InvalidAttr","Attribute '"+r[s][2]+"' has no space in starting.",Bt(r[s]));if(r[s][3]!==void 0&&r[s][4]===void 0)return be("InvalidAttr","Attribute '"+r[s][2]+"' is without value.",Bt(r[s]));if(r[s][3]===void 0&&!t.allowBooleanAttributes)return be("InvalidAttr","boolean attribute '"+r[s][2]+"' is not allowed.",Bt(r[s]));const a=r[s][2];if(!Ws(a))return be("InvalidAttr","Attribute '"+a+"' is an invalid name.",Bt(r[s]));if(!n.hasOwnProperty(a))n[a]=1;else return be("InvalidAttr","Attribute '"+a+"' is repeated.",Bt(r[s]))}return!0}function vs(E,t){let r=/\d/;for(E[t]==="x"&&(t++,r=/[\da-fA-F]/);t<E.length;t++){if(E[t]===";")return t;if(!E[t].match(r))break}return-1}function ws(E,t){if(t++,E[t]===";")return-1;if(E[t]==="#")return t++,vs(E,t);let r=0;for(;t<E.length;t++,r++)if(!(E[t].match(/\w/)&&r<20)){if(E[t]===";")break;return-1}return t}function be(E,t,r){return{err:{code:E,msg:t,line:r.line||r,col:r.col}}}function Ws(E){return xt(E)}function Xs(E){return xt(E)}function ke(E,t){const r=E.substring(0,t).split(/\r?\n/);return{line:r.length,col:r[r.length-1].length+1}}function Bt(E){return E.startIndex+E[1].length}const Ks={preserveOrder:!1,attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,removeNSPrefix:!1,allowBooleanAttributes:!1,parseTagValue:!0,parseAttributeValue:!1,trimValues:!0,cdataPropName:!1,numberParseOptions:{hex:!0,leadingZeros:!0,eNotation:!0},tagValueProcessor:function(E,t){return t},attributeValueProcessor:function(E,t){return t},stopNodes:[],alwaysCreateTextNode:!1,isArray:()=>!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(E,t,r){return E},captureMetaData:!1},ks=function(E){return Object.assign({},Ks,E)};let Yt;typeof Symbol!="function"?Yt="@@xmlMetadata":Yt=Symbol("XML Node Metadata");class ct{constructor(t){this.tagname=t,this.child=[],this[":@"]={}}add(t,r){t==="__proto__"&&(t="#__proto__"),this.child.push({[t]:r})}addChild(t,r){t.tagname==="__proto__"&&(t.tagname="#__proto__"),t[":@"]&&Object.keys(t[":@"]).length>0?this.child.push({[t.tagname]:t.child,":@":t[":@"]}):this.child.push({[t.tagname]:t.child}),r!==void 0&&(this.child[this.child.length-1][Yt]={startIndex:r})}static getMetaDataSymbol(){return Yt}}class $s{constructor(t){this.suppressValidationErr=!t}readDocType(t,r){const n={};if(t[r+3]==="O"&&t[r+4]==="C"&&t[r+5]==="T"&&t[r+6]==="Y"&&t[r+7]==="P"&&t[r+8]==="E"){r=r+9;let s=1,a=!1,A=!1,C="";for(;r<t.length;r++)if(t[r]==="<"&&!A){if(a&&_t(t,"!ENTITY",r)){r+=7;let I,i;[I,i,r]=this.readEntityExp(t,r+1,this.suppressValidationErr),i.indexOf("&")===-1&&(n[I]={regx:RegExp(`&${I};`,"g"),val:i})}else if(a&&_t(t,"!ELEMENT",r)){r+=8;const{index:I}=this.readElementExp(t,r+1);r=I}else if(a&&_t(t,"!ATTLIST",r))r+=8;else if(a&&_t(t,"!NOTATION",r)){r+=9;const{index:I}=this.readNotationExp(t,r+1,this.suppressValidationErr);r=I}else if(_t(t,"!--",r))A=!0;else throw new Error("Invalid DOCTYPE");s++,C=""}else if(t[r]===">"){if(A?t[r-1]==="-"&&t[r-2]==="-"&&(A=!1,s--):s--,s===0)break}else t[r]==="["?a=!0:C+=t[r];if(s!==0)throw new Error("Unclosed DOCTYPE")}else throw new Error("Invalid Tag instead of DOCTYPE");return{entities:n,i:r}}readEntityExp(t,r){r=$e(t,r);let n="";for(;r<t.length&&!/\s/.test(t[r])&&t[r]!=='"'&&t[r]!=="'";)n+=t[r],r++;if(gt(n),r=$e(t,r),!this.suppressValidationErr){if(t.substring(r,r+6).toUpperCase()==="SYSTEM")throw new Error("External entities are not supported");if(t[r]==="%")throw new Error("Parameter entities are not supported")}let s="";return[r,s]=this.readIdentifierVal(t,r,"entity"),r--,[n,s,r]}readNotationExp(t,r){r=$e(t,r);let n="";for(;r<t.length&&!/\s/.test(t[r]);)n+=t[r],r++;!this.suppressValidationErr&>(n),r=$e(t,r);const s=t.substring(r,r+6).toUpperCase();if(!this.suppressValidationErr&&s!=="SYSTEM"&&s!=="PUBLIC")throw new Error(`Expected SYSTEM or PUBLIC, found "${s}"`);r+=s.length,r=$e(t,r);let a=null,A=null;if(s==="PUBLIC")[r,a]=this.readIdentifierVal(t,r,"publicIdentifier"),r=$e(t,r),(t[r]==='"'||t[r]==="'")&&([r,A]=this.readIdentifierVal(t,r,"systemIdentifier"));else if(s==="SYSTEM"&&([r,A]=this.readIdentifierVal(t,r,"systemIdentifier"),!this.suppressValidationErr&&!A))throw new Error("Missing mandatory system identifier for SYSTEM notation");return{notationName:n,publicIdentifier:a,systemIdentifier:A,index:--r}}readIdentifierVal(t,r,n){let s="";const a=t[r];if(a!=='"'&&a!=="'")throw new Error(`Expected quoted string, found "${a}"`);for(r++;r<t.length&&t[r]!==a;)s+=t[r],r++;if(t[r]!==a)throw new Error(`Unterminated ${n} value`);return r++,[r,s]}readElementExp(t,r){r=$e(t,r);let n="";for(;r<t.length&&!/\s/.test(t[r]);)n+=t[r],r++;if(!this.suppressValidationErr&&!xt(n))throw new Error(`Invalid element name: "${n}"`);r=$e(t,r);let s="";if(t[r]==="E"&&_t(t,"MPTY",r))r+=4;else if(t[r]==="A"&&_t(t,"NY",r))r+=2;else if(t[r]==="("){for(r++;r<t.length&&t[r]!==")";)s+=t[r],r++;if(t[r]!==")")throw new Error("Unterminated content model")}else if(!this.suppressValidationErr)throw new Error(`Invalid Element Expression, found "${t[r]}"`);return{elementName:n,contentModel:s.trim(),index:r}}readAttlistExp(t,r){r=$e(t,r);let n="";for(;r<t.length&&!/\s/.test(t[r]);)n+=t[r],r++;gt(n),r=$e(t,r);let s="";for(;r<t.length&&!/\s/.test(t[r]);)s+=t[r],r++;if(!gt(s))throw new Error(`Invalid attribute name: "${s}"`);r=$e(t,r);let a="";if(t.substring(r,r+8).toUpperCase()==="NOTATION"){if(a="NOTATION",r+=8,r=$e(t,r),t[r]!=="(")throw new Error(`Expected '(', found "${t[r]}"`);r++;let C=[];for(;r<t.length&&t[r]!==")";){let I="";for(;r<t.length&&t[r]!=="|"&&t[r]!==")";)I+=t[r],r++;if(I=I.trim(),!gt(I))throw new Error(`Invalid notation name: "${I}"`);C.push(I),t[r]==="|"&&(r++,r=$e(t,r))}if(t[r]!==")")throw new Error("Unterminated list of notations");r++,a+=" ("+C.join("|")+")"}else{for(;r<t.length&&!/\s/.test(t[r]);)a+=t[r],r++;const C=["CDATA","ID","IDREF","IDREFS","ENTITY","ENTITIES","NMTOKEN","NMTOKENS"];if(!this.suppressValidationErr&&!C.includes(a.toUpperCase()))throw new Error(`Invalid attribute type: "${a}"`)}r=$e(t,r);let A="";return t.substring(r,r+8).toUpperCase()==="#REQUIRED"?(A="#REQUIRED",r+=8):t.substring(r,r+7).toUpperCase()==="#IMPLIED"?(A="#IMPLIED",r+=7):[r,A]=this.readIdentifierVal(t,r,"ATTLIST"),{elementName:n,attributeName:s,attributeType:a,defaultValue:A,index:r}}}const $e=(E,t)=>{for(;t<E.length&&/\s/.test(E[t]);)t++;return t};function _t(E,t,r){for(let n=0;n<t.length;n++)if(t[n]!==E[r+n+1])return!1;return!0}function gt(E){if(xt(E))return E;throw new Error(`Invalid entity name ${E}`)}const qs=/^[-+]?0x[a-fA-F0-9]+$/,Js=/^([\-\+])?(0*)([0-9]*(\.[0-9]*)?)$/,Qs={hex:!0,leadingZeros:!0,decimalPoint:".",eNotation:!0};function Zs(E,t={}){if(t=Object.assign({},Qs,t),!E||typeof E!="string")return E;let r=E.trim();if(t.skipLike!==void 0&&t.skipLike.test(r))return E;if(E==="0")return 0;if(t.hex&&qs.test(r))return tT(r,16);if(r.search(/.+[eE].+/)!==-1)return zs(E,r,t);{const n=Js.exec(r);if(n){const s=n[1]||"",a=n[2];let A=eT(n[3]);const C=s?E[a.length+1]===".":E[a.length]===".";if(!t.leadingZeros&&(a.length>1||a.length===1&&!C))return E;{const I=Number(r),i=String(I);if(I===0)return I;if(i.search(/[eE]/)!==-1)return t.eNotation?I:E;if(r.indexOf(".")!==-1)return i==="0"||i===A||i===`${s}${A}`?I:E;let O=a?A:r;return a?O===i||s+O===i?I:E:O===i||O===s+i?I:E}}else return E}}const js=/^([-+])?(0*)(\d*(\.\d*)?[eE][-\+]?\d+)$/;function zs(E,t,r){if(!r.eNotation)return E;const n=t.match(js);if(n){let s=n[1]||"";const a=n[3].indexOf("e")===-1?"E":"e",A=n[2],C=s?E[A.length+1]===a:E[A.length]===a;return A.length>1&&C?E:A.length===1&&(n[3].startsWith(`.${a}`)||n[3][0]===a)?Number(t):r.leadingZeros&&!C?(t=(n[1]||"")+n[3],Number(t)):E}else return E}function eT(E){return E&&E.indexOf(".")!==-1&&(E=E.replace(/0+$/,""),E==="."?E="0":E[0]==="."?E="0"+E:E[E.length-1]==="."&&(E=E.substring(0,E.length-1))),E}function tT(E,t){if(parseInt)return parseInt(E,t);if(Number.parseInt)return Number.parseInt(E,t);if(window&&window.parseInt)return window.parseInt(E,t);throw new Error("parseInt, Number.parseInt, window.parseInt are not supported")}function qE(E){return typeof E=="function"?E:Array.isArray(E)?t=>{for(const r of E)if(typeof r=="string"&&t===r||r instanceof RegExp&&r.test(t))return!0}:()=>!1}class ET{constructor(t){this.options=t,this.currentNode=null,this.tagsNodeStack=[],this.docTypeEntities={},this.lastEntities={apos:{regex:/&(apos|#39|#x27);/g,val:"'"},gt:{regex:/&(gt|#62|#x3E);/g,val:">"},lt:{regex:/&(lt|#60|#x3C);/g,val:"<"},quot:{regex:/&(quot|#34|#x22);/g,val:'"'}},this.ampEntity={regex:/&(amp|#38|#x26);/g,val:"&"},this.htmlEntities={space:{regex:/&(nbsp|#160);/g,val:" "},cent:{regex:/&(cent|#162);/g,val:"¢"},pound:{regex:/&(pound|#163);/g,val:"£"},yen:{regex:/&(yen|#165);/g,val:"¥"},euro:{regex:/&(euro|#8364);/g,val:"€"},copyright:{regex:/&(copy|#169);/g,val:"©"},reg:{regex:/&(reg|#174);/g,val:"®"},inr:{regex:/&(inr|#8377);/g,val:"₹"},num_dec:{regex:/&#([0-9]{1,7});/g,val:(r,n)=>String.fromCodePoint(Number.parseInt(n,10))},num_hex:{regex:/&#x([0-9a-fA-F]{1,6});/g,val:(r,n)=>String.fromCodePoint(Number.parseInt(n,16))}},this.addExternalEntities=rT,this.parseXml=aT,this.parseTextData=nT,this.resolveNameSpace=sT,this.buildAttributesMap=oT,this.isItStopNode=ST,this.replaceEntitiesValue=AT,this.readStopNodeData=IT,this.saveTextToParentTag=RT,this.addChild=iT,this.ignoreAttributesFn=qE(this.options.ignoreAttributes)}}function rT(E){const t=Object.keys(E);for(let r=0;r<t.length;r++){const n=t[r];this.lastEntities[n]={regex:new RegExp("&"+n+";","g"),val:E[n]}}}function nT(E,t,r,n,s,a,A){if(E!==void 0&&(this.options.trimValues&&!n&&(E=E.trim()),E.length>0)){A||(E=this.replaceEntitiesValue(E));const C=this.options.tagValueProcessor(t,E,r,s,a);return C==null?E:typeof C!=typeof E||C!==E?C:this.options.trimValues?Zt(E,this.options.parseTagValue,this.options.numberParseOptions):E.trim()===E?Zt(E,this.options.parseTagValue,this.options.numberParseOptions):E}}function sT(E){if(this.options.removeNSPrefix){const t=E.split(":"),r=E.charAt(0)==="/"?"/":"";if(t[0]==="xmlns")return"";t.length===2&&(E=r+t[1])}return E}const TT=new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`,"gm");function oT(E,t,r){if(this.options.ignoreAttributes!==!0&&typeof E=="string"){const n=wE(E,TT),s=n.length,a={};for(let A=0;A<s;A++){const C=this.resolveNameSpace(n[A][1]);if(this.ignoreAttributesFn(C,t))continue;let I=n[A][4],i=this.options.attributeNamePrefix+C;if(C.length)if(this.options.transformAttributeName&&(i=this.options.transformAttributeName(i)),i==="__proto__"&&(i="#__proto__"),I!==void 0){this.options.trimValues&&(I=I.trim()),I=this.replaceEntitiesValue(I);const O=this.options.attributeValueProcessor(C,I,t);O==null?a[i]=I:typeof O!=typeof I||O!==I?a[i]=O:a[i]=Zt(I,this.options.parseAttributeValue,this.options.numberParseOptions)}else this.options.allowBooleanAttributes&&(a[i]=!0)}if(!Object.keys(a).length)return;if(this.options.attributesGroupName){const A={};return A[this.options.attributesGroupName]=a,A}return a}}const aT=function(E){E=E.replace(/\r\n?/g,`
|
|
16
|
+
`);const t=new ct("!xml");let r=t,n="",s="";const a=new $s(this.options.processEntities);for(let A=0;A<E.length;A++)if(E[A]==="<")if(E[A+1]==="/"){const I=Lt(E,">",A,"Closing Tag is not closed.");let i=E.substring(A+2,I).trim();if(this.options.removeNSPrefix){const d=i.indexOf(":");d!==-1&&(i=i.substr(d+1))}this.options.transformTagName&&(i=this.options.transformTagName(i)),r&&(n=this.saveTextToParentTag(n,r,s));const O=s.substring(s.lastIndexOf(".")+1);if(i&&this.options.unpairedTags.indexOf(i)!==-1)throw new Error(`Unpaired tag can not be used as closing tag: </${i}>`);let u=0;O&&this.options.unpairedTags.indexOf(O)!==-1?(u=s.lastIndexOf(".",s.lastIndexOf(".")-1),this.tagsNodeStack.pop()):u=s.lastIndexOf("."),s=s.substring(0,u),r=this.tagsNodeStack.pop(),n="",A=I}else if(E[A+1]==="?"){let I=Qt(E,A,!1,"?>");if(!I)throw new Error("Pi Tag is not closed.");if(n=this.saveTextToParentTag(n,r,s),!(this.options.ignoreDeclaration&&I.tagName==="?xml"||this.options.ignorePiTags)){const i=new ct(I.tagName);i.add(this.options.textNodeName,""),I.tagName!==I.tagExp&&I.attrExpPresent&&(i[":@"]=this.buildAttributesMap(I.tagExp,s,I.tagName)),this.addChild(r,i,s,A)}A=I.closeIndex+1}else if(E.substr(A+1,3)==="!--"){const I=Lt(E,"-->",A+4,"Comment is not closed.");if(this.options.commentPropName){const i=E.substring(A+4,I-2);n=this.saveTextToParentTag(n,r,s),r.add(this.options.commentPropName,[{[this.options.textNodeName]:i}])}A=I}else if(E.substr(A+1,2)==="!D"){const I=a.readDocType(E,A);this.docTypeEntities=I.entities,A=I.i}else if(E.substr(A+1,2)==="!["){const I=Lt(E,"]]>",A,"CDATA is not closed.")-2,i=E.substring(A+9,I);n=this.saveTextToParentTag(n,r,s);let O=this.parseTextData(i,r.tagname,s,!0,!1,!0,!0);O==null&&(O=""),this.options.cdataPropName?r.add(this.options.cdataPropName,[{[this.options.textNodeName]:i}]):r.add(this.options.textNodeName,O),A=I+2}else{let I=Qt(E,A,this.options.removeNSPrefix),i=I.tagName;const O=I.rawTagName;let u=I.tagExp,d=I.attrExpPresent,U=I.closeIndex;this.options.transformTagName&&(i=this.options.transformTagName(i)),r&&n&&r.tagname!=="!xml"&&(n=this.saveTextToParentTag(n,r,s,!1));const M=r;M&&this.options.unpairedTags.indexOf(M.tagname)!==-1&&(r=this.tagsNodeStack.pop(),s=s.substring(0,s.lastIndexOf("."))),i!==t.tagname&&(s+=s?"."+i:i);const w=A;if(this.isItStopNode(this.options.stopNodes,s,i)){let P="";if(u.length>0&&u.lastIndexOf("/")===u.length-1)i[i.length-1]==="/"?(i=i.substr(0,i.length-1),s=s.substr(0,s.length-1),u=i):u=u.substr(0,u.length-1),A=I.closeIndex;else if(this.options.unpairedTags.indexOf(i)!==-1)A=I.closeIndex;else{const Z=this.readStopNodeData(E,O,U+1);if(!Z)throw new Error(`Unexpected end of ${O}`);A=Z.i,P=Z.tagContent}const J=new ct(i);i!==u&&d&&(J[":@"]=this.buildAttributesMap(u,s,i)),P&&(P=this.parseTextData(P,i,s,!0,d,!0,!0)),s=s.substr(0,s.lastIndexOf(".")),J.add(this.options.textNodeName,P),this.addChild(r,J,s,w)}else{if(u.length>0&&u.lastIndexOf("/")===u.length-1){i[i.length-1]==="/"?(i=i.substr(0,i.length-1),s=s.substr(0,s.length-1),u=i):u=u.substr(0,u.length-1),this.options.transformTagName&&(i=this.options.transformTagName(i));const P=new ct(i);i!==u&&d&&(P[":@"]=this.buildAttributesMap(u,s,i)),this.addChild(r,P,s,w),s=s.substr(0,s.lastIndexOf("."))}else{const P=new ct(i);this.tagsNodeStack.push(r),i!==u&&d&&(P[":@"]=this.buildAttributesMap(u,s,i)),this.addChild(r,P,s,w),r=P}n="",A=U}}else n+=E[A];return t.child};function iT(E,t,r,n){this.options.captureMetaData||(n=void 0);const s=this.options.updateTag(t.tagname,r,t[":@"]);s===!1||(typeof s=="string"&&(t.tagname=s),E.addChild(t,n))}const AT=function(E){if(this.options.processEntities){for(let t in this.docTypeEntities){const r=this.docTypeEntities[t];E=E.replace(r.regx,r.val)}for(let t in this.lastEntities){const r=this.lastEntities[t];E=E.replace(r.regex,r.val)}if(this.options.htmlEntities)for(let t in this.htmlEntities){const r=this.htmlEntities[t];E=E.replace(r.regex,r.val)}E=E.replace(this.ampEntity.regex,this.ampEntity.val)}return E};function RT(E,t,r,n){return E&&(n===void 0&&(n=t.child.length===0),E=this.parseTextData(E,t.tagname,r,!1,t[":@"]?Object.keys(t[":@"]).length!==0:!1,n),E!==void 0&&E!==""&&t.add(this.options.textNodeName,E),E=""),E}function ST(E,t,r){const n="*."+r;for(const s in E){const a=E[s];if(n===a||t===a)return!0}return!1}function NT(E,t,r=">"){let n,s="";for(let a=t;a<E.length;a++){let A=E[a];if(n)A===n&&(n="");else if(A==='"'||A==="'")n=A;else if(A===r[0])if(r[1]){if(E[a+1]===r[1])return{data:s,index:a}}else return{data:s,index:a};else A===" "&&(A=" ");s+=A}}function Lt(E,t,r,n){const s=E.indexOf(t,r);if(s===-1)throw new Error(n);return s+t.length-1}function Qt(E,t,r,n=">"){const s=NT(E,t+1,n);if(!s)return;let a=s.data;const A=s.index,C=a.search(/\s/);let I=a,i=!0;C!==-1&&(I=a.substring(0,C),a=a.substring(C+1).trimStart());const O=I;if(r){const u=I.indexOf(":");u!==-1&&(I=I.substr(u+1),i=I!==s.data.substr(u+1))}return{tagName:I,tagExp:a,closeIndex:A,attrExpPresent:i,rawTagName:O}}function IT(E,t,r){const n=r;let s=1;for(;r<E.length;r++)if(E[r]==="<")if(E[r+1]==="/"){const a=Lt(E,">",r,`${t} is not closed`);if(E.substring(r+2,a).trim()===t&&(s--,s===0))return{tagContent:E.substring(n,r),i:a};r=a}else if(E[r+1]==="?")r=Lt(E,"?>",r+1,"StopNode is not closed.");else if(E.substr(r+1,3)==="!--")r=Lt(E,"-->",r+3,"StopNode is not closed.");else if(E.substr(r+1,2)==="![")r=Lt(E,"]]>",r,"StopNode is not closed.")-2;else{const a=Qt(E,r,">");a&&((a&&a.tagName)===t&&a.tagExp[a.tagExp.length-1]!=="/"&&s++,r=a.closeIndex)}}function Zt(E,t,r){if(t&&typeof E=="string"){const n=E.trim();return n==="true"?!0:n==="false"?!1:Zs(E,r)}else return Fs(E)?E:""}const jt=ct.getMetaDataSymbol();function OT(E,t){return JE(E,t)}function JE(E,t,r){let n;const s={};for(let a=0;a<E.length;a++){const A=E[a],C=lT(A);let I="";if(r===void 0?I=C:I=r+"."+C,C===t.textNodeName)n===void 0?n=A[C]:n+=""+A[C];else{if(C===void 0)continue;if(A[C]){let i=JE(A[C],t,I);const O=CT(i,t);A[jt]!==void 0&&(i[jt]=A[jt]),A[":@"]?uT(i,A[":@"],I,t):Object.keys(i).length===1&&i[t.textNodeName]!==void 0&&!t.alwaysCreateTextNode?i=i[t.textNodeName]:Object.keys(i).length===0&&(t.alwaysCreateTextNode?i[t.textNodeName]="":i=""),s[C]!==void 0&&s.hasOwnProperty(C)?(Array.isArray(s[C])||(s[C]=[s[C]]),s[C].push(i)):t.isArray(C,I,O)?s[C]=[i]:s[C]=i}}}return typeof n=="string"?n.length>0&&(s[t.textNodeName]=n):n!==void 0&&(s[t.textNodeName]=n),s}function lT(E){const t=Object.keys(E);for(let r=0;r<t.length;r++){const n=t[r];if(n!==":@")return n}}function uT(E,t,r,n){if(t){const s=Object.keys(t),a=s.length;for(let A=0;A<a;A++){const C=s[A];n.isArray(C,r+"."+C,!0,!0)?E[C]=[t[C]]:E[C]=t[C]}}}function CT(E,t){const{textNodeName:r}=t,n=Object.keys(E).length;return!!(n===0||n===1&&(E[r]||typeof E[r]=="boolean"||E[r]===0))}class cT{constructor(t){this.externalEntities={},this.options=ks(t)}parse(t,r){if(typeof t!="string"&&t.toString)t=t.toString();else if(typeof t!="string")throw new Error("XML data is accepted in String or Bytes[] form.");if(r){r===!0&&(r={});const a=WE(t,r);if(a!==!0)throw Error(`${a.err.msg}:${a.err.line}:${a.err.col}`)}const n=new ET(this.options);n.addExternalEntities(this.externalEntities);const s=n.parseXml(t);return this.options.preserveOrder||s===void 0?s:OT(s,this.options)}addEntity(t,r){if(r.indexOf("&")!==-1)throw new Error("Entity value can't have '&'");if(t.indexOf("&")!==-1||t.indexOf(";")!==-1)throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for '
'");if(r==="&")throw new Error("An entity with value '&' is not permitted");this.externalEntities[t]=r}static getMetaDataSymbol(){return ct.getMetaDataSymbol()}}const _T=`
|
|
17
|
+
`;function LT(E,t){let r="";return t.format&&t.indentBy.length>0&&(r=_T),QE(E,t,"",r)}function QE(E,t,r,n){let s="",a=!1;for(let A=0;A<E.length;A++){const C=E[A],I=DT(C);if(I===void 0)continue;let i="";if(r.length===0?i=I:i=`${r}.${I}`,I===t.textNodeName){let M=C[I];pT(i,t)||(M=t.tagValueProcessor(I,M),M=jE(M,t)),a&&(s+=n),s+=M,a=!1;continue}else if(I===t.cdataPropName){a&&(s+=n),s+=`<![CDATA[${C[I][0][t.textNodeName]}]]>`,a=!1;continue}else if(I===t.commentPropName){s+=n+`<!--${C[I][0][t.textNodeName]}-->`,a=!0;continue}else if(I[0]==="?"){const M=ZE(C[":@"],t),w=I==="?xml"?"":n;let P=C[I][0][t.textNodeName];P=P.length!==0?" "+P:"",s+=w+`<${I}${P}${M}?>`,a=!0;continue}let O=n;O!==""&&(O+=t.indentBy);const u=ZE(C[":@"],t),d=n+`<${I}${u}`,U=QE(C[I],t,i,O);t.unpairedTags.indexOf(I)!==-1?t.suppressUnpairedNode?s+=d+">":s+=d+"/>":(!U||U.length===0)&&t.suppressEmptyNode?s+=d+"/>":U&&U.endsWith(">")?s+=d+`>${U}${n}</${I}>`:(s+=d+">",U&&n!==""&&(U.includes("/>")||U.includes("</"))?s+=n+t.indentBy+U+n:s+=U,s+=`</${I}>`),a=!0}return s}function DT(E){const t=Object.keys(E);for(let r=0;r<t.length;r++){const n=t[r];if(E.hasOwnProperty(n)&&n!==":@")return n}}function ZE(E,t){let r="";if(E&&!t.ignoreAttributes)for(let n in E){if(!E.hasOwnProperty(n))continue;let s=t.attributeValueProcessor(n,E[n]);s=jE(s,t),s===!0&&t.suppressBooleanAttributes?r+=` ${n.substr(t.attributeNamePrefix.length)}`:r+=` ${n.substr(t.attributeNamePrefix.length)}="${s}"`}return r}function pT(E,t){E=E.substr(0,E.length-t.textNodeName.length-1);let r=E.substr(E.lastIndexOf(".")+1);for(let n in t.stopNodes)if(t.stopNodes[n]===E||t.stopNodes[n]==="*."+r)return!0;return!1}function jE(E,t){if(E&&E.length>0&&t.processEntities)for(let r=0;r<t.entities.length;r++){const n=t.entities[r];E=E.replace(n.regex,n.val)}return E}const dT={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(E,t){return t},attributeValueProcessor:function(E,t){return t},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&"},{regex:new RegExp(">","g"),val:">"},{regex:new RegExp("<","g"),val:"<"},{regex:new RegExp("'","g"),val:"'"},{regex:new RegExp('"',"g"),val:"""}],processEntities:!0,stopNodes:[],oneListGroup:!1};function Nt(E){this.options=Object.assign({},dT,E),this.options.ignoreAttributes===!0||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.ignoreAttributesFn=qE(this.options.ignoreAttributes),this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=hT),this.processTextOrObjNode=PT,this.options.format?(this.indentate=fT,this.tagEndChar=`>
|
|
18
18
|
`,this.newLine=`
|
|
19
|
-
`):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}Nt.prototype.build=function(E){return this.options.preserveOrder?LT(E,this.options):(Array.isArray(E)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(E={[this.options.arrayNodeName]:E}),this.j2x(E,0,[]).val)},Nt.prototype.j2x=function(E,t,r){let n="",s="";const a=r.join(".");for(let A in E)if(Object.prototype.hasOwnProperty.call(E,A))if(typeof E[A]>"u")this.isAttribute(A)&&(s+="");else if(E[A]===null)this.isAttribute(A)||A===this.options.cdataPropName?s+="":A[0]==="?"?s+=this.indentate(t)+"<"+A+"?"+this.tagEndChar:s+=this.indentate(t)+"<"+A+"/"+this.tagEndChar;else if(E[A]instanceof Date)s+=this.buildTextValNode(E[A],A,"",t);else if(typeof E[A]!="object"){const
|
|
20
|
-
`+n),n}catch(r){throw new Error(`XML 构建失败: ${r instanceof Error?r.message:"Unknown error"}`)}},yT=(E,t)=>Array.isArray(E)?it(E,{format:!1,originalXml:t}):eE(E,{format:!1,showDeclaration:!1}),GT=(E,t)=>{const r=zt(E);return Array.isArray(r)?it(r,{indent:t?.indentBy,originalXml:E}):eE(r,t)},FT=(E,t)=>{const r=zE(t),n=new Map,s=a=>{for(const A of a){const
|
|
19
|
+
`):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}Nt.prototype.build=function(E){return this.options.preserveOrder?LT(E,this.options):(Array.isArray(E)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(E={[this.options.arrayNodeName]:E}),this.j2x(E,0,[]).val)},Nt.prototype.j2x=function(E,t,r){let n="",s="";const a=r.join(".");for(let A in E)if(Object.prototype.hasOwnProperty.call(E,A))if(typeof E[A]>"u")this.isAttribute(A)&&(s+="");else if(E[A]===null)this.isAttribute(A)||A===this.options.cdataPropName?s+="":A[0]==="?"?s+=this.indentate(t)+"<"+A+"?"+this.tagEndChar:s+=this.indentate(t)+"<"+A+"/"+this.tagEndChar;else if(E[A]instanceof Date)s+=this.buildTextValNode(E[A],A,"",t);else if(typeof E[A]!="object"){const C=this.isAttribute(A);if(C&&!this.ignoreAttributesFn(C,a))n+=this.buildAttrPairStr(C,""+E[A]);else if(!C)if(A===this.options.textNodeName){let I=this.options.tagValueProcessor(A,""+E[A]);s+=this.replaceEntitiesValue(I)}else s+=this.buildTextValNode(E[A],A,"",t)}else if(Array.isArray(E[A])){const C=E[A].length;let I="",i="";for(let O=0;O<C;O++){const u=E[A][O];if(!(typeof u>"u"))if(u===null)A[0]==="?"?s+=this.indentate(t)+"<"+A+"?"+this.tagEndChar:s+=this.indentate(t)+"<"+A+"/"+this.tagEndChar;else if(typeof u=="object")if(this.options.oneListGroup){const d=this.j2x(u,t+1,r.concat(A));I+=d.val,this.options.attributesGroupName&&u.hasOwnProperty(this.options.attributesGroupName)&&(i+=d.attrStr)}else I+=this.processTextOrObjNode(u,A,t,r);else if(this.options.oneListGroup){let d=this.options.tagValueProcessor(A,u);d=this.replaceEntitiesValue(d),I+=d}else I+=this.buildTextValNode(u,A,"",t)}this.options.oneListGroup&&(I=this.buildObjectNode(I,A,i,t)),s+=I}else if(this.options.attributesGroupName&&A===this.options.attributesGroupName){const C=Object.keys(E[A]),I=C.length;for(let i=0;i<I;i++)n+=this.buildAttrPairStr(C[i],""+E[A][C[i]])}else s+=this.processTextOrObjNode(E[A],A,t,r);return{attrStr:n,val:s}},Nt.prototype.buildAttrPairStr=function(E,t){return t=this.options.attributeValueProcessor(E,""+t),t=this.replaceEntitiesValue(t),this.options.suppressBooleanAttributes&&t==="true"?" "+E:" "+E+'="'+t+'"'};function PT(E,t,r,n){const s=this.j2x(E,r+1,n.concat(t));return E[this.options.textNodeName]!==void 0&&Object.keys(E).length===1?this.buildTextValNode(E[this.options.textNodeName],t,s.attrStr,r):this.buildObjectNode(s.val,t,s.attrStr,r)}Nt.prototype.buildObjectNode=function(E,t,r,n){if(E==="")return t[0]==="?"?this.indentate(n)+"<"+t+r+"?"+this.tagEndChar:this.indentate(n)+"<"+t+r+this.closeTag(t)+this.tagEndChar;{let s="</"+t+this.tagEndChar,a="";return t[0]==="?"&&(a="?",s=""),(r||r==="")&&E.indexOf("<")===-1?this.indentate(n)+"<"+t+r+a+">"+E+s:this.options.commentPropName!==!1&&t===this.options.commentPropName&&a.length===0?this.indentate(n)+`<!--${E}-->`+this.newLine:this.indentate(n)+"<"+t+r+a+this.tagEndChar+E+this.indentate(n)+s}},Nt.prototype.closeTag=function(E){let t="";return this.options.unpairedTags.indexOf(E)!==-1?this.options.suppressUnpairedNode||(t="/"):this.options.suppressEmptyNode?t="/":t=`></${E}`,t},Nt.prototype.buildTextValNode=function(E,t,r,n){if(this.options.cdataPropName!==!1&&t===this.options.cdataPropName)return this.indentate(n)+`<![CDATA[${E}]]>`+this.newLine;if(this.options.commentPropName!==!1&&t===this.options.commentPropName)return this.indentate(n)+`<!--${E}-->`+this.newLine;if(t[0]==="?")return this.indentate(n)+"<"+t+r+"?"+this.tagEndChar;{let s=this.options.tagValueProcessor(t,E);return s=this.replaceEntitiesValue(s),s===""?this.indentate(n)+"<"+t+r+this.closeTag(t)+this.tagEndChar:this.indentate(n)+"<"+t+r+">"+s+"</"+t+this.tagEndChar}},Nt.prototype.replaceEntitiesValue=function(E){if(E&&E.length>0&&this.options.processEntities)for(let t=0;t<this.options.entities.length;t++){const r=this.options.entities[t];E=E.replace(r.regex,r.val)}return E};function fT(E){return this.options.indentBy.repeat(E)}function hT(E){return E.startsWith(this.options.attributeNamePrefix)&&E!==this.options.textNodeName?E.substr(this.attrPrefixLen):!1}const MT={validate:WE},UT={ignoreAttributes:!1,attributeNamePrefix:"@_",textNodeName:"#text",ignoreDeclaration:!1,commentPropName:"#comment",cdataPropName:"__cdata",preserveOrder:!0,parseAttributeValue:!1,trimValues:!1,parseTagValue:!1,processEntities:!1,htmlEntities:!1,ignoreNameSpace:!1,allowBooleanAttributes:!0,unpairedTags:[],stopNodes:[],alwaysCreateTextNode:!1},mT={ignoreAttributes:!1,attributeNamePrefix:"@_",textNodeName:"#text",format:!0,indentBy:" ",suppressEmptyNode:!1,suppressBooleanAttributes:!1,suppressUnpairedNode:!1},BT=E=>{const t=/<!\[CDATA\[([\s\S]*?)\]\]>/g,r=[];let n;for(;(n=t.exec(E))!==null;)r.push({start:n.index,end:n.index+n[0].length});const s=O=>r.some(u=>O>=u.start&&O<u.end),a=/&([a-zA-Z0-9#]+);/g,A=["lt","gt","amp","quot","apos"];let C,I=1,i=0;for(;(C=a.exec(E))!==null;){const O=C[1],u=C.index;if(s(u))continue;const d=E.substring(i,u);if(I+=(d.match(/\n/g)||[]).length,i=u,O.startsWith("#")){const U=O.substring(1);if(U.startsWith("x")||U.startsWith("X")){const M=U.substring(1);if(!/^[0-9a-fA-F]+$/.test(M))return{valid:!1,error:`Line ${I}: Invalid hexadecimal character reference '&${O};'`}}else if(!/^[0-9]+$/.test(U))return{valid:!1,error:`Line ${I}: Invalid numeric character reference '&${O};'`};continue}if(!A.includes(O))return{valid:!1,error:`Line ${I}: Invalid entity reference '&${O};'. Valid predefined entities are: < > & " '`}}return{valid:!0}},gT=E=>{try{const t=MT.validate(E,{allowBooleanAttributes:!0});if(t!==!0)return{valid:!1,error:`Line ${t.err.line}: ${t.err.msg}`};const r=BT(E);return r.valid?{valid:!0}:r}catch(t){return{valid:!1,error:t instanceof Error?t.message:"Unknown validation error"}}},zt=(E,t)=>{try{return new cT({...UT,...t}).parse(E)}catch(r){throw new Error(`XML 解析失败: ${r instanceof Error?r.message:"Unknown error"}`)}},eE=(E,t)=>{try{let n=new Nt({...mT,format:t?.format??!0,indentBy:t?.indentBy??" "}).build(E);return t?.showDeclaration!==!1&&!n.startsWith("<?xml")&&(n=`<?xml version="1.0" encoding="UTF-8"?>
|
|
20
|
+
`+n),n}catch(r){throw new Error(`XML 构建失败: ${r instanceof Error?r.message:"Unknown error"}`)}},yT=(E,t)=>Array.isArray(E)?it(E,{format:!1,originalXml:t}):eE(E,{format:!1,showDeclaration:!1}),GT=(E,t)=>{const r=zt(E);return Array.isArray(r)?it(r,{indent:t?.indentBy,originalXml:E}):eE(r,t)},FT=(E,t)=>{const r=zE(t),n=new Map,s=a=>{for(const A of a){const C=Object.keys(A).find(O=>!O.startsWith(":")&&!O.startsWith("#")&&!O.startsWith("__")&&!O.startsWith("?"));if(!C)continue;const I=n.get(C)??0;n.set(C,I+1),A[":selfClosing"]=r.get(C)?.[I]??!1;const i=A[C];Array.isArray(i)&&i.length>0&&s(i)}};s(E)},HT=E=>{const t=new Set,r=/<([a-zA-Z0-9_-]+)(?:\s[^>]*)?\s*\/>/g;let n;for(;(n=r.exec(E))!==null;)t.add(n[1]);return t},zE=E=>{const t=new Map;let r=0;for(;r<E.length;){if(E.startsWith("<!--",r)){const n=E.indexOf("-->",r);r=n!==-1?n+3:E.length;continue}if(E.startsWith("<![CDATA[",r)){const n=E.indexOf("]]>",r);r=n!==-1?n+3:E.length;continue}if(E.startsWith("<?",r)){const n=E.indexOf("?>",r);r=n!==-1?n+2:E.length;continue}if(E.startsWith("</",r)){const n=E.indexOf(">",r);r=n!==-1?n+1:E.length;continue}if(E[r]==="<"){const n=E.slice(r+1).match(/^([a-zA-Z_][a-zA-Z0-9_:.-]*)/);if(n){const s=n[1];let a=r+1+s.length,A=!1,C="";for(;a<E.length;){const I=E[a];if(A)I===C&&(A=!1);else if(I==='"'||I==="'")A=!0,C=I;else if(I===">"){let i=a-1;for(;i>r&&(E[i]===" "||E[i]===" "||E[i]===`
|
|
21
21
|
`||E[i]==="\r");)i--;const O=E[i]==="/";t.has(s)||t.set(s,[]),t.get(s).push(O),r=a+1;break}a++}if(a>=E.length)break;continue}}r++}return t},it=(E,t={})=>{const r=t.indent!==void 0?t.indent:" ",n=t.level||0,s=t.format!==!1,a=s?r.repeat(n):"",A=s?`
|
|
22
|
-
`:"";let
|
|
23
|
-
`,
|
|
24
|
-
`:
|
|
25
|
-
`:
|
|
26
|
-
`)}),$+="</result>"):$=y.serializeToString(h),I.value=zt($),i.value="",T.nextTick(()=>{u()})}catch(P){i.value=P instanceof Error?P.message:"Filter execution error",I.value=null}},Q=()=>{I.value=null,i.value="",T.nextTick(()=>{u()})},Ce=()=>{p.value=!0,T.nextTick(()=>{u()})},_e=()=>{p.value=!1,T.nextTick(()=>{u()})},pe=async w=>{try{const P=typeof w=="string"?w:JSON.stringify(w,null,2);await navigator.clipboard.writeText(P),s("copy-success",P)}catch(P){const m=P instanceof Error?P:new Error("Copy failed");s("copy-error",m),console.error("Failed to copy value:",P)}},b=(w,P,m)=>{if(!(!a.value||!Array.isArray(a.value)))try{const h=w.split(/\./).filter(Boolean);let y=a.value;for(let M=0;M<h.length;M++){const z=h[M],re=z.match(/^(.+?)\[(\d+)\]$/);if(re){const Ae=re[1],le=parseInt(re[2]);if(M===h.length-1){if(Array.isArray(y)&&y[le]){const Ue=y[le];if(Ue[P]){const Se=Ue[P];delete Ue[P],Ue[m]=Se,C.value.has(P)&&(C.value.delete(P),C.value.add(m))}}}else Array.isArray(y)&&y[le]&&(y=y[le])}else y[z]&&(y=y[z])}const $=it(a.value,{indent:" ",originalXml:O.value||void 0});s("update:modelValue",$)}catch(h){console.error("Failed to update tag name:",h)}},j=(w,P,m)=>{if(!(!a.value||!Array.isArray(a.value)))try{const h=w.split(/\./).filter(Boolean);let y=a.value;for(let M=0;M<h.length;M++){const z=h[M],re=z.match(/^(.+?)\[(\d+)\]$/);if(re){const Ae=re[1],le=parseInt(re[2]);if(M===h.length-1){if(Array.isArray(y)&&y[le]){const Se=y[le][":@"];if(Se&&Se[`@_${P}`]!==void 0){const q=Se[`@_${P}`];delete Se[`@_${P}`],Se[`@_${m}`]=q}}}else Array.isArray(y)&&y[le]&&(y=y[le])}else y[z]&&(y=y[z])}const $=it(a.value,{indent:" ",originalXml:O.value||void 0});s("update:modelValue",$)}catch(h){console.error("Failed to update attribute name:",h)}},Ie=(w,P,m)=>{if(!(!a.value||!Array.isArray(a.value)))try{const h=w.split(/\./).filter(Boolean);let y=a.value;for(let M=0;M<h.length;M++){const z=h[M],re=z.match(/^(.+?)\[(\d+)\]$/);if(re){const Ae=re[1],le=parseInt(re[2]);if(M===h.length-1){if(Array.isArray(y)&&y[le]){const Se=y[le][":@"];Se&&Se[`@_${P}`]!==void 0&&(Se[`@_${P}`]=m)}}else Array.isArray(y)&&y[le]&&(y=y[le])}else y[z]&&(y=y[z])}const $=it(a.value,{indent:" ",originalXml:O.value||void 0});s("update:modelValue",$)}catch(h){console.error("Failed to update attribute value:",h)}},me=(w,P)=>{if(!(!a.value||!Array.isArray(a.value)))try{const m=w.split(/\./).filter(Boolean);let h=a.value,y="";for(let M=0;M<m.length;M++){const z=m[M],re=z.match(/^(.+?)\[(\d+)\]$/);if(re){const Ae=re[1],le=parseInt(re[2]);if(M===m.length-1){if(Array.isArray(h)&&h[le]){const Ue=h[le];if(y=Object.keys(Ue).find(Se=>!Se.startsWith(":")&&!Se.startsWith("#"))||"",y&&Array.isArray(Ue[y])){const Se=Ue[y],q=Se.findIndex(ge=>ge["#text"]!==void 0);q!==-1?Se[q]["#text"]=P:Se.push({"#text":P})}}}else Array.isArray(h)&&h[le]&&(h=h[le])}else h[z]&&(h=h[z])}const $=it(a.value,{indent:" ",originalXml:O.value||void 0});s("update:modelValue",$)}catch(m){console.error("Failed to update text content:",m)}},oe=(w,P)=>{if(!(!a.value||!Array.isArray(a.value)))try{const m=w.split(/\./).filter(Boolean);let h=a.value;for(let $=0;$<m.length;$++){const M=m[$],z=M.match(/^(.+?)\[(\d+)\]$/);if(z){const re=z[1],Ae=parseInt(z[2]);if($===m.length-1){if(Array.isArray(h)&&h[Ae]){const le=h[Ae],Ue=Object.keys(le).find(Se=>!Se.startsWith(":")&&!Se.startsWith("#"));if(Ue&&Array.isArray(le[Ue])){const Se=le[Ue],q=Se.findIndex(ge=>ge.__cdata!==void 0);if(q!==-1){const ge=Se[q];Array.isArray(ge.__cdata)&&ge.__cdata[0]&&(ge.__cdata[0]["#text"]=P)}else Se.push({__cdata:[{"#text":P}]})}}}else Array.isArray(h)&&h[Ae]&&(h=h[Ae])}else h[M]&&(h=h[M])}const y=it(a.value,{indent:" ",originalXml:O.value||void 0});s("update:modelValue",y)}catch(m){console.error("Failed to update CDATA content:",m)}};return T.watch(()=>n.modelValue,w=>{ce(w)},{immediate:!0}),t({copyXml:U,compressSource:v,formatSource:te,expandAll:u,collapseAll:ee,toggleExpand:W,filter:Ee,clearFilter:Q,sort:Ce,clearSort:_e,isSorted:()=>p.value,isValidXml:()=>g.value,getParsedXml:()=>a.value,getFilteredXml:()=>I.value,getExpandedNodes:()=>c.value,getParseError:()=>A.value,getFilterError:()=>i.value,parseXmlString:w=>ce(w),copyValue:w=>pe(w)}),(w,P)=>(T.openBlock(),T.createElementBlock("div",{class:T.normalizeClass(["xml-format",`xml-format--${k.value.name}`])},[T.createElementVNode("div",bT,[g.value?i.value?(T.openBlock(),T.createElementBlock("div",YT,[P[1]||(P[1]=T.createElementVNode("h4",null,"Filter Error:",-1)),T.createElementVNode("pre",null,T.toDisplayString(i.value),1)])):(T.openBlock(),T.createElementBlock("div",VT,[Z.value?(T.openBlock(),T.createElementBlock("div",{key:0,class:"xml-declaration",style:T.normalizeStyle({color:k.value.colors.xmlDeclaration})},T.toDisplayString(Z.value),5)):T.createCommentVNode("",!0),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(De.value,(m,h)=>(T.openBlock(),T.createBlock(ms,{key:h,node:m.node,index:m.originalIndex,level:0,expanded:c.value,theme:k.value,selfClosingTags:C.value,onToggleExpand:W,onCopy:pe,"onUpdate:tagName":b,"onUpdate:attributeName":j,"onUpdate:attributeValue":Ie,"onUpdate:textContent":me,"onUpdate:cdataContent":oe},null,8,["node","index","expanded","theme","selfClosingTags"]))),128))])):(T.openBlock(),T.createElementBlock("div",xT,[P[0]||(P[0]=T.createElementVNode("h4",null,"XML Parse Error:",-1)),T.createElementVNode("pre",null,T.toDisplayString(A.value),1)]))])],2))}}),[["__scopeId","data-v-d4c202e6"]]),er={"github-light":{name:"github-light",colors:{background:"#ffffff",surfaceBackground:"#f6f8fa",hoverBackground:"#f3f4f6",border:"#d0d7de",text:"#24292f",textSecondary:"#57606a",buttonBackground:"#f6f8fa",buttonBackgroundHover:"#f3f4f6",buttonBorder:"#d0d7de",buttonText:"#24292f",buttonPrimary:"#1f883d",buttonPrimaryHover:"#1a7f37",success:"#1f883d",successBackground:"#dafbe1",error:"#cf222e",errorBackground:"#ffebe9",sqlKeyword:"#cf222e",sqlFunction:"#8250df",sqlString:"#0a3069",sqlNumber:"#0550ae",sqlComment:"#6e7781",sqlOperator:"#cf222e",sqlIdentifier:"#24292f",sqlPunctuation:"#24292f",collapsedBackground:"#ddf4ff",collapsedText:"#0969da",indentLine:"#d0d7de"}},"github-dark":{name:"github-dark",colors:{background:"#0d1117",surfaceBackground:"#161b22",hoverBackground:"#30363d",border:"#30363d",text:"#c9d1d9",textSecondary:"#8b949e",buttonBackground:"#21262d",buttonBackgroundHover:"#30363d",buttonBorder:"#30363d",buttonText:"#c9d1d9",buttonPrimary:"#238636",buttonPrimaryHover:"#2ea043",success:"#3fb950",successBackground:"#0f2e1c",error:"#f85149",errorBackground:"#3d1319",sqlKeyword:"#ff7b72",sqlFunction:"#d2a8ff",sqlString:"#a5d6ff",sqlNumber:"#79c0ff",sqlComment:"#8b949e",sqlOperator:"#ff7b72",sqlIdentifier:"#c9d1d9",sqlPunctuation:"#c9d1d9",collapsedBackground:"#1c2d41",collapsedText:"#58a6ff",indentLine:"#30363d"}},"min-light":{name:"min-light",colors:{background:"#ffffff",surfaceBackground:"#fafafa",hoverBackground:"#f9f9f9",border:"#e5e5e5",text:"#333333",textSecondary:"#888888",buttonBackground:"#f8f8f8",buttonBackgroundHover:"#eeeeee",buttonBorder:"#e0e0e0",buttonText:"#333333",buttonPrimary:"#007acc",buttonPrimaryHover:"#005a9e",success:"#22c55e",successBackground:"#f0fdf4",error:"#ef4444",errorBackground:"#fef2f2",sqlKeyword:"#22c55e",sqlFunction:"#8b5cf6",sqlString:"#ef4444",sqlNumber:"#3b82f6",sqlComment:"#6b7280",sqlOperator:"#ef4444",sqlIdentifier:"#1f2937",sqlPunctuation:"#374151",collapsedBackground:"#e0f2fe",collapsedText:"#0284c7",indentLine:"#e5e7eb"}},"slack-ochin":{name:"slack-ochin",colors:{background:"#fef5ed",surfaceBackground:"#fef9f3",hoverBackground:"#f9f0e5",border:"#e9dcc9",text:"#3d3c40",textSecondary:"#616061",buttonBackground:"#fef9f3",buttonBackgroundHover:"#f9f0e5",buttonBorder:"#e9dcc9",buttonText:"#3d3c40",buttonPrimary:"#007a5a",buttonPrimaryHover:"#006644",success:"#007a5a",successBackground:"#d1f4e0",error:"#e01e5a",errorBackground:"#ffdbea",sqlKeyword:"#e01e5a",sqlFunction:"#8b2eff",sqlString:"#0b4c8c",sqlNumber:"#1264a3",sqlComment:"#616061",sqlOperator:"#e01e5a",sqlIdentifier:"#3d3c40",sqlPunctuation:"#3d3c40",collapsedBackground:"#d8eaf5",collapsedText:"#0b4c8c",indentLine:"#3e4348"}}},wT=E=>er[E]||er["github-light"],G=E=>E.flatMap(WT),WT=E=>Vt(KT(E)).map(XT),XT=E=>E.replace(/ +/g," ").trim(),KT=E=>({type:"mandatory_block",items:tE(E,0)[0]}),tE=(E,t,r)=>{const n=[];for(;E[t];){const[s,a]=kT(E,t);if(n.push(s),t=a,E[t]==="|")t++;else if(E[t]==="}"||E[t]==="]"){if(r!==E[t])throw new Error(`Unbalanced parenthesis in: ${E}`);return t++,[n,t]}else if(t===E.length){if(r)throw new Error(`Unbalanced parenthesis in: ${E}`);return[n,t]}else throw new Error(`Unexpected "${E[t]}"`)}return[n,t]},kT=(E,t)=>{const r=[];for(;;){const[n,s]=$T(E,t);if(n)r.push(n),t=s;else break}return r.length===1?[r[0],t]:[{type:"concatenation",items:r},t]},$T=(E,t)=>{if(E[t]==="{")return qT(E,t+1);if(E[t]==="[")return JT(E,t+1);{let r="";for(;E[t]&&/[A-Za-z0-9_ ]/.test(E[t]);)r+=E[t],t++;return[r,t]}},qT=(E,t)=>{const[r,n]=tE(E,t,"}");return[{type:"mandatory_block",items:r},n]},JT=(E,t)=>{const[r,n]=tE(E,t,"]");return[{type:"optional_block",items:r},n]},Vt=E=>{if(typeof E=="string")return[E];if(E.type==="concatenation")return E.items.map(Vt).reduce(QT,[""]);if(E.type==="mandatory_block")return E.items.flatMap(Vt);if(E.type==="optional_block")return["",...E.items.flatMap(Vt)];throw new Error(`Unknown node type: ${E}`)},QT=(E,t)=>{const r=[];for(const n of E)for(const s of t)r.push(n+s);return r};var K;(function(E){E.QUOTED_IDENTIFIER="QUOTED_IDENTIFIER",E.IDENTIFIER="IDENTIFIER",E.STRING="STRING",E.VARIABLE="VARIABLE",E.RESERVED_DATA_TYPE="RESERVED_DATA_TYPE",E.RESERVED_PARAMETERIZED_DATA_TYPE="RESERVED_PARAMETERIZED_DATA_TYPE",E.RESERVED_KEYWORD="RESERVED_KEYWORD",E.RESERVED_FUNCTION_NAME="RESERVED_FUNCTION_NAME",E.RESERVED_KEYWORD_PHRASE="RESERVED_KEYWORD_PHRASE",E.RESERVED_DATA_TYPE_PHRASE="RESERVED_DATA_TYPE_PHRASE",E.RESERVED_SET_OPERATION="RESERVED_SET_OPERATION",E.RESERVED_CLAUSE="RESERVED_CLAUSE",E.RESERVED_SELECT="RESERVED_SELECT",E.RESERVED_JOIN="RESERVED_JOIN",E.ARRAY_IDENTIFIER="ARRAY_IDENTIFIER",E.ARRAY_KEYWORD="ARRAY_KEYWORD",E.CASE="CASE",E.END="END",E.WHEN="WHEN",E.ELSE="ELSE",E.THEN="THEN",E.LIMIT="LIMIT",E.BETWEEN="BETWEEN",E.AND="AND",E.OR="OR",E.XOR="XOR",E.OPERATOR="OPERATOR",E.COMMA="COMMA",E.ASTERISK="ASTERISK",E.PROPERTY_ACCESS_OPERATOR="PROPERTY_ACCESS_OPERATOR",E.OPEN_PAREN="OPEN_PAREN",E.CLOSE_PAREN="CLOSE_PAREN",E.LINE_COMMENT="LINE_COMMENT",E.BLOCK_COMMENT="BLOCK_COMMENT",E.DISABLE_COMMENT="DISABLE_COMMENT",E.NUMBER="NUMBER",E.NAMED_PARAMETER="NAMED_PARAMETER",E.QUOTED_PARAMETER="QUOTED_PARAMETER",E.NUMBERED_PARAMETER="NUMBERED_PARAMETER",E.POSITIONAL_PARAMETER="POSITIONAL_PARAMETER",E.CUSTOM_PARAMETER="CUSTOM_PARAMETER",E.DELIMITER="DELIMITER",E.EOF="EOF"})(K=K||(K={}));const tr=E=>({type:K.EOF,raw:"«EOF»",text:"«EOF»",start:E}),It=tr(1/0),ft=E=>t=>t.type===E.type&&t.text===E.text,Ot={ARRAY:ft({text:"ARRAY",type:K.RESERVED_DATA_TYPE}),BY:ft({text:"BY",type:K.RESERVED_KEYWORD}),SET:ft({text:"SET",type:K.RESERVED_CLAUSE}),STRUCT:ft({text:"STRUCT",type:K.RESERVED_DATA_TYPE}),WINDOW:ft({text:"WINDOW",type:K.RESERVED_CLAUSE}),VALUES:ft({text:"VALUES",type:K.RESERVED_CLAUSE})},Er=E=>E===K.RESERVED_DATA_TYPE||E===K.RESERVED_KEYWORD||E===K.RESERVED_FUNCTION_NAME||E===K.RESERVED_KEYWORD_PHRASE||E===K.RESERVED_DATA_TYPE_PHRASE||E===K.RESERVED_CLAUSE||E===K.RESERVED_SELECT||E===K.RESERVED_SET_OPERATION||E===K.RESERVED_JOIN||E===K.ARRAY_KEYWORD||E===K.CASE||E===K.END||E===K.WHEN||E===K.ELSE||E===K.THEN||E===K.LIMIT||E===K.BETWEEN||E===K.AND||E===K.OR||E===K.XOR,ZT=E=>E===K.AND||E===K.OR||E===K.XOR,jT=["KEYS.NEW_KEYSET","KEYS.ADD_KEY_FROM_RAW_BYTES","AEAD.DECRYPT_BYTES","AEAD.DECRYPT_STRING","AEAD.ENCRYPT","KEYS.KEYSET_CHAIN","KEYS.KEYSET_FROM_JSON","KEYS.KEYSET_TO_JSON","KEYS.ROTATE_KEYSET","KEYS.KEYSET_LENGTH","ANY_VALUE","ARRAY_AGG","AVG","CORR","COUNT","COUNTIF","COVAR_POP","COVAR_SAMP","MAX","MIN","ST_CLUSTERDBSCAN","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","VAR_POP","VAR_SAMP","ANY_VALUE","ARRAY_AGG","ARRAY_CONCAT_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","COUNTIF","LOGICAL_AND","LOGICAL_OR","MAX","MIN","STRING_AGG","SUM","APPROX_COUNT_DISTINCT","APPROX_QUANTILES","APPROX_TOP_COUNT","APPROX_TOP_SUM","ARRAY_CONCAT","ARRAY_LENGTH","ARRAY_TO_STRING","GENERATE_ARRAY","GENERATE_DATE_ARRAY","GENERATE_TIMESTAMP_ARRAY","ARRAY_REVERSE","OFFSET","SAFE_OFFSET","ORDINAL","SAFE_ORDINAL","BIT_COUNT","PARSE_BIGNUMERIC","PARSE_NUMERIC","SAFE_CAST","CURRENT_DATE","EXTRACT","DATE","DATE_ADD","DATE_SUB","DATE_DIFF","DATE_TRUNC","DATE_FROM_UNIX_DATE","FORMAT_DATE","LAST_DAY","PARSE_DATE","UNIX_DATE","CURRENT_DATETIME","DATETIME","EXTRACT","DATETIME_ADD","DATETIME_SUB","DATETIME_DIFF","DATETIME_TRUNC","FORMAT_DATETIME","LAST_DAY","PARSE_DATETIME","ERROR","EXTERNAL_QUERY","S2_CELLIDFROMPOINT","S2_COVERINGCELLIDS","ST_ANGLE","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_AZIMUTH","ST_BOUNDARY","ST_BOUNDINGBOX","ST_BUFFER","ST_BUFFERWITHTOLERANCE","ST_CENTROID","ST_CENTROID_AGG","ST_CLOSESTPOINT","ST_CLUSTERDBSCAN","ST_CONTAINS","ST_CONVEXHULL","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DUMP","ST_DWITHIN","ST_ENDPOINT","ST_EQUALS","ST_EXTENT","ST_EXTERIORRING","ST_GEOGFROM","ST_GEOGFROMGEOJSON","ST_GEOGFROMTEXT","ST_GEOGFROMWKB","ST_GEOGPOINT","ST_GEOGPOINTFROMGEOHASH","ST_GEOHASH","ST_GEOMETRYTYPE","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_INTERSECTSBOX","ST_ISCOLLECTION","ST_ISEMPTY","ST_LENGTH","ST_MAKELINE","ST_MAKEPOLYGON","ST_MAKEPOLYGONORIENTED","ST_MAXDISTANCE","ST_NPOINTS","ST_NUMGEOMETRIES","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SIMPLIFY","ST_SNAPTOGRID","ST_STARTPOINT","ST_TOUCHES","ST_UNION","ST_UNION_AGG","ST_WITHIN","ST_X","ST_Y","FARM_FINGERPRINT","MD5","SHA1","SHA256","SHA512","HLL_COUNT.INIT","HLL_COUNT.MERGE","HLL_COUNT.MERGE_PARTIAL","HLL_COUNT.EXTRACT","MAKE_INTERVAL","EXTRACT","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","JSON_EXTRACT","JSON_QUERY","JSON_EXTRACT_SCALAR","JSON_VALUE","JSON_EXTRACT_ARRAY","JSON_QUERY_ARRAY","JSON_EXTRACT_STRING_ARRAY","JSON_VALUE_ARRAY","TO_JSON_STRING","ABS","SIGN","IS_INF","IS_NAN","IEEE_DIVIDE","RAND","SQRT","POW","POWER","EXP","LN","LOG","LOG10","GREATEST","LEAST","DIV","SAFE_DIVIDE","SAFE_MULTIPLY","SAFE_NEGATE","SAFE_ADD","SAFE_SUBTRACT","MOD","ROUND","TRUNC","CEIL","CEILING","FLOOR","COS","COSH","ACOS","ACOSH","SIN","SINH","ASIN","ASINH","TAN","TANH","ATAN","ATANH","ATAN2","RANGE_BUCKET","FIRST_VALUE","LAST_VALUE","NTH_VALUE","LEAD","LAG","PERCENTILE_CONT","PERCENTILE_DISC","NET.IP_FROM_STRING","NET.SAFE_IP_FROM_STRING","NET.IP_TO_STRING","NET.IP_NET_MASK","NET.IP_TRUNC","NET.IPV4_FROM_INT64","NET.IPV4_TO_INT64","NET.HOST","NET.PUBLIC_SUFFIX","NET.REG_DOMAIN","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","NTILE","ROW_NUMBER","SESSION_USER","CORR","COVAR_POP","COVAR_SAMP","STDDEV_POP","STDDEV_SAMP","STDDEV","VAR_POP","VAR_SAMP","VARIANCE","ASCII","BYTE_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CODE_POINTS_TO_BYTES","CODE_POINTS_TO_STRING","CONCAT","CONTAINS_SUBSTR","ENDS_WITH","FORMAT","FROM_BASE32","FROM_BASE64","FROM_HEX","INITCAP","INSTR","LEFT","LENGTH","LPAD","LOWER","LTRIM","NORMALIZE","NORMALIZE_AND_CASEFOLD","OCTET_LENGTH","REGEXP_CONTAINS","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","REPEAT","REVERSE","RIGHT","RPAD","RTRIM","SAFE_CONVERT_BYTES_TO_STRING","SOUNDEX","SPLIT","STARTS_WITH","STRPOS","SUBSTR","SUBSTRING","TO_BASE32","TO_BASE64","TO_CODE_POINTS","TO_HEX","TRANSLATE","TRIM","UNICODE","UPPER","CURRENT_TIME","TIME","EXTRACT","TIME_ADD","TIME_SUB","TIME_DIFF","TIME_TRUNC","FORMAT_TIME","PARSE_TIME","CURRENT_TIMESTAMP","EXTRACT","STRING","TIMESTAMP","TIMESTAMP_ADD","TIMESTAMP_SUB","TIMESTAMP_DIFF","TIMESTAMP_TRUNC","FORMAT_TIMESTAMP","PARSE_TIMESTAMP","TIMESTAMP_SECONDS","TIMESTAMP_MILLIS","TIMESTAMP_MICROS","UNIX_SECONDS","UNIX_MILLIS","UNIX_MICROS","GENERATE_UUID","COALESCE","IF","IFNULL","NULLIF","AVG","BIT_AND","BIT_OR","BIT_XOR","CORR","COUNT","COVAR_POP","COVAR_SAMP","EXACT_COUNT_DISTINCT","FIRST","GROUP_CONCAT","GROUP_CONCAT_UNQUOTED","LAST","MAX","MIN","NEST","NTH","QUANTILES","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","TOP","UNIQUE","VARIANCE","VAR_POP","VAR_SAMP","BIT_COUNT","BOOLEAN","BYTES","CAST","FLOAT","HEX_STRING","INTEGER","STRING","COALESCE","GREATEST","IFNULL","IS_INF","IS_NAN","IS_EXPLICITLY_DEFINED","LEAST","NVL","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE","DATE_ADD","DATEDIFF","DAY","DAYOFWEEK","DAYOFYEAR","FORMAT_UTC_USEC","HOUR","MINUTE","MONTH","MSEC_TO_TIMESTAMP","NOW","PARSE_UTC_USEC","QUARTER","SEC_TO_TIMESTAMP","SECOND","STRFTIME_UTC_USEC","TIME","TIMESTAMP","TIMESTAMP_TO_MSEC","TIMESTAMP_TO_SEC","TIMESTAMP_TO_USEC","USEC_TO_TIMESTAMP","UTC_USEC_TO_DAY","UTC_USEC_TO_HOUR","UTC_USEC_TO_MONTH","UTC_USEC_TO_WEEK","UTC_USEC_TO_YEAR","WEEK","YEAR","FORMAT_IP","PARSE_IP","FORMAT_PACKED_IP","PARSE_PACKED_IP","JSON_EXTRACT","JSON_EXTRACT_SCALAR","ABS","ACOS","ACOSH","ASIN","ASINH","ATAN","ATANH","ATAN2","CEIL","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG2","LOG10","PI","POW","RADIANS","RAND","ROUND","SIN","SINH","SQRT","TAN","TANH","REGEXP_MATCH","REGEXP_EXTRACT","REGEXP_REPLACE","CONCAT","INSTR","LEFT","LENGTH","LOWER","LPAD","LTRIM","REPLACE","RIGHT","RPAD","RTRIM","SPLIT","SUBSTR","UPPER","TABLE_DATE_RANGE","TABLE_DATE_RANGE_STRICT","TABLE_QUERY","HOST","DOMAIN","TLD","AVG","COUNT","MAX","MIN","STDDEV","SUM","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","CURRENT_USER","EVERY","FROM_BASE64","HASH","FARM_FINGERPRINT","IF","POSITION","SHA1","SOME","TO_BASE64","BQ.JOBS.CANCEL","BQ.REFRESH_MATERIALIZED_VIEW","OPTIONS","PIVOT","UNPIVOT"],zT=["ALL","AND","ANY","AS","ASC","ASSERT_ROWS_MODIFIED","AT","BETWEEN","BY","CASE","CAST","COLLATE","CONTAINS","CREATE","CROSS","CUBE","CURRENT","DEFAULT","DEFINE","DESC","DISTINCT","ELSE","END","ENUM","ESCAPE","EXCEPT","EXCLUDE","EXISTS","EXTRACT","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","GROUP","GROUPING","GROUPS","HASH","HAVING","IF","IGNORE","IN","INNER","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LIMIT","LOOKUP","MERGE","NATURAL","NEW","NO","NOT","NULL","NULLS","OF","ON","OR","ORDER","OUTER","OVER","PARTITION","PRECEDING","PROTO","RANGE","RECURSIVE","RESPECT","RIGHT","ROLLUP","ROWS","SELECT","SET","SOME","TABLE","TABLESAMPLE","THEN","TO","TREAT","TRUE","UNBOUNDED","UNION","UNNEST","USING","WHEN","WHERE","WINDOW","WITH","WITHIN","SAFE","LIKE","COPY","CLONE","IN","OUT","INOUT","RETURNS","LANGUAGE","CASCADE","RESTRICT","DETERMINISTIC"],eo=["ARRAY","BOOL","BYTES","DATE","DATETIME","GEOGRAPHY","INTERVAL","INT64","INT","SMALLINT","INTEGER","BIGINT","TINYINT","BYTEINT","NUMERIC","DECIMAL","BIGNUMERIC","BIGDECIMAL","FLOAT64","STRING","STRUCT","TIME","TIMEZONE"],to=G(["SELECT [ALL | DISTINCT] [AS STRUCT | AS VALUE]"]),Eo=G(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","QUALIFY","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","OMIT RECORD IF","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY SOURCE | BY TARGET] [THEN]","UPDATE SET","CLUSTER BY","FOR SYSTEM_TIME AS OF","WITH CONNECTION","WITH PARTITION COLUMNS","REMOTE WITH CONNECTION"]),rr=G(["CREATE [OR REPLACE] [TEMP|TEMPORARY|SNAPSHOT|EXTERNAL] TABLE [IF NOT EXISTS]"]),EE=G(["CREATE [OR REPLACE] [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE [FROM]","DROP [SNAPSHOT | EXTERNAL] TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME TO","ALTER COLUMN [IF EXISTS]","SET DEFAULT COLLATE","SET OPTIONS","DROP NOT NULL","SET DATA TYPE","ALTER SCHEMA [IF EXISTS]","ALTER [MATERIALIZED] VIEW [IF EXISTS]","ALTER BI_CAPACITY","TRUNCATE TABLE","CREATE SCHEMA [IF NOT EXISTS]","DEFAULT COLLATE","CREATE [OR REPLACE] [TEMP|TEMPORARY|TABLE] FUNCTION [IF NOT EXISTS]","CREATE [OR REPLACE] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] ROW ACCESS POLICY [IF NOT EXISTS]","GRANT TO","FILTER USING","CREATE CAPACITY","AS JSON","CREATE RESERVATION","CREATE ASSIGNMENT","CREATE SEARCH INDEX [IF NOT EXISTS]","DROP SCHEMA [IF EXISTS]","DROP [MATERIALIZED] VIEW [IF EXISTS]","DROP [TABLE] FUNCTION [IF EXISTS]","DROP PROCEDURE [IF EXISTS]","DROP ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","DROP CAPACITY [IF EXISTS]","DROP RESERVATION [IF EXISTS]","DROP ASSIGNMENT [IF EXISTS]","DROP SEARCH INDEX [IF EXISTS]","DROP [IF EXISTS]","GRANT","REVOKE","DECLARE","EXECUTE IMMEDIATE","LOOP","END LOOP","REPEAT","END REPEAT","WHILE","END WHILE","BREAK","LEAVE","CONTINUE","ITERATE","FOR","END FOR","BEGIN","BEGIN TRANSACTION","COMMIT TRANSACTION","ROLLBACK TRANSACTION","RAISE","RETURN","CALL","ASSERT","EXPORT DATA"]),ro=G(["UNION {ALL | DISTINCT}","EXCEPT DISTINCT","INTERSECT DISTINCT"]),no=G(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),so=G(["TABLESAMPLE SYSTEM","ANY TYPE","ALL COLUMNS","NOT DETERMINISTIC","{ROWS | RANGE} BETWEEN","IS [NOT] DISTINCT FROM"]),To=G([]),oo={name:"bigquery",tokenizerOptions:{reservedSelect:to,reservedClauses:[...Eo,...EE,...rr],reservedSetOperations:ro,reservedJoins:no,reservedKeywordPhrases:so,reservedDataTypePhrases:To,reservedKeywords:zT,reservedDataTypes:eo,reservedFunctionNames:jT,extraParens:["[]"],stringTypes:[{quote:'""".."""',prefixes:["R","B","RB","BR"]},{quote:"'''..'''",prefixes:["R","B","RB","BR"]},'""-bs',"''-bs",{quote:'""-raw',prefixes:["R","B","RB","BR"],requirePrefix:!0},{quote:"''-raw",prefixes:["R","B","RB","BR"],requirePrefix:!0}],identTypes:["``"],identChars:{dashes:!0},paramTypes:{positional:!0,named:["@"],quoted:["@"]},variableTypes:[{regex:String.raw`@@\w+`}],lineCommentTypes:["--","#"],operators:["&","|","^","~",">>","<<","||","=>"],postProcess:ao},formatOptions:{onelineClauses:[...rr,...EE],tabularOnelineClauses:EE}};function ao(E){return io(Ao(E))}function io(E){let t=It;return E.map(r=>r.text==="OFFSET"&&t.text==="["?(t=r,Object.assign(Object.assign({},r),{type:K.RESERVED_FUNCTION_NAME})):(t=r,r))}function Ao(E){var t;const r=[];for(let n=0;n<E.length;n++){const s=E[n];if((Ot.ARRAY(s)||Ot.STRUCT(s))&&((t=E[n+1])===null||t===void 0?void 0:t.text)==="<"){const a=Ro(E,n+1),A=E.slice(n,a+1);r.push({type:K.IDENTIFIER,raw:A.map(nr("raw")).join(""),text:A.map(nr("text")).join(""),start:s.start}),n=a}else r.push(s)}return r}const nr=E=>t=>t.type===K.IDENTIFIER||t.type===K.COMMA?t[E]+" ":t[E];function Ro(E,t){let r=0;for(let n=t;n<E.length;n++){const s=E[n];if(s.text==="<"?r++:s.text===">"?r--:s.text===">>"&&(r-=2),r===0)return n}return E.length-1}const So=["BIT_AND","BIT_OR","BIT_XOR","BLAKE3","CAST","CHARACTER_LENGTH","CHAR_LENGTH","COVAR_POP","COVAR_SAMP","CRC32","CRC32IEEE","CRC64","DATE","DATE_DIFF","DATE_FORMAT","DATE_TRUNC","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","FORMAT_BYTES","FQDN","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","HOUR","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","IPv4CIDRToRange","IPv4NumToString","IPv4NumToStringClassC","IPv4StringToNum","IPv4StringToNumOrDefault","IPv4StringToNumOrNull","IPv4ToIPv6","IPv6CIDRToRange","IPv6NumToString","IPv6StringToNum","IPv6StringToNumOrDefault","IPv6StringToNumOrNull","JSONAllPaths","JSONAllPathsWithTypes","JSONArrayLength","JSONDynamicPaths","JSONDynamicPathsWithTypes","JSONExtract","JSONExtractArrayRaw","JSONExtractArrayRawCaseInsensitive","JSONExtractBool","JSONExtractBoolCaseInsensitive","JSONExtractCaseInsensitive","JSONExtractFloat","JSONExtractFloatCaseInsensitive","JSONExtractInt","JSONExtractIntCaseInsensitive","JSONExtractKeys","JSONExtractKeysAndValues","JSONExtractKeysAndValuesCaseInsensitive","JSONExtractKeysAndValuesRaw","JSONExtractKeysAndValuesRawCaseInsensitive","JSONExtractKeysCaseInsensitive","JSONExtractRaw","JSONExtractRawCaseInsensitive","JSONExtractString","JSONExtractStringCaseInsensitive","JSONExtractUInt","JSONExtractUIntCaseInsensitive","JSONHas","JSONKey","JSONLength","JSONMergePatch","JSONSharedDataPaths","JSONSharedDataPathsWithTypes","JSONType","JSON_ARRAY_LENGTH","JSON_EXISTS","JSON_QUERY","JSON_VALUE","L1Distance","L1Norm","L1Normalize","L2Distance","L2Norm","L2Normalize","L2SquaredDistance","L2SquaredNorm","LAST_DAY","LinfDistance","LinfNorm","LinfNormalize","LpDistance","LpNorm","LpNormalize","MACNumToString","MACStringToNum","MACStringToOUI","MAP_FROM_ARRAYS","MD4","MD5","MILLISECOND","MINUTE","MONTH","OCTET_LENGTH","QUARTER","REGEXP_EXTRACT","REGEXP_MATCHES","REGEXP_REPLACE","RIPEMD160","SCHEMA","SECOND","SHA1","SHA224","SHA256","SHA384","SHA512","SHA512_256","STD","STDDEV_POP","STDDEV_SAMP","ST_LineFromWKB","ST_MLineFromWKB","ST_MPolyFromWKB","ST_PointFromWKB","ST_PolyFromWKB","SUBSTRING_INDEX","SVG","TIMESTAMP_DIFF","TO_BASE64","TO_DAYS","TO_UNIXTIME","ULIDStringToDateTime","URLHash","URLHierarchy","URLPathHierarchy","UTCTimestamp","UTC_timestamp","UUIDNumToString","UUIDStringToNum","UUIDToNum","UUIDv7ToDateTime","VAR_POP","VAR_SAMP","YEAR","YYYYMMDDToDate","YYYYMMDDToDate32","YYYYMMDDhhmmssToDateTime","YYYYMMDDhhmmssToDateTime64","_CAST","__actionName","__bitBoolMaskAnd","__bitBoolMaskOr","__bitSwapLastTwo","__bitWrapperFunc","__getScalar","__patchPartitionID","__scalarSubqueryResult","abs","accurateCast","accurateCastOrDefault","accurateCastOrNull","acos","acosh","addDate","addDays","addHours","addInterval","addMicroseconds","addMilliseconds","addMinutes","addMonths","addNanoseconds","addQuarters","addSeconds","addTupleOfIntervals","addWeeks","addYears","addressToLine","addressToLineWithInlines","addressToSymbol","aes_decrypt_mysql","aes_encrypt_mysql","age","aggThrow","alphaTokens","analysisOfVariance","anova","any","anyHeavy","anyLast","anyLastRespectNulls","anyLast_respect_nulls","anyRespectNulls","anyValueRespectNulls","any_respect_nulls","any_value","any_value_respect_nulls","appendTrailingCharIfAbsent","approx_top_count","approx_top_k","approx_top_sum","argMax","argMin","array","arrayAUC","arrayAUCPR","arrayAll","arrayAvg","arrayCompact","arrayConcat","arrayCount","arrayCumSum","arrayCumSumNonNegative","arrayDifference","arrayDistinct","arrayDotProduct","arrayElement","arrayElementOrNull","arrayEnumerate","arrayEnumerateDense","arrayEnumerateDenseRanked","arrayEnumerateUniq","arrayEnumerateUniqRanked","arrayExists","arrayFill","arrayFilter","arrayFirst","arrayFirstIndex","arrayFirstOrNull","arrayFlatten","arrayFold","arrayIntersect","arrayJaccardIndex","arrayJoin","arrayLast","arrayLastIndex","arrayLastOrNull","arrayLevenshteinDistance","arrayLevenshteinDistanceWeighted","arrayMap","arrayMax","arrayMin","arrayNormalizedGini","arrayPRAUC","arrayPartialReverseSort","arrayPartialShuffle","arrayPartialSort","arrayPopBack","arrayPopFront","arrayProduct","arrayPushBack","arrayPushFront","arrayROCAUC","arrayRandomSample","arrayReduce","arrayReduceInRanges","arrayResize","arrayReverse","arrayReverseFill","arrayReverseSort","arrayReverseSplit","arrayRotateLeft","arrayRotateRight","arrayShiftLeft","arrayShiftRight","arrayShingles","arrayShuffle","arraySimilarity","arraySlice","arraySort","arraySplit","arrayStringConcat","arraySum","arraySymmetricDifference","arrayUnion","arrayUniq","arrayWithConstant","arrayZip","arrayZipUnaligned","array_agg","array_concat_agg","ascii","asin","asinh","assumeNotNull","atan","atan2","atanh","authenticatedUser","avg","avgWeighted","bar","base32Decode","base32Encode","base58Decode","base58Encode","base64Decode","base64Encode","base64URLDecode","base64URLEncode","basename","bech32Decode","bech32Encode","bin","bitAnd","bitCount","bitHammingDistance","bitNot","bitOr","bitPositionsToArray","bitRotateLeft","bitRotateRight","bitShiftLeft","bitShiftRight","bitSlice","bitTest","bitTestAll","bitTestAny","bitXor","bitmapAnd","bitmapAndCardinality","bitmapAndnot","bitmapAndnotCardinality","bitmapBuild","bitmapCardinality","bitmapContains","bitmapHasAll","bitmapHasAny","bitmapMax","bitmapMin","bitmapOr","bitmapOrCardinality","bitmapSubsetInRange","bitmapSubsetLimit","bitmapToArray","bitmapTransform","bitmapXor","bitmapXorCardinality","bitmaskToArray","bitmaskToList","blockNumber","blockSerializedSize","blockSize","boundingRatio","buildId","byteHammingDistance","byteSize","byteSlice","byteSwap","caseWithExpr","caseWithExpression","caseWithoutExpr","caseWithoutExpression","catboostEvaluate","categoricalInformationValue","cbrt","ceil","ceiling","changeDay","changeHour","changeMinute","changeMonth","changeSecond","changeYear","char","cityHash64","clamp","coalesce","colorOKLCHToSRGB","colorSRGBToOKLCH","compareSubstrings","concat","concatAssumeInjective","concatWithSeparator","concatWithSeparatorAssumeInjective","concat_ws","connectionId","connection_id","contingency","convertCharset","corr","corrMatrix","corrStable","cos","cosh","cosineDistance","count","countDigits","countEqual","countMatches","countMatchesCaseInsensitive","countSubstrings","countSubstringsCaseInsensitive","countSubstringsCaseInsensitiveUTF8","covarPop","covarPopMatrix","covarPopStable","covarSamp","covarSampMatrix","covarSampStable","cramersV","cramersVBiasCorrected","curdate","currentDatabase","currentProfiles","currentQueryID","currentRoles","currentSchemas","currentUser","current_database","current_date","current_query_id","current_schemas","current_timestamp","current_user","cutFragment","cutIPv6","cutQueryString","cutQueryStringAndFragment","cutToFirstSignificantSubdomain","cutToFirstSignificantSubdomainCustom","cutToFirstSignificantSubdomainCustomRFC","cutToFirstSignificantSubdomainCustomWithWWW","cutToFirstSignificantSubdomainCustomWithWWWRFC","cutToFirstSignificantSubdomainRFC","cutToFirstSignificantSubdomainWithWWW","cutToFirstSignificantSubdomainWithWWWRFC","cutURLParameter","cutWWW","damerauLevenshteinDistance","dateDiff","dateName","dateTime64ToSnowflake","dateTime64ToSnowflakeID","dateTimeToSnowflake","dateTimeToSnowflakeID","dateTimeToUUIDv7","dateTrunc","date_bin","date_diff","decodeHTMLComponent","decodeURLComponent","decodeURLFormComponent","decodeXMLComponent","decrypt","defaultProfiles","defaultRoles","defaultValueOfArgumentType","defaultValueOfTypeName","degrees","deltaSum","deltaSumTimestamp","demangle","denseRank","dense_rank","detectCharset","detectLanguage","detectLanguageMixed","detectLanguageUnknown","detectProgrammingLanguage","detectTonality","dictGet","dictGetAll","dictGetChildren","dictGetDate","dictGetDateOrDefault","dictGetDateTime","dictGetDateTimeOrDefault","dictGetDescendants","dictGetFloat32","dictGetFloat32OrDefault","dictGetFloat64","dictGetFloat64OrDefault","dictGetHierarchy","dictGetIPv4","dictGetIPv4OrDefault","dictGetIPv6","dictGetIPv6OrDefault","dictGetInt16","dictGetInt16OrDefault","dictGetInt32","dictGetInt32OrDefault","dictGetInt64","dictGetInt64OrDefault","dictGetInt8","dictGetInt8OrDefault","dictGetOrDefault","dictGetOrNull","dictGetString","dictGetStringOrDefault","dictGetUInt16","dictGetUInt16OrDefault","dictGetUInt32","dictGetUInt32OrDefault","dictGetUInt64","dictGetUInt64OrDefault","dictGetUInt8","dictGetUInt8OrDefault","dictGetUUID","dictGetUUIDOrDefault","dictHas","dictIsIn","displayName","distanceL1","distanceL2","distanceL2Squared","distanceLinf","distanceLp","distinctDynamicTypes","distinctJSONPaths","distinctJSONPathsAndTypes","divide","divideDecimal","divideOrNull","domain","domainRFC","domainWithoutWWW","domainWithoutWWWRFC","dotProduct","dumpColumnStructure","dynamicElement","dynamicType","e","editDistance","editDistanceUTF8","empty","emptyArrayDate","emptyArrayDateTime","emptyArrayFloat32","emptyArrayFloat64","emptyArrayInt16","emptyArrayInt32","emptyArrayInt64","emptyArrayInt8","emptyArrayString","emptyArrayToSingle","emptyArrayUInt16","emptyArrayUInt32","emptyArrayUInt64","emptyArrayUInt8","enabledProfiles","enabledRoles","encodeURLComponent","encodeURLFormComponent","encodeXMLComponent","encrypt","endsWith","endsWithUTF8","entropy","equals","erf","erfc","errorCodeToName","estimateCompressionRatio","evalMLMethod","exp","exp10","exp2","exponentialMovingAverage","exponentialTimeDecayedAvg","exponentialTimeDecayedCount","exponentialTimeDecayedMax","exponentialTimeDecayedSum","extract","extractAll","extractAllGroups","extractAllGroupsHorizontal","extractAllGroupsVertical","extractGroups","extractKeyValuePairs","extractKeyValuePairsWithEscaping","extractTextFromHTML","extractURLParameter","extractURLParameterNames","extractURLParameters","factorial","farmFingerprint64","farmHash64","file","filesystemAvailable","filesystemCapacity","filesystemUnreserved","finalizeAggregation","financialInternalRateOfReturn","financialInternalRateOfReturnExtended","financialNetPresentValue","financialNetPresentValueExtended","firstLine","firstSignificantSubdomain","firstSignificantSubdomainCustom","firstSignificantSubdomainCustomRFC","firstSignificantSubdomainRFC","firstValueRespectNulls","first_value","first_value_respect_nulls","flameGraph","flatten","flattenTuple","floor","formatDateTime","formatDateTimeInJodaSyntax","formatQuery","formatQueryOrNull","formatQuerySingleLine","formatQuerySingleLineOrNull","formatReadableDecimalSize","formatReadableQuantity","formatReadableSize","formatReadableTimeDelta","formatRow","formatRowNoNewline","fragment","fromDaysSinceYearZero","fromDaysSinceYearZero32","fromModifiedJulianDay","fromModifiedJulianDayOrNull","fromUTCTimestamp","fromUnixTimestamp","fromUnixTimestamp64Micro","fromUnixTimestamp64Milli","fromUnixTimestamp64Nano","fromUnixTimestamp64Second","fromUnixTimestampInJodaSyntax","from_utc_timestamp","fullHostName","fuzzBits","gccMurmurHash","gcd","generateRandomStructure","generateSerialID","generateSnowflakeID","generateULID","generateUUIDv4","generateUUIDv7","geoDistance","geoToH3","geoToS2","geohashDecode","geohashEncode","geohashesInBox","getClientHTTPHeader","getMacro","getMaxTableNameLengthForDatabase","getMergeTreeSetting","getOSKernelVersion","getServerPort","getServerSetting","getSetting","getSettingOrDefault","getSizeOfEnumType","getSubcolumn","getTypeSerializationStreams","globalIn","globalInIgnoreSet","globalNotIn","globalNotInIgnoreSet","globalNotNullIn","globalNotNullInIgnoreSet","globalNullIn","globalNullInIgnoreSet","globalVariable","greatCircleAngle","greatCircleDistance","greater","greaterOrEquals","greatest","groupArray","groupArrayInsertAt","groupArrayIntersect","groupArrayLast","groupArrayMovingAvg","groupArrayMovingSum","groupArraySample","groupArraySorted","groupBitAnd","groupBitOr","groupBitXor","groupBitmap","groupBitmapAnd","groupBitmapOr","groupBitmapXor","groupConcat","groupNumericIndexedVector","groupUniqArray","group_concat","h3CellAreaM2","h3CellAreaRads2","h3Distance","h3EdgeAngle","h3EdgeLengthKm","h3EdgeLengthM","h3ExactEdgeLengthKm","h3ExactEdgeLengthM","h3ExactEdgeLengthRads","h3GetBaseCell","h3GetDestinationIndexFromUnidirectionalEdge","h3GetFaces","h3GetIndexesFromUnidirectionalEdge","h3GetOriginIndexFromUnidirectionalEdge","h3GetPentagonIndexes","h3GetRes0Indexes","h3GetResolution","h3GetUnidirectionalEdge","h3GetUnidirectionalEdgeBoundary","h3GetUnidirectionalEdgesFromHexagon","h3HexAreaKm2","h3HexAreaM2","h3HexRing","h3IndexesAreNeighbors","h3IsPentagon","h3IsResClassIII","h3IsValid","h3Line","h3NumHexagons","h3PointDistKm","h3PointDistM","h3PointDistRads","h3ToCenterChild","h3ToChildren","h3ToGeo","h3ToGeoBoundary","h3ToParent","h3ToString","h3UnidirectionalEdgeIsValid","h3kRing","halfMD5","has","hasAll","hasAny","hasColumnInTable","hasSubsequence","hasSubsequenceCaseInsensitive","hasSubsequenceCaseInsensitiveUTF8","hasSubsequenceUTF8","hasSubstr","hasThreadFuzzer","hasToken","hasTokenCaseInsensitive","hasTokenCaseInsensitiveOrNull","hasTokenOrNull","hex","hilbertDecode","hilbertEncode","histogram","hiveHash","hop","hopEnd","hopStart","hostName","hostname","hypot","icebergBucket","icebergHash","icebergTruncate","identity","idnaDecode","idnaEncode","if","ifNotFinite","ifNull","ignore","inIgnoreSet","indexHint","indexOf","indexOfAssumeSorted","initcap","initcapUTF8","initialQueryID","initialQueryStartTime","initial_query_id","initial_query_start_time","initializeAggregation","instr","intDiv","intDivOrNull","intDivOrZero","intExp10","intExp2","intHash32","intHash64","intervalLengthSum","isConstant","isDecimalOverflow","isDynamicElementInSharedData","isFinite","isIPAddressInRange","isIPv4String","isIPv6String","isInfinite","isMergeTreePartCoveredBy","isNaN","isNotDistinctFrom","isNotNull","isNull","isNullable","isValidJSON","isValidUTF8","isZeroOrNull","jaroSimilarity","jaroWinklerSimilarity","javaHash","javaHashUTF16LE","joinGet","joinGetOrNull","jsonMergePatch","jumpConsistentHash","kafkaMurmurHash","keccak256","kolmogorovSmirnovTest","kostikConsistentHash","kql_array_sort_asc","kql_array_sort_desc","kurtPop","kurtSamp","lag","lagInFrame","largestTriangleThreeBuckets","lastValueRespectNulls","last_value","last_value_respect_nulls","lcase","lcm","lead","leadInFrame","least","left","leftPad","leftPadUTF8","leftUTF8","lemmatize","length","lengthUTF8","less","lessOrEquals","levenshteinDistance","levenshteinDistanceUTF8","lgamma","ln","locate","log","log10","log1p","log2","logTrace","lowCardinalityIndices","lowCardinalityKeys","lower","lowerUTF8","lpad","ltrim","lttb","makeDate","makeDate32","makeDateTime","makeDateTime64","mannWhitneyUTest","map","mapAdd","mapAll","mapApply","mapConcat","mapContains","mapContainsKey","mapContainsKeyLike","mapContainsValue","mapContainsValueLike","mapExists","mapExtractKeyLike","mapExtractValueLike","mapFilter","mapFromArrays","mapFromString","mapKeys","mapPartialReverseSort","mapPartialSort","mapPopulateSeries","mapReverseSort","mapSort","mapSubtract","mapUpdate","mapValues","match","materialize","max","max2","maxIntersections","maxIntersectionsPosition","maxMappedArrays","meanZTest","median","medianBFloat16","medianBFloat16Weighted","medianDD","medianDeterministic","medianExact","medianExactHigh","medianExactLow","medianExactWeighted","medianExactWeightedInterpolated","medianGK","medianInterpolatedWeighted","medianTDigest","medianTDigestWeighted","medianTiming","medianTimingWeighted","mergeTreePartInfo","metroHash64","mid","min","min2","minMappedArrays","minSampleSizeContinous","minSampleSizeContinuous","minSampleSizeConversion","minus","mismatches","mod","modOrNull","modulo","moduloLegacy","moduloOrNull","moduloOrZero","monthName","mortonDecode","mortonEncode","multiFuzzyMatchAllIndices","multiFuzzyMatchAny","multiFuzzyMatchAnyIndex","multiIf","multiMatchAllIndices","multiMatchAny","multiMatchAnyIndex","multiSearchAllPositions","multiSearchAllPositionsCaseInsensitive","multiSearchAllPositionsCaseInsensitiveUTF8","multiSearchAllPositionsUTF8","multiSearchAny","multiSearchAnyCaseInsensitive","multiSearchAnyCaseInsensitiveUTF8","multiSearchAnyUTF8","multiSearchFirstIndex","multiSearchFirstIndexCaseInsensitive","multiSearchFirstIndexCaseInsensitiveUTF8","multiSearchFirstIndexUTF8","multiSearchFirstPosition","multiSearchFirstPositionCaseInsensitive","multiSearchFirstPositionCaseInsensitiveUTF8","multiSearchFirstPositionUTF8","multiply","multiplyDecimal","murmurHash2_32","murmurHash2_64","murmurHash3_128","murmurHash3_32","murmurHash3_64","negate","neighbor","nested","netloc","ngramDistance","ngramDistanceCaseInsensitive","ngramDistanceCaseInsensitiveUTF8","ngramDistanceUTF8","ngramMinHash","ngramMinHashArg","ngramMinHashArgCaseInsensitive","ngramMinHashArgCaseInsensitiveUTF8","ngramMinHashArgUTF8","ngramMinHashCaseInsensitive","ngramMinHashCaseInsensitiveUTF8","ngramMinHashUTF8","ngramSearch","ngramSearchCaseInsensitive","ngramSearchCaseInsensitiveUTF8","ngramSearchUTF8","ngramSimHash","ngramSimHashCaseInsensitive","ngramSimHashCaseInsensitiveUTF8","ngramSimHashUTF8","ngrams","nonNegativeDerivative","normL1","normL2","normL2Squared","normLinf","normLp","normalizeL1","normalizeL2","normalizeLinf","normalizeLp","normalizeQuery","normalizeQueryKeepNames","normalizeUTF8NFC","normalizeUTF8NFD","normalizeUTF8NFKC","normalizeUTF8NFKD","normalizedQueryHash","normalizedQueryHashKeepNames","notEmpty","notEquals","notILike","notIn","notInIgnoreSet","notLike","notNullIn","notNullInIgnoreSet","nothing","nothingNull","nothingUInt64","now","now64","nowInBlock","nowInBlock64","nth_value","ntile","nullIf","nullIn","nullInIgnoreSet","numbers","numericIndexedVectorAllValueSum","numericIndexedVectorBuild","numericIndexedVectorCardinality","numericIndexedVectorGetValue","numericIndexedVectorPointwiseAdd","numericIndexedVectorPointwiseDivide","numericIndexedVectorPointwiseEqual","numericIndexedVectorPointwiseGreater","numericIndexedVectorPointwiseGreaterEqual","numericIndexedVectorPointwiseLess","numericIndexedVectorPointwiseLessEqual","numericIndexedVectorPointwiseMultiply","numericIndexedVectorPointwiseNotEqual","numericIndexedVectorPointwiseSubtract","numericIndexedVectorShortDebugString","numericIndexedVectorToMap","overlay","overlayUTF8","parseDateTime","parseDateTime32BestEffort","parseDateTime32BestEffortOrNull","parseDateTime32BestEffortOrZero","parseDateTime64","parseDateTime64BestEffort","parseDateTime64BestEffortOrNull","parseDateTime64BestEffortOrZero","parseDateTime64BestEffortUS","parseDateTime64BestEffortUSOrNull","parseDateTime64BestEffortUSOrZero","parseDateTime64InJodaSyntax","parseDateTime64InJodaSyntaxOrNull","parseDateTime64InJodaSyntaxOrZero","parseDateTime64OrNull","parseDateTime64OrZero","parseDateTimeBestEffort","parseDateTimeBestEffortOrNull","parseDateTimeBestEffortOrZero","parseDateTimeBestEffortUS","parseDateTimeBestEffortUSOrNull","parseDateTimeBestEffortUSOrZero","parseDateTimeInJodaSyntax","parseDateTimeInJodaSyntaxOrNull","parseDateTimeInJodaSyntaxOrZero","parseDateTimeOrNull","parseDateTimeOrZero","parseReadableSize","parseReadableSizeOrNull","parseReadableSizeOrZero","parseTimeDelta","partitionID","partitionId","path","pathFull","percentRank","percent_rank","pi","plus","pmod","pmodOrNull","pointInEllipses","pointInPolygon","polygonAreaCartesian","polygonAreaSpherical","polygonConvexHullCartesian","polygonPerimeterCartesian","polygonPerimeterSpherical","polygonsDistanceCartesian","polygonsDistanceSpherical","polygonsEqualsCartesian","polygonsIntersectCartesian","polygonsIntersectSpherical","polygonsIntersectionCartesian","polygonsIntersectionSpherical","polygonsSymDifferenceCartesian","polygonsSymDifferenceSpherical","polygonsUnionCartesian","polygonsUnionSpherical","polygonsWithinCartesian","polygonsWithinSpherical","port","portRFC","position","positionCaseInsensitive","positionCaseInsensitiveUTF8","positionUTF8","positiveModulo","positiveModuloOrNull","positive_modulo","positive_modulo_or_null","pow","power","printf","proportionsZTest","protocol","punycodeDecode","punycodeEncode","quantile","quantileBFloat16","quantileBFloat16Weighted","quantileDD","quantileDeterministic","quantileExact","quantileExactExclusive","quantileExactHigh","quantileExactInclusive","quantileExactLow","quantileExactWeighted","quantileExactWeightedInterpolated","quantileGK","quantileInterpolatedWeighted","quantileTDigest","quantileTDigestWeighted","quantileTiming","quantileTimingWeighted","quantiles","quantilesBFloat16","quantilesBFloat16Weighted","quantilesDD","quantilesDeterministic","quantilesExact","quantilesExactExclusive","quantilesExactHigh","quantilesExactInclusive","quantilesExactLow","quantilesExactWeighted","quantilesExactWeightedInterpolated","quantilesGK","quantilesInterpolatedWeighted","quantilesTDigest","quantilesTDigestWeighted","quantilesTiming","quantilesTimingWeighted","queryID","queryString","queryStringAndFragment","query_id","radians","rand","rand32","rand64","randBernoulli","randBinomial","randCanonical","randChiSquared","randConstant","randExponential","randFisherF","randLogNormal","randNegativeBinomial","randNormal","randPoisson","randStudentT","randUniform","randomFixedString","randomPrintableASCII","randomString","randomStringUTF8","rank","rankCorr","readWKBLineString","readWKBMultiLineString","readWKBMultiPolygon","readWKBPoint","readWKBPolygon","readWKTLineString","readWKTMultiLineString","readWKTMultiPolygon","readWKTPoint","readWKTPolygon","readWKTRing","regexpExtract","regexpQuoteMeta","regionHierarchy","regionIn","regionToArea","regionToCity","regionToContinent","regionToCountry","regionToDistrict","regionToName","regionToPopulation","regionToTopContinent","reinterpret","reinterpretAsDate","reinterpretAsDateTime","reinterpretAsFixedString","reinterpretAsFloat32","reinterpretAsFloat64","reinterpretAsInt128","reinterpretAsInt16","reinterpretAsInt256","reinterpretAsInt32","reinterpretAsInt64","reinterpretAsInt8","reinterpretAsString","reinterpretAsUInt128","reinterpretAsUInt16","reinterpretAsUInt256","reinterpretAsUInt32","reinterpretAsUInt64","reinterpretAsUInt8","reinterpretAsUUID","repeat","replace","replaceAll","replaceOne","replaceRegexpAll","replaceRegexpOne","replicate","retention","reverse","reverseUTF8","revision","right","rightPad","rightPadUTF8","rightUTF8","round","roundAge","roundBankers","roundDown","roundDuration","roundToExp2","rowNumberInAllBlocks","rowNumberInBlock","row_number","rpad","rtrim","runningAccumulate","runningConcurrency","runningDifference","runningDifferenceStartingWithFirstValue","s2CapContains","s2CapUnion","s2CellsIntersect","s2GetNeighbors","s2RectAdd","s2RectContains","s2RectIntersection","s2RectUnion","s2ToGeo","scalarProduct","searchAll","searchAny","sequenceCount","sequenceMatch","sequenceMatchEvents","sequenceNextNode","seriesDecomposeSTL","seriesOutliersDetectTukey","seriesPeriodDetectFFT","serverTimeZone","serverTimezone","serverUUID","shardCount","shardNum","showCertificate","sigmoid","sign","simpleJSONExtractBool","simpleJSONExtractFloat","simpleJSONExtractInt","simpleJSONExtractRaw","simpleJSONExtractString","simpleJSONExtractUInt","simpleJSONHas","simpleLinearRegression","sin","singleValueOrNull","sinh","sipHash128","sipHash128Keyed","sipHash128Reference","sipHash128ReferenceKeyed","sipHash64","sipHash64Keyed","skewPop","skewSamp","sleep","sleepEachRow","snowflakeIDToDateTime","snowflakeIDToDateTime64","snowflakeToDateTime","snowflakeToDateTime64","soundex","space","sparkBar","sparkbar","sparseGrams","sparseGramsHashes","sparseGramsHashesUTF8","sparseGramsUTF8","splitByAlpha","splitByChar","splitByNonAlpha","splitByRegexp","splitByString","splitByWhitespace","sqid","sqidDecode","sqidEncode","sqrt","startsWith","startsWithUTF8","stddevPop","stddevPopStable","stddevSamp","stddevSampStable","stem","stochasticLinearRegression","stochasticLogisticRegression","str_to_date","str_to_map","stringBytesEntropy","stringBytesUniq","stringJaccardIndex","stringJaccardIndexUTF8","stringToH3","structureToCapnProtoSchema","structureToProtobufSchema","studentTTest","subBitmap","subDate","substr","substring","substringIndex","substringIndexUTF8","substringUTF8","subtractDays","subtractHours","subtractInterval","subtractMicroseconds","subtractMilliseconds","subtractMinutes","subtractMonths","subtractNanoseconds","subtractQuarters","subtractSeconds","subtractTupleOfIntervals","subtractWeeks","subtractYears","sum","sumCount","sumKahan","sumMapFiltered","sumMapFilteredWithOverflow","sumMapWithOverflow","sumMappedArrays","sumWithOverflow","svg","synonyms","tan","tanh","tcpPort","tgamma","theilsU","throwIf","tid","timeDiff","timeSeriesDeltaToGrid","timeSeriesDerivToGrid","timeSeriesFromGrid","timeSeriesGroupArray","timeSeriesIdToTags","timeSeriesIdToTagsGroup","timeSeriesIdeltaToGrid","timeSeriesInstantDeltaToGrid","timeSeriesInstantRateToGrid","timeSeriesIrateToGrid","timeSeriesLastToGrid","timeSeriesLastTwoSamples","timeSeriesPredictLinearToGrid","timeSeriesRange","timeSeriesRateToGrid","timeSeriesResampleToGridWithStaleness","timeSeriesStoreTags","timeSeriesTagsGroupToTags","timeSlot","timeSlots","timeZone","timeZoneOf","timeZoneOffset","time_bucket","timestamp","timestampDiff","timestamp_diff","timezone","timezoneOf","timezoneOffset","toBFloat16","toBFloat16OrNull","toBFloat16OrZero","toBool","toColumnTypeName","toDate","toDate32","toDate32OrDefault","toDate32OrNull","toDate32OrZero","toDateOrDefault","toDateOrNull","toDateOrZero","toDateTime","toDateTime32","toDateTime64","toDateTime64OrDefault","toDateTime64OrNull","toDateTime64OrZero","toDateTimeOrDefault","toDateTimeOrNull","toDateTimeOrZero","toDayOfMonth","toDayOfWeek","toDayOfYear","toDaysSinceYearZero","toDecimal128","toDecimal128OrDefault","toDecimal128OrNull","toDecimal128OrZero","toDecimal256","toDecimal256OrDefault","toDecimal256OrNull","toDecimal256OrZero","toDecimal32","toDecimal32OrDefault","toDecimal32OrNull","toDecimal32OrZero","toDecimal64","toDecimal64OrDefault","toDecimal64OrNull","toDecimal64OrZero","toDecimalString","toFixedString","toFloat32","toFloat32OrDefault","toFloat32OrNull","toFloat32OrZero","toFloat64","toFloat64OrDefault","toFloat64OrNull","toFloat64OrZero","toHour","toIPv4","toIPv4OrDefault","toIPv4OrNull","toIPv4OrZero","toIPv6","toIPv6OrDefault","toIPv6OrNull","toIPv6OrZero","toISOWeek","toISOYear","toInt128","toInt128OrDefault","toInt128OrNull","toInt128OrZero","toInt16","toInt16OrDefault","toInt16OrNull","toInt16OrZero","toInt256","toInt256OrDefault","toInt256OrNull","toInt256OrZero","toInt32","toInt32OrDefault","toInt32OrNull","toInt32OrZero","toInt64","toInt64OrDefault","toInt64OrNull","toInt64OrZero","toInt8","toInt8OrDefault","toInt8OrNull","toInt8OrZero","toInterval","toIntervalDay","toIntervalHour","toIntervalMicrosecond","toIntervalMillisecond","toIntervalMinute","toIntervalMonth","toIntervalNanosecond","toIntervalQuarter","toIntervalSecond","toIntervalWeek","toIntervalYear","toJSONString","toLastDayOfMonth","toLastDayOfWeek","toLowCardinality","toMillisecond","toMinute","toModifiedJulianDay","toModifiedJulianDayOrNull","toMonday","toMonth","toMonthNumSinceEpoch","toNullable","toQuarter","toRelativeDayNum","toRelativeHourNum","toRelativeMinuteNum","toRelativeMonthNum","toRelativeQuarterNum","toRelativeSecondNum","toRelativeWeekNum","toRelativeYearNum","toSecond","toStartOfDay","toStartOfFifteenMinutes","toStartOfFiveMinute","toStartOfFiveMinutes","toStartOfHour","toStartOfISOYear","toStartOfInterval","toStartOfMicrosecond","toStartOfMillisecond","toStartOfMinute","toStartOfMonth","toStartOfNanosecond","toStartOfQuarter","toStartOfSecond","toStartOfTenMinutes","toStartOfWeek","toStartOfYear","toString","toStringCutToZero","toTime","toTime64","toTime64OrNull","toTime64OrZero","toTimeOrNull","toTimeOrZero","toTimeWithFixedDate","toTimeZone","toTimezone","toTypeName","toUInt128","toUInt128OrDefault","toUInt128OrNull","toUInt128OrZero","toUInt16","toUInt16OrDefault","toUInt16OrNull","toUInt16OrZero","toUInt256","toUInt256OrDefault","toUInt256OrNull","toUInt256OrZero","toUInt32","toUInt32OrDefault","toUInt32OrNull","toUInt32OrZero","toUInt64","toUInt64OrDefault","toUInt64OrNull","toUInt64OrZero","toUInt8","toUInt8OrDefault","toUInt8OrNull","toUInt8OrZero","toUTCTimestamp","toUUID","toUUIDOrDefault","toUUIDOrNull","toUUIDOrZero","toUnixTimestamp","toUnixTimestamp64Micro","toUnixTimestamp64Milli","toUnixTimestamp64Nano","toUnixTimestamp64Second","toValidUTF8","toWeek","toYYYYMM","toYYYYMMDD","toYYYYMMDDhhmmss","toYear","toYearNumSinceEpoch","toYearWeek","to_utc_timestamp","today","tokens","topK","topKWeighted","topLevelDomain","topLevelDomainRFC","transactionID","transactionLatestSnapshot","transactionOldestSnapshot","transform","translate","translateUTF8","trim","trimBoth","trimLeft","trimRight","trunc","tryBase32Decode","tryBase58Decode","tryBase64Decode","tryBase64URLDecode","tryDecrypt","tryIdnaEncode","tryPunycodeDecode","tumble","tumbleEnd","tumbleStart","tuple","tupleConcat","tupleDivide","tupleDivideByNumber","tupleElement","tupleHammingDistance","tupleIntDiv","tupleIntDivByNumber","tupleIntDivOrZero","tupleIntDivOrZeroByNumber","tupleMinus","tupleModulo","tupleModuloByNumber","tupleMultiply","tupleMultiplyByNumber","tupleNames","tupleNegate","tuplePlus","tupleToNameValuePairs","ucase","unbin","unhex","uniq","uniqCombined","uniqCombined64","uniqExact","uniqHLL12","uniqTheta","uniqThetaIntersect","uniqThetaNot","uniqThetaUnion","uniqUpTo","upper","upperUTF8","uptime","user","validateNestedArraySizes","varPop","varPopStable","varSamp","varSampStable","variantElement","variantType","vectorDifference","vectorSum","version","visibleWidth","visitParamExtractBool","visitParamExtractFloat","visitParamExtractInt","visitParamExtractRaw","visitParamExtractString","visitParamExtractUInt","visitParamHas","week","welchTTest","widthBucket","width_bucket","windowFunnel","windowID","wkb","wkt","wordShingleMinHash","wordShingleMinHashArg","wordShingleMinHashArgCaseInsensitive","wordShingleMinHashArgCaseInsensitiveUTF8","wordShingleMinHashArgUTF8","wordShingleMinHashCaseInsensitive","wordShingleMinHashCaseInsensitiveUTF8","wordShingleMinHashUTF8","wordShingleSimHash","wordShingleSimHashCaseInsensitive","wordShingleSimHashCaseInsensitiveUTF8","wordShingleSimHashUTF8","wyHash64","xor","xxHash32","xxHash64","xxh3","yandexConsistentHash","yearweek","yesterday","zookeeperSessionUptime","MergeTree","ReplacingMergeTree","SummingMergeTree","AggregatingMergeTree","CollapsingMergeTree","VersionedCollapsingMergeTree","GraphiteMergeTree","CoalescingMergeTree","Atomic","Shared","Lazy","Replicated","PostgreSQL","MySQL","SQLite","MaterializedPostgreSQL","DataLakeCatalog"],No=["ACCESS","ACTION","ADD","ADMIN","AFTER","ALGORITHM","ALIAS","ALL","ALLOWED_LATENESS","ALTER","AND","ANTI","APPEND","APPLY","AS","ASC","ASCENDING","ASOF","ASSUME","AST","ASYNC","ATTACH","AUTO_INCREMENT","AZURE","BACKUP","BAGEXPANSION","BASE_BACKUP","BCRYPT_HASH","BCRYPT_PASSWORD","BEGIN","BETWEEN","BIDIRECTIONAL","BOTH","BY","CACHE","CACHES","CASCADE","CASE","CHANGE","CHANGEABLE_IN_READONLY","CHANGED","CHARACTER","CHECK","CLEANUP","CLEAR","CLUSTER","CLUSTERS","CLUSTER_HOST_IDS","CN","CODEC","COLLATE","COLLECTION","COLUMN","COLUMNS","COMMENT","COMMIT","COMPRESSION","CONST","CONSTRAINT","CREATE","CROSS","CUBE","CURRENT","D","DATA","DATABASE","DATABASES","DAYS","DD","DDL","DEDUPLICATE","DEFAULT","DEFINER","DELAY","DELETE","DELETED","DEPENDS","DESC","DESCENDING","DESCRIBE","DETACH","DETACHED","DICTIONARIES","DICTIONARY","DISK","DISTINCT","DIV","DOUBLE_SHA1_HASH","DOUBLE_SHA1_PASSWORD","DROP","ELSE","ENABLED","END","ENFORCED","ENGINE","ENGINES","EPHEMERAL","ESTIMATE","EVENT","EVENTS","EVERY","EXCEPT","EXCHANGE","EXISTS","EXPLAIN","EXPRESSION","EXTENDED","EXTERNAL","FAKE","FALSE","FETCH","FIELDS","FILESYSTEM","FILL","FILTER","FINAL","FIRST","FOLLOWING","FOR","FOREIGN","FORMAT","FREEZE","FROM","FULL","FULLTEXT","FUNCTION","FUNCTIONS","GLOBAL","GRANT","GRANTEES","GRANTS","GRANULARITY","GROUP","GROUPING","GROUPS","H","HASH","HAVING","HDFS","HH","HIERARCHICAL","HOST","HOURS","HTTP","IDENTIFIED","ILIKE","IN","INDEX","INDEXES","INDICES","INFILE","INHERIT","INJECTIVE","INNER","INSERT","INTERPOLATE","INTERSECT","INTERVAL","INTO","INVISIBLE","INVOKER","IP","IS","IS_OBJECT_ID","JOIN","JWT","KERBEROS","KEY","KEYED","KEYS","KILL","KIND","LARGE","LAST","LAYOUT","LDAP","LEADING","LEVEL","LIFETIME","LIGHTWEIGHT","LIKE","LIMIT","LIMITS","LINEAR","LIST","LIVE","LOCAL","M","MASK","MATERIALIZED","MCS","MEMORY","MERGES","METRICS","MI","MICROSECOND","MICROSECONDS","MILLISECONDS","MINUTES","MM","MODIFY","MONTHS","MOVE","MS","MUTATION","N","NAME","NAMED","NANOSECOND","NANOSECONDS","NEXT","NO","NONE","NOT","NO_PASSWORD","NS","NULL","NULLS","OBJECT","OFFSET","ON","ONLY","OPTIMIZE","OPTION","OR","ORDER","OUTER","OUTFILE","OVER","OVERRIDABLE","OVERRIDE","PART","PARTIAL","PARTITION","PARTITIONS","PART_MOVE_TO_SHARD","PASTE","PERIODIC","PERMANENTLY","PERMISSIVE","PERSISTENT","PIPELINE","PLAINTEXT_PASSWORD","PLAN","POLICY","POPULATE","PRECEDING","PRECISION","PREWHERE","PRIMARY","PRIVILEGES","PROCESSLIST","PROFILE","PROJECTION","PROTOBUF","PULL","Q","QQ","QUALIFY","QUARTERS","QUERY","QUOTA","RANDOMIZE","RANDOMIZED","RANGE","READONLY","REALM","RECOMPRESS","RECURSIVE","REFERENCES","REFRESH","REGEXP","REMOVE","RENAME","RESET","RESPECT","RESTORE","RESTRICT","RESTRICTIVE","RESUME","REVOKE","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","S","S3","SALT","SAMPLE","SAN","SCHEME","SECONDS","SECURITY","SELECT","SEMI","SEQUENTIAL","SERVER","SET","SETS","SETTING","SETTINGS","SHA256_HASH","SHA256_PASSWORD","SHARD","SHOW","SIGNED","SIMPLE","SNAPSHOT","SOURCE","SPATIAL","SQL","SQL_TSI_DAY","SQL_TSI_HOUR","SQL_TSI_MICROSECOND","SQL_TSI_MILLISECOND","SQL_TSI_MINUTE","SQL_TSI_MONTH","SQL_TSI_NANOSECOND","SQL_TSI_QUARTER","SQL_TSI_SECOND","SQL_TSI_WEEK","SQL_TSI_YEAR","SS","SSH_KEY","SSL_CERTIFICATE","STALENESS","START","STATISTICS","STDOUT","STEP","STORAGE","STRICT","STRICTLY_ASCENDING","SUBPARTITION","SUBPARTITIONS","SUSPEND","SYNC","SYNTAX","SYSTEM","TABLE","TABLES","TAGS","TEMPORARY","TEST","THAN","THEN","TIES","TIME","TO","TOP","TOTALS","TRACKING","TRAILING","TRANSACTION","TREE","TRIGGER","TRUE","TRUNCATE","TTL","TYPE","TYPEOF","UNBOUNDED","UNDROP","UNFREEZE","UNION","UNIQUE","UNSET","UNSIGNED","UNTIL","UPDATE","URL","USE","USING","UUID","VALID","VALUES","VARYING","VIEW","VISIBLE","VOLUME","WATCH","WATERMARK","WEEKS","WHEN","WHERE","WINDOW","WITH","WITH_ITEMINDEX","WK","WRITABLE","WW","YEARS","YY","YYYY","ZKPATH"],Io=["AGGREGATEFUNCTION","ARRAY","BFLOAT16","BIGINT","BIGINT SIGNED","BIGINT UNSIGNED","BINARY","BINARY LARGE OBJECT","BINARY VARYING","BIT","BLOB","BYTE","BYTEA","BOOL","CHAR","CHAR LARGE OBJECT","CHAR VARYING","CHARACTER","CHARACTER LARGE OBJECT","CHARACTER VARYING","CLOB","DEC","DOUBLE","DOUBLE PRECISION","DATE","DATE32","DATETIME","DATETIME32","DATETIME64","DECIMAL","DECIMAL128","DECIMAL256","DECIMAL32","DECIMAL64","DYNAMIC","ENUM","ENUM","ENUM16","ENUM8","FIXED","FLOAT","FIXEDSTRING","FLOAT32","FLOAT64","GEOMETRY","INET4","INET6","INT","INT SIGNED","INT UNSIGNED","INT1","INT1 SIGNED","INT1 UNSIGNED","INTEGER","INTEGER SIGNED","INTEGER UNSIGNED","IPV4","IPV6","INT128","INT16","INT256","INT32","INT64","INT8","INTERVALDAY","INTERVALHOUR","INTERVALMICROSECOND","INTERVALMILLISECOND","INTERVALMINUTE","INTERVALMONTH","INTERVALNANOSECOND","INTERVALQUARTER","INTERVALSECOND","INTERVALWEEK","INTERVALYEAR","JSON","LONGBLOB","LONGTEXT","LINESTRING","LOWCARDINALITY","MEDIUMBLOB","MEDIUMINT","MEDIUMINT SIGNED","MEDIUMINT UNSIGNED","MEDIUMTEXT","MAP","MULTILINESTRING","MULTIPOLYGON","NATIONAL CHAR","NATIONAL CHAR VARYING","NATIONAL CHARACTER","NATIONAL CHARACTER LARGE OBJECT","NATIONAL CHARACTER VARYING","NCHAR","NCHAR LARGE OBJECT","NCHAR VARYING","NUMERIC","NVARCHAR","NESTED","NOTHING","NULLABLE","OBJECT","POINT","POLYGON","REAL","RING","SET","SIGNED","SINGLE","SMALLINT","SMALLINT SIGNED","SMALLINT UNSIGNED","SIMPLEAGGREGATEFUNCTION","STRING","TEXT","TIMESTAMP","TINYBLOB","TINYINT","TINYINT SIGNED","TINYINT UNSIGNED","TINYTEXT","TIME","TIME64","TUPLE","UINT128","UINT16","UINT256","UINT32","UINT64","UINT8","UNSIGNED","UUID","VARBINARY","VARCHAR","VARCHAR2","VARIANT","YEAR","BOOL","BOOLEAN"],Oo=G(["SELECT [DISTINCT]","MODIFY QUERY SELECT [DISTINCT]"]),lo=G(["SET","WITH","FROM","SAMPLE","PREWHERE","WHERE","GROUP BY","HAVING","QUALIFY","ORDER BY","LIMIT","SETTINGS","INTO OUTFILE","FORMAT","WINDOW","PARTITION BY","INSERT INTO","VALUES","DEPENDS ON","MOVE {USER | ROLE | QUOTA | SETTINGS PROFILE | ROW POLICY}","GRANT","REVOKE","CHECK GRANT","SET [DEFAULT] ROLE [NONE | ALL | ALL EXCEPT]","DEDUPLICATE BY","MODIFY STATISTICS","TYPE","ALTER USER [IF EXISTS]","ALTER [ROW] POLICY [IF EXISTS]","DROP {USER | ROLE | QUOTA | PROFILE | SETTINGS PROFILE | ROW POLICY | POLICY} [IF EXISTS]"]),sr=G(["CREATE [OR REPLACE] [TEMPORARY] TABLE [IF NOT EXISTS]"]),rE=G(["ALL EXCEPT","ON CLUSTER","UPDATE","SYSTEM RELOAD {DICTIONARIES | DICTIONARY | FUNCTIONS | FUNCTION | ASYNCHRONOUS METRICS}","SYSTEM DROP {DNS CACHE | MARK CACHE | ICEBERG METADATA CACHE | TEXT INDEX DICTIONARY CACHE | TEXT INDEX HEADER CACHE | TEXT INDEX POSTINGS CACHE | REPLICA | DATABASE REPLICA | UNCOMPRESSED CACHE | COMPILED EXPRESSION CACHE | QUERY CONDITION CACHE | QUERY CACHE | FORMAT SCHEMA CACHE | FILESYSTEM CACHE}","SYSTEM FLUSH LOGS","SYSTEM RELOAD {CONFIG | USERS}","SYSTEM SHUTDOWN","SYSTEM KILL","SYSTEM FLUSH DISTRIBUTED","SYSTEM START DISTRIBUTED SENDS","SYSTEM {STOP | START} {LISTEN | MERGES | TTL MERGES | MOVES | FETCHES | REPLICATED SENDS | REPLICATION QUEUES | PULLING REPLICATION LOG}","SYSTEM {SYNC | RESTART | RESTORE} REPLICA","SYSTEM {SYNC | RESTORE} DATABASE REPLICA","SYSTEM RESTART REPLICAS","SYSTEM UNFREEZE","SYSTEM WAIT LOADING PARTS","SYSTEM {LOAD | UNLOAD} PRIMARY KEY","SYSTEM {STOP | START} [REPLICATED] VIEW","SYSTEM {STOP | START} VIEWS","SYSTEM {REFRESH | CANCEL | WAIT} VIEW","WITH NAME","SHOW [CREATE] {TABLE | TEMPORARY TABLE | DICTIONARY | VIEW | DATABASE}","SHOW DATABASES [[NOT] {LIKE | ILIKE}]","SHOW [FULL] [TEMPORARY] TABLES [FROM | IN]","SHOW [EXTENDED] [FULL] COLUMNS {FROM | IN}","ATTACH {TABLE | DICTIONARY | DATABASE} [IF NOT EXISTS]","DETACH {TABLE | DICTIONARY | DATABASE} [IF EXISTS]","PERMANENTLY","SYNC","DROP {DICTIONARY | DATABASE | PROFILE | VIEW | FUNCTION | NAMED COLLECTION} [IF EXISTS]","DROP [TEMPORARY] TABLE [IF EXISTS] [IF EMPTY]","RENAME TO","EXISTS [TEMPORARY] {TABLE | DICTIONARY | DATABASE}","KILL QUERY","OPTIMIZE TABLE","RENAME {TABLE | DICTIONARY | DATABASE}","EXCHANGE {TABLES | DICTIONARIES}","TRUNCATE TABLE [IF EXISTS]","EXECUTE AS","USE","TO","UNDROP TABLE","CREATE {DATABASE | NAMED COLLECTION} [IF NOT EXISTS]","CREATE [OR REPLACE] {VIEW | DICTIONARY} [IF NOT EXISTS]","CREATE MATERIALIZED VIEW [IF NOT EXISTS]","CREATE FUNCTION","CREATE {USER | ROLE | QUOTA | SETTINGS PROFILE} [IF NOT EXISTS | OR REPLACE]","CREATE [ROW] POLICY [IF NOT EXISTS | OR REPLACE]","REPLACE [TEMPORARY] TABLE [IF NOT EXISTS]","ALTER {ROLE | QUOTA | SETTINGS PROFILE} [IF EXISTS]","ALTER [TEMPORARY] TABLE","ALTER NAMED COLLECTION [IF EXISTS]","GRANTEES","NOT IDENTIFIED","RESET AUTHENTICATION METHODS TO NEW","{IDENTIFIED | ADD IDENTIFIED} [WITH | BY]","[ADD | DROP] HOST {LOCAL | NAME | REGEXP | IP | LIKE}","VALID UNTIL","DROP [ALL] {PROFILES | SETTINGS}","{ADD | MODIFY} SETTINGS","ADD PROFILES","APPLY DELETED MASK","IN PARTITION","{ADD | DROP | RENAME | CLEAR | COMMENT | MODIFY | ALTER | MATERIALIZE} COLUMN","{DETACH | DROP | ATTACH | FETCH | MOVE} {PART | PARTITION}","DROP DETACHED {PART | PARTITION}","{FORGET | REPLACE} PARTITION","CLEAR COLUMN","{FREEZE | UNFREEZE} [PARTITION]","CLEAR INDEX","TO {DISK | VOLUME}","[DELETE | REWRITE PARTS] IN PARTITION","{MODIFY | RESET} SETTING","DELETE WHERE","MODIFY ORDER BY","{MODIFY | REMOVE} SAMPLE BY","{ADD | MATERIALIZE | CLEAR} INDEX [IF NOT EXISTS]","DROP INDEX [IF EXISTS]","GRANULARITY","AFTER","FIRST","ADD CONSTRAINT [IF NOT EXISTS]","DROP CONSTRAINT [IF EXISTS]","MODIFY TTL","REMOVE TTL","ADD STATISTICS [IF NOT EXISTS]","{DROP | CLEAR} STATISTICS [IF EXISTS]","MATERIALIZE STATISTICS [ALL | IF EXISTS]","KEYED BY","NOT KEYED","FOR [RANDOMIZED] INTERVAL","AS {PERMISSIVE | RESTRICTIVE}","FOR SELECT","ADD PROJECTION [IF NOT EXISTS]","{DROP | MATERIALIZE | CLEAR} PROJECTION [IF EXISTS]","REFRESH {EVERY | AFTER}","RANDOMIZE FOR","APPEND","APPEND TO","DELETE FROM","EXPLAIN [AST | SYNTAX | QUERY TREE | PLAN | PIPELINE | ESTIMATE | TABLE OVERRIDE]","GRANT ON CLUSTER","GRANT CURRENT GRANTS","WITH GRANT OPTION","REVOKE ON CLUSTER","ADMIN OPTION FOR","CHECK TABLE","PARTITION ID","{DESC | DESCRIBE} TABLE"]),uo=G(["UNION [ALL | DISTINCT]","PARALLEL WITH"]),Co=G(["[GLOBAL] [INNER|LEFT|RIGHT|FULL|CROSS] [OUTER|SEMI|ANTI|ANY|ALL|ASOF] JOIN","[LEFT] ARRAY JOIN"]),co=G(["{ROWS | RANGE} BETWEEN","ALTER MATERIALIZE STATISTICS"]),_o={name:"clickhouse",tokenizerOptions:{reservedSelect:Oo,reservedClauses:[...lo,...sr,...rE],reservedSetOperations:uo,reservedJoins:Co,reservedKeywordPhrases:co,reservedKeywords:No,reservedDataTypes:Io,reservedFunctionNames:So,extraParens:["[]","{}"],lineCommentTypes:["#","--"],nestedBlockComments:!1,underscoresInNumbers:!0,stringTypes:["$$","''-qq-bs"],identTypes:['""-qq-bs',"``"],paramTypes:{custom:[{regex:String.raw`\{[^:']+:[^}]+\}`,key:E=>{const t=/\{([^:]+):/.exec(E);return t?t[1].trim():E}}]},operators:["%","||","?",":","==","<=>","->"],postProcess:Lo},formatOptions:{onelineClauses:[...sr,...rE],tabularOnelineClauses:rE}};function Lo(E){return E.map((t,r)=>{const n=E[r+1]||It,s=E[r-1]||It;return t.type===K.RESERVED_SELECT&&(n.type===K.COMMA||s.type===K.RESERVED_CLAUSE||s.type===K.COMMA)?Object.assign(Object.assign({},t),{type:K.RESERVED_KEYWORD}):Ot.SET(t)&&n.type===K.OPEN_PAREN?Object.assign(Object.assign({},t),{type:K.RESERVED_FUNCTION_NAME}):t})}const Do=["ARRAY_AGG","AVG","CORRELATION","COUNT","COUNT_BIG","COVARIANCE","COVARIANCE_SAMP","CUME_DIST","GROUPING","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_ICPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_SAMP","SUM","VARIANCE","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","AGE","ARRAY_DELETE","ARRAY_FIRST","ARRAY_LAST","ARRAY_NEXT","ARRAY_PRIOR","ASCII","ASCII_STR","ASIN","ATAN","ATAN2","ATANH","BITAND","BITANDNOT","BITOR","BITXOR","BITNOT","BPCHAR","BSON_TO_JSON","BTRIM","CARDINALITY","CEILING","CEIL","CHARACTER_LENGTH","CHR","COALESCE","COLLATION_KEY","COLLATION_KEY_BIT","COMPARE_DECFLOAT","CONCAT","COS","COSH","COT","CURSOR_ROWCOUNT","DATAPARTITIONNUM","DATE_PART","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFWEEK_ISO","DAYOFYEAR","DAYS","DAYS_BETWEEN","DAYS_TO_END_OF_MONTH","DBPARTITIONNUM","DECFLOAT","DECFLOAT_FORMAT","DECODE","DECRYPT_BIN","DECRYPT_CHAR","DEGREES","DEREF","DIFFERENCE","DIGITS","DOUBLE_PRECISION","EMPTY_BLOB","EMPTY_CLOB","EMPTY_DBCLOB","EMPTY_NCLOB","ENCRYPT","EVENT_MON_STATE","EXP","EXTRACT","FIRST_DAY","FLOOR","FROM_UTC_TIMESTAMP","GENERATE_UNIQUE","GETHINT","GREATEST","HASH","HASH4","HASH8","HASHEDVALUE","HEX","HEXTORAW","HOUR","HOURS_BETWEEN","IDENTITY_VAL_LOCAL","IFNULL","INITCAP","INSERT","INSTR","INSTR2","INSTR4","INSTRB","INTNAND","INTNOR","INTNXOR","INTNNOT","ISNULL","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_VALUE","JULIAN_DAY","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LENGTH2","LENGTH4","LENGTHB","LN","LOCATE","LOCATE_IN_STRING","LOG10","LONG_VARCHAR","LONG_VARGRAPHIC","LOWER","LPAD","LTRIM","MAX","MAX_CARDINALITY","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MINUTES_BETWEEN","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MULTIPLY_ALT","NEXT_DAY","NEXT_MONTH","NEXT_QUARTER","NEXT_WEEK","NEXT_YEAR","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARAMETER","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","QUOTE_IDENT","QUOTE_LITERAL","RADIANS","RAISE_ERROR","RAND","RANDOM","RAWTOHEX","REC2XML","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH_COUNT","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RID_BIT","RIGHT","ROUND","ROUND_TIMESTAMP","RPAD","RTRIM","SECLABEL","SECLABEL_BY_NAME","SECLABEL_TO_CHAR","SECOND","SECONDS_BETWEEN","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTR2","SUBSTR4","SUBSTRB","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","THIS_MONTH","THIS_QUARTER","THIS_WEEK","THIS_YEAR","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF","TIMEZONE","TO_CHAR","TO_CLOB","TO_DATE","TO_HEX","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_UTC_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM","TRIM_ARRAY","TRUNC_TIMESTAMP","TRUNCATE","TRUNC","TYPE_ID","TYPE_NAME","TYPE_SCHEMA","UCASE","UNICODE_STR","UPPER","VALUE","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT","VARCHAR_FORMAT_BIT","VERIFY_GROUP_FOR_USER","VERIFY_ROLE_FOR_USER","VERIFY_TRUSTED_CONTEXT_ROLE_FOR_USER","WEEK","WEEK_ISO","WEEKS_BETWEEN","WIDTH_BUCKET","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLQUERY","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XMLXSROBJECTID","XSLTRANSFORM","YEAR","YEARS_BETWEEN","YMD_BETWEEN","BASE_TABLE","JSON_TABLE","UNNEST","XMLTABLE","RANK","DENSE_RANK","NTILE","LAG","LEAD","ROW_NUMBER","FIRST_VALUE","LAST_VALUE","NTH_VALUE","RATIO_TO_REPORT","CAST"],po=["ACTIVATE","ADD","AFTER","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","AS","ASENSITIVE","ASSOCIATE","ASUTIME","AT","ATTRIBUTES","AUDIT","AUTHORIZATION","AUX","AUXILIARY","BEFORE","BEGIN","BETWEEN","BINARY","BUFFERPOOL","BY","CACHE","CALL","CALLED","CAPTURE","CARDINALITY","CASCADED","CASE","CAST","CHECK","CLONE","CLOSE","CLUSTER","COLLECTION","COLLID","COLUMN","COMMENT","COMMIT","CONCAT","CONDITION","CONNECT","CONNECTION","CONSTRAINT","CONTAINS","CONTINUE","COUNT","COUNT_BIG","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_LC_CTYPE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATA","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFINITION","DELETE","DENSERANK","DENSE_RANK","DESCRIBE","DESCRIPTOR","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DSSIZE","DYNAMIC","EACH","EDITPROC","ELSE","ELSEIF","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ERASE","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXPLAIN","EXTENDED","EXTERNAL","EXTRACT","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST1","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GRAPHIC","GROUP","HANDLER","HASH","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IMMEDIATE","IMPORT","IN","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDICATOR","INDICATORS","INF","INFINITY","INHERIT","INNER","INOUT","INSENSITIVE","INSERT","INTEGRITY","INTERSECT","INTO","IS","ISNULL","ISOBID","ISOLATION","ITERATE","JAR","JAVA","JOIN","KEEP","KEY","LABEL","LANGUAGE","LAST3","LATERAL","LC_CTYPE","LEAVE","LEFT","LIKE","LIMIT","LINKTYPE","LOCAL","LOCALDATE","LOCALE","LOCALTIME","LOCALTIMESTAMP","LOCATOR","LOCATORS","LOCK","LOCKMAX","LOCKSIZE","LOOP","MAINTAINED","MATERIALIZED","MAXVALUE","MICROSECOND","MICROSECONDS","MINUTE","MINUTES","MINVALUE","MODE","MODIFIES","MONTH","MONTHS","NAN","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT2","NOTNULL","NULL","NULLS","NUMPARTS","OBID","OF","OFF","OFFSET","OLD","OLD_TABLE","ON","OPEN","OPTIMIZATION","OPTIMIZE","OPTION","OR","ORDER","OUT","OUTER","OVER","OVERRIDING","PACKAGE","PADDED","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSWORD","PATH","PERCENT","PIECESIZE","PLAN","POSITION","PRECISION","PREPARE","PREVVAL","PRIMARY","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PSID","PUBLIC","QUERY","QUERYNO","RANGE","RANK","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESTRICT","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNS","REVOKE","RIGHT","ROLE","ROLLBACK","ROUND_CEILING","ROUND_DOWN","ROUND_FLOOR","ROUND_HALF_DOWN","ROUND_HALF_EVEN","ROUND_HALF_UP","ROUND_UP","ROUTINE","ROW","ROWNUMBER","ROWS","ROWSET","ROW_NUMBER","RRN","RUN","SAVEPOINT","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURITY","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","STACKED","STANDARD","START","STARTING","STATEMENT","STATIC","STATMENT","STAY","STOGROUP","STORES","STYLE","SUBSTRING","SUMMARY","SYNONYM","SYSFUN","SYSIBM","SYSPROC","SYSTEM","SYSTEM_USER","TABLE","TABLESPACE","THEN","TO","TRANSACTION","TRIGGER","TRIM","TRUNCATE","TYPE","UNDO","UNION","UNIQUE","UNTIL","UPDATE","USAGE","USER","USING","VALIDPROC","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VIEW","VOLATILE","VOLUMES","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHOUT","WLM","WRITE","XMLELEMENT","XMLEXISTS","XMLNAMESPACES","YEAR","YEARS"],Po=["ARRAY","BIGINT","BINARY","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATE","DATETIME","DBCLOB","DEC","DECIMAL","DOUBLE","DOUBLE PRECISION","FLOAT","FLOAT4","FLOAT8","GRAPHIC","INT","INT2","INT4","INT8","INTEGER","INTERVAL","LONG VARCHAR","LONG VARGRAPHIC","NCHAR","NCHR","NCLOB","NVARCHAR","NUMERIC","SMALLINT","REAL","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC"],fo=G(["SELECT [ALL | DISTINCT]"]),ho=G(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH NEXT","FOR UPDATE [OF]","FOR {READ | FETCH} ONLY","FOR {RR | CS | UR | RS} [USE AND KEEP {SHARE | UPDATE | EXCLUSIVE} LOCKS]","WAIT FOR OUTCOME","SKIP LOCKED DATA","INTO","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT"]),Tr=G(["CREATE [GLOBAL TEMPORARY | EXTERNAL] TABLE [IF NOT EXISTS]"]),nE=G(["CREATE [OR REPLACE] VIEW","UPDATE","WHERE CURRENT OF","WITH {RR | RS | CS | UR}","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME COLUMN","ALTER [COLUMN]","SET DATA TYPE","SET NOT NULL","DROP {DEFAULT | GENERATED | NOT NULL}","TRUNCATE [TABLE]","ALLOCATE","ALTER AUDIT POLICY","ALTER BUFFERPOOL","ALTER DATABASE PARTITION GROUP","ALTER DATABASE","ALTER EVENT MONITOR","ALTER FUNCTION","ALTER HISTOGRAM TEMPLATE","ALTER INDEX","ALTER MASK","ALTER METHOD","ALTER MODULE","ALTER NICKNAME","ALTER PACKAGE","ALTER PERMISSION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SECURITY LABEL COMPONENT","ALTER SECURITY POLICY","ALTER SEQUENCE","ALTER SERVER","ALTER SERVICE CLASS","ALTER STOGROUP","ALTER TABLESPACE","ALTER THRESHOLD","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER TYPE","ALTER USAGE LIST","ALTER USER MAPPING","ALTER VIEW","ALTER WORK ACTION SET","ALTER WORK CLASS SET","ALTER WORKLOAD","ALTER WRAPPER","ALTER XSROBJECT","ALTER STOGROUP","ALTER TABLESPACE","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER VIEW","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","AUDIT","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON","COMMIT [WORK]","CONNECT","CREATE [OR REPLACE] [PUBLIC] ALIAS","CREATE AUDIT POLICY","CREATE BUFFERPOOL","CREATE DATABASE PARTITION GROUP","CREATE EVENT MONITOR","CREATE [OR REPLACE] FUNCTION","CREATE FUNCTION MAPPING","CREATE HISTOGRAM TEMPLATE","CREATE [UNIQUE] INDEX","CREATE INDEX EXTENSION","CREATE [OR REPLACE] MASK","CREATE [SPECIFIC] METHOD","CREATE [OR REPLACE] MODULE","CREATE [OR REPLACE] NICKNAME","CREATE [OR REPLACE] PERMISSION","CREATE [OR REPLACE] PROCEDURE","CREATE ROLE","CREATE SCHEMA","CREATE SECURITY LABEL [COMPONENT]","CREATE SECURITY POLICY","CREATE [OR REPLACE] SEQUENCE","CREATE SERVICE CLASS","CREATE SERVER","CREATE STOGROUP","CREATE SYNONYM","CREATE [LARGE | REGULAR | {SYSTEM | USER} TEMPORARY] TABLESPACE","CREATE THRESHOLD","CREATE {TRANSFORM | TRANSFORMS} FOR","CREATE [OR REPLACE] TRIGGER","CREATE TRUSTED CONTEXT","CREATE [OR REPLACE] TYPE","CREATE TYPE MAPPING","CREATE USAGE LIST","CREATE USER MAPPING FOR","CREATE [OR REPLACE] VARIABLE","CREATE WORK ACTION SET","CREATE WORK CLASS SET","CREATE WORKLOAD","CREATE WRAPPER","DECLARE","DECLARE GLOBAL TEMPORARY TABLE","DESCRIBE [INPUT | OUTPUT]","DISCONNECT","DROP [PUBLIC] ALIAS","DROP AUDIT POLICY","DROP BUFFERPOOL","DROP DATABASE PARTITION GROUP","DROP EVENT MONITOR","DROP [SPECIFIC] FUNCTION","DROP FUNCTION MAPPING","DROP HISTOGRAM TEMPLATE","DROP INDEX [EXTENSION]","DROP MASK","DROP [SPECIFIC] METHOD","DROP MODULE","DROP NICKNAME","DROP PACKAGE","DROP PERMISSION","DROP [SPECIFIC] PROCEDURE","DROP ROLE","DROP SCHEMA","DROP SECURITY LABEL [COMPONENT]","DROP SECURITY POLICY","DROP SEQUENCE","DROP SERVER","DROP SERVICE CLASS","DROP STOGROUP","DROP TABLE HIERARCHY","DROP {TABLESPACE | TABLESPACES}","DROP {TRANSFORM | TRANSFORMS}","DROP THRESHOLD","DROP TRIGGER","DROP TRUSTED CONTEXT","DROP TYPE [MAPPING]","DROP USAGE LIST","DROP USER MAPPING FOR","DROP VARIABLE","DROP VIEW [HIERARCHY]","DROP WORK {ACTION | CLASS} SET","DROP WORKLOAD","DROP WRAPPER","DROP XSROBJECT","END DECLARE SECTION","EXECUTE [IMMEDIATE]","EXPLAIN {PLAN [SECTION] | ALL}","FETCH [FROM]","FLUSH {BUFFERPOOL | BUFFERPOOLS} ALL","FLUSH EVENT MONITOR","FLUSH FEDERATED CACHE","FLUSH OPTIMIZATION PROFILE CACHE","FLUSH PACKAGE CACHE [DYNAMIC]","FLUSH AUTHENTICATION CACHE [FOR ALL]","FREE LOCATOR","GET DIAGNOSTICS","GOTO","GRANT","INCLUDE","ITERATE","LEAVE","LOCK TABLE","LOOP","OPEN","PIPE","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX | STOGROUP | TABLESPACE]","REPEAT","RESIGNAL","RETURN","REVOKE","ROLLBACK [WORK] [TO SAVEPOINT]","SAVEPOINT","SET COMPILATION ENVIRONMENT","SET CONNECTION","SET CURRENT","SET ENCRYPTION PASSWORD","SET EVENT MONITOR STATE","SET INTEGRITY","SET PASSTHRU","SET PATH","SET ROLE","SET SCHEMA","SET SERVER OPTION","SET {SESSION AUTHORIZATION | SESSION_USER}","SET USAGE LIST","SIGNAL","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}","WHILE"]),Mo=G(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),Uo=G(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),mo=G(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),Bo=G([]),go={name:"db2",tokenizerOptions:{reservedSelect:fo,reservedClauses:[...ho,...Tr,...nE],reservedSetOperations:Mo,reservedJoins:Uo,reservedKeywordPhrases:mo,reservedDataTypePhrases:Bo,reservedKeywords:po,reservedDataTypes:Po,reservedFunctionNames:Do,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N","U&"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","%","|","&","^","~","¬=","¬>","¬<","!>","!<","^=","^>","^<","||","->","=>"]},formatOptions:{onelineClauses:[...Tr,...nE],tabularOnelineClauses:nE}},yo=["ARRAY_AGG","AVG","CORR","CORRELATION","COUNT","COUNT_BIG","COVAR_POP","COVARIANCE","COVAR","COVAR_SAMP","COVARIANCE_SAMP","EVERY","GROUPING","JSON_ARRAYAGG","JSON_OBJECTAGG","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","SOME","STDDEV_POP","STDDEV","STDDEV_SAMP","SUM","VAR_POP","VARIANCE","VAR","VAR_SAMP","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","ANTILOG","ARRAY_MAX_CARDINALITY","ARRAY_TRIM","ASCII","ASIN","ATAN","ATAN2","ATANH","BASE64_DECODE","BASE64_ENCODE","BIT_LENGTH","BITAND","BITANDNOT","BITNOT","BITOR","BITXOR","BSON_TO_JSON","CARDINALITY","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","COALESCE","COMPARE_DECFLOAT","CONCAT","CONTAINS","COS","COSH","COT","CURDATE","CURTIME","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK_ISO","DAYOFWEEK","DAYOFYEAR","DAYS","DBPARTITIONNAME","DBPARTITIONNUM","DECFLOAT_FORMAT","DECFLOAT_SORTKEY","DECRYPT_BINARY","DECRYPT_BIT","DECRYPT_CHAR","DECRYPT_DB","DEGREES","DIFFERENCE","DIGITS","DLCOMMENT","DLLINKTYPE","DLURLCOMPLETE","DLURLPATH","DLURLPATHONLY","DLURLSCHEME","DLURLSERVER","DLVALUE","DOUBLE_PRECISION","DOUBLE","ENCRPYT","ENCRYPT_AES","ENCRYPT_AES256","ENCRYPT_RC2","ENCRYPT_TDES","EXP","EXTRACT","FIRST_DAY","FLOOR","GENERATE_UNIQUE","GET_BLOB_FROM_FILE","GET_CLOB_FROM_FILE","GET_DBCLOB_FROM_FILE","GET_XML_FILE","GETHINT","GREATEST","HASH_MD5","HASH_ROW","HASH_SHA1","HASH_SHA256","HASH_SHA512","HASH_VALUES","HASHED_VALUE","HEX","HEXTORAW","HOUR","HTML_ENTITY_DECODE","HTML_ENTITY_ENCODE","HTTP_DELETE_BLOB","HTTP_DELETE","HTTP_GET_BLOB","HTTP_GET","HTTP_PATCH_BLOB","HTTP_PATCH","HTTP_POST_BLOB","HTTP_POST","HTTP_PUT_BLOB","HTTP_PUT","IDENTITY_VAL_LOCAL","IFNULL","INSERT","INSTR","INTERPRET","ISFALSE","ISNOTFALSE","ISNOTTRUE","ISTRUE","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_UPDATE","JSON_VALUE","JULIAN_DAY","LAND","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LN","LNOT","LOCATE_IN_STRING","LOCATE","LOG10","LOR","LOWER","LPAD","LTRIM","MAX_CARDINALITY","MAX","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MQREAD","MQREADCLOB","MQRECEIVE","MQRECEIVECLOB","MQSEND","MULTIPLY_ALT","NEXT_DAY","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","OCTET_LENGTH","OVERLAY","PI","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","RADIANS","RAISE_ERROR","RANDOM","RAND","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RIGHT","ROUND_TIMESTAMP","ROUND","RPAD","RRN","RTRIM","SCORE","SECOND","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF_BIG","TIMESTAMPDIFF","TO_CHAR","TO_CLOB","TO_DATE","TO_NUMBER","TO_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM_ARRAY","TRIM","TRUNC_TIMESTAMP","TRUNC","TRUNCATE","UCASE","UPPER","URL_DECODE","URL_ENCODE","VALUE","VARBINARY_FORMAT","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT_BINARY","VARCHAR_FORMAT","VERIFY_GROUP_FOR_USER","WEEK_ISO","WEEK","WRAP","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XOR","XSLTRANSFORM","YEAR","ZONED","BASE_TABLE","HTTP_DELETE_BLOB_VERBOSE","HTTP_DELETE_VERBOSE","HTTP_GET_BLOB_VERBOSE","HTTP_GET_VERBOSE","HTTP_PATCH_BLOB_VERBOSE","HTTP_PATCH_VERBOSE","HTTP_POST_BLOB_VERBOSE","HTTP_POST_VERBOSE","HTTP_PUT_BLOB_VERBOSE","HTTP_PUT_VERBOSE","JSON_TABLE","MQREADALL","MQREADALLCLOB","MQRECEIVEALL","MQRECEIVEALLCLOB","XMLTABLE","UNPACK","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","RATIO_TO_REPORT","ROW_NUMBER","CAST"],Go=["ABSENT","ACCORDING","ACCTNG","ACTION","ACTIVATE","ADD","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","APPEND","APPLNAME","ARRAY","ARRAY_AGG","ARRAY_TRIM","AS","ASC","ASENSITIVE","ASSOCIATE","ATOMIC","ATTACH","ATTRIBUTES","AUTHORIZATION","AUTONOMOUS","BEFORE","BEGIN","BETWEEN","BIND","BSON","BUFFERPOOL","BY","CACHE","CALL","CALLED","CARDINALITY","CASE","CAST","CHECK","CL","CLOSE","CLUSTER","COLLECT","COLLECTION","COLUMN","COMMENT","COMMIT","COMPACT","COMPARISONS","COMPRESS","CONCAT","CONCURRENT","CONDITION","CONNECT","CONNECT_BY_ROOT","CONNECTION","CONSTANT","CONSTRAINT","CONTAINS","CONTENT","CONTINUE","COPY","COUNT","COUNT_BIG","CREATE","CREATEIN","CROSS","CUBE","CUME_DIST","CURRENT","CURRENT_DATE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEACTIVATE","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFER","DEFINE","DEFINITION","DELETE","DELETING","DENSE_RANK","DENSERANK","DESC","DESCRIBE","DESCRIPTOR","DETACH","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DYNAMIC","EACH","ELSE","ELSEIF","EMPTY","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ENFORCED","ERROR","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTEND","EXTERNAL","EXTRACT","FALSE","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST_VALUE","FOR","FOREIGN","FORMAT","FREE","FREEPAGE","FROM","FULL","FUNCTION","GBPCACHE","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GROUP","HANDLER","HASH","HASH_ROW","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IGNORE","IMMEDIATE","IMPLICITLY","IN","INCLUDE","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDEXBP","INDICATOR","INF","INFINITY","INHERIT","INLINE","INNER","INOUT","INSENSITIVE","INSERT","INSERTING","INTEGRITY","INTERPRET","INTERSECT","INTO","IS","ISNULL","ISOLATION","ITERATE","JAVA","JOIN","JSON","JSON_ARRAY","JSON_ARRAYAGG","JSON_EXISTS","JSON_OBJECT","JSON_OBJECTAGG","JSON_QUERY","JSON_TABLE","JSON_VALUE","KEEP","KEY","KEYS","LABEL","LAG","LANGUAGE","LAST_VALUE","LATERAL","LEAD","LEAVE","LEFT","LEVEL2","LIKE","LIMIT","LINKTYPE","LISTAGG","LOCAL","LOCALDATE","LOCALTIME","LOCALTIMESTAMP","LOCATION","LOCATOR","LOCK","LOCKSIZE","LOG","LOGGED","LOOP","MAINTAINED","MASK","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MICROSECOND","MICROSECONDS","MINPCTUSED","MINUTE","MINUTES","MINVALUE","MIRROR","MIXED","MODE","MODIFIES","MONTH","MONTHS","NAMESPACE","NAN","NATIONAL","NCHAR","NCLOB","NESTED","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT","NOTNULL","NTH_VALUE","NTILE","NULL","NULLS","NVARCHAR","OBID","OBJECT","OF","OFF","OFFSET","OLD","OLD_TABLE","OMIT","ON","ONLY","OPEN","OPTIMIZE","OPTION","OR","ORDER","ORDINALITY","ORGANIZE","OUT","OUTER","OVER","OVERLAY","OVERRIDING","PACKAGE","PADDED","PAGE","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSING","PASSWORD","PATH","PCTFREE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PERIOD","PERMISSION","PIECESIZE","PIPE","PLAN","POSITION","PREPARE","PREVVAL","PRIMARY","PRIOR","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PROGRAMID","QUERY","RANGE","RANK","RATIO_TO_REPORT","RCDFMT","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","REGEXP_LIKE","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNING","RETURNS","REVOKE","RID","RIGHT","ROLLBACK","ROLLUP","ROUTINE","ROW","ROW_NUMBER","ROWNUMBER","ROWS","RRN","RUN","SAVEPOINT","SBCS","SCALAR","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURED","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SKIP","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","SQLIND_DEFAULT","SQLIND_UNASSIGNED","STACKED","START","STARTING","STATEMENT","STATIC","STOGROUP","SUBSTRING","SUMMARY","SYNONYM","SYSTEM_TIME","SYSTEM_USER","TABLE","TABLESPACE","TABLESPACES","TAG","THEN","THREADSAFE","TO","TRANSACTION","TRANSFER","TRIGGER","TRIM","TRIM_ARRAY","TRUE","TRUNCATE","TRY_CAST","TYPE","UNDO","UNION","UNIQUE","UNIT","UNKNOWN","UNNEST","UNTIL","UPDATE","UPDATING","URI","USAGE","USE","USER","USERID","USING","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VERSIONING","VIEW","VOLATILE","WAIT","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHIN","WITHOUT","WRAPPED","WRAPPER","WRITE","WRKSTNNAME","XMLAGG","XMLATTRIBUTES","XMLCAST","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLGROUP","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTABLE","XMLTEXT","XMLVALIDATE","XSLTRANSFORM","XSROBJECT","YEAR","YEARS","YES","ZONE"],Fo=["ARRAY","BIGINT","BINARY","BIT","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATA","DATALINK","DATE","DBCLOB","DECFLOAT","DECIMAL","DEC","DOUBLE","DOUBLE PRECISION","FLOAT","GRAPHIC","INT","INTEGER","LONG","NUMERIC","REAL","ROWID","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC","XML"],Ho=G(["SELECT [ALL | DISTINCT]"]),bo=G(["WITH [RECURSIVE]","INTO","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","FOR READ ONLY","OPTIMIZE FOR","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","DELETE","INSERT","FOR SYSTEM NAME"]),or=G(["CREATE [OR REPLACE] TABLE"]),sE=G(["CREATE [OR REPLACE] [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","WITH {NC | RR | RS | CS | UR}","DELETE FROM","DROP TABLE","ALTER TABLE","ADD [COLUMN]","ALTER [COLUMN]","DROP [COLUMN]","SET DATA TYPE","SET {GENERATED ALWAYS | GENERATED BY DEFAULT}","SET NOT NULL","SET {NOT HIDDEN | IMPLICITLY HIDDEN}","SET FIELDPROC","DROP {DEFAULT | NOT NULL | GENERATED | IDENTITY | ROW CHANGE TIMESTAMP | FIELDPROC}","TRUNCATE [TABLE]","SET [CURRENT] SCHEMA","SET CURRENT_SCHEMA","ALLOCATE CURSOR","ALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL] SQL","ALTER [SPECIFIC] {FUNCTION | PROCEDURE}","ALTER {MASK | PERMISSION | SEQUENCE | TRIGGER}","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PARAMETER | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","COMMENT ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON PARAMETER SPECIFIC {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON [TABLE FUNCTION] RETURN COLUMN","COMMENT ON [TABLE FUNCTION] RETURN COLUMN SPECIFIC [PROCEDURE | ROUTINE]","COMMIT [WORK] [HOLD]","CONNECT [TO | RESET] USER","CREATE [OR REPLACE] {ALIAS | FUNCTION | MASK | PERMISSION | PROCEDURE | SEQUENCE | TRIGGER | VARIABLE}","CREATE [ENCODED VECTOR] INDEX","CREATE UNIQUE [WHERE NOT NULL] INDEX","CREATE SCHEMA","CREATE TYPE","DEALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL]","DECLARE CURSOR","DECLARE GLOBAL TEMPORARY TABLE","DECLARE","DESCRIBE CURSOR","DESCRIBE INPUT","DESCRIBE [OUTPUT]","DESCRIBE {PROCEDURE | ROUTINE}","DESCRIBE TABLE","DISCONNECT ALL [SQL]","DISCONNECT [CURRENT]","DROP {ALIAS | INDEX | MASK | PACKAGE | PERMISSION | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT} [IF EXISTS]","DROP [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE} [IF EXISTS]","END DECLARE SECTION","EXECUTE [IMMEDIATE]","FREE LOCATOR","GET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","GET [CURRENT | STACKED] DIAGNOSTICS","GRANT {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","HOLD LOCATOR","INCLUDE","LABEL ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","LABEL ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","LOCK TABLE","OPEN","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX] TO","REVOKE {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","ROLLBACK [WORK] [HOLD | TO SAVEPOINT]","SAVEPOINT","SET CONNECTION","SET CURRENT {DEBUG MODE | DECFLOAT ROUNDING MODE | DEGREE | IMPLICIT XMLPARSE OPTION | TEMPORAL SYSTEM_TIME}","SET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","SET ENCRYPTION PASSWORD","SET OPTION","SET {[CURRENT [FUNCTION]] PATH | CURRENT_PATH}","SET RESULT SETS [WITH RETURN [TO CALLER | TO CLIENT]]","SET SESSION AUTHORIZATION","SET SESSION_USER","SET TRANSACTION","SIGNAL SQLSTATE [VALUE]","TAG","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}"]),xo=G(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),Yo=G(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT | RIGHT] EXCEPTION JOIN","{INNER | CROSS} JOIN"]),Vo=G(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),vo=G([]),wo={name:"db2i",tokenizerOptions:{reservedSelect:Ho,reservedClauses:[...bo,...or,...sE],reservedSetOperations:xo,reservedJoins:Yo,reservedKeywordPhrases:Vo,reservedDataTypePhrases:vo,reservedKeywords:Go,reservedDataTypes:Fo,reservedFunctionNames:yo,nestedBlockComments:!0,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","¬=","¬>","¬<","!>","!<","||","=>"]},formatOptions:{onelineClauses:[...or,...sE],tabularOnelineClauses:sE}},Wo=["ABS","ACOS","ADD","ADD_PARQUET_KEY","AGE","AGGREGATE","ALIAS","ALL_PROFILING_OUTPUT","ANY_VALUE","APPLY","APPROX_COUNT_DISTINCT","APPROX_QUANTILE","ARBITRARY","ARGMAX","ARGMIN","ARG_MAX","ARG_MAX_NULL","ARG_MIN","ARG_MIN_NULL","ARRAY_AGG","ARRAY_AGGR","ARRAY_AGGREGATE","ARRAY_APPEND","ARRAY_APPLY","ARRAY_CAT","ARRAY_CONCAT","ARRAY_CONTAINS","ARRAY_COSINE_SIMILARITY","ARRAY_CROSS_PRODUCT","ARRAY_DISTANCE","ARRAY_DISTINCT","ARRAY_DOT_PRODUCT","ARRAY_EXTRACT","ARRAY_FILTER","ARRAY_GRADE_UP","ARRAY_HAS","ARRAY_HAS_ALL","ARRAY_HAS_ANY","ARRAY_INDEXOF","ARRAY_INNER_PRODUCT","ARRAY_INTERSECT","ARRAY_LENGTH","ARRAY_POP_BACK","ARRAY_POP_FRONT","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_PUSH_BACK","ARRAY_PUSH_FRONT","ARRAY_REDUCE","ARRAY_RESIZE","ARRAY_REVERSE","ARRAY_REVERSE_SORT","ARRAY_SELECT","ARRAY_SLICE","ARRAY_SORT","ARRAY_TO_JSON","ARRAY_TO_STRING","ARRAY_TRANSFORM","ARRAY_UNIQUE","ARRAY_VALUE","ARRAY_WHERE","ARRAY_ZIP","ARROW_SCAN","ARROW_SCAN_DUMB","ASCII","ASIN","ATAN","ATAN2","AVG","BASE64","BIN","BITSTRING","BITSTRING_AGG","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_POSITION","BIT_XOR","BOOL_AND","BOOL_OR","CARDINALITY","CBRT","CEIL","CEILING","CENTURY","CHECKPOINT","CHR","COLLATIONS","COL_DESCRIPTION","COMBINE","CONCAT","CONCAT_WS","CONSTANT_OR_NULL","CONTAINS","COPY_DATABASE","CORR","COS","COT","COUNT","COUNT_IF","COUNT_STAR","COVAR_POP","COVAR_SAMP","CREATE_SORT_KEY","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_DATE","CURRENT_LOCALTIME","CURRENT_LOCALTIMESTAMP","CURRENT_QUERY","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_SETTING","CURRENT_USER","CURRVAL","DAMERAU_LEVENSHTEIN","DATABASE_LIST","DATABASE_SIZE","DATEDIFF","DATEPART","DATESUB","DATETRUNC","DATE_ADD","DATE_DIFF","DATE_PART","DATE_SUB","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECADE","DECODE","DEGREES","DISABLE_CHECKPOINT_ON_SHUTDOWN","DISABLE_OBJECT_CACHE","DISABLE_OPTIMIZER","DISABLE_PRINT_PROGRESS_BAR","DISABLE_PROFILE","DISABLE_PROFILING","DISABLE_PROGRESS_BAR","DISABLE_VERIFICATION","DISABLE_VERIFY_EXTERNAL","DISABLE_VERIFY_FETCH_ROW","DISABLE_VERIFY_PARALLELISM","DISABLE_VERIFY_SERIALIZER","DIVIDE","DUCKDB_COLUMNS","DUCKDB_CONSTRAINTS","DUCKDB_DATABASES","DUCKDB_DEPENDENCIES","DUCKDB_EXTENSIONS","DUCKDB_FUNCTIONS","DUCKDB_INDEXES","DUCKDB_KEYWORDS","DUCKDB_MEMORY","DUCKDB_OPTIMIZERS","DUCKDB_SCHEMAS","DUCKDB_SECRETS","DUCKDB_SEQUENCES","DUCKDB_SETTINGS","DUCKDB_TABLES","DUCKDB_TEMPORARY_FILES","DUCKDB_TYPES","DUCKDB_VIEWS","EDIT","EDITDIST3","ELEMENT_AT","ENABLE_CHECKPOINT_ON_SHUTDOWN","ENABLE_OBJECT_CACHE","ENABLE_OPTIMIZER","ENABLE_PRINT_PROGRESS_BAR","ENABLE_PROFILE","ENABLE_PROFILING","ENABLE_PROGRESS_BAR","ENABLE_VERIFICATION","ENCODE","ENDS_WITH","ENTROPY","ENUM_CODE","ENUM_FIRST","ENUM_LAST","ENUM_RANGE","ENUM_RANGE_BOUNDARY","EPOCH","EPOCH_MS","EPOCH_NS","EPOCH_US","ERA","ERROR","EVEN","EXP","FACTORIAL","FAVG","FDIV","FILTER","FINALIZE","FIRST","FLATTEN","FLOOR","FMOD","FORCE_CHECKPOINT","FORMAT","FORMATREADABLEDECIMALSIZE","FORMATREADABLESIZE","FORMAT_BYTES","FORMAT_PG_TYPE","FORMAT_TYPE","FROM_BASE64","FROM_BINARY","FROM_HEX","FROM_JSON","FROM_JSON_STRICT","FSUM","FUNCTIONS","GAMMA","GCD","GENERATE_SERIES","GENERATE_SUBSCRIPTS","GEN_RANDOM_UUID","GEOMEAN","GEOMETRIC_MEAN","GETENV","GET_BIT","GET_BLOCK_SIZE","GET_CURRENT_TIME","GET_CURRENT_TIMESTAMP","GLOB","GRADE_UP","GREATEST","GREATEST_COMMON_DIVISOR","GROUP_CONCAT","HAMMING","HASH","HAS_ANY_COLUMN_PRIVILEGE","HAS_COLUMN_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE","HAS_FUNCTION_PRIVILEGE","HAS_LANGUAGE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_SEQUENCE_PRIVILEGE","HAS_SERVER_PRIVILEGE","HAS_TABLESPACE_PRIVILEGE","HAS_TABLE_PRIVILEGE","HEX","HISTOGRAM","HOUR","ICU_CALENDAR_NAMES","ICU_SORT_KEY","ILIKE_ESCAPE","IMPORT_DATABASE","INDEX_SCAN","INET_CLIENT_ADDR","INET_CLIENT_PORT","INET_SERVER_ADDR","INET_SERVER_PORT","INSTR","IN_SEARCH_PATH","ISFINITE","ISINF","ISNAN","ISODOW","ISOYEAR","JACCARD","JARO_SIMILARITY","JARO_WINKLER_SIMILARITY","JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_CONTAINS","JSON_DESERIALIZE_SQL","JSON_EXECUTE_SERIALIZED_SQL","JSON_EXTRACT","JSON_EXTRACT_PATH","JSON_EXTRACT_PATH_TEXT","JSON_EXTRACT_STRING","JSON_GROUP_ARRAY","JSON_GROUP_OBJECT","JSON_GROUP_STRUCTURE","JSON_KEYS","JSON_MERGE_PATCH","JSON_OBJECT","JSON_QUOTE","JSON_SERIALIZE_PLAN","JSON_SERIALIZE_SQL","JSON_STRUCTURE","JSON_TRANSFORM","JSON_TRANSFORM_STRICT","JSON_TYPE","JSON_VALID","JULIAN","KAHAN_SUM","KURTOSIS","KURTOSIS_POP","LAST","LAST_DAY","LCASE","LCM","LEAST","LEAST_COMMON_MULTIPLE","LEFT","LEFT_GRAPHEME","LEN","LENGTH","LENGTH_GRAPHEME","LEVENSHTEIN","LGAMMA","LIKE_ESCAPE","LIST","LISTAGG","LIST_AGGR","LIST_AGGREGATE","LIST_ANY_VALUE","LIST_APPEND","LIST_APPLY","LIST_APPROX_COUNT_DISTINCT","LIST_AVG","LIST_BIT_AND","LIST_BIT_OR","LIST_BIT_XOR","LIST_BOOL_AND","LIST_BOOL_OR","LIST_CAT","LIST_CONCAT","LIST_CONTAINS","LIST_COSINE_SIMILARITY","LIST_COUNT","LIST_DISTANCE","LIST_DISTINCT","LIST_DOT_PRODUCT","LIST_ELEMENT","LIST_ENTROPY","LIST_EXTRACT","LIST_FILTER","LIST_FIRST","LIST_GRADE_UP","LIST_HAS","LIST_HAS_ALL","LIST_HAS_ANY","LIST_HISTOGRAM","LIST_INDEXOF","LIST_INNER_PRODUCT","LIST_INTERSECT","LIST_KURTOSIS","LIST_KURTOSIS_POP","LIST_LAST","LIST_MAD","LIST_MAX","LIST_MEDIAN","LIST_MIN","LIST_MODE","LIST_PACK","LIST_POSITION","LIST_PREPEND","LIST_PRODUCT","LIST_REDUCE","LIST_RESIZE","LIST_REVERSE","LIST_REVERSE_SORT","LIST_SELECT","LIST_SEM","LIST_SKEWNESS","LIST_SLICE","LIST_SORT","LIST_STDDEV_POP","LIST_STDDEV_SAMP","LIST_STRING_AGG","LIST_SUM","LIST_TRANSFORM","LIST_UNIQUE","LIST_VALUE","LIST_VAR_POP","LIST_VAR_SAMP","LIST_WHERE","LIST_ZIP","LN","LOG","LOG10","LOG2","LOWER","LPAD","LSMODE","LTRIM","MAD","MAKE_DATE","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","MAP","MAP_CONCAT","MAP_ENTRIES","MAP_EXTRACT","MAP_FROM_ENTRIES","MAP_KEYS","MAP_VALUES","MAX","MAX_BY","MD5","MD5_NUMBER","MD5_NUMBER_LOWER","MD5_NUMBER_UPPER","MEAN","MEDIAN","METADATA_INFO","MICROSECOND","MILLENNIUM","MILLISECOND","MIN","MINUTE","MIN_BY","MISMATCHES","MOD","MODE","MONTH","MONTHNAME","MULTIPLY","NEXTAFTER","NEXTVAL","NFC_NORMALIZE","NOT_ILIKE_ESCAPE","NOT_LIKE_ESCAPE","NOW","NULLIF","OBJ_DESCRIPTION","OCTET_LENGTH","ORD","PARQUET_FILE_METADATA","PARQUET_KV_METADATA","PARQUET_METADATA","PARQUET_SCAN","PARQUET_SCHEMA","PARSE_DIRNAME","PARSE_DIRPATH","PARSE_FILENAME","PARSE_PATH","PG_COLLATION_IS_VISIBLE","PG_CONF_LOAD_TIME","PG_CONVERSION_IS_VISIBLE","PG_FUNCTION_IS_VISIBLE","PG_GET_CONSTRAINTDEF","PG_GET_EXPR","PG_GET_VIEWDEF","PG_HAS_ROLE","PG_IS_OTHER_TEMP_SCHEMA","PG_MY_TEMP_SCHEMA","PG_OPCLASS_IS_VISIBLE","PG_OPERATOR_IS_VISIBLE","PG_OPFAMILY_IS_VISIBLE","PG_POSTMASTER_START_TIME","PG_SIZE_PRETTY","PG_TABLE_IS_VISIBLE","PG_TIMEZONE_NAMES","PG_TS_CONFIG_IS_VISIBLE","PG_TS_DICT_IS_VISIBLE","PG_TS_PARSER_IS_VISIBLE","PG_TS_TEMPLATE_IS_VISIBLE","PG_TYPEOF","PG_TYPE_IS_VISIBLE","PI","PLATFORM","POSITION","POW","POWER","PRAGMA_COLLATIONS","PRAGMA_DATABASE_SIZE","PRAGMA_METADATA_INFO","PRAGMA_PLATFORM","PRAGMA_SHOW","PRAGMA_STORAGE_INFO","PRAGMA_TABLE_INFO","PRAGMA_USER_AGENT","PRAGMA_VERSION","PREFIX","PRINTF","PRODUCT","QUANTILE","QUANTILE_CONT","QUANTILE_DISC","QUARTER","RADIANS","RANDOM","RANGE","READFILE","READ_BLOB","READ_CSV","READ_CSV_AUTO","READ_JSON","READ_JSON_AUTO","READ_JSON_OBJECTS","READ_JSON_OBJECTS_AUTO","READ_NDJSON","READ_NDJSON_AUTO","READ_NDJSON_OBJECTS","READ_PARQUET","READ_TEXT","REDUCE","REGEXP_ESCAPE","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_FULL_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REPEAT","REPEAT_ROW","REPLACE","RESERVOIR_QUANTILE","REVERSE","RIGHT","RIGHT_GRAPHEME","ROUND","ROUNDBANKERS","ROUND_EVEN","ROW","ROW_TO_JSON","RPAD","RTRIM","SECOND","SEM","SEQ_SCAN","SESSION_USER","SETSEED","SET_BIT","SHA256","SHA3","SHELL_ADD_SCHEMA","SHELL_ESCAPE_CRNL","SHELL_IDQUOTE","SHELL_MODULE_SCHEMA","SHELL_PUTSNL","SHOBJ_DESCRIPTION","SHOW","SHOW_DATABASES","SHOW_TABLES","SHOW_TABLES_EXPANDED","SIGN","SIGNBIT","SIN","SKEWNESS","SNIFF_CSV","SPLIT","SPLIT_PART","SQL_AUTO_COMPLETE","SQRT","STARTS_WITH","STATS","STDDEV","STDDEV_POP","STDDEV_SAMP","STORAGE_INFO","STRFTIME","STRING_AGG","STRING_SPLIT","STRING_SPLIT_REGEX","STRING_TO_ARRAY","STRIP_ACCENTS","STRLEN","STRPOS","STRPTIME","STRUCT_EXTRACT","STRUCT_INSERT","STRUCT_PACK","STR_SPLIT","STR_SPLIT_REGEX","SUBSTR","SUBSTRING","SUBSTRING_GRAPHEME","SUBTRACT","SUFFIX","SUM","SUMKAHAN","SUMMARY","SUM_NO_OVERFLOW","TABLE_INFO","TAN","TEST_ALL_TYPES","TEST_VECTOR_TYPES","TIMEZONE","TIMEZONE_HOUR","TIMEZONE_MINUTE","TIME_BUCKET","TODAY","TO_BASE","TO_BASE64","TO_BINARY","TO_CENTURIES","TO_DAYS","TO_DECADES","TO_HEX","TO_HOURS","TO_JSON","TO_MICROSECONDS","TO_MILLENNIA","TO_MILLISECONDS","TO_MINUTES","TO_MONTHS","TO_SECONDS","TO_TIMESTAMP","TO_WEEKS","TO_YEARS","TRANSACTION_TIMESTAMP","TRANSLATE","TRIM","TRUNC","TRY_STRPTIME","TXID_CURRENT","TYPEOF","UCASE","UNBIN","UNHEX","UNICODE","UNION_EXTRACT","UNION_TAG","UNION_VALUE","UNNEST","UNPIVOT_LIST","UPPER","USER","USER_AGENT","UUID","VARIANCE","VAR_POP","VAR_SAMP","VECTOR_TYPE","VERIFY_EXTERNAL","VERIFY_FETCH_ROW","VERIFY_PARALLELISM","VERIFY_SERIALIZER","VERSION","WEEK","WEEKDAY","WEEKOFYEAR","WHICH_SECRET","WRITEFILE","XOR","YEAR","YEARWEEK","CAST","COALESCE","RANK","ROW_NUMBER"],Xo=["ALL","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ATTACH","ASYMMETRIC","BOTH","CASE","CAST","CHECK","COLLATE","COLUMN","CONSTRAINT","CREATE","DEFAULT","DEFERRABLE","DESC","DESCRIBE","DETACH","DISTINCT","DO","ELSE","END","EXCEPT","FALSE","FETCH","FOR","FOREIGN","FROM","GRANT","GROUP","HAVING","IN","INITIALLY","INTERSECT","INTO","IS","LATERAL","LEADING","LIMIT","NOT","NULL","OFFSET","ON","ONLY","OR","ORDER","PIVOT","PIVOT_LONGER","PIVOT_WIDER","PLACING","PRIMARY","REFERENCES","RETURNING","SELECT","SHOW","SOME","SUMMARIZE","SYMMETRIC","TABLE","THEN","TO","TRAILING","TRUE","UNION","UNIQUE","UNPIVOT","USING","VARIADIC","WHEN","WHERE","WINDOW","WITH"],Ko=["ARRAY","BIGINT","BINARY","BIT","BITSTRING","BLOB","BOOL","BOOLEAN","BPCHAR","BYTEA","CHAR","DATE","DATETIME","DEC","DECIMAL","DOUBLE","ENUM","FLOAT","FLOAT4","FLOAT8","GUID","HUGEINT","INET","INT","INT1","INT128","INT16","INT2","INT32","INT4","INT64","INT8","INTEGER","INTEGRAL","INTERVAL","JSON","LIST","LOGICAL","LONG","MAP","NUMERIC","NVARCHAR","OID","REAL","ROW","SHORT","SIGNED","SMALLINT","STRING","STRUCT","TEXT","TIME","TIMESTAMP_MS","TIMESTAMP_NS","TIMESTAMP_S","TIMESTAMP_US","TIMESTAMP","TIMESTAMPTZ","TIMETZ","TINYINT","UBIGINT","UHUGEINT","UINT128","UINT16","UINT32","UINT64","UINT8","UINTEGER","UNION","USMALLINT","UTINYINT","UUID","VARBINARY","VARCHAR"],ko=G(["SELECT [ALL | DISTINCT]"]),$o=G(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL]","HAVING","WINDOW","PARTITION BY","ORDER BY [ALL]","LIMIT","OFFSET","USING SAMPLE","QUALIFY","INSERT [OR REPLACE] INTO","VALUES","DEFAULT VALUES","SET","RETURNING"]),ar=G(["CREATE [OR REPLACE] [TEMPORARY | TEMP] TABLE [IF NOT EXISTS]"]),TE=G(["UPDATE","ON CONFLICT","DELETE FROM","DROP TABLE [IF EXISTS]","TRUNCATE","ALTER TABLE","ADD [COLUMN] [IF NOT EXISTS]","ADD PRIMARY KEY","DROP [COLUMN] [IF EXISTS]","ALTER [COLUMN]","RENAME [COLUMN]","RENAME TO","SET [DATA] TYPE","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","CREATE [OR REPLACE] [TEMPORARY | TEMP] {MACRO | FUNCTION}","DROP MACRO [TABLE] [IF EXISTS]","DROP FUNCTION [IF EXISTS]","CREATE [UNIQUE] INDEX [IF NOT EXISTS]","DROP INDEX [IF EXISTS]","CREATE [OR REPLACE] SCHEMA [IF NOT EXISTS]","DROP SCHEMA [IF EXISTS]","CREATE [OR REPLACE] [PERSISTENT | TEMPORARY] SECRET [IF NOT EXISTS]","DROP [PERSISTENT | TEMPORARY] SECRET [IF EXISTS]","CREATE [OR REPLACE] [TEMPORARY | TEMP] SEQUENCE","DROP SEQUENCE [IF EXISTS]","CREATE [OR REPLACE] [TEMPORARY | TEMP] VIEW [IF NOT EXISTS]","DROP VIEW [IF EXISTS]","ALTER VIEW","CREATE TYPE","DROP TYPE [IF EXISTS]","ANALYZE","ATTACH [DATABASE] [IF NOT EXISTS]","DETACH [DATABASE] [IF EXISTS]","CALL","[FORCE] CHECKPOINT","COMMENT ON [TABLE | COLUMN | VIEW | INDEX | SEQUENCE | TYPE | MACRO | MACRO TABLE]","COPY [FROM DATABASE]","DESCRIBE","EXPORT DATABASE","IMPORT DATABASE","INSTALL","LOAD","PIVOT","PIVOT_WIDER","UNPIVOT","EXPLAIN [ANALYZE]","SET {LOCAL | SESSION | GLOBAL}","RESET [LOCAL | SESSION | GLOBAL]","{SET | RESET} VARIABLE","SUMMARIZE","BEGIN TRANSACTION","ROLLBACK","COMMIT","ABORT","USE","VACUUM [ANALYZE]","PREPARE","EXECUTE","DEALLOCATE [PREPARE]"]),qo=G(["UNION [ALL | BY NAME]","EXCEPT [ALL]","INTERSECT [ALL]"]),Jo=G(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","{NATURAL | ASOF} [INNER] JOIN","{NATURAL | ASOF} {LEFT | RIGHT | FULL} [OUTER] JOIN","POSITIONAL JOIN","ANTI JOIN","SEMI JOIN"]),Qo=G(["{ROWS | RANGE | GROUPS} BETWEEN","SIMILAR TO","IS [NOT] DISTINCT FROM"]),Zo=G(["TIMESTAMP WITH TIME ZONE"]),jo={name:"duckdb",tokenizerOptions:{reservedSelect:ko,reservedClauses:[...$o,...ar,...TE],reservedSetOperations:qo,reservedJoins:Jo,reservedKeywordPhrases:Qo,reservedDataTypePhrases:Zo,supportsXor:!0,reservedKeywords:Xo,reservedDataTypes:Ko,reservedFunctionNames:Wo,nestedBlockComments:!0,extraParens:["[]","{}"],underscoresInNumbers:!0,stringTypes:["$$","''-qq",{quote:"''-qq-bs",prefixes:["E"],requirePrefix:!0},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{rest:"$"},paramTypes:{positional:!0,numbered:["$"],quoted:["$"]},operators:["//","%","**","^","!","&","|","~","<<",">>","::","==","->","->>",":",":=","=>","~~","!~~","~~*","!~~*","~~~","~","!~","~*","!~*","^@","||",">>=","<<="]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...ar,...TE],tabularOnelineClauses:TE}},zo=["ABS","ACOS","ASIN","ATAN","BIN","BROUND","CBRT","CEIL","CEILING","CONV","COS","DEGREES","EXP","FACTORIAL","FLOOR","GREATEST","HEX","LEAST","LN","LOG","LOG10","LOG2","NEGATIVE","PI","PMOD","POSITIVE","POW","POWER","RADIANS","RAND","ROUND","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIN","SQRT","TAN","UNHEX","WIDTH_BUCKET","ARRAY_CONTAINS","MAP_KEYS","MAP_VALUES","SIZE","SORT_ARRAY","BINARY","CAST","ADD_MONTHS","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","QUARTER","SECOND","TIMESTAMP","TO_DATE","TO_UTC_TIMESTAMP","TRUNC","UNIX_TIMESTAMP","WEEKOFYEAR","YEAR","ASSERT_TRUE","COALESCE","IF","ISNOTNULL","ISNULL","NULLIF","NVL","ASCII","BASE64","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONTEXT_NGRAMS","DECODE","ELT","ENCODE","FIELD","FIND_IN_SET","FORMAT_NUMBER","GET_JSON_OBJECT","IN_FILE","INITCAP","INSTR","LCASE","LENGTH","LEVENSHTEIN","LOCATE","LOWER","LPAD","LTRIM","NGRAMS","OCTET_LENGTH","PARSE_URL","PRINTF","QUOTE","REGEXP_EXTRACT","REGEXP_REPLACE","REPEAT","REVERSE","RPAD","RTRIM","SENTENCES","SOUNDEX","SPACE","SPLIT","STR_TO_MAP","SUBSTR","SUBSTRING","TRANSLATE","TRIM","UCASE","UNBASE64","UPPER","MASK","MASK_FIRST_N","MASK_HASH","MASK_LAST_N","MASK_SHOW_FIRST_N","MASK_SHOW_LAST_N","AES_DECRYPT","AES_ENCRYPT","CRC32","CURRENT_DATABASE","CURRENT_USER","HASH","JAVA_METHOD","LOGGED_IN_USER","MD5","REFLECT","SHA","SHA1","SHA2","SURROGATE_KEY","VERSION","AVG","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COVAR_POP","COVAR_SAMP","HISTOGRAM_NUMERIC","MAX","MIN","NTILE","PERCENTILE","PERCENTILE_APPROX","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","EXPLODE","INLINE","JSON_TUPLE","PARSE_URL_TUPLE","POSEXPLODE","STACK","LEAD","LAG","FIRST_VALUE","LAST_VALUE","RANK","ROW_NUMBER","DENSE_RANK","CUME_DIST","PERCENT_RANK","NTILE"],ea=["ADD","ADMIN","AFTER","ANALYZE","ARCHIVE","ASC","BEFORE","BUCKET","BUCKETS","CASCADE","CHANGE","CLUSTER","CLUSTERED","CLUSTERSTATUS","COLLECTION","COLUMNS","COMMENT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONTINUE","DATA","DATABASES","DATETIME","DAY","DBPROPERTIES","DEFERRED","DEFINED","DELIMITED","DEPENDENCY","DESC","DIRECTORIES","DIRECTORY","DISABLE","DISTRIBUTE","ELEM_TYPE","ENABLE","ESCAPED","EXCLUSIVE","EXPLAIN","EXPORT","FIELDS","FILE","FILEFORMAT","FIRST","FORMAT","FORMATTED","FUNCTIONS","HOLD_DDLTIME","HOUR","IDXPROPERTIES","IGNORE","INDEX","INDEXES","INPATH","INPUTDRIVER","INPUTFORMAT","ITEMS","JAR","KEYS","KEY_TYPE","LIMIT","LINES","LOAD","LOCATION","LOCK","LOCKS","LOGICAL","LONG","MAPJOIN","MATERIALIZED","METADATA","MINUS","MINUTE","MONTH","MSCK","NOSCAN","NO_DROP","OFFLINE","OPTION","OUTPUTDRIVER","OUTPUTFORMAT","OVERWRITE","OWNER","PARTITIONED","PARTITIONS","PLUS","PRETTY","PRINCIPALS","PROTECTION","PURGE","READ","READONLY","REBUILD","RECORDREADER","RECORDWRITER","RELOAD","RENAME","REPAIR","REPLACE","REPLICATION","RESTRICT","REWRITE","ROLE","ROLES","SCHEMA","SCHEMAS","SECOND","SEMI","SERDE","SERDEPROPERTIES","SERVER","SETS","SHARED","SHOW","SHOW_DATABASE","SKEWED","SORT","SORTED","SSL","STATISTICS","STORED","STREAMTABLE","STRING","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","TINYINT","TOUCH","TRANSACTIONS","UNARCHIVE","UNDO","UNIONTYPE","UNLOCK","UNSET","UNSIGNED","URI","USE","UTC","UTCTIMESTAMP","VALUE_TYPE","VIEW","WHILE","YEAR","AUTOCOMMIT","ISOLATION","LEVEL","OFFSET","SNAPSHOT","TRANSACTION","WORK","WRITE","ABORT","KEY","LAST","NORELY","NOVALIDATE","NULLS","RELY","VALIDATE","DETAIL","DOW","EXPRESSION","OPERATOR","QUARTER","SUMMARY","VECTORIZATION","WEEK","YEARS","MONTHS","WEEKS","DAYS","HOURS","MINUTES","SECONDS","TIMESTAMPTZ","ZONE","ALL","ALTER","AND","AS","AUTHORIZATION","BETWEEN","BOTH","BY","CASE","CAST","COLUMN","CONF","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIMESTAMP","CURSOR","DATABASE","DELETE","DESCRIBE","DISTINCT","DROP","ELSE","END","EXCHANGE","EXISTS","EXTENDED","EXTERNAL","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","FUNCTION","GRANT","GROUP","GROUPING","HAVING","IF","IMPORT","IN","INNER","INSERT","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LESS","LIKE","LOCAL","MACRO","MORE","NONE","NOT","NULL","OF","ON","OR","ORDER","OUT","OUTER","OVER","PARTIALSCAN","PARTITION","PERCENT","PRECEDING","PRESERVE","PROCEDURE","RANGE","READS","REDUCE","REVOKE","RIGHT","ROLLUP","ROW","ROWS","SELECT","SET","TABLE","TABLESAMPLE","THEN","TO","TRANSFORM","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNION","UNIQUEJOIN","UPDATE","USER","USING","UTC_TMESTAMP","VALUES","WHEN","WHERE","WINDOW","WITH","COMMIT","ONLY","REGEXP","RLIKE","ROLLBACK","START","CACHE","CONSTRAINT","FOREIGN","PRIMARY","REFERENCES","DAYOFWEEK","EXTRACT","FLOOR","VIEWS","TIME","SYNC","TEXTFILE","SEQUENCEFILE","ORC","CSV","TSV","PARQUET","AVRO","RCFILE","JSONFILE","INPUTFORMAT","OUTPUTFORMAT"],ta=["ARRAY","BIGINT","BINARY","BOOLEAN","CHAR","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MAP","NUMERIC","PRECISION","SMALLINT","STRUCT","TIMESTAMP","VARCHAR"],Ea=G(["SELECT [ALL | DISTINCT]"]),ra=G(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT INTO [TABLE]","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT [VALUES]","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),ir=G(["CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS]"]),oE=G(["CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","RENAME TO","TRUNCATE [TABLE]","ALTER","CREATE","USE","DESCRIBE","DROP","FETCH","SHOW","STORED AS","STORED BY","ROW FORMAT"]),na=G(["UNION [ALL | DISTINCT]"]),sa=G(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","LEFT SEMI JOIN"]),Ta=G(["{ROWS | RANGE} BETWEEN"]),oa=G([]),aa={name:"hive",tokenizerOptions:{reservedSelect:Ea,reservedClauses:[...ra,...ir,...oE],reservedSetOperations:na,reservedJoins:sa,reservedKeywordPhrases:Ta,reservedDataTypePhrases:oa,reservedKeywords:ea,reservedDataTypes:ta,reservedFunctionNames:zo,extraParens:["[]"],stringTypes:['""-bs',"''-bs"],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||"]},formatOptions:{onelineClauses:[...ir,...oE],tabularOnelineClauses:oE}};function vt(E){return E.map((t,r)=>{const n=E[r+1]||It;if(Ot.SET(t)&&n.text==="(")return Object.assign(Object.assign({},t),{type:K.RESERVED_FUNCTION_NAME});const s=E[r-1]||It;return Ot.VALUES(t)&&s.text==="="?Object.assign(Object.assign({},t),{type:K.RESERVED_FUNCTION_NAME}):t})}const ia=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DELETE_DOMAIN_ID","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DO_DOMAIN_IDS","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERAL","GRANT","GROUP","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IGNORE_DOMAIN_IDS","IGNORE_SERVER_IDS","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MASTER_HEARTBEAT_PERIOD","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OFFSET","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PAGE_CHECKSUM","PARSE_VCOL_EXPR","PARTITION","POSITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","READ_WRITE","RECURSIVE","REF_SYSTEM_ID","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","RETURNING","REVOKE","RIGHT","RLIKE","ROW_NUMBER","ROWS","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SLOW","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],Aa=["BIGINT","BINARY","BIT","BLOB","CHAR BYTE","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],Ra=["ADDDATE","ADD_MONTHS","BIT_AND","BIT_OR","BIT_XOR","CAST","COUNT","CUME_DIST","CURDATE","CURTIME","DATE_ADD","DATE_SUB","DATE_FORMAT","DECODE","DENSE_RANK","EXTRACT","FIRST_VALUE","GROUP_CONCAT","JSON_ARRAYAGG","JSON_OBJECTAGG","LAG","LEAD","MAX","MEDIAN","MID","MIN","NOW","NTH_VALUE","NTILE","POSITION","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","ROW_NUMBER","SESSION_USER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUBDATE","SUBSTR","SUBSTRING","SUM","SYSTEM_USER","TRIM","TRIM_ORACLE","VARIANCE","VAR_POP","VAR_SAMP","ABS","ACOS","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ASIN","ATAN","ATAN2","BENCHMARK","BIN","BINLOG_GTID_POS","BIT_COUNT","BIT_LENGTH","CEIL","CEILING","CHARACTER_LENGTH","CHAR_LENGTH","CHR","COERCIBILITY","COLUMN_CHECK","COLUMN_EXISTS","COLUMN_LIST","COLUMN_JSON","COMPRESS","CONCAT","CONCAT_OPERATOR_ORACLE","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","DATEDIFF","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEGREES","DECODE_HISTOGRAM","DECODE_ORACLE","DES_DECRYPT","DES_ENCRYPT","ELT","ENCODE","ENCRYPT","EXP","EXPORT_SET","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GET_LOCK","GREATEST","HEX","IFNULL","INSTR","ISNULL","IS_FREE_LOCK","IS_USED_LOCK","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_COMPACT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_DETAILED","JSON_EXISTS","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_LOOSE","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_QUERY","JSON_QUOTE","JSON_OBJECT","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_SEARCH","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAST_DAY","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LENGTHB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LPAD_ORACLE","LTRIM","LTRIM_ORACLE","MAKEDATE","MAKETIME","MAKE_SET","MASTER_GTID_WAIT","MASTER_POS_WAIT","MD5","MONTHNAME","NAME_CONST","NVL","NVL2","OCT","OCTET_LENGTH","ORD","PERIOD_ADD","PERIOD_DIFF","PI","POW","POWER","QUOTE","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","RADIANS","RAND","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPLACE_ORACLE","REVERSE","ROUND","RPAD","RPAD_ORACLE","RTRIM","RTRIM_ORACLE","SEC_TO_TIME","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SPACE","SQRT","STRCMP","STR_TO_DATE","SUBSTR_ORACLE","SUBSTRING_INDEX","SUBTIME","SYS_GUID","TAN","TIMEDIFF","TIME_FORMAT","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_SECONDS","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VERSION","WEEKDAY","WEEKOFYEAR","WSREP_LAST_WRITTEN_GTID","WSREP_LAST_SEEN_GTID","WSREP_SYNC_WAIT_UPTO_GTID","YEARWEEK","COALESCE","NULLIF"],Sa=G(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),Na=G(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET","RETURNING"]),Ar=G(["CREATE [OR REPLACE] [TEMPORARY] TABLE [IF NOT EXISTS]"]),aE=G(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] [IGNORE] TABLE [IF EXISTS]","ADD [COLUMN] [IF NOT EXISTS]","{CHANGE | MODIFY} [COLUMN] [IF EXISTS]","DROP [COLUMN] [IF EXISTS]","RENAME [TO]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","SET {VISIBLE | INVISIBLE}","TRUNCATE [TABLE]","ALTER DATABASE","ALTER DATABASE COMMENT","ALTER EVENT","ALTER FUNCTION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SCHEMA COMMENT","ALTER SEQUENCE","ALTER SERVER","ALTER USER","ALTER VIEW","ANALYZE","ANALYZE TABLE","BACKUP LOCK","BACKUP STAGE","BACKUP UNLOCK","BEGIN","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHECK TABLE","CHECK VIEW","CHECKSUM TABLE","COMMIT","CREATE AGGREGATE FUNCTION","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE INDEX","CREATE PROCEDURE","CREATE ROLE","CREATE SEQUENCE","CREATE SERVER","CREATE SPATIAL INDEX","CREATE TRIGGER","CREATE UNIQUE INDEX","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP INDEX","DROP PREPARE","DROP PROCEDURE","DROP ROLE","DROP SEQUENCE","DROP SERVER","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GET DIAGNOSTICS","GET DIAGNOSTICS CONDITION","GRANT","HANDLER","HELP","INSTALL PLUGIN","INSTALL SONAME","KILL","LOAD DATA INFILE","LOAD INDEX INTO CACHE","LOAD XML INFILE","LOCK TABLE","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","PURGE MASTER LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","REPAIR VIEW","RESET MASTER","RESET QUERY CACHE","RESET REPLICA","RESET SLAVE","RESIGNAL","REVOKE","ROLLBACK","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET GLOBAL TRANSACTION","SET NAMES","SET PASSWORD","SET ROLE","SET STATEMENT","SET TRANSACTION","SHOW","SHOW ALL REPLICAS STATUS","SHOW ALL SLAVES STATUS","SHOW AUTHORS","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW BINLOG STATUS","SHOW CHARACTER SET","SHOW CLIENT_STATISTICS","SHOW COLLATION","SHOW COLUMNS","SHOW CONTRIBUTORS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PACKAGE","SHOW CREATE PACKAGE BODY","SHOW CREATE PROCEDURE","SHOW CREATE SEQUENCE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINE INNODB STATUS","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW EXPLAIN","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW INDEXES","SHOW INDEX_STATISTICS","SHOW KEYS","SHOW LOCALES","SHOW MASTER LOGS","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PACKAGE BODY CODE","SHOW PACKAGE BODY STATUS","SHOW PACKAGE STATUS","SHOW PLUGINS","SHOW PLUGINS SONAME","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW QUERY_RESPONSE_TIME","SHOW RELAYLOG EVENTS","SHOW REPLICA","SHOW REPLICA HOSTS","SHOW REPLICA STATUS","SHOW SCHEMAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW SLAVE STATUS","SHOW STATUS","SHOW STORAGE ENGINES","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW USER_STATISTICS","SHOW VARIABLES","SHOW WARNINGS","SHOW WSREP_MEMBERSHIP","SHOW WSREP_STATUS","SHUTDOWN","SIGNAL","START ALL REPLICAS","START ALL SLAVES","START REPLICA","START SLAVE","START TRANSACTION","STOP ALL REPLICAS","STOP ALL SLAVES","STOP REPLICA","STOP SLAVE","UNINSTALL PLUGIN","UNINSTALL SONAME","UNLOCK TABLE","USE","XA BEGIN","XA COMMIT","XA END","XA PREPARE","XA RECOVER","XA ROLLBACK","XA START"]),Ia=G(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]","MINUS [ALL | DISTINCT]"]),Oa=G(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),la=G(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),ua=G([]),Ca={name:"mariadb",tokenizerOptions:{reservedSelect:Sa,reservedClauses:[...Na,...Ar,...aE],reservedSetOperations:Ia,reservedJoins:Oa,reservedKeywordPhrases:la,reservedDataTypePhrases:ua,supportsXor:!0,reservedKeywords:ia,reservedDataTypes:Aa,reservedFunctionNames:Ra,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","&&","||","!","*.*"],postProcess:vt},formatOptions:{onelineClauses:[...Ar,...aE],tabularOnelineClauses:aE}},ca=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CUBE","CUME_DIST","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DENSE_RANK","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FIRST_VALUE","FOR","FORCE","FOREIGN","FROM","FULLTEXT","FUNCTION","GENERATED","GET","GRANT","GROUP","GROUPING","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","INTERSECT","INTERVAL","INTO","IO_AFTER_GTIDS","IO_BEFORE_GTIDS","IS","ITERATE","JOIN","JSON_TABLE","KEY","KEYS","KILL","LAG","LAST_VALUE","LATERAL","LEAD","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NTH_VALUE","NTILE","NULL","OF","ON","OPTIMIZE","OPTIMIZER_COSTS","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PERCENT_RANK","PRIMARY","PROCEDURE","PURGE","RANGE","RANK","READ","READS","READ_WRITE","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","REVOKE","RIGHT","RLIKE","ROW","ROWS","ROW_NUMBER","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STORED","STRAIGHT_JOIN","SYSTEM","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],_a=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],La=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BINARY","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","CAN_ACCESS_COLUMN","CAN_ACCESS_DATABASE","CAN_ACCESS_TABLE","CAN_ACCESS_USER","CAN_ACCESS_VIEW","CAST","CEIL","CEILING","CHAR","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEFAULT","DEGREES","DENSE_RANK","DIV","ELT","EXP","EXPORT_SET","EXTRACT","EXTRACTVALUE","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_PICO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLECTION","GEOMETRYCOLLECTION","GET_DD_COLUMN_PRIVILEGES","GET_DD_CREATE_OPTIONS","GET_DD_INDEX_SUB_PART_LENGTH","GET_FORMAT","GET_LOCK","GREATEST","GROUP_CONCAT","GROUPING","GTID_SUBSET","GTID_SUBTRACT","HEX","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INSERT","INSTR","INTERNAL_AUTO_INCREMENT","INTERNAL_AVG_ROW_LENGTH","INTERNAL_CHECK_TIME","INTERNAL_CHECKSUM","INTERNAL_DATA_FREE","INTERNAL_DATA_LENGTH","INTERNAL_DD_CHAR_LENGTH","INTERNAL_GET_COMMENT_OR_ERROR","INTERNAL_GET_ENABLED_ROLE_JSON","INTERNAL_GET_HOSTNAME","INTERNAL_GET_USERNAME","INTERNAL_GET_VIEW_WARNING_OR_ERROR","INTERNAL_INDEX_COLUMN_CARDINALITY","INTERNAL_INDEX_LENGTH","INTERNAL_IS_ENABLED_ROLE","INTERNAL_IS_MANDATORY_ROLE","INTERNAL_KEYS_DISABLED","INTERNAL_MAX_DATA_LENGTH","INTERNAL_TABLE_ROWS","INTERNAL_UPDATE_TIME","INTERVAL","IS","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS NOT","IS NOT NULL","IS NULL","IS_USED_LOCK","IS_UUID","ISNULL","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_ARRAYAGG","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LINESTRING","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MATCH","MAX","MBRCONTAINS","MBRCOVEREDBY","MBRCOVERS","MBRDISJOINT","MBREQUALS","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MEMBER OF","MICROSECOND","MID","MIN","MINUTE","MOD","MONTH","MONTHNAME","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","NAME_CONST","NOT","NOT IN","NOT LIKE","NOT REGEXP","NOW","NTH_VALUE","NTILE","NULLIF","OCT","OCTET_LENGTH","ORD","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","POINT","POLYGON","POSITION","POW","POWER","PS_CURRENT_THREAD_ID","PS_THREAD_ID","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROLES_GRAPHML","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_BUFFER","ST_BUFFER_STRATEGY","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_CONVEXHULL","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DISTANCE_SPHERE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_FRECHETDISTANCE","ST_GEOHASH","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMGEOJSON","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_HAUSDORFFDISTANCE","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_ISVALID","ST_LATFROMGEOHASH","ST_LATITUDE","ST_LENGTH","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINEINTERPOLATEPOINT","ST_LINEINTERPOLATEPOINTS","ST_LONGFROMGEOHASH","ST_LONGITUDE","ST_MAKEENVELOPE","ST_MLINEFROMTEXT","ST_MLINEFROMWKB","ST_MPOINTFROMTEXT","ST_MPOINTFROMWKB","ST_MPOLYFROMTEXT","ST_MPOLYFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTATDISTANCE","ST_POINTFROMGEOHASH","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SWAPXY","ST_SYMDIFFERENCE","ST_TOUCHES","ST_TRANSFORM","ST_UNION","ST_VALIDATE","ST_WITHIN","ST_X","ST_Y","STATEMENT_DIGEST","STATEMENT_DIGEST_TEXT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRIM","TRUNCATE","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VALUES","VAR_POP","VAR_SAMP","VARIANCE","VERSION","WAIT_FOR_EXECUTED_GTID_SET","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],Da=G(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),pa=G(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),Rr=G(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),iE=G(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER EVENT","ALTER FUNCTION","ALTER INSTANCE","ALTER LOGFILE GROUP","ALTER PROCEDURE","ALTER RESOURCE GROUP","ALTER SERVER","ALTER TABLESPACE","ALTER USER","ALTER VIEW","ANALYZE TABLE","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK TABLE","CHECKSUM TABLE","CLONE","COMMIT","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE FUNCTION","CREATE INDEX","CREATE LOGFILE GROUP","CREATE PROCEDURE","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SERVER","CREATE SPATIAL REFERENCE SYSTEM","CREATE TABLESPACE","CREATE TRIGGER","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP FUNCTION","DROP INDEX","DROP LOGFILE GROUP","DROP PROCEDURE","DROP RESOURCE GROUP","DROP ROLE","DROP SERVER","DROP SPATIAL REFERENCE SYSTEM","DROP TABLESPACE","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GRANT","HANDLER","HELP","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SOURCE_POS_WAIT","START GROUP_REPLICATION","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP REPLICA","STOP SLAVE","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),da=G(["UNION [ALL | DISTINCT]"]),Pa=G(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),fa=G(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),ha=G([]),Ma={name:"mysql",tokenizerOptions:{reservedSelect:Da,reservedClauses:[...pa,...Rr,...iE],reservedSetOperations:da,reservedJoins:Pa,reservedKeywordPhrases:fa,reservedDataTypePhrases:ha,supportsXor:!0,reservedKeywords:ca,reservedDataTypes:_a,reservedFunctionNames:La,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:vt},formatOptions:{onelineClauses:[...Rr,...iE],tabularOnelineClauses:iE}},Ua=["ADD","ALL","ALTER","ANALYZE","AND","ARRAY","AS","ASC","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DISTINCT","DISTINCTROW","DIV","DOUBLE","DROP","DUAL","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GRANT","GROUP","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","ILIKE","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOW_PRIORITY","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OF","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","RANGE","READ","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","REVOKE","RIGHT","RLIKE","ROW","ROWS","SECOND_MICROSECOND","SELECT","SET","SHOW","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_EXTENDED","STORED","STRAIGHT_JOIN","TABLE","TABLESAMPLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","TiDB_CURRENT_TSO","UNION","UNIQUE","UNLOCK","UNSIGNED","UNTIL","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],ma=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],Ba=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","BITAND","BITNEG","BITOR","BITXOR","CASE","CAST","CEIL","CEILING","CHAR_FUNC","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_RESOURCE_GROUP","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT_FUNC","DEGREES","DENSE_RANK","DES_DECRYPT","DES_ENCRYPT","DIV","ELT","ENCODE","ENCRYPT","EQ","EXP","EXPORT_SET","EXTRACT","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_NANO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GE","GET_FORMAT","GET_LOCK","GETPARAM","GREATEST","GROUP_CONCAT","GROUPING","GT","HEX","HOUR","IF","IFNULL","ILIKE","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSERT_FUNC","INSTR","INTDIV","INTERVAL","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","IS_UUID","ISFALSE","ISNULL","ISTRUE","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MEMBEROF","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LASTVAL","LCASE","LE","LEAD","LEAST","LEFT","LEFTSHIFT","LENGTH","LIKE","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LT","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MAX","MD5","MICROSECOND","MID","MIN","MINUS","MINUTE","MOD","MONTH","MONTHNAME","MUL","NAME_CONST","NE","NEXTVAL","NOT","NOW","NTH_VALUE","NTILE","NULLEQ","OCT","OCTET_LENGTH","OLD_PASSWORD","ORD","PASSWORD_FUNC","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","PLUS","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RIGHTSHIFT","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SETVAL","SETVAR","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SM3","SPACE","SQRT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIDB_BOUNDED_STALENESS","TIDB_CURRENT_TSO","TIDB_DECODE_BINARY_PLAN","TIDB_DECODE_KEY","TIDB_DECODE_PLAN","TIDB_DECODE_SQL_DIGESTS","TIDB_ENCODE_SQL_DIGEST","TIDB_IS_DDL_OWNER","TIDB_PARSE_TSO","TIDB_PARSE_TSO_LOGICAL","TIDB_ROW_CHECKSUM","TIDB_SHARD","TIDB_VERSION","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRANSLATE","TRIM","TRUNCATE","UCASE","UNARYMINUS","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VAR_POP","VAR_SAMP","VARIANCE","VERSION","VITESS_HASH","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],ga=G(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),ya=G(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),Sr=G(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),AE=G(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER INSTANCE","ALTER RESOURCE GROUP","ALTER SEQUENCE","ALTER USER","ALTER VIEW","ANALYZE TABLE","CHECK TABLE","CHECKSUM TABLE","COMMIT","CREATE DATABASE","CREATE INDEX","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SEQUENCE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP INDEX","DROP RESOURCE GROUP","DROP ROLE","DROP TABLESPACE","DROP USER","DROP VIEW","EXPLAIN","FLUSH","GRANT","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOCK INSTANCE FOR BACKUP","LOCK TABLES","OPTIMIZE TABLE","PREPARE","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE"]),Ga=G(["UNION [ALL | DISTINCT]"]),Fa=G(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),Ha=G(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),ba=G([]),xa={name:"tidb",tokenizerOptions:{reservedSelect:ga,reservedClauses:[...ya,...Sr,...AE],reservedSetOperations:Ga,reservedJoins:Fa,reservedKeywordPhrases:Ha,reservedDataTypePhrases:ba,supportsXor:!0,reservedKeywords:Ua,reservedDataTypes:ma,reservedFunctionNames:Ba,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:vt},formatOptions:{onelineClauses:[...Sr,...AE],tabularOnelineClauses:AE}},Ya=["ABORT","ABS","ACOS","ADVISOR","ARRAY_AGG","ARRAY_AGG","ARRAY_APPEND","ARRAY_AVG","ARRAY_BINARY_SEARCH","ARRAY_CONCAT","ARRAY_CONTAINS","ARRAY_COUNT","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_FLATTEN","ARRAY_IFNULL","ARRAY_INSERT","ARRAY_INTERSECT","ARRAY_LENGTH","ARRAY_MAX","ARRAY_MIN","ARRAY_MOVE","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_PUT","ARRAY_RANGE","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_REPLACE","ARRAY_REVERSE","ARRAY_SORT","ARRAY_STAR","ARRAY_SUM","ARRAY_SYMDIFF","ARRAY_SYMDIFF1","ARRAY_SYMDIFFN","ARRAY_UNION","ASIN","ATAN","ATAN2","AVG","BASE64","BASE64_DECODE","BASE64_ENCODE","BITAND ","BITCLEAR ","BITNOT ","BITOR ","BITSET ","BITSHIFT ","BITTEST ","BITXOR ","CEIL","CLOCK_LOCAL","CLOCK_MILLIS","CLOCK_STR","CLOCK_TZ","CLOCK_UTC","COALESCE","CONCAT","CONCAT2","CONTAINS","CONTAINS_TOKEN","CONTAINS_TOKEN_LIKE","CONTAINS_TOKEN_REGEXP","COS","COUNT","COUNT","COUNTN","CUME_DIST","CURL","DATE_ADD_MILLIS","DATE_ADD_STR","DATE_DIFF_MILLIS","DATE_DIFF_STR","DATE_FORMAT_STR","DATE_PART_MILLIS","DATE_PART_STR","DATE_RANGE_MILLIS","DATE_RANGE_STR","DATE_TRUNC_MILLIS","DATE_TRUNC_STR","DECODE","DECODE_JSON","DEGREES","DENSE_RANK","DURATION_TO_STR","ENCODED_SIZE","ENCODE_JSON","EXP","FIRST_VALUE","FLOOR","GREATEST","HAS_TOKEN","IFINF","IFMISSING","IFMISSINGORNULL","IFNAN","IFNANORINF","IFNULL","INITCAP","ISARRAY","ISATOM","ISBITSET","ISBOOLEAN","ISNUMBER","ISOBJECT","ISSTRING","LAG","LAST_VALUE","LEAD","LEAST","LENGTH","LN","LOG","LOWER","LTRIM","MAX","MEAN","MEDIAN","META","MILLIS","MILLIS_TO_LOCAL","MILLIS_TO_STR","MILLIS_TO_TZ","MILLIS_TO_UTC","MILLIS_TO_ZONE_NAME","MIN","MISSINGIF","NANIF","NEGINFIF","NOW_LOCAL","NOW_MILLIS","NOW_STR","NOW_TZ","NOW_UTC","NTH_VALUE","NTILE","NULLIF","NVL","NVL2","OBJECT_ADD","OBJECT_CONCAT","OBJECT_INNER_PAIRS","OBJECT_INNER_VALUES","OBJECT_LENGTH","OBJECT_NAMES","OBJECT_PAIRS","OBJECT_PUT","OBJECT_REMOVE","OBJECT_RENAME","OBJECT_REPLACE","OBJECT_UNWRAP","OBJECT_VALUES","PAIRS","PERCENT_RANK","PI","POLY_LENGTH","POSINFIF","POSITION","POWER","RADIANS","RANDOM","RANK","RATIO_TO_REPORT","REGEXP_CONTAINS","REGEXP_LIKE","REGEXP_MATCHES","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGEX_CONTAINS","REGEX_LIKE","REGEX_MATCHES","REGEX_POSITION","REGEX_REPLACE","REGEX_SPLIT","REPEAT","REPLACE","REVERSE","ROUND","ROW_NUMBER","RTRIM","SEARCH","SEARCH_META","SEARCH_SCORE","SIGN","SIN","SPLIT","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DURATION","STR_TO_MILLIS","STR_TO_TZ","STR_TO_UTC","STR_TO_ZONE_NAME","SUBSTR","SUFFIXES","SUM","TAN","TITLE","TOARRAY","TOATOM","TOBOOLEAN","TOKENS","TOKENS","TONUMBER","TOOBJECT","TOSTRING","TRIM","TRUNC","UPPER","UUID","VARIANCE","VARIANCE_POP","VARIANCE_SAMP","VAR_POP","VAR_SAMP","WEEKDAY_MILLIS","WEEKDAY_STR","CAST"],Va=["ADVISE","ALL","ALTER","ANALYZE","AND","ANY","ARRAY","AS","ASC","AT","BEGIN","BETWEEN","BINARY","BOOLEAN","BREAK","BUCKET","BUILD","BY","CALL","CASE","CAST","CLUSTER","COLLATE","COLLECTION","COMMIT","COMMITTED","CONNECT","CONTINUE","CORRELATED","COVER","CREATE","CURRENT","DATABASE","DATASET","DATASTORE","DECLARE","DECREMENT","DELETE","DERIVED","DESC","DESCRIBE","DISTINCT","DO","DROP","EACH","ELEMENT","ELSE","END","EVERY","EXCEPT","EXCLUDE","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FILTER","FIRST","FLATTEN","FLUSH","FOLLOWING","FOR","FORCE","FROM","FTS","FUNCTION","GOLANG","GRANT","GROUP","GROUPS","GSI","HASH","HAVING","IF","IGNORE","ILIKE","IN","INCLUDE","INCREMENT","INDEX","INFER","INLINE","INNER","INSERT","INTERSECT","INTO","IS","ISOLATION","JAVASCRIPT","JOIN","KEY","KEYS","KEYSPACE","KNOWN","LANGUAGE","LAST","LEFT","LET","LETTING","LEVEL","LIKE","LIMIT","LSM","MAP","MAPPING","MATCHED","MATERIALIZED","MERGE","MINUS","MISSING","NAMESPACE","NEST","NL","NO","NOT","NTH_VALUE","NULL","NULLS","NUMBER","OBJECT","OFFSET","ON","OPTION","OPTIONS","OR","ORDER","OTHERS","OUTER","OVER","PARSE","PARTITION","PASSWORD","PATH","POOL","PRECEDING","PREPARE","PRIMARY","PRIVATE","PRIVILEGE","PROBE","PROCEDURE","PUBLIC","RANGE","RAW","REALM","REDUCE","RENAME","RESPECT","RETURN","RETURNING","REVOKE","RIGHT","ROLE","ROLLBACK","ROW","ROWS","SATISFIES","SAVEPOINT","SCHEMA","SCOPE","SELECT","SELF","SEMI","SET","SHOW","SOME","START","STATISTICS","STRING","SYSTEM","THEN","TIES","TO","TRAN","TRANSACTION","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNDER","UNION","UNIQUE","UNKNOWN","UNNEST","UNSET","UPDATE","UPSERT","USE","USER","USING","VALIDATE","VALUE","VALUED","VALUES","VIA","VIEW","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WORK","XOR"],va=[],wa=G(["SELECT [ALL | DISTINCT]"]),Wa=G(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED THEN","UPDATE SET","INSERT","NEST","UNNEST","RETURNING"]),Nr=G(["UPDATE","DELETE FROM","SET SCHEMA","ADVISE","ALTER INDEX","BEGIN TRANSACTION","BUILD INDEX","COMMIT TRANSACTION","CREATE COLLECTION","CREATE FUNCTION","CREATE INDEX","CREATE PRIMARY INDEX","CREATE SCOPE","DROP COLLECTION","DROP FUNCTION","DROP INDEX","DROP PRIMARY INDEX","DROP SCOPE","EXECUTE","EXECUTE FUNCTION","EXPLAIN","GRANT","INFER","PREPARE","REVOKE","ROLLBACK TRANSACTION","SAVEPOINT","SET TRANSACTION","UPDATE STATISTICS","UPSERT","LET","SET CURRENT SCHEMA","SHOW","USE [PRIMARY] KEYS"]),Xa=G(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),Ka=G(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","INNER JOIN"]),ka=G(["{ROWS | RANGE | GROUPS} BETWEEN"]),$a=G([]),qa={name:"n1ql",tokenizerOptions:{reservedSelect:wa,reservedClauses:[...Wa,...Nr],reservedSetOperations:Xa,reservedJoins:Ka,reservedKeywordPhrases:ka,reservedDataTypePhrases:$a,supportsXor:!0,reservedKeywords:Va,reservedDataTypes:va,reservedFunctionNames:Ya,stringTypes:['""-bs',"''-bs"],identTypes:["``"],extraParens:["[]","{}"],paramTypes:{positional:!0,numbered:["$"],named:["$"]},lineCommentTypes:["#","--"],operators:["%","==",":","||"]},formatOptions:{onelineClauses:Nr}},Ja=["ADD","AGENT","AGGREGATE","ALL","ALTER","AND","ANY","ARROW","AS","ASC","AT","ATTRIBUTE","AUTHID","AVG","BEGIN","BETWEEN","BLOCK","BODY","BOTH","BOUND","BULK","BY","BYTE","CALL","CALLING","CASCADE","CASE","CHARSET","CHARSETFORM","CHARSETID","CHECK","CLOSE","CLUSTER","CLUSTERS","COLAUTH","COLLECT","COLUMNS","COMMENT","COMMIT","COMMITTED","COMPILED","COMPRESS","CONNECT","CONSTANT","CONSTRUCTOR","CONTEXT","CONVERT","COUNT","CRASH","CREATE","CURRENT","CURSOR","CUSTOMDATUM","DANGLING","DATA","DAY","DECLARE","DEFAULT","DEFINE","DELETE","DESC","DETERMINISTIC","DISTINCT","DROP","DURATION","ELEMENT","ELSE","ELSIF","EMPTY","END","ESCAPE","EXCEPT","EXCEPTION","EXCEPTIONS","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FINAL","FIXED","FOR","FORALL","FORCE","FORM","FROM","FUNCTION","GENERAL","GOTO","GRANT","GROUP","HASH","HAVING","HEAP","HIDDEN","HOUR","IDENTIFIED","IF","IMMEDIATE","IN","INCLUDING","INDEX","INDEXES","INDICATOR","INDICES","INFINITE","INSERT","INSTANTIABLE","INTERFACE","INTERSECT","INTERVAL","INTO","INVALIDATE","IS","ISOLATION","JAVA","LANGUAGE","LARGE","LEADING","LENGTH","LEVEL","LIBRARY","LIKE","LIKE2","LIKE4","LIKEC","LIMIT","LIMITED","LOCAL","LOCK","LOOP","MAP","MAX","MAXLEN","MEMBER","MERGE","MIN","MINUS","MINUTE","MOD","MODE","MODIFY","MONTH","MULTISET","NAME","NAN","NATIONAL","NATIVE","NEW","NOCOMPRESS","NOCOPY","NOT","NOWAIT","NULL","OBJECT","OCICOLL","OCIDATE","OCIDATETIME","OCIDURATION","OCIINTERVAL","OCILOBLOCATOR","OCINUMBER","OCIRAW","OCIREF","OCIREFCURSOR","OCIROWID","OCISTRING","OCITYPE","OF","ON","ONLY","OPAQUE","OPEN","OPERATOR","OPTION","OR","ORACLE","ORADATA","ORDER","OVERLAPS","ORGANIZATION","ORLANY","ORLVARY","OTHERS","OUT","OVERRIDING","PACKAGE","PARALLEL_ENABLE","PARAMETER","PARAMETERS","PARTITION","PASCAL","PIPE","PIPELINED","PRAGMA","PRIOR","PRIVATE","PROCEDURE","PUBLIC","RAISE","RANGE","READ","RECORD","REF","REFERENCE","REM","REMAINDER","RENAME","RESOURCE","RESULT","RETURN","RETURNING","REVERSE","REVOKE","ROLLBACK","ROW","SAMPLE","SAVE","SAVEPOINT","SB1","SB2","SB4","SECOND","SEGMENT","SELECT","SELF","SEPARATE","SEQUENCE","SERIALIZABLE","SET","SHARE","SHORT","SIZE","SIZE_T","SOME","SPARSE","SQL","SQLCODE","SQLDATA","SQLNAME","SQLSTATE","STANDARD","START","STATIC","STDDEV","STORED","STRING","STRUCT","STYLE","SUBMULTISET","SUBPARTITION","SUBSTITUTABLE","SUBTYPE","SUM","SYNONYM","TABAUTH","TABLE","TDO","THE","THEN","TIME","TIMEZONE_ABBR","TIMEZONE_HOUR","TIMEZONE_MINUTE","TIMEZONE_REGION","TO","TRAILING","TRANSAC","TRANSACTIONAL","TRUSTED","TYPE","UB1","UB2","UB4","UNDER","UNION","UNIQUE","UNSIGNED","UNTRUSTED","UPDATE","USE","USING","VALIST","VALUE","VALUES","VARIABLE","VARIANCE","VARRAY","VIEW","VIEWS","VOID","WHEN","WHERE","WHILE","WITH","WORK","WRAPPED","WRITE","YEAR","ZONE"],Qa=["ARRAY","BFILE_BASE","BINARY","BLOB_BASE","CHAR VARYING","CHAR_BASE","CHAR","CHARACTER VARYING","CHARACTER","CLOB_BASE","DATE_BASE","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTERVAL DAY","INTERVAL YEAR","LONG","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR VARYING","NCHAR","NCHAR","NUMBER_BASE","NUMBER","NUMBERIC","NVARCHAR","PRECISION","RAW","TIMESTAMP","UROWID","VARCHAR","VARCHAR2"],Za=["ABS","ACOS","ASIN","ATAN","ATAN2","BITAND","CEIL","COS","COSH","EXP","FLOOR","LN","LOG","MOD","NANVL","POWER","REMAINDER","ROUND","SIGN","SIN","SINH","SQRT","TAN","TANH","TRUNC","WIDTH_BUCKET","CHR","CONCAT","INITCAP","LOWER","LPAD","LTRIM","NLS_INITCAP","NLS_LOWER","NLSSORT","NLS_UPPER","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","RPAD","RTRIM","SOUNDEX","SUBSTR","TRANSLATE","TREAT","TRIM","UPPER","NLS_CHARSET_DECL_LEN","NLS_CHARSET_ID","NLS_CHARSET_NAME","ASCII","INSTR","LENGTH","REGEXP_INSTR","ADD_MONTHS","CURRENT_DATE","CURRENT_TIMESTAMP","DBTIMEZONE","EXTRACT","FROM_TZ","LAST_DAY","LOCALTIMESTAMP","MONTHS_BETWEEN","NEW_TIME","NEXT_DAY","NUMTODSINTERVAL","NUMTOYMINTERVAL","ROUND","SESSIONTIMEZONE","SYS_EXTRACT_UTC","SYSDATE","SYSTIMESTAMP","TO_CHAR","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_DSINTERVAL","TO_YMINTERVAL","TRUNC","TZ_OFFSET","GREATEST","LEAST","ASCIISTR","BIN_TO_NUM","CAST","CHARTOROWID","COMPOSE","CONVERT","DECOMPOSE","HEXTORAW","NUMTODSINTERVAL","NUMTOYMINTERVAL","RAWTOHEX","RAWTONHEX","ROWIDTOCHAR","ROWIDTONCHAR","SCN_TO_TIMESTAMP","TIMESTAMP_TO_SCN","TO_BINARY_DOUBLE","TO_BINARY_FLOAT","TO_CHAR","TO_CLOB","TO_DATE","TO_DSINTERVAL","TO_LOB","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_DSINTERVAL","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_YMINTERVAL","TO_YMINTERVAL","TRANSLATE","UNISTR","BFILENAME","EMPTY_BLOB,","EMPTY_CLOB","CARDINALITY","COLLECT","POWERMULTISET","POWERMULTISET_BY_CARDINALITY","SET","SYS_CONNECT_BY_PATH","CLUSTER_ID","CLUSTER_PROBABILITY","CLUSTER_SET","FEATURE_ID","FEATURE_SET","FEATURE_VALUE","PREDICTION","PREDICTION_COST","PREDICTION_DETAILS","PREDICTION_PROBABILITY","PREDICTION_SET","APPENDCHILDXML","DELETEXML","DEPTH","EXTRACT","EXISTSNODE","EXTRACTVALUE","INSERTCHILDXML","INSERTXMLBEFORE","PATH","SYS_DBURIGEN","SYS_XMLAGG","SYS_XMLGEN","UPDATEXML","XMLAGG","XMLCDATA","XMLCOLATTVAL","XMLCOMMENT","XMLCONCAT","XMLFOREST","XMLPARSE","XMLPI","XMLQUERY","XMLROOT","XMLSEQUENCE","XMLSERIALIZE","XMLTABLE","XMLTRANSFORM","DECODE","DUMP","ORA_HASH","VSIZE","COALESCE","LNNVL","NULLIF","NVL","NVL2","SYS_CONTEXT","SYS_GUID","SYS_TYPEID","UID","USER","USERENV","AVG","COLLECT","CORR","CORR_S","CORR_K","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","FIRST","GROUP_ID","GROUPING","GROUPING_ID","LAST","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANK","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","STATS_BINOMIAL_TEST","STATS_CROSSTAB","STATS_F_TEST","STATS_KS_TEST","STATS_MODE","STATS_MW_TEST","STATS_ONE_WAY_ANOVA","STATS_T_TEST_ONE","STATS_T_TEST_PAIRED","STATS_T_TEST_INDEP","STATS_T_TEST_INDEPU","STATS_WSR_TEST","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTILE","RATIO_TO_REPORT","ROW_NUMBER","DEREF","MAKE_REF","REF","REFTOHEX","VALUE","CV","ITERATION_NUMBER","PRESENTNNV","PRESENTV","PREVIOUS"],ja=G(["SELECT [ALL | DISTINCT | UNIQUE]"]),za=G(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","INSERT [INTO | ALL INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [THEN]","UPDATE SET","RETURNING"]),Ir=G(["CREATE [GLOBAL TEMPORARY | PRIVATE TEMPORARY | SHARDED | DUPLICATED | IMMUTABLE BLOCKCHAIN | BLOCKCHAIN | IMMUTABLE] TABLE"]),RE=G(["CREATE [OR REPLACE] [NO FORCE | FORCE] [EDITIONING | EDITIONABLE | EDITIONABLE EDITIONING | NONEDITIONABLE] VIEW","CREATE MATERIALIZED VIEW","UPDATE [ONLY]","DELETE FROM [ONLY]","DROP TABLE","ALTER TABLE","ADD","DROP {COLUMN | UNUSED COLUMNS | COLUMNS CONTINUE}","MODIFY","RENAME TO","RENAME COLUMN","TRUNCATE TABLE","SET SCHEMA","BEGIN","CONNECT BY","DECLARE","EXCEPT","EXCEPTION","LOOP","START WITH"]),ei=G(["UNION [ALL]","MINUS","INTERSECT"]),ti=G(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | OUTER} APPLY"]),Ei=G(["ON {UPDATE | DELETE} [SET NULL]","ON COMMIT","{ROWS | RANGE} BETWEEN"]),ri=G([]),ni={name:"plsql",tokenizerOptions:{reservedSelect:ja,reservedClauses:[...za,...Ir,...RE],reservedSetOperations:ei,reservedJoins:ti,reservedKeywordPhrases:Ei,reservedDataTypePhrases:ri,supportsXor:!0,reservedKeywords:Ja,reservedDataTypes:Qa,reservedFunctionNames:Za,stringTypes:[{quote:"''-qq",prefixes:["N"]},{quote:"q''",prefixes:["N"]}],identTypes:['""-qq'],identChars:{rest:"$#"},variableTypes:[{regex:"&{1,2}[A-Za-z][A-Za-z0-9_$#]*"}],paramTypes:{numbered:[":"],named:[":"]},operators:["**",":=","%","~=","^=",">>","<<","=>","@","||"],postProcess:si},formatOptions:{alwaysDenseOperators:["@"],onelineClauses:[...Ir,...RE],tabularOnelineClauses:RE}};function si(E){let t=It;return E.map(r=>Ot.SET(r)&&Ot.BY(t)?Object.assign(Object.assign({},r),{type:K.RESERVED_KEYWORD}):(Er(r.type)&&(t=r),r))}const Ti=["ABS","ACOS","ACOSD","ACOSH","ASIN","ASIND","ASINH","ATAN","ATAN2","ATAN2D","ATAND","ATANH","CBRT","CEIL","CEILING","COS","COSD","COSH","COT","COTD","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SCALE","SETSEED","SIGN","SIN","SIND","SINH","SQRT","TAN","TAND","TANH","TRIM_SCALE","TRUNC","WIDTH_BUCKET","ABS","ASCII","BIT_LENGTH","BTRIM","CHARACTER_LENGTH","CHAR_LENGTH","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LEFT","LENGTH","LOWER","LPAD","LTRIM","MD5","NORMALIZE","OCTET_LENGTH","OVERLAY","PARSE_IDENT","PG_CLIENT_ENCODING","POSITION","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REPEAT","REPLACE","REVERSE","RIGHT","RPAD","RTRIM","SPLIT_PART","SPRINTF","STARTS_WITH","STRING_AGG","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","SUBSTRING","TO_ASCII","TO_HEX","TRANSLATE","TRIM","UNISTR","UPPER","BIT_COUNT","BIT_LENGTH","BTRIM","CONVERT","CONVERT_FROM","CONVERT_TO","DECODE","ENCODE","GET_BIT","GET_BYTE","LENGTH","LTRIM","MD5","OCTET_LENGTH","OVERLAY","POSITION","RTRIM","SET_BIT","SET_BYTE","SHA224","SHA256","SHA384","SHA512","STRING_AGG","SUBSTR","SUBSTRING","TRIM","BIT_COUNT","BIT_LENGTH","GET_BIT","LENGTH","OCTET_LENGTH","OVERLAY","POSITION","SET_BIT","SUBSTRING","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","TO_CHAR","TO_DATE","TO_NUMBER","TO_TIMESTAMP","CLOCK_TIMESTAMP","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","EXTRACT","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","LOCALTIME","LOCALTIMESTAMP","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","PG_SLEEP","PG_SLEEP_FOR","PG_SLEEP_UNTIL","STATEMENT_TIMESTAMP","TIMEOFDAY","TO_TIMESTAMP","TRANSACTION_TIMESTAMP","ENUM_FIRST","ENUM_LAST","ENUM_RANGE","AREA","BOUND_BOX","BOX","CENTER","CIRCLE","DIAGONAL","DIAMETER","HEIGHT","ISCLOSED","ISOPEN","LENGTH","LINE","LSEG","NPOINTS","PATH","PCLOSE","POINT","POLYGON","POPEN","RADIUS","SLOPE","WIDTH","ABBREV","BROADCAST","FAMILY","HOST","HOSTMASK","INET_MERGE","INET_SAME_FAMILY","MACADDR8_SET7BIT","MASKLEN","NETMASK","NETWORK","SET_MASKLEN","TRUNC","ARRAY_TO_TSVECTOR","GET_CURRENT_TS_CONFIG","JSONB_TO_TSVECTOR","JSON_TO_TSVECTOR","LENGTH","NUMNODE","PHRASETO_TSQUERY","PLAINTO_TSQUERY","QUERYTREE","SETWEIGHT","STRIP","TO_TSQUERY","TO_TSVECTOR","TSQUERY_PHRASE","TSVECTOR_TO_ARRAY","TS_DEBUG","TS_DELETE","TS_FILTER","TS_HEADLINE","TS_LEXIZE","TS_PARSE","TS_RANK","TS_RANK_CD","TS_REWRITE","TS_STAT","TS_TOKEN_TYPE","WEBSEARCH_TO_TSQUERY","GEN_RANDOM_UUID","UUIDV4","UUIDV7","UUID_EXTRACT_TIMESTAMP","UUID_EXTRACT_VERSION","CURSOR_TO_XML","CURSOR_TO_XMLSCHEMA","DATABASE_TO_XML","DATABASE_TO_XMLSCHEMA","DATABASE_TO_XML_AND_XMLSCHEMA","NEXTVAL","QUERY_TO_XML","QUERY_TO_XMLSCHEMA","QUERY_TO_XML_AND_XMLSCHEMA","SCHEMA_TO_XML","SCHEMA_TO_XMLSCHEMA","SCHEMA_TO_XML_AND_XMLSCHEMA","STRING","TABLE_TO_XML","TABLE_TO_XMLSCHEMA","TABLE_TO_XML_AND_XMLSCHEMA","XMLAGG","XMLCOMMENT","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","XMLTABLE","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_CONTENT","XML_IS_WELL_FORMED_DOCUMENT","XPATH","XPATH_EXISTS","ARRAY_TO_JSON","JSONB_AGG","JSONB_ARRAY_ELEMENTS","JSONB_ARRAY_ELEMENTS_TEXT","JSONB_ARRAY_LENGTH","JSONB_BUILD_ARRAY","JSONB_BUILD_OBJECT","JSONB_EACH","JSONB_EACH_TEXT","JSONB_EXTRACT_PATH","JSONB_EXTRACT_PATH_TEXT","JSONB_INSERT","JSONB_OBJECT","JSONB_OBJECT_AGG","JSONB_OBJECT_KEYS","JSONB_PATH_EXISTS","JSONB_PATH_EXISTS_TZ","JSONB_PATH_MATCH","JSONB_PATH_MATCH_TZ","JSONB_PATH_QUERY","JSONB_PATH_QUERY_ARRAY","JSONB_PATH_QUERY_ARRAY_TZ","JSONB_PATH_QUERY_FIRST","JSONB_PATH_QUERY_FIRST_TZ","JSONB_PATH_QUERY_TZ","JSONB_POPULATE_RECORD","JSONB_POPULATE_RECORDSET","JSONB_PRETTY","JSONB_SET","JSONB_SET_LAX","JSONB_STRIP_NULLS","JSONB_TO_RECORD","JSONB_TO_RECORDSET","JSONB_TYPEOF","JSON_AGG","JSON_ARRAY_ELEMENTS","JSON_ARRAY_ELEMENTS_TEXT","JSON_ARRAY_LENGTH","JSON_BUILD_ARRAY","JSON_BUILD_OBJECT","JSON_EACH","JSON_EACH_TEXT","JSON_EXTRACT_PATH","JSON_EXTRACT_PATH_TEXT","JSON_OBJECT","JSON_OBJECT_AGG","JSON_OBJECT_KEYS","JSON_POPULATE_RECORD","JSON_POPULATE_RECORDSET","JSON_STRIP_NULLS","JSON_TO_RECORD","JSON_TO_RECORDSET","JSON_TYPEOF","ROW_TO_JSON","TO_JSON","TO_JSONB","TO_TIMESTAMP","CURRVAL","LASTVAL","NEXTVAL","SETVAL","COALESCE","GREATEST","LEAST","NULLIF","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_DIMS","ARRAY_FILL","ARRAY_LENGTH","ARRAY_LOWER","ARRAY_NDIMS","ARRAY_POSITION","ARRAY_POSITIONS","ARRAY_PREPEND","ARRAY_REMOVE","ARRAY_REPLACE","ARRAY_TO_STRING","ARRAY_UPPER","CARDINALITY","STRING_TO_ARRAY","TRIM_ARRAY","UNNEST","ISEMPTY","LOWER","LOWER_INC","LOWER_INF","MULTIRANGE","RANGE_MERGE","UPPER","UPPER_INC","UPPER_INF","ARRAY_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COALESCE","CORR","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","EVERY","GROUPING","JSONB_AGG","JSONB_OBJECT_AGG","JSON_AGG","JSON_OBJECT_AGG","MAX","MIN","MODE","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANGE_AGG","RANGE_INTERSECT_AGG","RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","TO_JSON","TO_JSONB","VARIANCE","VAR_POP","VAR_SAMP","XMLAGG","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","GENERATE_SERIES","GENERATE_SUBSCRIPTS","ACLDEFAULT","ACLEXPLODE","COL_DESCRIPTION","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_QUERY","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","FORMAT_TYPE","HAS_ANY_COLUMN_PRIVILEGE","HAS_COLUMN_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE","HAS_FUNCTION_PRIVILEGE","HAS_LANGUAGE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_SEQUENCE_PRIVILEGE","HAS_SERVER_PRIVILEGE","HAS_TABLESPACE_PRIVILEGE","HAS_TABLE_PRIVILEGE","HAS_TYPE_PRIVILEGE","INET_CLIENT_ADDR","INET_CLIENT_PORT","INET_SERVER_ADDR","INET_SERVER_PORT","MAKEACLITEM","OBJ_DESCRIPTION","PG_BACKEND_PID","PG_BLOCKING_PIDS","PG_COLLATION_IS_VISIBLE","PG_CONF_LOAD_TIME","PG_CONTROL_CHECKPOINT","PG_CONTROL_INIT","PG_CONTROL_SYSTEM","PG_CONVERSION_IS_VISIBLE","PG_CURRENT_LOGFILE","PG_CURRENT_SNAPSHOT","PG_CURRENT_XACT_ID","PG_CURRENT_XACT_ID_IF_ASSIGNED","PG_DESCRIBE_OBJECT","PG_FUNCTION_IS_VISIBLE","PG_GET_CATALOG_FOREIGN_KEYS","PG_GET_CONSTRAINTDEF","PG_GET_EXPR","PG_GET_FUNCTIONDEF","PG_GET_FUNCTION_ARGUMENTS","PG_GET_FUNCTION_IDENTITY_ARGUMENTS","PG_GET_FUNCTION_RESULT","PG_GET_INDEXDEF","PG_GET_KEYWORDS","PG_GET_OBJECT_ADDRESS","PG_GET_OWNED_SEQUENCE","PG_GET_RULEDEF","PG_GET_SERIAL_SEQUENCE","PG_GET_STATISTICSOBJDEF","PG_GET_TRIGGERDEF","PG_GET_USERBYID","PG_GET_VIEWDEF","PG_HAS_ROLE","PG_IDENTIFY_OBJECT","PG_IDENTIFY_OBJECT_AS_ADDRESS","PG_INDEXAM_HAS_PROPERTY","PG_INDEX_COLUMN_HAS_PROPERTY","PG_INDEX_HAS_PROPERTY","PG_IS_OTHER_TEMP_SCHEMA","PG_JIT_AVAILABLE","PG_LAST_COMMITTED_XACT","PG_LISTENING_CHANNELS","PG_MY_TEMP_SCHEMA","PG_NOTIFICATION_QUEUE_USAGE","PG_OPCLASS_IS_VISIBLE","PG_OPERATOR_IS_VISIBLE","PG_OPFAMILY_IS_VISIBLE","PG_OPTIONS_TO_TABLE","PG_POSTMASTER_START_TIME","PG_SAFE_SNAPSHOT_BLOCKING_PIDS","PG_SNAPSHOT_XIP","PG_SNAPSHOT_XMAX","PG_SNAPSHOT_XMIN","PG_STATISTICS_OBJ_IS_VISIBLE","PG_TABLESPACE_DATABASES","PG_TABLESPACE_LOCATION","PG_TABLE_IS_VISIBLE","PG_TRIGGER_DEPTH","PG_TS_CONFIG_IS_VISIBLE","PG_TS_DICT_IS_VISIBLE","PG_TS_PARSER_IS_VISIBLE","PG_TS_TEMPLATE_IS_VISIBLE","PG_TYPEOF","PG_TYPE_IS_VISIBLE","PG_VISIBLE_IN_SNAPSHOT","PG_XACT_COMMIT_TIMESTAMP","PG_XACT_COMMIT_TIMESTAMP_ORIGIN","PG_XACT_STATUS","PQSERVERVERSION","ROW_SECURITY_ACTIVE","SESSION_USER","SHOBJ_DESCRIPTION","TO_REGCLASS","TO_REGCOLLATION","TO_REGNAMESPACE","TO_REGOPER","TO_REGOPERATOR","TO_REGPROC","TO_REGPROCEDURE","TO_REGROLE","TO_REGTYPE","TXID_CURRENT","TXID_CURRENT_IF_ASSIGNED","TXID_CURRENT_SNAPSHOT","TXID_SNAPSHOT_XIP","TXID_SNAPSHOT_XMAX","TXID_SNAPSHOT_XMIN","TXID_STATUS","TXID_VISIBLE_IN_SNAPSHOT","USER","VERSION","BRIN_DESUMMARIZE_RANGE","BRIN_SUMMARIZE_NEW_VALUES","BRIN_SUMMARIZE_RANGE","CONVERT_FROM","CURRENT_SETTING","GIN_CLEAN_PENDING_LIST","PG_ADVISORY_LOCK","PG_ADVISORY_LOCK_SHARED","PG_ADVISORY_UNLOCK","PG_ADVISORY_UNLOCK_ALL","PG_ADVISORY_UNLOCK_SHARED","PG_ADVISORY_XACT_LOCK","PG_ADVISORY_XACT_LOCK_SHARED","PG_BACKUP_START_TIME","PG_CANCEL_BACKEND","PG_COLLATION_ACTUAL_VERSION","PG_COLUMN_COMPRESSION","PG_COLUMN_SIZE","PG_COPY_LOGICAL_REPLICATION_SLOT","PG_COPY_PHYSICAL_REPLICATION_SLOT","PG_CREATE_LOGICAL_REPLICATION_SLOT","PG_CREATE_PHYSICAL_REPLICATION_SLOT","PG_CREATE_RESTORE_POINT","PG_CURRENT_WAL_FLUSH_LSN","PG_CURRENT_WAL_INSERT_LSN","PG_CURRENT_WAL_LSN","PG_DATABASE_SIZE","PG_DROP_REPLICATION_SLOT","PG_EXPORT_SNAPSHOT","PG_FILENODE_RELATION","PG_GET_WAL_REPLAY_PAUSE_STATE","PG_IMPORT_SYSTEM_COLLATIONS","PG_INDEXES_SIZE","PG_IS_IN_BACKUP","PG_IS_IN_RECOVERY","PG_IS_WAL_REPLAY_PAUSED","PG_LAST_WAL_RECEIVE_LSN","PG_LAST_WAL_REPLAY_LSN","PG_LAST_XACT_REPLAY_TIMESTAMP","PG_LOGICAL_EMIT_MESSAGE","PG_LOGICAL_SLOT_GET_BINARY_CHANGES","PG_LOGICAL_SLOT_GET_CHANGES","PG_LOGICAL_SLOT_PEEK_BINARY_CHANGES","PG_LOGICAL_SLOT_PEEK_CHANGES","PG_LOG_BACKEND_MEMORY_CONTEXTS","PG_LS_ARCHIVE_STATUSDIR","PG_LS_DIR","PG_LS_LOGDIR","PG_LS_TMPDIR","PG_LS_WALDIR","PG_PARTITION_ANCESTORS","PG_PARTITION_ROOT","PG_PARTITION_TREE","PG_PROMOTE","PG_READ_BINARY_FILE","PG_READ_FILE","PG_RELATION_FILENODE","PG_RELATION_FILEPATH","PG_RELATION_SIZE","PG_RELOAD_CONF","PG_REPLICATION_ORIGIN_ADVANCE","PG_REPLICATION_ORIGIN_CREATE","PG_REPLICATION_ORIGIN_DROP","PG_REPLICATION_ORIGIN_OID","PG_REPLICATION_ORIGIN_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_IS_SETUP","PG_REPLICATION_ORIGIN_SESSION_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_RESET","PG_REPLICATION_ORIGIN_SESSION_SETUP","PG_REPLICATION_ORIGIN_XACT_RESET","PG_REPLICATION_ORIGIN_XACT_SETUP","PG_REPLICATION_SLOT_ADVANCE","PG_ROTATE_LOGFILE","PG_SIZE_BYTES","PG_SIZE_PRETTY","PG_START_BACKUP","PG_STAT_FILE","PG_STOP_BACKUP","PG_SWITCH_WAL","PG_TABLESPACE_SIZE","PG_TABLE_SIZE","PG_TERMINATE_BACKEND","PG_TOTAL_RELATION_SIZE","PG_TRY_ADVISORY_LOCK","PG_TRY_ADVISORY_LOCK_SHARED","PG_TRY_ADVISORY_XACT_LOCK","PG_TRY_ADVISORY_XACT_LOCK_SHARED","PG_WALFILE_NAME","PG_WALFILE_NAME_OFFSET","PG_WAL_LSN_DIFF","PG_WAL_REPLAY_PAUSE","PG_WAL_REPLAY_RESUME","SET_CONFIG","SUPPRESS_REDUNDANT_UPDATES_TRIGGER","TSVECTOR_UPDATE_TRIGGER","TSVECTOR_UPDATE_TRIGGER_COLUMN","PG_EVENT_TRIGGER_DDL_COMMANDS","PG_EVENT_TRIGGER_DROPPED_OBJECTS","PG_EVENT_TRIGGER_TABLE_REWRITE_OID","PG_EVENT_TRIGGER_TABLE_REWRITE_REASON","PG_GET_OBJECT_ADDRESS","PG_MCV_LIST_ITEMS","CAST"],oi=["ALL","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ASYMMETRIC","AUTHORIZATION","BETWEEN","BINARY","BOTH","CASE","CAST","CHECK","COLLATE","COLLATION","COLUMN","CONCURRENTLY","CONSTRAINT","CREATE","CROSS","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DAY","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","END","EXCEPT","EXISTS","FALSE","FETCH","FILTER","FOR","FOREIGN","FREEZE","FROM","FULL","GRANT","GROUP","HAVING","HOUR","ILIKE","IN","INITIALLY","INNER","INOUT","INTERSECT","INTO","IS","ISNULL","JOIN","LATERAL","LEADING","LEFT","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","MINUTE","MONTH","NATURAL","NOT","NOTNULL","NULL","NULLIF","OFFSET","ON","ONLY","OR","ORDER","OUT","OUTER","OVER","OVERLAPS","PLACING","PRIMARY","REFERENCES","RETURNING","RIGHT","ROW","SECOND","SELECT","SESSION_USER","SIMILAR","SOME","SYMMETRIC","TABLE","TABLESAMPLE","THEN","TO","TRAILING","TRUE","UNION","UNIQUE","USER","USING","VALUES","VARIADIC","VERBOSE","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","YEAR"],ai=["ARRAY","BIGINT","BIT","BIT VARYING","BOOL","BOOLEAN","CHAR","CHARACTER","CHARACTER VARYING","DECIMAL","DEC","DOUBLE","ENUM","FLOAT","INT","INTEGER","INTERVAL","NCHAR","NUMERIC","JSON","JSONB","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TIMESTAMPTZ","UUID","VARCHAR","XML","ZONE"],ii=G(["SELECT [ALL | DISTINCT]"]),Ai=G(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR {UPDATE | NO KEY UPDATE | SHARE | KEY SHARE} [OF]","INSERT INTO","VALUES","DEFAULT VALUES","SET","RETURNING"]),Or=G(["CREATE [GLOBAL | LOCAL] [TEMPORARY | TEMP | UNLOGGED] TABLE [IF NOT EXISTS]"]),SE=G(["CREATE [OR REPLACE] [TEMP | TEMPORARY] [RECURSIVE] VIEW","CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE [ONLY]","WHERE CURRENT OF","ON CONFLICT","DELETE FROM [ONLY]","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS] [ONLY]","ALTER TABLE ALL IN TABLESPACE","RENAME [COLUMN]","RENAME TO","ADD [COLUMN] [IF NOT EXISTS]","DROP [COLUMN] [IF EXISTS]","ALTER [COLUMN]","SET DATA TYPE","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","TRUNCATE [TABLE] [ONLY]","SET SCHEMA","AFTER","ABORT","ALTER AGGREGATE","ALTER COLLATION","ALTER CONVERSION","ALTER DATABASE","ALTER DEFAULT PRIVILEGES","ALTER DOMAIN","ALTER EVENT TRIGGER","ALTER EXTENSION","ALTER FOREIGN DATA WRAPPER","ALTER FOREIGN TABLE","ALTER FUNCTION","ALTER GROUP","ALTER INDEX","ALTER LANGUAGE","ALTER LARGE OBJECT","ALTER MATERIALIZED VIEW","ALTER OPERATOR","ALTER OPERATOR CLASS","ALTER OPERATOR FAMILY","ALTER POLICY","ALTER PROCEDURE","ALTER PUBLICATION","ALTER ROLE","ALTER ROUTINE","ALTER RULE","ALTER SCHEMA","ALTER SEQUENCE","ALTER SERVER","ALTER STATISTICS","ALTER SUBSCRIPTION","ALTER SYSTEM","ALTER TABLESPACE","ALTER TEXT SEARCH CONFIGURATION","ALTER TEXT SEARCH DICTIONARY","ALTER TEXT SEARCH PARSER","ALTER TEXT SEARCH TEMPLATE","ALTER TRIGGER","ALTER TYPE","ALTER USER","ALTER USER MAPPING","ALTER VIEW","ANALYZE","BEGIN","CALL","CHECKPOINT","CLOSE","CLUSTER","COMMENT ON","COMMIT","COMMIT PREPARED","COPY","CREATE ACCESS METHOD","CREATE [OR REPLACE] AGGREGATE","CREATE CAST","CREATE COLLATION","CREATE [DEFAULT] CONVERSION","CREATE DATABASE","CREATE DOMAIN","CREATE EVENT TRIGGER","CREATE EXTENSION","CREATE FOREIGN DATA WRAPPER","CREATE FOREIGN TABLE","CREATE [OR REPLACE] FUNCTION","CREATE GROUP","CREATE [UNIQUE] INDEX","CREATE [OR REPLACE] [TRUSTED] [PROCEDURAL] LANGUAGE","CREATE OPERATOR","CREATE OPERATOR CLASS","CREATE OPERATOR FAMILY","CREATE POLICY","CREATE [OR REPLACE] PROCEDURE","CREATE PUBLICATION","CREATE ROLE","CREATE [OR REPLACE] RULE","CREATE SCHEMA [AUTHORIZATION]","CREATE [TEMPORARY | TEMP | UNLOGGED] SEQUENCE","CREATE SERVER","CREATE STATISTICS","CREATE SUBSCRIPTION","CREATE TABLESPACE","CREATE TEXT SEARCH CONFIGURATION","CREATE TEXT SEARCH DICTIONARY","CREATE TEXT SEARCH PARSER","CREATE TEXT SEARCH TEMPLATE","CREATE [OR REPLACE] TRANSFORM","CREATE [OR REPLACE] [CONSTRAINT] TRIGGER","CREATE TYPE","CREATE USER","CREATE USER MAPPING","DEALLOCATE","DECLARE","DISCARD","DROP ACCESS METHOD","DROP AGGREGATE","DROP CAST","DROP COLLATION","DROP CONVERSION","DROP DATABASE","DROP DOMAIN","DROP EVENT TRIGGER","DROP EXTENSION","DROP FOREIGN DATA WRAPPER","DROP FOREIGN TABLE","DROP FUNCTION","DROP GROUP","DROP IDENTITY","DROP INDEX","DROP LANGUAGE","DROP MATERIALIZED VIEW [IF EXISTS]","DROP OPERATOR","DROP OPERATOR CLASS","DROP OPERATOR FAMILY","DROP OWNED","DROP POLICY","DROP PROCEDURE","DROP PUBLICATION","DROP ROLE","DROP ROUTINE","DROP RULE","DROP SCHEMA","DROP SEQUENCE","DROP SERVER","DROP STATISTICS","DROP SUBSCRIPTION","DROP TABLESPACE","DROP TEXT SEARCH CONFIGURATION","DROP TEXT SEARCH DICTIONARY","DROP TEXT SEARCH PARSER","DROP TEXT SEARCH TEMPLATE","DROP TRANSFORM","DROP TRIGGER","DROP TYPE","DROP USER","DROP USER MAPPING","DROP VIEW","EXECUTE","EXPLAIN","FETCH","GRANT","IMPORT FOREIGN SCHEMA","LISTEN","LOAD","LOCK","MOVE","NOTIFY","OVERRIDING SYSTEM VALUE","PREPARE","PREPARE TRANSACTION","REASSIGN OWNED","REFRESH MATERIALIZED VIEW","REINDEX","RELEASE SAVEPOINT","RESET [ALL|ROLE|SESSION AUTHORIZATION]","REVOKE","ROLLBACK","ROLLBACK PREPARED","ROLLBACK TO SAVEPOINT","SAVEPOINT","SECURITY LABEL","SELECT INTO","SET CONSTRAINTS","SET ROLE","SET SESSION AUTHORIZATION","SET TRANSACTION","SHOW","START TRANSACTION","UNLISTEN","VACUUM"]),Ri=G(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),Si=G(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),Ni=G(["PRIMARY KEY","GENERATED {ALWAYS | BY DEFAULT} AS IDENTITY","ON {UPDATE | DELETE} [NO ACTION | RESTRICT | CASCADE | SET NULL | SET DEFAULT]","DO {NOTHING | UPDATE}","AS MATERIALIZED","{ROWS | RANGE | GROUPS} BETWEEN","IS [NOT] DISTINCT FROM","NULLS {FIRST | LAST}","WITH ORDINALITY"]),Ii=G(["[TIMESTAMP | TIME] {WITH | WITHOUT} TIME ZONE"]),Oi={name:"postgresql",tokenizerOptions:{reservedSelect:ii,reservedClauses:[...Ai,...Or,...SE],reservedSetOperations:Ri,reservedJoins:Si,reservedKeywordPhrases:Ni,reservedDataTypePhrases:Ii,reservedKeywords:oi,reservedDataTypes:ai,reservedFunctionNames:Ti,nestedBlockComments:!0,extraParens:["[]"],underscoresInNumbers:!0,stringTypes:["$$",{quote:"''-qq",prefixes:["U&"]},{quote:"''-qq-bs",prefixes:["E"],requirePrefix:!0},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:[{quote:'""-qq',prefixes:["U&"]}],identChars:{rest:"$"},paramTypes:{numbered:["$"]},operators:["%","^","|/","||/","@",":=","&","|","#","~","<<",">>","~>~","~<~","~>=~","~<=~","@-@","@@","##","<->","&&","&<","&>","<<|","&<|","|>>","|&>","<^","^>","?#","?-","?|","?-|","?||","@>","<@","~=","?","@?","?&","->","->>","#>","#>>","#-","=>",">>=","<<=","~~","~~*","!~~","!~~*","~","~*","!~","!~*","-|-","||","@@@","!!","^@","<%","%>","<<%","%>>","<<->","<->>","<<<->","<->>>","::",":","<#>","<=>","<+>","<~>","<%>"],operatorKeyword:!0},formatOptions:{alwaysDenseOperators:["::",":"],onelineClauses:[...Or,...SE],tabularOnelineClauses:SE}},li=["ANY_VALUE","APPROXIMATE PERCENTILE_DISC","AVG","COUNT","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","array_concat","array_flatten","get_array_length","split_to_array","subarray","BIT_AND","BIT_OR","BOOL_AND","BOOL_OR","COALESCE","DECODE","GREATEST","LEAST","NVL","NVL2","NULLIF","ADD_MONTHS","AT TIME ZONE","CONVERT_TIMEZONE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_CMP","DATE_CMP_TIMESTAMP","DATE_CMP_TIMESTAMPTZ","DATE_PART_YEAR","DATEADD","DATEDIFF","DATE_PART","DATE_TRUNC","EXTRACT","GETDATE","INTERVAL_CMP","LAST_DAY","MONTHS_BETWEEN","NEXT_DAY","SYSDATE","TIMEOFDAY","TIMESTAMP_CMP","TIMESTAMP_CMP_DATE","TIMESTAMP_CMP_TIMESTAMPTZ","TIMESTAMPTZ_CMP","TIMESTAMPTZ_CMP_DATE","TIMESTAMPTZ_CMP_TIMESTAMP","TIMEZONE","TO_TIMESTAMP","TRUNC","AddBBox","DropBBox","GeometryType","ST_AddPoint","ST_Angle","ST_Area","ST_AsBinary","ST_AsEWKB","ST_AsEWKT","ST_AsGeoJSON","ST_AsText","ST_Azimuth","ST_Boundary","ST_Collect","ST_Contains","ST_ContainsProperly","ST_ConvexHull","ST_CoveredBy","ST_Covers","ST_Crosses","ST_Dimension","ST_Disjoint","ST_Distance","ST_DistanceSphere","ST_DWithin","ST_EndPoint","ST_Envelope","ST_Equals","ST_ExteriorRing","ST_Force2D","ST_Force3D","ST_Force3DM","ST_Force3DZ","ST_Force4D","ST_GeometryN","ST_GeometryType","ST_GeomFromEWKB","ST_GeomFromEWKT","ST_GeomFromText","ST_GeomFromWKB","ST_InteriorRingN","ST_Intersects","ST_IsPolygonCCW","ST_IsPolygonCW","ST_IsClosed","ST_IsCollection","ST_IsEmpty","ST_IsSimple","ST_IsValid","ST_Length","ST_LengthSphere","ST_Length2D","ST_LineFromMultiPoint","ST_LineInterpolatePoint","ST_M","ST_MakeEnvelope","ST_MakeLine","ST_MakePoint","ST_MakePolygon","ST_MemSize","ST_MMax","ST_MMin","ST_Multi","ST_NDims","ST_NPoints","ST_NRings","ST_NumGeometries","ST_NumInteriorRings","ST_NumPoints","ST_Perimeter","ST_Perimeter2D","ST_Point","ST_PointN","ST_Points","ST_Polygon","ST_RemovePoint","ST_Reverse","ST_SetPoint","ST_SetSRID","ST_Simplify","ST_SRID","ST_StartPoint","ST_Touches","ST_Within","ST_X","ST_XMax","ST_XMin","ST_Y","ST_YMax","ST_YMin","ST_Z","ST_ZMax","ST_ZMin","SupportsBBox","CHECKSUM","FUNC_SHA1","FNV_HASH","MD5","SHA","SHA1","SHA2","HLL","HLL_CREATE_SKETCH","HLL_CARDINALITY","HLL_COMBINE","IS_VALID_JSON","IS_VALID_JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_EXTRACT_ARRAY_ELEMENT_TEXT","JSON_EXTRACT_PATH_TEXT","JSON_PARSE","JSON_SERIALIZE","ABS","ACOS","ASIN","ATAN","ATAN2","CBRT","CEILING","CEIL","COS","COT","DEGREES","DEXP","DLOG1","DLOG10","EXP","FLOOR","LN","LOG","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SIN","SIGN","SQRT","TAN","TO_HEX","TRUNC","EXPLAIN_MODEL","ASCII","BPCHARCMP","BTRIM","BTTEXT_PATTERN_CMP","CHAR_LENGTH","CHARACTER_LENGTH","CHARINDEX","CHR","COLLATE","CONCAT","CRC32","DIFFERENCE","INITCAP","LEFT","RIGHT","LEN","LENGTH","LOWER","LPAD","RPAD","LTRIM","OCTETINDEX","OCTET_LENGTH","POSITION","QUOTE_IDENT","QUOTE_LITERAL","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","REPLICATE","REVERSE","RTRIM","SOUNDEX","SPLIT_PART","STRPOS","STRTOL","SUBSTRING","TEXTLEN","TRANSLATE","TRIM","UPPER","decimal_precision","decimal_scale","is_array","is_bigint","is_boolean","is_char","is_decimal","is_float","is_integer","is_object","is_scalar","is_smallint","is_varchar","json_typeof","AVG","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAST_VALUE","LAG","LEAD","LISTAGG","MAX","MEDIAN","MIN","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","CAST","CONVERT","TO_CHAR","TO_DATE","TO_NUMBER","TEXT_TO_INT_ALT","TEXT_TO_NUMERIC_ALT","CHANGE_QUERY_PRIORITY","CHANGE_SESSION_PRIORITY","CHANGE_USER_PRIORITY","CURRENT_SETTING","PG_CANCEL_BACKEND","PG_TERMINATE_BACKEND","REBOOT_CLUSTER","SET_CONFIG","CURRENT_AWS_ACCOUNT","CURRENT_DATABASE","CURRENT_NAMESPACE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","CURRENT_USER_ID","HAS_ASSUMEROLE_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_TABLE_PRIVILEGE","PG_BACKEND_PID","PG_GET_COLS","PG_GET_GRANTEE_BY_IAM_ROLE","PG_GET_IAM_ROLE_BY_USER","PG_GET_LATE_BINDING_VIEW_COLS","PG_LAST_COPY_COUNT","PG_LAST_COPY_ID","PG_LAST_UNLOAD_ID","PG_LAST_QUERY_ID","PG_LAST_UNLOAD_COUNT","SESSION_USER","SLICE_NUM","USER","VERSION"],ui=["AES128","AES256","ALL","ALLOWOVERWRITE","ANY","AS","ASC","AUTHORIZATION","BACKUP","BETWEEN","BINARY","BOTH","CHECK","COLUMN","CONSTRAINT","CREATE","CROSS","DEFAULT","DEFERRABLE","DEFLATE","DEFRAG","DESC","DISABLE","DISTINCT","DO","ENABLE","ENCODE","ENCRYPT","ENCRYPTION","EXPLICIT","FALSE","FOR","FOREIGN","FREEZE","FROM","FULL","GLOBALDICT256","GLOBALDICT64K","GROUP","IDENTITY","IGNORE","ILIKE","IN","INITIALLY","INNER","INTO","IS","ISNULL","LANGUAGE","LEADING","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","LUN","LUNS","MINUS","NATURAL","NEW","NOT","NOTNULL","NULL","NULLS","OFF","OFFLINE","OFFSET","OID","OLD","ON","ONLY","OPEN","ORDER","OUTER","OVERLAPS","PARALLEL","PARTITION","PERCENT","PERMISSIONS","PLACING","PRIMARY","RECOVER","REFERENCES","REJECTLOG","RESORT","RESPECT","RESTORE","SIMILAR","SNAPSHOT","SOME","SYSTEM","TABLE","TAG","TDES","THEN","TIMESTAMP","TO","TOP","TRAILING","TRUE","UNIQUE","USING","VERBOSE","WALLET","WITHOUT","ACCEPTANYDATE","ACCEPTINVCHARS","BLANKSASNULL","DATEFORMAT","EMPTYASNULL","ENCODING","ESCAPE","EXPLICIT_IDS","FILLRECORD","IGNOREBLANKLINES","IGNOREHEADER","REMOVEQUOTES","ROUNDEC","TIMEFORMAT","TRIMBLANKS","TRUNCATECOLUMNS","COMPROWS","COMPUPDATE","MAXERROR","NOLOAD","STATUPDATE","FORMAT","CSV","DELIMITER","FIXEDWIDTH","SHAPEFILE","AVRO","JSON","PARQUET","ORC","ACCESS_KEY_ID","CREDENTIALS","ENCRYPTED","IAM_ROLE","MASTER_SYMMETRIC_KEY","SECRET_ACCESS_KEY","SESSION_TOKEN","BZIP2","GZIP","LZOP","ZSTD","MANIFEST","READRATIO","REGION","SSH","RAW","AZ64","BYTEDICT","DELTA","DELTA32K","LZO","MOSTLY8","MOSTLY16","MOSTLY32","RUNLENGTH","TEXT255","TEXT32K","CATALOG_ROLE","SECRET_ARN","EXTERNAL","AUTO","EVEN","KEY","PREDICATE","COMPRESSION"],Ci=["ARRAY","BIGINT","BPCHAR","CHAR","CHARACTER VARYING","CHARACTER","DECIMAL","INT","INT2","INT4","INT8","INTEGER","NCHAR","NUMERIC","NVARCHAR","SMALLINT","TEXT","VARBYTE","VARCHAR"],ci=G(["SELECT [ALL | DISTINCT]"]),_i=G(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","QUALIFY","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET"]),lr=G(["CREATE [TEMPORARY | TEMP | LOCAL TEMPORARY | LOCAL TEMP] TABLE [IF NOT EXISTS]"]),NE=G(["CREATE [OR REPLACE | MATERIALIZED] VIEW","UPDATE","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ALTER TABLE APPEND","ADD [COLUMN]","DROP [COLUMN]","RENAME TO","RENAME COLUMN","ALTER COLUMN","TYPE","ENCODE","TRUNCATE [TABLE]","ABORT","ALTER DATABASE","ALTER DATASHARE","ALTER DEFAULT PRIVILEGES","ALTER GROUP","ALTER MATERIALIZED VIEW","ALTER PROCEDURE","ALTER SCHEMA","ALTER USER","ANALYSE","ANALYZE","ANALYSE COMPRESSION","ANALYZE COMPRESSION","BEGIN","CALL","CANCEL","CLOSE","COMMIT","COPY","CREATE DATABASE","CREATE DATASHARE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL SCHEMA","CREATE EXTERNAL TABLE","CREATE FUNCTION","CREATE GROUP","CREATE LIBRARY","CREATE MODEL","CREATE PROCEDURE","CREATE SCHEMA","CREATE USER","DEALLOCATE","DECLARE","DESC DATASHARE","DROP DATABASE","DROP DATASHARE","DROP FUNCTION","DROP GROUP","DROP LIBRARY","DROP MODEL","DROP MATERIALIZED VIEW","DROP PROCEDURE","DROP SCHEMA","DROP USER","DROP VIEW","DROP","EXECUTE","EXPLAIN","FETCH","GRANT","LOCK","PREPARE","REFRESH MATERIALIZED VIEW","RESET","REVOKE","ROLLBACK","SELECT INTO","SET SESSION AUTHORIZATION","SET SESSION CHARACTERISTICS","SHOW","SHOW EXTERNAL TABLE","SHOW MODEL","SHOW DATASHARES","SHOW PROCEDURE","SHOW TABLE","SHOW VIEW","START TRANSACTION","UNLOAD","VACUUM"]),Li=G(["UNION [ALL]","EXCEPT","INTERSECT","MINUS"]),Di=G(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),pi=G(["NULL AS","DATA CATALOG","HIVE METASTORE","{ROWS | RANGE} BETWEEN"]),di=G([]),Pi={name:"redshift",tokenizerOptions:{reservedSelect:ci,reservedClauses:[..._i,...lr,...NE],reservedSetOperations:Li,reservedJoins:Di,reservedKeywordPhrases:pi,reservedDataTypePhrases:di,reservedKeywords:ui,reservedDataTypes:Ci,reservedFunctionNames:li,extraParens:["[]"],stringTypes:["''-qq"],identTypes:['""-qq'],identChars:{first:"#"},paramTypes:{numbered:["$"]},operators:["^","%","@","|/","||/","&","|","~","<<",">>","||","::"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...lr,...NE],tabularOnelineClauses:NE}},fi=["ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANTI","ANY","ARCHIVE","AS","ASC","AT","AUTHORIZATION","BETWEEN","BOTH","BUCKET","BUCKETS","BY","CACHE","CASCADE","CAST","CHANGE","CHECK","CLEAR","CLUSTER","CLUSTERED","CODEGEN","COLLATE","COLLECTION","COLUMN","COLUMNS","COMMENT","COMMIT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONSTRAINT","COST","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATA","DATABASE","DATABASES","DAY","DBPROPERTIES","DEFINED","DELETE","DELIMITED","DESC","DESCRIBE","DFS","DIRECTORIES","DIRECTORY","DISTINCT","DISTRIBUTE","DIV","DROP","ESCAPE","ESCAPED","EXCEPT","EXCHANGE","EXISTS","EXPORT","EXTENDED","EXTERNAL","EXTRACT","FALSE","FETCH","FIELDS","FILTER","FILEFORMAT","FIRST","FIRST_VALUE","FOLLOWING","FOR","FOREIGN","FORMAT","FORMATTED","FULL","FUNCTION","FUNCTIONS","GLOBAL","GRANT","GROUP","GROUPING","HOUR","IF","IGNORE","IMPORT","IN","INDEX","INDEXES","INNER","INPATH","INPUTFORMAT","INTERSECT","INTO","IS","ITEMS","KEYS","LAST","LAST_VALUE","LATERAL","LAZY","LEADING","LEFT","LIKE","LINES","LIST","LOCAL","LOCATION","LOCK","LOCKS","LOGICAL","MACRO","MATCHED","MERGE","MINUTE","MONTH","MSCK","NAMESPACE","NAMESPACES","NATURAL","NO","NOT","NULL","NULLS","OF","ONLY","OPTION","OPTIONS","OR","ORDER","OUT","OUTER","OUTPUTFORMAT","OVER","OVERLAPS","OVERLAY","OVERWRITE","OWNER","PARTITION","PARTITIONED","PARTITIONS","PERCENT","PLACING","POSITION","PRECEDING","PRIMARY","PRINCIPALS","PROPERTIES","PURGE","QUERY","RANGE","RECORDREADER","RECORDWRITER","RECOVER","REDUCE","REFERENCES","RENAME","REPAIR","REPLACE","RESPECT","RESTRICT","REVOKE","RIGHT","RLIKE","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","SCHEMA","SECOND","SELECT","SEMI","SEPARATED","SERDE","SERDEPROPERTIES","SESSION_USER","SETS","SHOW","SKEWED","SOME","SORT","SORTED","START","STATISTICS","STORED","STRATIFY","SUBSTR","SUBSTRING","TABLE","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","THEN","TO","TOUCH","TRAILING","TRANSACTION","TRANSACTIONS","TRIM","TRUE","TRUNCATE","UNARCHIVE","UNBOUNDED","UNCACHE","UNIQUE","UNKNOWN","UNLOCK","UNSET","USE","USER","USING","VIEW","WINDOW","YEAR","ANALYSE","ARRAY_ZIP","COALESCE","CONTAINS","CONVERT","DAYS","DAY_HOUR","DAY_MINUTE","DAY_SECOND","DECODE","DEFAULT","DISTINCTROW","ENCODE","EXPLODE","EXPLODE_OUTER","FIXED","GREATEST","GROUP_CONCAT","HOURS","HOUR_MINUTE","HOUR_SECOND","IFNULL","LEAST","LEVEL","MINUTE_SECOND","NULLIF","OFFSET","ON","OPTIMIZE","REGEXP","SEPARATOR","SIZE","TYPE","TYPES","UNSIGNED","VARIABLES","YEAR_MONTH"],hi=["ARRAY","BIGINT","BINARY","BOOLEAN","BYTE","CHAR","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","LONG","MAP","NUMERIC","REAL","SHORT","SMALLINT","STRING","STRUCT","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TINYINT","VARCHAR"],Mi=["APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COUNT","COUNT","COUNT_IF","COUNT_MIN_SKETCH","COVAR_POP","COVAR_SAMP","EVERY","FIRST","FIRST_VALUE","GROUPING","GROUPING_ID","KURTOSIS","LAST","LAST_VALUE","MAX","MAX_BY","MEAN","MIN","MIN_BY","PERCENTILE","PERCENTILE","PERCENTILE_APPROX","SKEWNESS","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CUME_DIST","DENSE_RANK","LAG","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","ARRAY","ARRAY_CONTAINS","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_UNION","ARRAYS_OVERLAP","ARRAYS_ZIP","FLATTEN","SEQUENCE","SHUFFLE","SLICE","SORT_ARRAY","ELEMENT_AT","ELEMENT_AT","MAP_CONCAT","MAP_ENTRIES","MAP_FROM_ARRAYS","MAP_FROM_ENTRIES","MAP_KEYS","MAP_VALUES","STR_TO_MAP","ADD_MONTHS","CURRENT_DATE","CURRENT_DATE","CURRENT_TIMESTAMP","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","DATE_ADD","DATE_FORMAT","DATE_FROM_UNIX_DATE","DATE_PART","DATE_SUB","DATE_TRUNC","DATEDIFF","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MAKE_DATE","MAKE_DT_INTERVAL","MAKE_INTERVAL","MAKE_TIMESTAMP","MAKE_YM_INTERVAL","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","NOW","QUARTER","SECOND","SESSION_WINDOW","TIMESTAMP_MICROS","TIMESTAMP_MILLIS","TIMESTAMP_SECONDS","TO_DATE","TO_TIMESTAMP","TO_UNIX_TIMESTAMP","TO_UTC_TIMESTAMP","TRUNC","UNIX_DATE","UNIX_MICROS","UNIX_MILLIS","UNIX_SECONDS","UNIX_TIMESTAMP","WEEKDAY","WEEKOFYEAR","WINDOW","YEAR","FROM_JSON","GET_JSON_OBJECT","JSON_ARRAY_LENGTH","JSON_OBJECT_KEYS","JSON_TUPLE","SCHEMA_OF_JSON","TO_JSON","ABS","ACOS","ACOSH","AGGREGATE","ARRAY_SORT","ASCII","ASIN","ASINH","ASSERT_TRUE","ATAN","ATAN2","ATANH","BASE64","BIN","BIT_COUNT","BIT_GET","BIT_LENGTH","BROUND","BTRIM","CARDINALITY","CBRT","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONV","COS","COSH","COT","CRC32","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_USER","DEGREES","ELT","EXP","EXPM1","FACTORIAL","FIND_IN_SET","FLOOR","FORALL","FORMAT_NUMBER","FORMAT_STRING","FROM_CSV","GETBIT","HASH","HEX","HYPOT","INITCAP","INLINE","INLINE_OUTER","INPUT_FILE_BLOCK_LENGTH","INPUT_FILE_BLOCK_START","INPUT_FILE_NAME","INSTR","ISNAN","ISNOTNULL","ISNULL","JAVA_METHOD","LCASE","LEFT","LENGTH","LEVENSHTEIN","LN","LOCATE","LOG","LOG10","LOG1P","LOG2","LOWER","LPAD","LTRIM","MAP_FILTER","MAP_ZIP_WITH","MD5","MOD","MONOTONICALLY_INCREASING_ID","NAMED_STRUCT","NANVL","NEGATIVE","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARSE_URL","PI","PMOD","POSEXPLODE","POSEXPLODE_OUTER","POSITION","POSITIVE","POW","POWER","PRINTF","RADIANS","RAISE_ERROR","RAND","RANDN","RANDOM","REFLECT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_REPLACE","REPEAT","REPLACE","REVERSE","RIGHT","RINT","ROUND","RPAD","RTRIM","SCHEMA_OF_CSV","SENTENCES","SHA","SHA1","SHA2","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIGNUM","SIN","SINH","SOUNDEX","SPACE","SPARK_PARTITION_ID","SPLIT","SQRT","STACK","SUBSTR","SUBSTRING","SUBSTRING_INDEX","TAN","TANH","TO_CSV","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRY_ADD","TRY_DIVIDE","TYPEOF","UCASE","UNBASE64","UNHEX","UPPER","UUID","VERSION","WIDTH_BUCKET","XPATH","XPATH_BOOLEAN","XPATH_DOUBLE","XPATH_FLOAT","XPATH_INT","XPATH_LONG","XPATH_NUMBER","XPATH_SHORT","XPATH_STRING","XXHASH64","ZIP_WITH","CAST","COALESCE","NULLIF"],Ui=G(["SELECT [ALL | DISTINCT]"]),mi=G(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT [INTO | OVERWRITE] [TABLE]","VALUES","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),ur=G(["CREATE [EXTERNAL] TABLE [IF NOT EXISTS]"]),IE=G(["CREATE [OR REPLACE] [GLOBAL TEMPORARY | TEMPORARY] VIEW [IF NOT EXISTS]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD COLUMNS","DROP {COLUMN | COLUMNS}","RENAME TO","RENAME COLUMN","ALTER COLUMN","TRUNCATE TABLE","LATERAL VIEW","ALTER DATABASE","ALTER VIEW","CREATE DATABASE","CREATE FUNCTION","DROP DATABASE","DROP FUNCTION","DROP VIEW","REPAIR TABLE","USE DATABASE","TABLESAMPLE","PIVOT","TRANSFORM","EXPLAIN","ADD FILE","ADD JAR","ANALYZE TABLE","CACHE TABLE","CLEAR CACHE","DESCRIBE DATABASE","DESCRIBE FUNCTION","DESCRIBE QUERY","DESCRIBE TABLE","LIST FILE","LIST JAR","REFRESH","REFRESH TABLE","REFRESH FUNCTION","RESET","SHOW COLUMNS","SHOW CREATE TABLE","SHOW DATABASES","SHOW FUNCTIONS","SHOW PARTITIONS","SHOW TABLE EXTENDED","SHOW TABLES","SHOW TBLPROPERTIES","SHOW VIEWS","UNCACHE TABLE"]),Bi=G(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),gi=G(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT] {ANTI | SEMI} JOIN","NATURAL [LEFT] {ANTI | SEMI} JOIN"]),yi=G(["ON DELETE","ON UPDATE","CURRENT ROW","{ROWS | RANGE} BETWEEN"]),Gi=G([]),Fi={name:"spark",tokenizerOptions:{reservedSelect:Ui,reservedClauses:[...mi,...ur,...IE],reservedSetOperations:Bi,reservedJoins:gi,reservedKeywordPhrases:yi,reservedDataTypePhrases:Gi,supportsXor:!0,reservedKeywords:fi,reservedDataTypes:hi,reservedFunctionNames:Mi,extraParens:["[]"],stringTypes:["''-bs",'""-bs',{quote:"''-raw",prefixes:["R","X"],requirePrefix:!0},{quote:'""-raw',prefixes:["R","X"],requirePrefix:!0}],identTypes:["``"],identChars:{allowFirstCharNumber:!0},variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||","->"],postProcess:Hi},formatOptions:{onelineClauses:[...ur,...IE],tabularOnelineClauses:IE}};function Hi(E){return E.map((t,r)=>{const n=E[r-1]||It,s=E[r+1]||It;return Ot.WINDOW(t)&&s.type===K.OPEN_PAREN?Object.assign(Object.assign({},t),{type:K.RESERVED_FUNCTION_NAME}):t.text==="ITEMS"&&t.type===K.RESERVED_KEYWORD&&!(n.text==="COLLECTION"&&s.text==="TERMINATED")?Object.assign(Object.assign({},t),{type:K.IDENTIFIER,text:t.raw}):t})}const bi=["ABS","CHANGES","CHAR","COALESCE","FORMAT","GLOB","HEX","IFNULL","IIF","INSTR","LAST_INSERT_ROWID","LENGTH","LIKE","LIKELIHOOD","LIKELY","LOAD_EXTENSION","LOWER","LTRIM","NULLIF","PRINTF","QUOTE","RANDOM","RANDOMBLOB","REPLACE","ROUND","RTRIM","SIGN","SOUNDEX","SQLITE_COMPILEOPTION_GET","SQLITE_COMPILEOPTION_USED","SQLITE_OFFSET","SQLITE_SOURCE_ID","SQLITE_VERSION","SUBSTR","SUBSTRING","TOTAL_CHANGES","TRIM","TYPEOF","UNICODE","UNLIKELY","UPPER","ZEROBLOB","AVG","COUNT","GROUP_CONCAT","MAX","MIN","SUM","TOTAL","DATE","TIME","DATETIME","JULIANDAY","UNIXEPOCH","STRFTIME","row_number","rank","dense_rank","percent_rank","cume_dist","ntile","lag","lead","first_value","last_value","nth_value","ACOS","ACOSH","ASIN","ASINH","ATAN","ATAN2","ATANH","CEIL","CEILING","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG","LOG10","LOG2","MOD","PI","POW","POWER","RADIANS","SIN","SINH","SQRT","TAN","TANH","TRUNC","JSON","JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_ARRAY_LENGTH","JSON_EXTRACT","JSON_INSERT","JSON_OBJECT","JSON_PATCH","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_TYPE","JSON_TYPE","JSON_VALID","JSON_QUOTE","JSON_GROUP_ARRAY","JSON_GROUP_OBJECT","JSON_EACH","JSON_TREE","CAST"],xi=["ABORT","ACTION","ADD","AFTER","ALL","ALTER","AND","ARE","ALWAYS","ANALYZE","AS","ASC","ATTACH","AUTOINCREMENT","BEFORE","BEGIN","BETWEEN","BY","CASCADE","CASE","CAST","CHECK","COLLATE","COLUMN","COMMIT","CONFLICT","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATABASE","DEFAULT","DEFERRABLE","DEFERRED","DELETE","DESC","DETACH","DISTINCT","DO","DROP","EACH","ELSE","END","ESCAPE","EXCEPT","EXCLUDE","EXCLUSIVE","EXISTS","EXPLAIN","FAIL","FILTER","FIRST","FOLLOWING","FOR","FOREIGN","FROM","FULL","GENERATED","GLOB","GROUP","HAVING","IF","IGNORE","IMMEDIATE","IN","INDEX","INDEXED","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","KEY","LAST","LEFT","LIKE","LIMIT","MATCH","MATERIALIZED","NATURAL","NO","NOT","NOTHING","NOTNULL","NULL","NULLS","OF","OFFSET","ON","ONLY","OPEN","OR","ORDER","OTHERS","OUTER","OVER","PARTITION","PLAN","PRAGMA","PRECEDING","PRIMARY","QUERY","RAISE","RANGE","RECURSIVE","REFERENCES","REGEXP","REINDEX","RELEASE","RENAME","REPLACE","RESTRICT","RETURNING","RIGHT","ROLLBACK","ROW","ROWS","SAVEPOINT","SELECT","SET","TABLE","TEMP","TEMPORARY","THEN","TIES","TO","TRANSACTION","TRIGGER","UNBOUNDED","UNION","UNIQUE","UPDATE","USING","VACUUM","VALUES","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT"],Yi=["ANY","ARRAY","BLOB","CHARACTER","DECIMAL","INT","INTEGER","NATIVE CHARACTER","NCHAR","NUMERIC","NVARCHAR","REAL","TEXT","VARCHAR","VARYING CHARACTER"],Vi=G(["SELECT [ALL | DISTINCT]"]),vi=G(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK] INTO","REPLACE INTO","VALUES","SET","RETURNING"]),Cr=G(["CREATE [TEMPORARY | TEMP] TABLE [IF NOT EXISTS]"]),OE=G(["CREATE [TEMPORARY | TEMP] VIEW [IF NOT EXISTS]","UPDATE [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK]","ON CONFLICT","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME [COLUMN]","RENAME TO","SET SCHEMA"]),wi=G(["UNION [ALL]","EXCEPT","INTERSECT"]),Wi=G(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),Xi=G(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN","DO UPDATE"]),Ki=G([]),ki={name:"sqlite",tokenizerOptions:{reservedSelect:Vi,reservedClauses:[...vi,...Cr,...OE],reservedSetOperations:wi,reservedJoins:Wi,reservedKeywordPhrases:Xi,reservedDataTypePhrases:Ki,reservedKeywords:xi,reservedDataTypes:Yi,reservedFunctionNames:bi,stringTypes:["''-qq",{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``","[]"],paramTypes:{positional:!0,numbered:["?"],named:[":","@","$"]},operators:["%","~","&","|","<<",">>","==","->","->>","||"]},formatOptions:{onelineClauses:[...Cr,...OE],tabularOnelineClauses:OE}},$i=["GROUPING","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","ROW_NUMBER","POSITION","OCCURRENCES_REGEX","POSITION_REGEX","EXTRACT","CHAR_LENGTH","CHARACTER_LENGTH","OCTET_LENGTH","CARDINALITY","ABS","MOD","LN","EXP","POWER","SQRT","FLOOR","CEIL","CEILING","WIDTH_BUCKET","SUBSTRING","SUBSTRING_REGEX","UPPER","LOWER","CONVERT","TRANSLATE","TRANSLATE_REGEX","TRIM","OVERLAY","NORMALIZE","SPECIFICTYPE","CURRENT_DATE","CURRENT_TIME","LOCALTIME","CURRENT_TIMESTAMP","LOCALTIMESTAMP","COUNT","AVG","MAX","MIN","SUM","STDDEV_POP","STDDEV_SAMP","VAR_SAMP","VAR_POP","COLLECT","FUSION","INTERSECTION","COVAR_POP","COVAR_SAMP","CORR","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","PERCENTILE_CONT","PERCENTILE_DISC","CAST","COALESCE","NULLIF","ROUND","SIN","COS","TAN","ASIN","ACOS","ATAN"],qi=["ALL","ALLOCATE","ALTER","ANY","ARE","AS","ASC","ASENSITIVE","ASYMMETRIC","AT","ATOMIC","AUTHORIZATION","BEGIN","BETWEEN","BOTH","BY","CALL","CALLED","CASCADED","CAST","CHECK","CLOSE","COALESCE","COLLATE","COLUMN","COMMIT","CONDITION","CONNECT","CONSTRAINT","CORRESPONDING","CREATE","CROSS","CUBE","CURRENT","CURRENT_CATALOG","CURRENT_DEFAULT_TRANSFORM_GROUP","CURRENT_PATH","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TRANSFORM_GROUP_FOR_TYPE","CURRENT_USER","CURSOR","CYCLE","DEALLOCATE","DAY","DECLARE","DEFAULT","DELETE","DEREF","DESC","DESCRIBE","DETERMINISTIC","DISCONNECT","DISTINCT","DROP","DYNAMIC","EACH","ELEMENT","END-EXEC","ESCAPE","EVERY","EXCEPT","EXEC","EXECUTE","EXISTS","EXTERNAL","FALSE","FETCH","FILTER","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GET","GLOBAL","GRANT","GROUP","HAVING","HOLD","HOUR","IDENTITY","IN","INDICATOR","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTO","IS","LANGUAGE","LARGE","LATERAL","LEADING","LEFT","LIKE","LIKE_REGEX","LOCAL","MATCH","MEMBER","MERGE","METHOD","MINUTE","MODIFIES","MODULE","MONTH","NATURAL","NEW","NO","NONE","NOT","NULL","NULLIF","OF","OLD","ON","ONLY","OPEN","ORDER","OUT","OUTER","OVER","OVERLAPS","PARAMETER","PARTITION","PRECISION","PREPARE","PRIMARY","PROCEDURE","RANGE","READS","REAL","RECURSIVE","REF","REFERENCES","REFERENCING","RELEASE","RESULT","RETURN","RETURNS","REVOKE","RIGHT","ROLLBACK","ROLLUP","ROW","ROWS","SAVEPOINT","SCOPE","SCROLL","SEARCH","SECOND","SELECT","SENSITIVE","SESSION_USER","SET","SIMILAR","SOME","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","START","STATIC","SUBMULTISET","SYMMETRIC","SYSTEM","SYSTEM_USER","TABLE","TABLESAMPLE","THEN","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO","TRAILING","TRANSLATION","TREAT","TRIGGER","TRUE","UESCAPE","UNION","UNIQUE","UNKNOWN","UNNEST","UPDATE","USER","USING","VALUE","VALUES","WHENEVER","WINDOW","WITHIN","WITHOUT","YEAR"],Ji=["ARRAY","BIGINT","BINARY LARGE OBJECT","BINARY VARYING","BINARY","BLOB","BOOLEAN","CHAR LARGE OBJECT","CHAR VARYING","CHAR","CHARACTER LARGE OBJECT","CHARACTER VARYING","CHARACTER","CLOB","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MULTISET","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER LARGE OBJECT","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR LARGE OBJECT","NCHAR VARYING","NCHAR","NCLOB","NUMERIC","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],Qi=G(["SELECT [ALL | DISTINCT]"]),Zi=G(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET"]),cr=G(["CREATE [GLOBAL TEMPORARY | LOCAL TEMPORARY] TABLE"]),lE=G(["CREATE [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","DELETE FROM","DROP TABLE","ALTER TABLE","ADD COLUMN","DROP [COLUMN]","RENAME COLUMN","RENAME TO","ALTER [COLUMN]","{SET | DROP} DEFAULT","ADD SCOPE","DROP SCOPE {CASCADE | RESTRICT}","RESTART WITH","TRUNCATE TABLE","SET SCHEMA"]),ji=G(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),zi=G(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),eA=G(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),tA=G([]),EA={name:"sql",tokenizerOptions:{reservedSelect:Qi,reservedClauses:[...Zi,...cr,...lE],reservedSetOperations:ji,reservedJoins:zi,reservedKeywordPhrases:eA,reservedDataTypePhrases:tA,reservedKeywords:qi,reservedDataTypes:Ji,reservedFunctionNames:$i,stringTypes:[{quote:"''-qq-bs",prefixes:["N","U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``"],paramTypes:{positional:!0},operators:["||"]},formatOptions:{onelineClauses:[...cr,...lE],tabularOnelineClauses:lE}},rA=["ABS","ACOS","ALL_MATCH","ANY_MATCH","APPROX_DISTINCT","APPROX_MOST_FREQUENT","APPROX_PERCENTILE","APPROX_SET","ARBITRARY","ARRAYS_OVERLAP","ARRAY_AGG","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_SORT","ARRAY_UNION","ASIN","ATAN","ATAN2","AT_TIMEZONE","AVG","BAR","BETA_CDF","BING_TILE","BING_TILES_AROUND","BING_TILE_AT","BING_TILE_COORDINATES","BING_TILE_POLYGON","BING_TILE_QUADKEY","BING_TILE_ZOOM_LEVEL","BITWISE_AND","BITWISE_AND_AGG","BITWISE_LEFT_SHIFT","BITWISE_NOT","BITWISE_OR","BITWISE_OR_AGG","BITWISE_RIGHT_SHIFT","BITWISE_RIGHT_SHIFT_ARITHMETIC","BITWISE_XOR","BIT_COUNT","BOOL_AND","BOOL_OR","CARDINALITY","CAST","CBRT","CEIL","CEILING","CHAR2HEXINT","CHECKSUM","CHR","CLASSIFY","COALESCE","CODEPOINT","COLOR","COMBINATIONS","CONCAT","CONCAT_WS","CONTAINS","CONTAINS_SEQUENCE","CONVEX_HULL_AGG","CORR","COS","COSH","COSINE_SIMILARITY","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CRC32","CUME_DIST","CURRENT_CATALOG","CURRENT_DATE","CURRENT_GROUPS","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","DATE","DATE_ADD","DATE_DIFF","DATE_FORMAT","DATE_PARSE","DATE_TRUNC","DAY","DAY_OF_MONTH","DAY_OF_WEEK","DAY_OF_YEAR","DEGREES","DENSE_RANK","DOW","DOY","E","ELEMENT_AT","EMPTY_APPROX_SET","EVALUATE_CLASSIFIER_PREDICTIONS","EVERY","EXP","EXTRACT","FEATURES","FILTER","FIRST_VALUE","FLATTEN","FLOOR","FORMAT","FORMAT_DATETIME","FORMAT_NUMBER","FROM_BASE","FROM_BASE32","FROM_BASE64","FROM_BASE64URL","FROM_BIG_ENDIAN_32","FROM_BIG_ENDIAN_64","FROM_ENCODED_POLYLINE","FROM_GEOJSON_GEOMETRY","FROM_HEX","FROM_IEEE754_32","FROM_IEEE754_64","FROM_ISO8601_DATE","FROM_ISO8601_TIMESTAMP","FROM_ISO8601_TIMESTAMP_NANOS","FROM_UNIXTIME","FROM_UNIXTIME_NANOS","FROM_UTF8","GEOMETRIC_MEAN","GEOMETRY_FROM_HADOOP_SHAPE","GEOMETRY_INVALID_REASON","GEOMETRY_NEAREST_POINTS","GEOMETRY_TO_BING_TILES","GEOMETRY_UNION","GEOMETRY_UNION_AGG","GREATEST","GREAT_CIRCLE_DISTANCE","HAMMING_DISTANCE","HASH_COUNTS","HISTOGRAM","HMAC_MD5","HMAC_SHA1","HMAC_SHA256","HMAC_SHA512","HOUR","HUMAN_READABLE_SECONDS","IF","INDEX","INFINITY","INTERSECTION_CARDINALITY","INVERSE_BETA_CDF","INVERSE_NORMAL_CDF","IS_FINITE","IS_INFINITE","IS_JSON_SCALAR","IS_NAN","JACCARD_INDEX","JSON_ARRAY_CONTAINS","JSON_ARRAY_GET","JSON_ARRAY_LENGTH","JSON_EXISTS","JSON_EXTRACT","JSON_EXTRACT_SCALAR","JSON_FORMAT","JSON_PARSE","JSON_QUERY","JSON_SIZE","JSON_VALUE","KURTOSIS","LAG","LAST_DAY_OF_MONTH","LAST_VALUE","LEAD","LEARN_CLASSIFIER","LEARN_LIBSVM_CLASSIFIER","LEARN_LIBSVM_REGRESSOR","LEARN_REGRESSOR","LEAST","LENGTH","LEVENSHTEIN_DISTANCE","LINE_INTERPOLATE_POINT","LINE_INTERPOLATE_POINTS","LINE_LOCATE_POINT","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","LUHN_CHECK","MAKE_SET_DIGEST","MAP","MAP_AGG","MAP_CONCAT","MAP_ENTRIES","MAP_FILTER","MAP_FROM_ENTRIES","MAP_KEYS","MAP_UNION","MAP_VALUES","MAP_ZIP_WITH","MAX","MAX_BY","MD5","MERGE","MERGE_SET_DIGEST","MILLISECOND","MIN","MINUTE","MIN_BY","MOD","MONTH","MULTIMAP_AGG","MULTIMAP_FROM_ENTRIES","MURMUR3","NAN","NGRAMS","NONE_MATCH","NORMALIZE","NORMAL_CDF","NOW","NTH_VALUE","NTILE","NULLIF","NUMERIC_HISTOGRAM","OBJECTID","OBJECTID_TIMESTAMP","PARSE_DATA_SIZE","PARSE_DATETIME","PARSE_DURATION","PERCENT_RANK","PI","POSITION","POW","POWER","QDIGEST_AGG","QUARTER","RADIANS","RAND","RANDOM","RANK","REDUCE","REDUCE_AGG","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGRESS","REGR_INTERCEPT","REGR_SLOPE","RENDER","REPEAT","REPLACE","REVERSE","RGB","ROUND","ROW_NUMBER","RPAD","RTRIM","SECOND","SEQUENCE","SHA1","SHA256","SHA512","SHUFFLE","SIGN","SIMPLIFY_GEOMETRY","SIN","SKEWNESS","SLICE","SOUNDEX","SPATIAL_PARTITIONING","SPATIAL_PARTITIONS","SPLIT","SPLIT_PART","SPLIT_TO_MAP","SPLIT_TO_MULTIMAP","SPOOKY_HASH_V2_32","SPOOKY_HASH_V2_64","SQRT","STARTS_WITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRPOS","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_BOUNDARY","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CONVEXHULL","ST_COORDDIM","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_ENVELOPEASPTS","ST_EQUALS","ST_EXTERIORRING","ST_GEOMETRIES","ST_GEOMETRYFROMTEXT","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMBINARY","ST_INTERIORRINGN","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISRING","ST_ISSIMPLE","ST_ISVALID","ST_LENGTH","ST_LINEFROMTEXT","ST_LINESTRING","ST_MULTIPOINT","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINT","ST_POINTN","ST_POINTS","ST_POLYGON","ST_RELATE","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","SUBSTR","SUBSTRING","SUM","TAN","TANH","TDIGEST_AGG","TIMESTAMP_OBJECTID","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO_BASE","TO_BASE32","TO_BASE64","TO_BASE64URL","TO_BIG_ENDIAN_32","TO_BIG_ENDIAN_64","TO_CHAR","TO_DATE","TO_ENCODED_POLYLINE","TO_GEOJSON_GEOMETRY","TO_GEOMETRY","TO_HEX","TO_IEEE754_32","TO_IEEE754_64","TO_ISO8601","TO_MILLISECONDS","TO_SPHERICAL_GEOGRAPHY","TO_TIMESTAMP","TO_UNIXTIME","TO_UTF8","TRANSFORM","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRIM_ARRAY","TRUNCATE","TRY","TRY_CAST","TYPEOF","UPPER","URL_DECODE","URL_ENCODE","URL_EXTRACT_FRAGMENT","URL_EXTRACT_HOST","URL_EXTRACT_PARAMETER","URL_EXTRACT_PATH","URL_EXTRACT_PORT","URL_EXTRACT_PROTOCOL","URL_EXTRACT_QUERY","UUID","VALUES_AT_QUANTILES","VALUE_AT_QUANTILE","VARIANCE","VAR_POP","VAR_SAMP","VERSION","WEEK","WEEK_OF_YEAR","WIDTH_BUCKET","WILSON_INTERVAL_LOWER","WILSON_INTERVAL_UPPER","WITH_TIMEZONE","WORD_STEM","XXHASH64","YEAR","YEAR_OF_WEEK","YOW","ZIP","ZIP_WITH","CLASSIFIER","FIRST","LAST","MATCH_NUMBER","NEXT","PERMUTE","PREV"],nA=["ABSENT","ADD","ADMIN","AFTER","ALL","ALTER","ANALYZE","AND","ANY","AS","ASC","AT","AUTHORIZATION","BERNOULLI","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CATALOGS","COLUMN","COLUMNS","COMMENT","COMMIT","COMMITTED","CONDITIONAL","CONSTRAINT","COPARTITION","CREATE","CROSS","CUBE","CURRENT","CURRENT_PATH","CURRENT_ROLE","DATA","DEALLOCATE","DEFAULT","DEFINE","DEFINER","DELETE","DENY","DESC","DESCRIBE","DESCRIPTOR","DISTINCT","DISTRIBUTED","DOUBLE","DROP","ELSE","EMPTY","ENCODING","END","ERROR","ESCAPE","EXCEPT","EXCLUDING","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FINAL","FIRST","FOLLOWING","FOR","FROM","FULL","FUNCTIONS","GRANT","GRANTED","GRANTS","GRAPHVIZ","GROUP","GROUPING","GROUPS","HAVING","IGNORE","IN","INCLUDING","INITIAL","INNER","INPUT","INSERT","INTERSECT","INTERVAL","INTO","INVOKER","IO","IS","ISOLATION","JOIN","JSON","JSON_ARRAY","JSON_OBJECT","KEEP","KEY","KEYS","LAST","LATERAL","LEADING","LEFT","LEVEL","LIKE","LIMIT","LOCAL","LOGICAL","MATCH","MATCHED","MATCHES","MATCH_RECOGNIZE","MATERIALIZED","MEASURES","NATURAL","NEXT","NFC","NFD","NFKC","NFKD","NO","NONE","NOT","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OR","ORDER","ORDINALITY","OUTER","OUTPUT","OVER","OVERFLOW","PARTITION","PARTITIONS","PASSING","PAST","PATH","PATTERN","PER","PERMUTE","PRECEDING","PRECISION","PREPARE","PRIVILEGES","PROPERTIES","PRUNE","QUOTES","RANGE","READ","RECURSIVE","REFRESH","RENAME","REPEATABLE","RESET","RESPECT","RESTRICT","RETURNING","REVOKE","RIGHT","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","RUNNING","SCALAR","SCHEMA","SCHEMAS","SECURITY","SEEK","SELECT","SERIALIZABLE","SESSION","SET","SETS","SHOW","SKIP","SOME","START","STATS","STRING","SUBSET","SYSTEM","TABLE","TABLES","TABLESAMPLE","TEXT","THEN","TIES","TIME","TIMESTAMP","TO","TRAILING","TRANSACTION","TRUE","TYPE","UESCAPE","UNBOUNDED","UNCOMMITTED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UNNEST","UPDATE","USE","USER","USING","UTF16","UTF32","UTF8","VALIDATE","VALUE","VALUES","VERBOSE","VIEW","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","WORK","WRAPPER","WRITE","ZONE"],sA=["BIGINT","INT","INTEGER","SMALLINT","TINYINT","BOOLEAN","DATE","DECIMAL","REAL","DOUBLE","HYPERLOGLOG","QDIGEST","TDIGEST","P4HYPERLOGLOG","INTERVAL","TIMESTAMP","TIME","VARBINARY","VARCHAR","CHAR","ROW","ARRAY","MAP","JSON","JSON2016","IPADDRESS","GEOMETRY","UUID","SETDIGEST","JONIREGEXP","RE2JREGEXP","LIKEPATTERN","COLOR","CODEPOINTS","FUNCTION","JSONPATH"],TA=G(["SELECT [ALL | DISTINCT]"]),oA=G(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET","MATCH_RECOGNIZE","MEASURES","ONE ROW PER MATCH","ALL ROWS PER MATCH","AFTER MATCH","PATTERN","SUBSET","DEFINE"]),_r=G(["CREATE TABLE [IF NOT EXISTS]"]),uE=G(["CREATE [OR REPLACE] [MATERIALIZED] VIEW","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME COLUMN [IF EXISTS]","RENAME TO","SET AUTHORIZATION [USER | ROLE]","SET PROPERTIES","EXECUTE","TRUNCATE TABLE","ALTER SCHEMA","ALTER MATERIALIZED VIEW","ALTER VIEW","CREATE SCHEMA","CREATE ROLE","DROP SCHEMA","DROP MATERIALIZED VIEW","DROP VIEW","DROP ROLE","EXPLAIN","ANALYZE","EXPLAIN ANALYZE","EXPLAIN ANALYZE VERBOSE","USE","DESCRIBE INPUT","DESCRIBE OUTPUT","REFRESH MATERIALIZED VIEW","RESET SESSION","SET SESSION","SET PATH","SET TIME ZONE","SHOW GRANTS","SHOW CREATE TABLE","SHOW CREATE SCHEMA","SHOW CREATE VIEW","SHOW CREATE MATERIALIZED VIEW","SHOW TABLES","SHOW SCHEMAS","SHOW CATALOGS","SHOW COLUMNS","SHOW STATS FOR","SHOW ROLES","SHOW CURRENT ROLES","SHOW ROLE GRANTS","SHOW FUNCTIONS","SHOW SESSION"]),aA=G(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),iA=G(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),AA=G(["{ROWS | RANGE | GROUPS} BETWEEN","IS [NOT] DISTINCT FROM"]),RA=G([]),SA={name:"trino",tokenizerOptions:{reservedSelect:TA,reservedClauses:[...oA,..._r,...uE],reservedSetOperations:aA,reservedJoins:iA,reservedKeywordPhrases:AA,reservedDataTypePhrases:RA,reservedKeywords:nA,reservedDataTypes:sA,reservedFunctionNames:rA,extraParens:["[]","{}"],stringTypes:[{quote:"''-qq",prefixes:["U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq'],paramTypes:{positional:!0},operators:["%","->","=>",":","||","|","^","$"]},formatOptions:{onelineClauses:[..._r,...uE],tabularOnelineClauses:uE}},NA=["APPROX_COUNT_DISTINCT","AVG","CHECKSUM_AGG","COUNT","COUNT_BIG","GROUPING","GROUPING_ID","MAX","MIN","STDEV","STDEVP","SUM","VAR","VARP","CUME_DIST","FIRST_VALUE","LAG","LAST_VALUE","LEAD","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","Collation - COLLATIONPROPERTY","Collation - TERTIARY_WEIGHTS","@@DBTS","@@LANGID","@@LANGUAGE","@@LOCK_TIMEOUT","@@MAX_CONNECTIONS","@@MAX_PRECISION","@@NESTLEVEL","@@OPTIONS","@@REMSERVER","@@SERVERNAME","@@SERVICENAME","@@SPID","@@TEXTSIZE","@@VERSION","CAST","CONVERT","PARSE","TRY_CAST","TRY_CONVERT","TRY_PARSE","ASYMKEY_ID","ASYMKEYPROPERTY","CERTPROPERTY","CERT_ID","CRYPT_GEN_RANDOM","DECRYPTBYASYMKEY","DECRYPTBYCERT","DECRYPTBYKEY","DECRYPTBYKEYAUTOASYMKEY","DECRYPTBYKEYAUTOCERT","DECRYPTBYPASSPHRASE","ENCRYPTBYASYMKEY","ENCRYPTBYCERT","ENCRYPTBYKEY","ENCRYPTBYPASSPHRASE","HASHBYTES","IS_OBJECTSIGNED","KEY_GUID","KEY_ID","KEY_NAME","SIGNBYASYMKEY","SIGNBYCERT","SYMKEYPROPERTY","VERIFYSIGNEDBYCERT","VERIFYSIGNEDBYASYMKEY","@@CURSOR_ROWS","@@FETCH_STATUS","CURSOR_STATUS","DATALENGTH","IDENT_CURRENT","IDENT_INCR","IDENT_SEED","IDENTITY","SQL_VARIANT_PROPERTY","@@DATEFIRST","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_TIMEZONE_ID","DATEADD","DATEDIFF","DATEDIFF_BIG","DATEFROMPARTS","DATENAME","DATEPART","DATETIME2FROMPARTS","DATETIMEFROMPARTS","DATETIMEOFFSETFROMPARTS","DAY","EOMONTH","GETDATE","GETUTCDATE","ISDATE","MONTH","SMALLDATETIMEFROMPARTS","SWITCHOFFSET","SYSDATETIME","SYSDATETIMEOFFSET","SYSUTCDATETIME","TIMEFROMPARTS","TODATETIMEOFFSET","YEAR","JSON","ISJSON","JSON_VALUE","JSON_QUERY","JSON_MODIFY","ABS","ACOS","ASIN","ATAN","ATN2","CEILING","COS","COT","DEGREES","EXP","FLOOR","LOG","LOG10","PI","POWER","RADIANS","RAND","ROUND","SIGN","SIN","SQRT","SQUARE","TAN","CHOOSE","GREATEST","IIF","LEAST","@@PROCID","APP_NAME","APPLOCK_MODE","APPLOCK_TEST","ASSEMBLYPROPERTY","COL_LENGTH","COL_NAME","COLUMNPROPERTY","DATABASEPROPERTYEX","DB_ID","DB_NAME","FILE_ID","FILE_IDEX","FILE_NAME","FILEGROUP_ID","FILEGROUP_NAME","FILEGROUPPROPERTY","FILEPROPERTY","FILEPROPERTYEX","FULLTEXTCATALOGPROPERTY","FULLTEXTSERVICEPROPERTY","INDEX_COL","INDEXKEY_PROPERTY","INDEXPROPERTY","NEXT VALUE FOR","OBJECT_DEFINITION","OBJECT_ID","OBJECT_NAME","OBJECT_SCHEMA_NAME","OBJECTPROPERTY","OBJECTPROPERTYEX","ORIGINAL_DB_NAME","PARSENAME","SCHEMA_ID","SCHEMA_NAME","SCOPE_IDENTITY","SERVERPROPERTY","STATS_DATE","TYPE_ID","TYPE_NAME","TYPEPROPERTY","DENSE_RANK","NTILE","RANK","ROW_NUMBER","PUBLISHINGSERVERNAME","CERTENCODED","CERTPRIVATEKEY","CURRENT_USER","DATABASE_PRINCIPAL_ID","HAS_DBACCESS","HAS_PERMS_BY_NAME","IS_MEMBER","IS_ROLEMEMBER","IS_SRVROLEMEMBER","LOGINPROPERTY","ORIGINAL_LOGIN","PERMISSIONS","PWDENCRYPT","PWDCOMPARE","SESSION_USER","SESSIONPROPERTY","SUSER_ID","SUSER_NAME","SUSER_SID","SUSER_SNAME","SYSTEM_USER","USER","USER_ID","USER_NAME","ASCII","CHARINDEX","CONCAT","CONCAT_WS","DIFFERENCE","FORMAT","LEFT","LEN","LOWER","LTRIM","PATINDEX","QUOTENAME","REPLACE","REPLICATE","REVERSE","RIGHT","RTRIM","SOUNDEX","SPACE","STR","STRING_AGG","STRING_ESCAPE","STUFF","SUBSTRING","TRANSLATE","TRIM","UNICODE","UPPER","$PARTITION","@@ERROR","@@IDENTITY","@@PACK_RECEIVED","@@ROWCOUNT","@@TRANCOUNT","BINARY_CHECKSUM","CHECKSUM","COMPRESS","CONNECTIONPROPERTY","CONTEXT_INFO","CURRENT_REQUEST_ID","CURRENT_TRANSACTION_ID","DECOMPRESS","ERROR_LINE","ERROR_MESSAGE","ERROR_NUMBER","ERROR_PROCEDURE","ERROR_SEVERITY","ERROR_STATE","FORMATMESSAGE","GET_FILESTREAM_TRANSACTION_CONTEXT","GETANSINULL","HOST_ID","HOST_NAME","ISNULL","ISNUMERIC","MIN_ACTIVE_ROWVERSION","NEWID","NEWSEQUENTIALID","ROWCOUNT_BIG","SESSION_CONTEXT","XACT_STATE","@@CONNECTIONS","@@CPU_BUSY","@@IDLE","@@IO_BUSY","@@PACK_SENT","@@PACKET_ERRORS","@@TIMETICKS","@@TOTAL_ERRORS","@@TOTAL_READ","@@TOTAL_WRITE","TEXTPTR","TEXTVALID","COLUMNS_UPDATED","EVENTDATA","TRIGGER_NESTLEVEL","UPDATE","COALESCE","NULLIF"],IA=["ADD","ALL","ALTER","AND","ANY","AS","ASC","AUTHORIZATION","BACKUP","BEGIN","BETWEEN","BREAK","BROWSE","BULK","BY","CASCADE","CHECK","CHECKPOINT","CLOSE","CLUSTERED","COALESCE","COLLATE","COLUMN","COMMIT","COMPUTE","CONSTRAINT","CONTAINS","CONTAINSTABLE","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DBCC","DEALLOCATE","DECLARE","DEFAULT","DELETE","DENY","DESC","DISK","DISTINCT","DISTRIBUTED","DROP","DUMP","ERRLVL","ESCAPE","EXEC","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FILE","FILLFACTOR","FOR","FOREIGN","FREETEXT","FREETEXTTABLE","FROM","FULL","FUNCTION","GOTO","GRANT","GROUP","HAVING","HOLDLOCK","IDENTITY","IDENTITYCOL","IDENTITY_INSERT","IF","IN","INDEX","INNER","INSERT","INTERSECT","INTO","IS","JOIN","KEY","KILL","LEFT","LIKE","LINENO","LOAD","MERGE","NOCHECK","NONCLUSTERED","NOT","NULL","NULLIF","OF","OFF","OFFSETS","ON","OPEN","OPENDATASOURCE","OPENQUERY","OPENROWSET","OPENXML","OPTION","OR","ORDER","OUTER","OVER","PERCENT","PIVOT","PLAN","PRIMARY","PRINT","PROC","PROCEDURE","PUBLIC","RAISERROR","READ","READTEXT","RECONFIGURE","REFERENCES","REPLICATION","RESTORE","RESTRICT","RETURN","REVERT","REVOKE","RIGHT","ROLLBACK","ROWCOUNT","ROWGUIDCOL","RULE","SAVE","SCHEMA","SECURITYAUDIT","SELECT","SEMANTICKEYPHRASETABLE","SEMANTICSIMILARITYDETAILSTABLE","SEMANTICSIMILARITYTABLE","SESSION_USER","SET","SETUSER","SHUTDOWN","SOME","STATISTICS","SYSTEM_USER","TABLE","TABLESAMPLE","TEXTSIZE","THEN","TO","TOP","TRAN","TRANSACTION","TRIGGER","TRUNCATE","TRY_CONVERT","TSEQUAL","UNION","UNIQUE","UNPIVOT","UPDATE","UPDATETEXT","USE","USER","VALUES","VIEW","WAITFOR","WHERE","WHILE","WITH","WITHIN GROUP","WRITETEXT","$ACTION"],OA=["BINARY","BIT","CHAR","CHAR","CHARACTER","DATE","DATETIME2","DATETIMEOFFSET","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","NATIONAL","NCHAR","NUMERIC","NVARCHAR","PRECISION","REAL","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],lA=G(["SELECT [ALL | DISTINCT]"]),uA=G(["WITH","INTO","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","OFFSET","FETCH {FIRST | NEXT}","FOR {BROWSE | XML | JSON}","OPTION","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY TARGET | BY SOURCE] [THEN]","UPDATE SET"]),Lr=G(["CREATE TABLE"]),CE=G(["CREATE [OR ALTER] [MATERIALIZED] VIEW","UPDATE","WHERE CURRENT OF","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD","DROP COLUMN [IF EXISTS]","ALTER COLUMN","TRUNCATE TABLE","CREATE [UNIQUE] [CLUSTERED] INDEX","CREATE DATABASE","ALTER DATABASE","DROP DATABASE [IF EXISTS]","CREATE [OR ALTER] [PARTITION] {FUNCTION | PROCEDURE | PROC}","ALTER [PARTITION] {FUNCTION | PROCEDURE | PROC}","DROP [PARTITION] {FUNCTION | PROCEDURE | PROC} [IF EXISTS]","GO","USE","ADD SENSITIVITY CLASSIFICATION","ADD SIGNATURE","AGGREGATE","ANSI_DEFAULTS","ANSI_NULLS","ANSI_NULL_DFLT_OFF","ANSI_NULL_DFLT_ON","ANSI_PADDING","ANSI_WARNINGS","APPLICATION ROLE","ARITHABORT","ARITHIGNORE","ASSEMBLY","ASYMMETRIC KEY","AUTHORIZATION","AVAILABILITY GROUP","BACKUP","BACKUP CERTIFICATE","BACKUP MASTER KEY","BACKUP SERVICE MASTER KEY","BEGIN CONVERSATION TIMER","BEGIN DIALOG CONVERSATION","BROKER PRIORITY","BULK INSERT","CERTIFICATE","CLOSE MASTER KEY","CLOSE SYMMETRIC KEY","COLUMN ENCRYPTION KEY","COLUMN MASTER KEY","COLUMNSTORE INDEX","CONCAT_NULL_YIELDS_NULL","CONTEXT_INFO","CONTRACT","CREDENTIAL","CRYPTOGRAPHIC PROVIDER","CURSOR_CLOSE_ON_COMMIT","DATABASE","DATABASE AUDIT SPECIFICATION","DATABASE ENCRYPTION KEY","DATABASE HADR","DATABASE SCOPED CONFIGURATION","DATABASE SCOPED CREDENTIAL","DATABASE SET","DATEFIRST","DATEFORMAT","DEADLOCK_PRIORITY","DENY","DENY XML","DISABLE TRIGGER","ENABLE TRIGGER","END CONVERSATION","ENDPOINT","EVENT NOTIFICATION","EVENT SESSION","EXECUTE AS","EXTERNAL DATA SOURCE","EXTERNAL FILE FORMAT","EXTERNAL LANGUAGE","EXTERNAL LIBRARY","EXTERNAL RESOURCE POOL","EXTERNAL TABLE","FIPS_FLAGGER","FMTONLY","FORCEPLAN","FULLTEXT CATALOG","FULLTEXT INDEX","FULLTEXT STOPLIST","GET CONVERSATION GROUP","GET_TRANSMISSION_STATUS","GRANT","GRANT XML","IDENTITY_INSERT","IMPLICIT_TRANSACTIONS","INDEX","LANGUAGE","LOCK_TIMEOUT","LOGIN","MASTER KEY","MESSAGE TYPE","MOVE CONVERSATION","NOCOUNT","NOEXEC","NUMERIC_ROUNDABORT","OFFSETS","OPEN MASTER KEY","OPEN SYMMETRIC KEY","PARSEONLY","PARTITION SCHEME","QUERY_GOVERNOR_COST_LIMIT","QUEUE","QUOTED_IDENTIFIER","RECEIVE","REMOTE SERVICE BINDING","REMOTE_PROC_TRANSACTIONS","RESOURCE GOVERNOR","RESOURCE POOL","RESTORE","RESTORE FILELISTONLY","RESTORE HEADERONLY","RESTORE LABELONLY","RESTORE MASTER KEY","RESTORE REWINDONLY","RESTORE SERVICE MASTER KEY","RESTORE VERIFYONLY","REVERT","REVOKE","REVOKE XML","ROLE","ROUTE","ROWCOUNT","RULE","SCHEMA","SEARCH PROPERTY LIST","SECURITY POLICY","SELECTIVE XML INDEX","SEND","SENSITIVITY CLASSIFICATION","SEQUENCE","SERVER AUDIT","SERVER AUDIT SPECIFICATION","SERVER CONFIGURATION","SERVER ROLE","SERVICE","SERVICE MASTER KEY","SETUSER","SHOWPLAN_ALL","SHOWPLAN_TEXT","SHOWPLAN_XML","SIGNATURE","SPATIAL INDEX","STATISTICS","STATISTICS IO","STATISTICS PROFILE","STATISTICS TIME","STATISTICS XML","SYMMETRIC KEY","SYNONYM","TABLE","TABLE IDENTITY","TEXTSIZE","TRANSACTION ISOLATION LEVEL","TRIGGER","TYPE","UPDATE STATISTICS","USER","WORKLOAD GROUP","XACT_ABORT","XML INDEX","XML SCHEMA COLLECTION"]),CA=G(["UNION [ALL]","EXCEPT","INTERSECT"]),cA=G(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","{CROSS | OUTER} APPLY"]),_A=G(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),LA=G([]),DA={name:"transactsql",tokenizerOptions:{reservedSelect:lA,reservedClauses:[...uA,...Lr,...CE],reservedSetOperations:CA,reservedJoins:cA,reservedKeywordPhrases:_A,reservedDataTypePhrases:LA,reservedKeywords:IA,reservedDataTypes:OA,reservedFunctionNames:NA,nestedBlockComments:!0,stringTypes:[{quote:"''-qq",prefixes:["N"]},"{}"],identTypes:['""-qq',"[]"],identChars:{first:"#@",rest:"#@$"},paramTypes:{named:["@"],quoted:["@"]},operators:["%","&","|","^","~","!<","!>","+=","-=","*=","/=","%=","|=","&=","^=","::",":"],propertyAccessOperators:[".."]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...Lr,...CE],tabularOnelineClauses:CE}},pA=["ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","_BINARY","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","EXTRA_JOIN","FALSE","FETCH","FOR","FORCE","FORCE_COMPILED_MODE","FORCE_INTERPRETER_MODE","FOREIGN","FROM","FULL","FULLTEXT","GRANT","GROUP","HAVING","HEARTBEAT_NO_LOGGING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","_INTERNAL_DYNAMIC_TYPECAST","INTERSECT","INTERVAL","INTO","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MATCH","MAXVALUE","MINUS","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NO_QUERY_REWRITE","NOT","NO_WRITE_TO_BINLOG","NO_QUERY_REWRITE","NULL","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","RETURN","REVOKE","RIGHT","RIGHT_ANTI_JOIN","RIGHT_SEMI_JOIN","RIGHT_STRAIGHT_JOIN","RLIKE","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SEMI_JOIN","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQL_BIG_RESULT","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQLEXCEPTION","SQL_NO_CACHE","SQL_NO_LOGGING","SQL_SMALL_RESULT","SQLSTATE","SQLWARNING","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNBOUNDED","UNDO","UNION","UNIQUE","UNLOCK","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","_UTF8","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WRITE","XOR","YEAR_MONTH","ZEROFILL"],dA=["BIGINT","BINARY","BIT","BLOB","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","UNSIGNED","VARBINARY","VARCHAR","VARCHARACTER","YEAR"],PA=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_COUNT_DISTINCT_ACCUMULATE","APPROX_COUNT_DISTINCT_COMBINE","APPROX_COUNT_DISTINCT_ESTIMATE","APPROX_GEOGRAPHY_INTERSECTS","APPROX_PERCENTILE","ASCII","ASIN","ATAN","ATAN2","AVG","BIN","BINARY","BIT_AND","BIT_COUNT","BIT_OR","BIT_XOR","CAST","CEIL","CEILING","CHAR","CHARACTER_LENGTH","CHAR_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COLLECT","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATEDIFF","DATE_FORMAT","DATE_SUB","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT","DEGREES","DENSE_RANK","DIV","DOT_PRODUCT","ELT","EUCLIDEAN_DISTANCE","EXP","EXTRACT","FIELD","FIRST","FIRST_VALUE","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOGRAPHY_AREA","GEOGRAPHY_CONTAINS","GEOGRAPHY_DISTANCE","GEOGRAPHY_INTERSECTS","GEOGRAPHY_LATITUDE","GEOGRAPHY_LENGTH","GEOGRAPHY_LONGITUDE","GEOGRAPHY_POINT","GEOGRAPHY_WITHIN_DISTANCE","GEOMETRY_AREA","GEOMETRY_CONTAINS","GEOMETRY_DISTANCE","GEOMETRY_FILTER","GEOMETRY_INTERSECTS","GEOMETRY_LENGTH","GEOMETRY_POINT","GEOMETRY_WITHIN_DISTANCE","GEOMETRY_X","GEOMETRY_Y","GREATEST","GROUPING","GROUP_CONCAT","HEX","HIGHLIGHT","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INITCAP","INSERT","INSTR","INTERVAL","IS","IS NULL","JSON_AGG","JSON_ARRAY_CONTAINS_DOUBLE","JSON_ARRAY_CONTAINS_JSON","JSON_ARRAY_CONTAINS_STRING","JSON_ARRAY_PUSH_DOUBLE","JSON_ARRAY_PUSH_JSON","JSON_ARRAY_PUSH_STRING","JSON_DELETE_KEY","JSON_EXTRACT_DOUBLE","JSON_EXTRACT_JSON","JSON_EXTRACT_STRING","JSON_EXTRACT_BIGINT","JSON_GET_TYPE","JSON_LENGTH","JSON_SET_DOUBLE","JSON_SET_JSON","JSON_SET_STRING","JSON_SPLICE_DOUBLE","JSON_SPLICE_JSON","JSON_SPLICE_STRING","LAG","LAST_DAY","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LN","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LPAD","LTRIM","MATCH","MAX","MD5","MEDIAN","MICROSECOND","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","NOT","NOW","NTH_VALUE","NTILE","NULLIF","OCTET_LENGTH","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIVOT","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANK","REGEXP","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCALAR","SCHEMA","SEC_TO_TIME","SHA1","SHA2","SIGMOID","SIGN","SIN","SLEEP","SPLIT","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUM","SYS_GUID","TAN","TIME","TIMEDIFF","TIME_BUCKET","TIME_FORMAT","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_JSON","TO_NUMBER","TO_SECONDS","TO_TIMESTAMP","TRIM","TRUNC","TRUNCATE","UCASE","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","VALUES","VARIANCE","VAR_POP","VAR_SAMP","VECTOR_SUB","VERSION","WEEK","WEEKDAY","WEEKOFYEAR","YEAR"],fA=G(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),hA=G(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [IGNORE] [INTO]","VALUES","REPLACE [INTO]","ON DUPLICATE KEY UPDATE","SET","CREATE [OR REPLACE] [TEMPORARY] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] [EXTERNAL] FUNCTION"]),Dr=G(["CREATE [ROWSTORE] [REFERENCE | TEMPORARY | GLOBAL TEMPORARY] TABLE [IF NOT EXISTS]"]),cE=G(["CREATE VIEW","UPDATE","DELETE [FROM]","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] TABLE","ADD [COLUMN]","ADD [UNIQUE] {INDEX | KEY}","DROP [COLUMN]","MODIFY [COLUMN]","CHANGE","RENAME [TO | AS]","TRUNCATE [TABLE]","ADD AGGREGATOR","ADD LEAF","AGGREGATOR SET AS MASTER","ALTER DATABASE","ALTER PIPELINE","ALTER RESOURCE POOL","ALTER USER","ALTER VIEW","ANALYZE TABLE","ATTACH DATABASE","ATTACH LEAF","ATTACH LEAF ALL","BACKUP DATABASE","BINLOG","BOOTSTRAP AGGREGATOR","CACHE INDEX","CALL","CHANGE","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK BLOB CHECKSUM","CHECK TABLE","CHECKSUM TABLE","CLEAR ORPHAN DATABASES","CLONE","COMMIT","CREATE DATABASE","CREATE GROUP","CREATE INDEX","CREATE LINK","CREATE MILESTONE","CREATE PIPELINE","CREATE RESOURCE POOL","CREATE ROLE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DETACH DATABASE","DETACH PIPELINE","DROP DATABASE","DROP FUNCTION","DROP INDEX","DROP LINK","DROP PIPELINE","DROP PROCEDURE","DROP RESOURCE POOL","DROP ROLE","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","FORCE","GRANT","HANDLER","HELP","KILL CONNECTION","KILLALL QUERIES","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","REBALANCE PARTITIONS","RELEASE SAVEPOINT","REMOVE AGGREGATOR","REMOVE LEAF","REPAIR TABLE","REPLACE","REPLICATE DATABASE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","RESTORE DATABASE","RESTORE REDUNDANCY","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE FUNCTION","SHOW CREATE PIPELINE","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SNAPSHOT DATABASE","SOURCE_POS_WAIT","START GROUP_REPLICATION","START PIPELINE","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP PIPELINE","STOP REPLICA","STOP REPLICATING","STOP SLAVE","TEST PIPELINE","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),MA=G(["UNION [ALL | DISTINCT]","EXCEPT","INTERSECT","MINUS"]),UA=G(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),mA=G(["ON DELETE","ON UPDATE","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),BA=G([]),gA={name:"singlestoredb",tokenizerOptions:{reservedSelect:fA,reservedClauses:[...hA,...Dr,...cE],reservedSetOperations:MA,reservedJoins:UA,reservedKeywordPhrases:mA,reservedDataTypePhrases:BA,reservedKeywords:pA,reservedDataTypes:dA,reservedFunctionNames:PA,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_$]+"},{quote:"``",prefixes:["@"],requirePrefix:!0}],lineCommentTypes:["--","#"],operators:[":=","&","|","^","~","<<",">>","<=>","&&","||","::","::$","::%",":>","!:>","*.*"],postProcess:vt},formatOptions:{alwaysDenseOperators:["::","::$","::%"],onelineClauses:[...Dr,...cE],tabularOnelineClauses:cE}},yA=["ABS","ACOS","ACOSH","ADD_MONTHS","ALL_USER_NAMES","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","APPROX_PERCENTILE_ACCUMULATE","APPROX_PERCENTILE_COMBINE","APPROX_PERCENTILE_ESTIMATE","APPROX_TOP_K","APPROX_TOP_K_ACCUMULATE","APPROX_TOP_K_COMBINE","APPROX_TOP_K_ESTIMATE","APPROXIMATE_JACCARD_INDEX","APPROXIMATE_SIMILARITY","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_COMPACT","ARRAY_CONSTRUCT","ARRAY_CONSTRUCT_COMPACT","ARRAY_CONTAINS","ARRAY_INSERT","ARRAY_INTERSECTION","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_SIZE","ARRAY_SLICE","ARRAY_TO_STRING","ARRAY_UNION_AGG","ARRAY_UNIQUE_AGG","ARRAYS_OVERLAP","AS_ARRAY","AS_BINARY","AS_BOOLEAN","AS_CHAR","AS_VARCHAR","AS_DATE","AS_DECIMAL","AS_NUMBER","AS_DOUBLE","AS_REAL","AS_INTEGER","AS_OBJECT","AS_TIME","AS_TIMESTAMP_LTZ","AS_TIMESTAMP_NTZ","AS_TIMESTAMP_TZ","ASCII","ASIN","ASINH","ATAN","ATAN2","ATANH","AUTO_REFRESH_REGISTRATION_HISTORY","AUTOMATIC_CLUSTERING_HISTORY","AVG","BASE64_DECODE_BINARY","BASE64_DECODE_STRING","BASE64_ENCODE","BIT_LENGTH","BITAND","BITAND_AGG","BITMAP_BIT_POSITION","BITMAP_BUCKET_NUMBER","BITMAP_CONSTRUCT_AGG","BITMAP_COUNT","BITMAP_OR_AGG","BITNOT","BITOR","BITOR_AGG","BITSHIFTLEFT","BITSHIFTRIGHT","BITXOR","BITXOR_AGG","BOOLAND","BOOLAND_AGG","BOOLNOT","BOOLOR","BOOLOR_AGG","BOOLXOR","BOOLXOR_AGG","BUILD_SCOPED_FILE_URL","BUILD_STAGE_FILE_URL","CASE","CAST","CBRT","CEIL","CHARINDEX","CHECK_JSON","CHECK_XML","CHR","CHAR","COALESCE","COLLATE","COLLATION","COMPLETE_TASK_GRAPHS","COMPRESS","CONCAT","CONCAT_WS","CONDITIONAL_CHANGE_EVENT","CONDITIONAL_TRUE_EVENT","CONTAINS","CONVERT_TIMEZONE","COPY_HISTORY","CORR","COS","COSH","COT","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CUME_DIST","CURRENT_ACCOUNT","CURRENT_AVAILABLE_ROLES","CURRENT_CLIENT","CURRENT_DATABASE","CURRENT_DATE","CURRENT_IP_ADDRESS","CURRENT_REGION","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_SECONDARY_ROLES","CURRENT_SESSION","CURRENT_STATEMENT","CURRENT_TASK_GRAPHS","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TRANSACTION","CURRENT_USER","CURRENT_VERSION","CURRENT_WAREHOUSE","DATA_TRANSFER_HISTORY","DATABASE_REFRESH_HISTORY","DATABASE_REFRESH_PROGRESS","DATABASE_REFRESH_PROGRESS_BY_JOB","DATABASE_STORAGE_USAGE_HISTORY","DATE_FROM_PARTS","DATE_PART","DATE_TRUNC","DATEADD","DATEDIFF","DAYNAME","DECODE","DECOMPRESS_BINARY","DECOMPRESS_STRING","DECRYPT","DECRYPT_RAW","DEGREES","DENSE_RANK","DIV0","EDITDISTANCE","ENCRYPT","ENCRYPT_RAW","ENDSWITH","EQUAL_NULL","EXP","EXPLAIN_JSON","EXTERNAL_FUNCTIONS_HISTORY","EXTERNAL_TABLE_FILES","EXTERNAL_TABLE_FILE_REGISTRATION_HISTORY","EXTRACT","EXTRACT_SEMANTIC_CATEGORIES","FACTORIAL","FILTER","FIRST_VALUE","FLATTEN","FLOOR","GENERATE_COLUMN_DESCRIPTION","GENERATOR","GET","GET_ABSOLUTE_PATH","GET_DDL","GET_IGNORE_CASE","GET_OBJECT_REFERENCES","GET_PATH","GET_PRESIGNED_URL","GET_RELATIVE_PATH","GET_STAGE_LOCATION","GETBIT","GREATEST","GREATEST_IGNORE_NULLS","GROUPING","GROUPING_ID","HASH","HASH_AGG","HAVERSINE","HEX_DECODE_BINARY","HEX_DECODE_STRING","HEX_ENCODE","HLL","HLL_ACCUMULATE","HLL_COMBINE","HLL_ESTIMATE","HLL_EXPORT","HLL_IMPORT","HOUR","MINUTE","SECOND","IDENTIFIER","IFF","IFNULL","ILIKE","ILIKE ANY","INFER_SCHEMA","INITCAP","INSERT","INVOKER_ROLE","INVOKER_SHARE","IS_ARRAY","IS_BINARY","IS_BOOLEAN","IS_CHAR","IS_VARCHAR","IS_DATE","IS_DATE_VALUE","IS_DECIMAL","IS_DOUBLE","IS_REAL","IS_GRANTED_TO_INVOKER_ROLE","IS_INTEGER","IS_NULL_VALUE","IS_OBJECT","IS_ROLE_IN_SESSION","IS_TIME","IS_TIMESTAMP_LTZ","IS_TIMESTAMP_NTZ","IS_TIMESTAMP_TZ","JAROWINKLER_SIMILARITY","JSON_EXTRACT_PATH_TEXT","KURTOSIS","LAG","LAST_DAY","LAST_QUERY_ID","LAST_TRANSACTION","LAST_VALUE","LEAD","LEAST","LEFT","LENGTH","LEN","LIKE","LIKE ALL","LIKE ANY","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOGIN_HISTORY","LOGIN_HISTORY_BY_USER","LOWER","LPAD","LTRIM","MATERIALIZED_VIEW_REFRESH_HISTORY","MD5","MD5_HEX","MD5_BINARY","MD5_NUMBER — Obsoleted","MD5_NUMBER_LOWER64","MD5_NUMBER_UPPER64","MEDIAN","MIN","MAX","MINHASH","MINHASH_COMBINE","MOD","MODE","MONTHNAME","MONTHS_BETWEEN","NEXT_DAY","NORMAL","NTH_VALUE","NTILE","NULLIF","NULLIFZERO","NVL","NVL2","OBJECT_AGG","OBJECT_CONSTRUCT","OBJECT_CONSTRUCT_KEEP_NULL","OBJECT_DELETE","OBJECT_INSERT","OBJECT_KEYS","OBJECT_PICK","OCTET_LENGTH","PARSE_IP","PARSE_JSON","PARSE_URL","PARSE_XML","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIPE_USAGE_HISTORY","POLICY_CONTEXT","POLICY_REFERENCES","POSITION","POW","POWER","PREVIOUS_DAY","QUERY_ACCELERATION_HISTORY","QUERY_HISTORY","QUERY_HISTORY_BY_SESSION","QUERY_HISTORY_BY_USER","QUERY_HISTORY_BY_WAREHOUSE","RADIANS","RANDOM","RANDSTR","RANK","RATIO_TO_REPORT","REGEXP","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","REGEXP_SUBSTR_ALL","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REGR_VALX","REGR_VALY","REPEAT","REPLACE","REPLICATION_GROUP_REFRESH_HISTORY","REPLICATION_GROUP_REFRESH_PROGRESS","REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB","REPLICATION_GROUP_USAGE_HISTORY","REPLICATION_USAGE_HISTORY","REST_EVENT_HISTORY","RESULT_SCAN","REVERSE","RIGHT","RLIKE","ROUND","ROW_NUMBER","RPAD","RTRIM","RTRIMMED_LENGTH","SEARCH_OPTIMIZATION_HISTORY","SEQ1","SEQ2","SEQ4","SEQ8","SERVERLESS_TASK_HISTORY","SHA1","SHA1_HEX","SHA1_BINARY","SHA2","SHA2_HEX","SHA2_BINARY","SIGN","SIN","SINH","SKEW","SOUNDEX","SPACE","SPLIT","SPLIT_PART","SPLIT_TO_TABLE","SQRT","SQUARE","ST_AREA","ST_ASEWKB","ST_ASEWKT","ST_ASGEOJSON","ST_ASWKB","ST_ASBINARY","ST_ASWKT","ST_ASTEXT","ST_AZIMUTH","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DWITHIN","ST_ENDPOINT","ST_ENVELOPE","ST_GEOGFROMGEOHASH","ST_GEOGPOINTFROMGEOHASH","ST_GEOGRAPHYFROMWKB","ST_GEOGRAPHYFROMWKT","ST_GEOHASH","ST_GEOMETRYFROMWKB","ST_GEOMETRYFROMWKT","ST_HAUSDORFFDISTANCE","ST_INTERSECTION","ST_INTERSECTS","ST_LENGTH","ST_MAKEGEOMPOINT","ST_GEOM_POINT","ST_MAKELINE","ST_MAKEPOINT","ST_POINT","ST_MAKEPOLYGON","ST_POLYGON","ST_NPOINTS","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SETSRID","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","STAGE_DIRECTORY_FILE_REGISTRATION_HISTORY","STAGE_STORAGE_USAGE_HISTORY","STARTSWITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRIP_NULL_VALUE","STRTOK","STRTOK_SPLIT_TO_TABLE","STRTOK_TO_ARRAY","SUBSTR","SUBSTRING","SUM","SYSDATE","SYSTEM$ABORT_SESSION","SYSTEM$ABORT_TRANSACTION","SYSTEM$AUTHORIZE_PRIVATELINK","SYSTEM$AUTHORIZE_STAGE_PRIVATELINK_ACCESS","SYSTEM$BEHAVIOR_CHANGE_BUNDLE_STATUS","SYSTEM$CANCEL_ALL_QUERIES","SYSTEM$CANCEL_QUERY","SYSTEM$CLUSTERING_DEPTH","SYSTEM$CLUSTERING_INFORMATION","SYSTEM$CLUSTERING_RATIO ","SYSTEM$CURRENT_USER_TASK_NAME","SYSTEM$DATABASE_REFRESH_HISTORY ","SYSTEM$DATABASE_REFRESH_PROGRESS","SYSTEM$DATABASE_REFRESH_PROGRESS_BY_JOB ","SYSTEM$DISABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$DISABLE_DATABASE_REPLICATION","SYSTEM$ENABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$ESTIMATE_QUERY_ACCELERATION","SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS","SYSTEM$EXPLAIN_JSON_TO_TEXT","SYSTEM$EXPLAIN_PLAN_JSON","SYSTEM$EXTERNAL_TABLE_PIPE_STATUS","SYSTEM$GENERATE_SAML_CSR","SYSTEM$GENERATE_SCIM_ACCESS_TOKEN","SYSTEM$GET_AWS_SNS_IAM_POLICY","SYSTEM$GET_PREDECESSOR_RETURN_VALUE","SYSTEM$GET_PRIVATELINK","SYSTEM$GET_PRIVATELINK_AUTHORIZED_ENDPOINTS","SYSTEM$GET_PRIVATELINK_CONFIG","SYSTEM$GET_SNOWFLAKE_PLATFORM_INFO","SYSTEM$GET_TAG","SYSTEM$GET_TAG_ALLOWED_VALUES","SYSTEM$GET_TAG_ON_CURRENT_COLUMN","SYSTEM$GET_TAG_ON_CURRENT_TABLE","SYSTEM$GLOBAL_ACCOUNT_SET_PARAMETER","SYSTEM$LAST_CHANGE_COMMIT_TIME","SYSTEM$LINK_ACCOUNT_OBJECTS_BY_NAME","SYSTEM$MIGRATE_SAML_IDP_REGISTRATION","SYSTEM$PIPE_FORCE_RESUME","SYSTEM$PIPE_STATUS","SYSTEM$REVOKE_PRIVATELINK","SYSTEM$REVOKE_STAGE_PRIVATELINK_ACCESS","SYSTEM$SET_RETURN_VALUE","SYSTEM$SHOW_OAUTH_CLIENT_SECRETS","SYSTEM$STREAM_GET_TABLE_TIMESTAMP","SYSTEM$STREAM_HAS_DATA","SYSTEM$TASK_DEPENDENTS_ENABLE","SYSTEM$TYPEOF","SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS","SYSTEM$VERIFY_EXTERNAL_OAUTH_TOKEN","SYSTEM$WAIT","SYSTEM$WHITELIST","SYSTEM$WHITELIST_PRIVATELINK","TAG_REFERENCES","TAG_REFERENCES_ALL_COLUMNS","TAG_REFERENCES_WITH_LINEAGE","TAN","TANH","TASK_DEPENDENTS","TASK_HISTORY","TIME_FROM_PARTS","TIME_SLICE","TIMEADD","TIMEDIFF","TIMESTAMP_FROM_PARTS","TIMESTAMPADD","TIMESTAMPDIFF","TO_ARRAY","TO_BINARY","TO_BOOLEAN","TO_CHAR","TO_VARCHAR","TO_DATE","DATE","TO_DECIMAL","TO_NUMBER","TO_NUMERIC","TO_DOUBLE","TO_GEOGRAPHY","TO_GEOMETRY","TO_JSON","TO_OBJECT","TO_TIME","TIME","TO_TIMESTAMP","TO_TIMESTAMP_LTZ","TO_TIMESTAMP_NTZ","TO_TIMESTAMP_TZ","TO_VARIANT","TO_XML","TRANSLATE","TRIM","TRUNCATE","TRUNC","TRUNC","TRY_BASE64_DECODE_BINARY","TRY_BASE64_DECODE_STRING","TRY_CAST","TRY_HEX_DECODE_BINARY","TRY_HEX_DECODE_STRING","TRY_PARSE_JSON","TRY_TO_BINARY","TRY_TO_BOOLEAN","TRY_TO_DATE","TRY_TO_DECIMAL","TRY_TO_NUMBER","TRY_TO_NUMERIC","TRY_TO_DOUBLE","TRY_TO_GEOGRAPHY","TRY_TO_GEOMETRY","TRY_TO_TIME","TRY_TO_TIMESTAMP","TRY_TO_TIMESTAMP_LTZ","TRY_TO_TIMESTAMP_NTZ","TRY_TO_TIMESTAMP_TZ","TYPEOF","UNICODE","UNIFORM","UPPER","UUID_STRING","VALIDATE","VALIDATE_PIPE_LOAD","VAR_POP","VAR_SAMP","VARIANCE","VARIANCE_SAMP","VARIANCE_POP","WAREHOUSE_LOAD_HISTORY","WAREHOUSE_METERING_HISTORY","WIDTH_BUCKET","XMLGET","YEAR","YEAROFWEEK","YEAROFWEEKISO","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFWEEKISO","DAYOFYEAR","WEEK","WEEK","WEEKOFYEAR","WEEKISO","MONTH","QUARTER","ZEROIFNULL","ZIPF"],GA=["ACCOUNT","ALL","ALTER","AND","ANY","AS","BETWEEN","BY","CASE","CAST","CHECK","COLUMN","CONNECT","CONNECTION","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATABASE","DELETE","DISTINCT","DROP","ELSE","EXISTS","FALSE","FOLLOWING","FOR","FROM","FULL","GRANT","GROUP","GSCLUSTER","HAVING","ILIKE","IN","INCREMENT","INNER","INSERT","INTERSECT","INTO","IS","ISSUE","JOIN","LATERAL","LEFT","LIKE","LOCALTIME","LOCALTIMESTAMP","MINUS","NATURAL","NOT","NULL","OF","ON","OR","ORDER","ORGANIZATION","QUALIFY","REGEXP","REVOKE","RIGHT","RLIKE","ROW","ROWS","SAMPLE","SCHEMA","SELECT","SET","SOME","START","TABLE","TABLESAMPLE","THEN","TO","TRIGGER","TRUE","TRY_CAST","UNION","UNIQUE","UPDATE","USING","VALUES","VIEW","WHEN","WHENEVER","WHERE","WITH","COMMENT"],FA=["NUMBER","DECIMAL","NUMERIC","INT","INTEGER","BIGINT","SMALLINT","TINYINT","BYTEINT","FLOAT","FLOAT4","FLOAT8","DOUBLE","DOUBLE PRECISION","REAL","VARCHAR","CHAR","CHARACTER","STRING","TEXT","BINARY","VARBINARY","BOOLEAN","DATE","DATETIME","TIME","TIMESTAMP","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TIMESTAMP_TZ","VARIANT","OBJECT","ARRAY","GEOGRAPHY","GEOMETRY"],HA=G(["SELECT [ALL | DISTINCT]"]),bA=G(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","QUALIFY","LIMIT","OFFSET","FETCH [FIRST | NEXT]","INSERT [OVERWRITE] [ALL INTO | INTO | ALL | FIRST]","{THEN | ELSE} INTO","VALUES","SET","CLUSTER BY","[WITH] {MASKING POLICY | TAG | ROW ACCESS POLICY}","COPY GRANTS","USING TEMPLATE","MERGE INTO","WHEN MATCHED [AND]","THEN {UPDATE SET | DELETE}","WHEN NOT MATCHED THEN INSERT"]),pr=G(["CREATE [OR REPLACE] [VOLATILE] TABLE [IF NOT EXISTS]","CREATE [OR REPLACE] [LOCAL | GLOBAL] {TEMP|TEMPORARY} TABLE [IF NOT EXISTS]"]),_E=G(["CREATE [OR REPLACE] [SECURE] [RECURSIVE] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","RENAME TO","SWAP WITH","[SUSPEND | RESUME] RECLUSTER","DROP CLUSTERING KEY","ADD [COLUMN]","RENAME COLUMN","{ALTER | MODIFY} [COLUMN]","DROP [COLUMN]","{ADD | ALTER | MODIFY | DROP} [CONSTRAINT]","RENAME CONSTRAINT","{ADD | DROP} SEARCH OPTIMIZATION","{SET | UNSET} TAG","{ADD | DROP} ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","SET DATA TYPE","UNSET COMMENT","{SET | UNSET} MASKING POLICY","TRUNCATE [TABLE] [IF EXISTS]","ALTER ACCOUNT","ALTER API INTEGRATION","ALTER CONNECTION","ALTER DATABASE","ALTER EXTERNAL TABLE","ALTER FAILOVER GROUP","ALTER FILE FORMAT","ALTER FUNCTION","ALTER INTEGRATION","ALTER MASKING POLICY","ALTER MATERIALIZED VIEW","ALTER NETWORK POLICY","ALTER NOTIFICATION INTEGRATION","ALTER PIPE","ALTER PROCEDURE","ALTER REPLICATION GROUP","ALTER RESOURCE MONITOR","ALTER ROLE","ALTER ROW ACCESS POLICY","ALTER SCHEMA","ALTER SECURITY INTEGRATION","ALTER SEQUENCE","ALTER SESSION","ALTER SESSION POLICY","ALTER SHARE","ALTER STAGE","ALTER STORAGE INTEGRATION","ALTER STREAM","ALTER TAG","ALTER TASK","ALTER USER","ALTER VIEW","ALTER WAREHOUSE","BEGIN","CALL","COMMIT","COPY INTO","CREATE ACCOUNT","CREATE API INTEGRATION","CREATE CONNECTION","CREATE DATABASE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL TABLE","CREATE FAILOVER GROUP","CREATE FILE FORMAT","CREATE FUNCTION","CREATE INTEGRATION","CREATE MANAGED ACCOUNT","CREATE MASKING POLICY","CREATE MATERIALIZED VIEW","CREATE NETWORK POLICY","CREATE NOTIFICATION INTEGRATION","CREATE PIPE","CREATE PROCEDURE","CREATE REPLICATION GROUP","CREATE RESOURCE MONITOR","CREATE ROLE","CREATE ROW ACCESS POLICY","CREATE SCHEMA","CREATE SECURITY INTEGRATION","CREATE SEQUENCE","CREATE SESSION POLICY","CREATE SHARE","CREATE STAGE","CREATE STORAGE INTEGRATION","CREATE STREAM","CREATE TAG","CREATE TASK","CREATE USER","CREATE WAREHOUSE","DELETE","DESCRIBE DATABASE","DESCRIBE EXTERNAL TABLE","DESCRIBE FILE FORMAT","DESCRIBE FUNCTION","DESCRIBE INTEGRATION","DESCRIBE MASKING POLICY","DESCRIBE MATERIALIZED VIEW","DESCRIBE NETWORK POLICY","DESCRIBE PIPE","DESCRIBE PROCEDURE","DESCRIBE RESULT","DESCRIBE ROW ACCESS POLICY","DESCRIBE SCHEMA","DESCRIBE SEQUENCE","DESCRIBE SESSION POLICY","DESCRIBE SHARE","DESCRIBE STAGE","DESCRIBE STREAM","DESCRIBE TABLE","DESCRIBE TASK","DESCRIBE TRANSACTION","DESCRIBE USER","DESCRIBE VIEW","DESCRIBE WAREHOUSE","DROP CONNECTION","DROP DATABASE","DROP EXTERNAL TABLE","DROP FAILOVER GROUP","DROP FILE FORMAT","DROP FUNCTION","DROP INTEGRATION","DROP MANAGED ACCOUNT","DROP MASKING POLICY","DROP MATERIALIZED VIEW","DROP NETWORK POLICY","DROP PIPE","DROP PROCEDURE","DROP REPLICATION GROUP","DROP RESOURCE MONITOR","DROP ROLE","DROP ROW ACCESS POLICY","DROP SCHEMA","DROP SEQUENCE","DROP SESSION POLICY","DROP SHARE","DROP STAGE","DROP STREAM","DROP TAG","DROP TASK","DROP USER","DROP VIEW","DROP WAREHOUSE","EXECUTE IMMEDIATE","EXECUTE TASK","EXPLAIN","GET","GRANT OWNERSHIP","GRANT ROLE","INSERT","LIST","MERGE","PUT","REMOVE","REVOKE ROLE","ROLLBACK","SHOW COLUMNS","SHOW CONNECTIONS","SHOW DATABASES","SHOW DATABASES IN FAILOVER GROUP","SHOW DATABASES IN REPLICATION GROUP","SHOW DELEGATED AUTHORIZATIONS","SHOW EXTERNAL FUNCTIONS","SHOW EXTERNAL TABLES","SHOW FAILOVER GROUPS","SHOW FILE FORMATS","SHOW FUNCTIONS","SHOW GLOBAL ACCOUNTS","SHOW GRANTS","SHOW INTEGRATIONS","SHOW LOCKS","SHOW MANAGED ACCOUNTS","SHOW MASKING POLICIES","SHOW MATERIALIZED VIEWS","SHOW NETWORK POLICIES","SHOW OBJECTS","SHOW ORGANIZATION ACCOUNTS","SHOW PARAMETERS","SHOW PIPES","SHOW PRIMARY KEYS","SHOW PROCEDURES","SHOW REGIONS","SHOW REPLICATION ACCOUNTS","SHOW REPLICATION DATABASES","SHOW REPLICATION GROUPS","SHOW RESOURCE MONITORS","SHOW ROLES","SHOW ROW ACCESS POLICIES","SHOW SCHEMAS","SHOW SEQUENCES","SHOW SESSION POLICIES","SHOW SHARES","SHOW SHARES IN FAILOVER GROUP","SHOW SHARES IN REPLICATION GROUP","SHOW STAGES","SHOW STREAMS","SHOW TABLES","SHOW TAGS","SHOW TASKS","SHOW TRANSACTIONS","SHOW USER FUNCTIONS","SHOW USERS","SHOW VARIABLES","SHOW VIEWS","SHOW WAREHOUSES","TRUNCATE MATERIALIZED VIEW","UNDROP DATABASE","UNDROP SCHEMA","UNDROP TABLE","UNDROP TAG","UNSET","USE DATABASE","USE ROLE","USE SCHEMA","USE SECONDARY ROLES","USE WAREHOUSE"]),xA=G(["UNION [ALL]","MINUS","EXCEPT","INTERSECT"]),YA=G(["[INNER] JOIN","[NATURAL] {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | NATURAL} JOIN"]),VA=G(["{ROWS | RANGE} BETWEEN","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]"]),vA=G([]),wA={name:"snowflake",tokenizerOptions:{reservedSelect:HA,reservedClauses:[...bA,...pr,..._E],reservedSetOperations:xA,reservedJoins:YA,reservedKeywordPhrases:VA,reservedDataTypePhrases:vA,reservedKeywords:GA,reservedDataTypes:FA,reservedFunctionNames:yA,stringTypes:["$$","''-qq-bs"],identTypes:['""-qq'],variableTypes:[{regex:"[$][1-9]\\d*"},{regex:"[$][_a-zA-Z][_a-zA-Z0-9$]*"}],extraParens:["[]"],identChars:{rest:"$"},lineCommentTypes:["--","//"],operators:["%","::","||","=>",":=","->"],propertyAccessOperators:[":"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...pr,..._E],tabularOnelineClauses:_E}},WA=Object.freeze(Object.defineProperty({__proto__:null,bigquery:oo,clickhouse:_o,db2:go,db2i:wo,duckdb:jo,hive:aa,mariadb:Ca,mysql:Ma,n1ql:qa,plsql:ni,postgresql:Oi,redshift:Pi,singlestoredb:gA,snowflake:wA,spark:Fi,sql:EA,sqlite:ki,tidb:xa,transactsql:DA,trino:SA},Symbol.toStringTag,{value:"Module"})),yt=E=>E[E.length-1],dr=E=>E.sort((t,r)=>r.length-t.length||t.localeCompare(r)),wt=E=>E.replace(/\s+/gu," "),LE=E=>/\n/.test(E),Et=E=>E.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),Pr=/\s+/uy,Dt=E=>new RegExp(`(?:${E})`,"uy"),XA=E=>E.split("").map(t=>/ /gu.test(t)?"\\s+":`[${t.toUpperCase()}${t.toLowerCase()}]`).join(""),KA=E=>E+"(?:-"+E+")*",kA=({prefixes:E,requirePrefix:t})=>`(?:${E.map(XA).join("|")}${t?"":"|"})`,$A=E=>new RegExp(`(?:${E.map(Et).join("|")}).*?(?=\r
|
|
22
|
+
`:"";let C=t.selfClosingTags,I=t.selfClosingOccurrences,i=t.selfClosingCounters;n===0&&t.originalXml&&(I=zE(t.originalXml),i=new Map);let O="";for(const u of E){if(u["?xml"]){const X=u[":@"]||{},L=Object.entries(X).map(([k,g])=>`${k.startsWith("@_")?k.substring(2):k}="${g}"`).join(" ");O+=`<?xml ${L}?>${A}`;continue}if(u["#comment"]){const X=u["#comment"];if(Array.isArray(X)&&X.length>0){const L=X[0]["#text"]||X[0];O+=`${a}<!--${L}-->${A}`}continue}const d=Object.keys(u).find(X=>!X.startsWith(":")&&!X.startsWith("#")&&!X.startsWith("__"));if(!d)continue;let U=0;I&&i&&(U=i.get(d)??0,i.set(d,U+1));const M=u[d],w=u[":@"]||{},P=Object.entries(w).map(([X,L])=>`${X.startsWith("@_")?X.substring(2):X}="${L}"`).join(" "),J=P?" "+P:"";if(!Array.isArray(M)||M.length===0){let X;I?X=I.get(d)?.[U]??!1:X=!!(C&&C.has(d)),X?O+=`${a}<${d}${J}/>${A}`:O+=`${a}<${d}${J}></${d}>${A}`;continue}const Z=M.length===1&&M[0]["#text"]!==void 0,z=Z?M[0]["#text"]:"",De=M.some(X=>X.__cdata),Ce=Z&&z==="";if(De){const X=M.find(L=>L.__cdata);if(X){const L=X.__cdata[0]["#text"]||"";O+=`${a}<${d}${J}><![CDATA[${L}]]></${d}>${A}`}}else Ce?O+=`${a}<${d}${J}></${d}>${A}`:Z?O+=`${a}<${d}${J}>${z}</${d}>${A}`:(O+=`${a}<${d}${J}>${A}`,O+=it(M,{indent:r,level:n+1,format:s,selfClosingTags:C,selfClosingOccurrences:I,selfClosingCounters:i}),O+=`${a}</${d}>${A}`)}return O},bT={class:"xml-format__content"},xT={key:0,class:"xml-format__error"},YT={key:1,class:"xml-format__error"},VT={key:2,class:"xml-format__viewer"},vT=Pt(T.defineComponent({__name:"index",props:{modelValue:{default:""},readonly:{type:Boolean,default:!1},maxDepth:{default:10},theme:{default:"github-light"},showComments:{type:Boolean,default:!0},showCdata:{type:Boolean,default:!0},preserveWhitespace:{type:Boolean,default:!1}},emits:["update:modelValue","copy-success","copy-error","expand-all","collapse-all","compress","format"],setup(E,{expose:t,emit:r}){T.useCssVars(q=>({"56635be8":J.value.colors.background,"106ac08b":J.value.colors.text,"07c07b2c":J.value.colors.error,"821d1190":J.value.colors.errorBackground}));const n=E,s=r,a=T.ref(null),A=T.ref(""),C=T.ref(new Set),I=T.ref(null),i=T.ref(""),O=T.ref(""),u=T.ref(new Set),d=T.ref(!1),U=T.computed(()=>A.value===""),M=q=>{if(!q||typeof q!="object")return q;if(Array.isArray(q)){const m=q.map(Ee=>M(Ee)),B=[],b=[];m.forEach((Ee,Re)=>{if(!Ee||typeof Ee!="object"){b.push({item:Ee,originalIndex:Re});return}const Le=Object.keys(Ee),ue=Le.find(v=>!v.startsWith("?")&&!v.startsWith(":")&&!v.startsWith("#")&&!v.startsWith("__"))||Le[0]||"";ue.startsWith("#")||ue.startsWith("__")?b.push({item:Ee,originalIndex:Re}):ue.startsWith("?")?b.push({item:Ee,originalIndex:Re}):B.push({item:Ee,originalIndex:Re})}),B.sort((Ee,Re)=>{const Le=fe=>{const c=Object.keys(fe);for(const re of c)if(!re.startsWith("?")&&!re.startsWith(":")&&!re.startsWith("#")&&!re.startsWith("__"))return re;return c[0]||""},ue=Le(Ee.item),v=Le(Re.item);return ue.localeCompare(v)});const H=[];let te=0;for(let Ee=0;Ee<m.length;Ee++){const Re=b.find(Le=>Le.originalIndex===Ee);Re?H.push(Re.item):te<B.length&&(H.push(B[te].item),te++)}return H}const p={},h=Object.keys(q).sort((m,B)=>{const b=m.startsWith("?")||m.startsWith(":")||m.startsWith("#")||m.startsWith("__"),H=B.startsWith("?")||B.startsWith(":")||B.startsWith("#")||B.startsWith("__"),te={"?xml":0,":@":1,"#text":2,__cdata:3,"#cdata":3,"#comment":4};if(b&&H){const Ee=te[m]??99,Re=te[B]??99;return Ee-Re}else return b?-1:H?1:m.localeCompare(B)});for(const m of h){const B=q[m];if(m===":@"&&B&&typeof B=="object"&&!Array.isArray(B)){const b={},H=Object.keys(B).sort();for(const te of H)b[te]=B[te];p[m]=b}else p[m]=M(B)}return p},w=T.computed(()=>{const q=I.value!==null?I.value:a.value;return!q||!d.value?q:M(q)}),P=T.computed(()=>i.value?null:w.value),J=T.computed(()=>Bs(n.theme)),Z=T.computed(()=>{const q=P.value;return!q||!Array.isArray(q)?[]:q.map((p,h)=>({node:p,originalIndex:h})).filter(p=>!p.node["?xml"])}),z=T.computed(()=>{const q=P.value;if(!q||!Array.isArray(q))return null;const p=q.find(B=>B["?xml"]);if(!p||!p[":@"])return null;const h=p[":@"],m=[];return h["@_version"]&&m.push(`version="${h["@_version"]}"`),h["@_encoding"]&&m.push(`encoding="${h["@_encoding"]}"`),h["@_standalone"]&&m.push(`standalone="${h["@_standalone"]}"`),m.length>0?`<?xml ${m.join(" ")}?>`:null}),De=T.computed(()=>Z.value),Ce=q=>{if(!q||!q.trim()){A.value="",a.value=null,O.value="",I.value=null,i.value="";return}try{const p=gT(q);if(!p.valid){A.value=p.error||"Invalid XML",a.value=null,O.value="",u.value=new Set;return}O.value=q,u.value=HT(q),a.value=zt(q),Array.isArray(a.value)&&FT(a.value,q),A.value="",I.value=null,i.value="",T.nextTick(()=>{L()})}catch(p){A.value=p instanceof Error?p.message:"Unknown parse error",a.value=null,O.value="",I.value=null,i.value=""}},X=q=>{C.value.has(q)?C.value.delete(q):C.value.add(q)},L=()=>{const q=new Set,p=(h,m="")=>{Array.isArray(h)&&h.forEach((B,b)=>{const H=Object.keys(B).find(Re=>!Re.startsWith(":")&&!Re.startsWith("#"));if(!H)return;const te=m?`${m}.${H}[${b}]`:`${H}[${b}]`;q.add(te);const Ee=B[H];Array.isArray(Ee)&&p(Ee,te+"."+H)})};Z.value.forEach(({node:h,originalIndex:m})=>{const B=Object.keys(h).find(b=>!b.startsWith(":")&&!b.startsWith("#"));if(B){const b=`${B}[${m}]`;q.add(b);const H=h[B];Array.isArray(H)&&p(H,b+"."+B)}}),C.value=q,s("expand-all")},k=()=>{C.value.clear(),s("collapse-all")},g=async()=>{if(U.value)try{const q=P.value||a.value;if(!q)return;const p=Array.isArray(q)?it(q,{indent:" ",originalXml:O.value||void 0}):eE(q,{format:!0,indentBy:" "});await navigator.clipboard.writeText(p),s("copy-success",p)}catch(q){const p=q instanceof Error?q:new Error("Copy failed");s("copy-error",p),console.error("Failed to copy XML:",q)}},x=()=>{if(!(!U.value||!a.value))try{const q=yT(a.value,n.modelValue);s("update:modelValue",q),s("compress",q)}catch(q){console.error("Failed to compress XML:",q)}},ne=()=>{if(U.value)try{const q=GT(n.modelValue,{format:!0,indentBy:" "});s("update:modelValue",q),s("format",q)}catch(q){console.error("Failed to format XML:",q)}},ee=q=>{if(!q||!q.expression.trim()){Q();return}if(!a.value||!O.value){i.value="No valid XML data to filter";return}try{const h=new YE.DOMParser().parseFromString(O.value,"text/xml"),m=Vn.select(q.expression,h);if(!m||Array.isArray(m)&&m.length===0){I.value=[],i.value="";return}const B=new YE.XMLSerializer;let b="";Array.isArray(m)?(b=`<result>
|
|
23
|
+
`,m.forEach(H=>{H.nodeType===1?b+=" "+B.serializeToString(H)+`
|
|
24
|
+
`:H.nodeType===2?b+=` <attribute name="${H.name}" value="${H.value}"/>
|
|
25
|
+
`:H.nodeType===3&&(b+=` <text>${H.nodeValue}</text>
|
|
26
|
+
`)}),b+="</result>"):b=B.serializeToString(m),I.value=zt(b),i.value="",T.nextTick(()=>{L()})}catch(p){i.value=p instanceof Error?p.message:"Filter execution error",I.value=null}},Q=()=>{I.value=null,i.value="",T.nextTick(()=>{L()})},Oe=()=>{d.value=!0,T.nextTick(()=>{L()})},ce=()=>{d.value=!1,T.nextTick(()=>{L()})},pe=q=>typeof q=="string"?q:JSON.stringify(q,null,2)??"undefined",Y=async q=>{try{const p=pe(q);await navigator.clipboard.writeText(p),s("copy-success",p)}catch(p){const h=p instanceof Error?p:new Error("Copy failed");s("copy-error",h),console.error("Failed to copy value:",p)}},j=(q,p,h)=>{if(!(!a.value||!Array.isArray(a.value)))try{const m=q.split(/\./).filter(Boolean);let B=a.value;for(let H=0;H<m.length;H++){const te=m[H],Ee=te.match(/^(.+?)\[(\d+)\]$/);if(Ee){const Re=Ee[1],Le=parseInt(Ee[2]);if(H===m.length-1){if(Array.isArray(B)&&B[Le]){const ue=B[Le];if(ue[p]){const v=ue[p];delete ue[p],ue[h]=v,u.value.has(p)&&(u.value.delete(p),u.value.add(h))}}}else Array.isArray(B)&&B[Le]&&(B=B[Le])}else B[te]&&(B=B[te])}const b=it(a.value,{indent:" ",originalXml:O.value||void 0});s("update:modelValue",b)}catch(m){console.error("Failed to update tag name:",m)}},le=(q,p,h)=>{if(!(!a.value||!Array.isArray(a.value)))try{const m=q.split(/\./).filter(Boolean);let B=a.value;for(let H=0;H<m.length;H++){const te=m[H],Ee=te.match(/^(.+?)\[(\d+)\]$/);if(Ee){const Re=Ee[1],Le=parseInt(Ee[2]);if(H===m.length-1){if(Array.isArray(B)&&B[Le]){const v=B[Le][":@"];if(v&&v[`@_${p}`]!==void 0){const fe=v[`@_${p}`];delete v[`@_${p}`],v[`@_${h}`]=fe}}}else Array.isArray(B)&&B[Le]&&(B=B[Le])}else B[te]&&(B=B[te])}const b=it(a.value,{indent:" ",originalXml:O.value||void 0});s("update:modelValue",b)}catch(m){console.error("Failed to update attribute name:",m)}},Ue=(q,p,h)=>{if(!(!a.value||!Array.isArray(a.value)))try{const m=q.split(/\./).filter(Boolean);let B=a.value;for(let H=0;H<m.length;H++){const te=m[H],Ee=te.match(/^(.+?)\[(\d+)\]$/);if(Ee){const Re=Ee[1],Le=parseInt(Ee[2]);if(H===m.length-1){if(Array.isArray(B)&&B[Le]){const v=B[Le][":@"];v&&v[`@_${p}`]!==void 0&&(v[`@_${p}`]=h)}}else Array.isArray(B)&&B[Le]&&(B=B[Le])}else B[te]&&(B=B[te])}const b=it(a.value,{indent:" ",originalXml:O.value||void 0});s("update:modelValue",b)}catch(m){console.error("Failed to update attribute value:",m)}},Te=(q,p)=>{if(!(!a.value||!Array.isArray(a.value)))try{const h=q.split(/\./).filter(Boolean);let m=a.value,B="";for(let H=0;H<h.length;H++){const te=h[H],Ee=te.match(/^(.+?)\[(\d+)\]$/);if(Ee){const Re=Ee[1],Le=parseInt(Ee[2]);if(H===h.length-1){if(Array.isArray(m)&&m[Le]){const ue=m[Le];if(B=Object.keys(ue).find(v=>!v.startsWith(":")&&!v.startsWith("#"))||"",B&&Array.isArray(ue[B])){const v=ue[B],fe=v.findIndex(c=>c["#text"]!==void 0);fe!==-1?v[fe]["#text"]=p:v.push({"#text":p})}}}else Array.isArray(m)&&m[Le]&&(m=m[Le])}else m[te]&&(m=m[te])}const b=it(a.value,{indent:" ",originalXml:O.value||void 0});s("update:modelValue",b)}catch(h){console.error("Failed to update text content:",h)}},he=(q,p)=>{if(!(!a.value||!Array.isArray(a.value)))try{const h=q.split(/\./).filter(Boolean);let m=a.value;for(let b=0;b<h.length;b++){const H=h[b],te=H.match(/^(.+?)\[(\d+)\]$/);if(te){const Ee=te[1],Re=parseInt(te[2]);if(b===h.length-1){if(Array.isArray(m)&&m[Re]){const Le=m[Re],ue=Object.keys(Le).find(v=>!v.startsWith(":")&&!v.startsWith("#"));if(ue&&Array.isArray(Le[ue])){const v=Le[ue],fe=v.findIndex(c=>c.__cdata!==void 0);if(fe!==-1){const c=v[fe];Array.isArray(c.__cdata)&&c.__cdata[0]&&(c.__cdata[0]["#text"]=p)}else v.push({__cdata:[{"#text":p}]})}}}else Array.isArray(m)&&m[Re]&&(m=m[Re])}else m[H]&&(m=m[H])}const B=it(a.value,{indent:" ",originalXml:O.value||void 0});s("update:modelValue",B)}catch(h){console.error("Failed to update CDATA content:",h)}};return T.watch(()=>n.modelValue,q=>{Ce(q)},{immediate:!0}),t({copyXml:g,compressSource:x,formatSource:ne,expandAll:L,collapseAll:k,toggleExpand:X,filter:ee,clearFilter:Q,sort:Oe,clearSort:ce,isSorted:()=>d.value,isValidXml:()=>U.value,getParsedXml:()=>a.value,getFilteredXml:()=>I.value,getExpandedNodes:()=>C.value,getParseError:()=>A.value,getFilterError:()=>i.value,parseXmlString:q=>Ce(q),copyValue:q=>Y(q),getValue:q=>pe(q)}),(q,p)=>(T.openBlock(),T.createElementBlock("div",{class:T.normalizeClass(["xml-format",`xml-format--${J.value.name}`])},[T.createElementVNode("div",bT,[U.value?i.value?(T.openBlock(),T.createElementBlock("div",YT,[p[1]||(p[1]=T.createElementVNode("h4",null,"Filter Error:",-1)),T.createElementVNode("pre",null,T.toDisplayString(i.value),1)])):(T.openBlock(),T.createElementBlock("div",VT,[z.value?(T.openBlock(),T.createElementBlock("div",{key:0,class:"xml-declaration",style:T.normalizeStyle({color:J.value.colors.xmlDeclaration})},T.toDisplayString(z.value),5)):T.createCommentVNode("",!0),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(De.value,(h,m)=>(T.openBlock(),T.createBlock(ms,{key:m,node:h.node,index:h.originalIndex,level:0,expanded:C.value,theme:J.value,selfClosingTags:u.value,onToggleExpand:X,onCopy:Y,"onUpdate:tagName":j,"onUpdate:attributeName":le,"onUpdate:attributeValue":Ue,"onUpdate:textContent":Te,"onUpdate:cdataContent":he},null,8,["node","index","expanded","theme","selfClosingTags"]))),128))])):(T.openBlock(),T.createElementBlock("div",xT,[p[0]||(p[0]=T.createElementVNode("h4",null,"XML Parse Error:",-1)),T.createElementVNode("pre",null,T.toDisplayString(A.value),1)]))])],2))}}),[["__scopeId","data-v-afd6c257"]]),er={"github-light":{name:"github-light",colors:{background:"#ffffff",surfaceBackground:"#f6f8fa",hoverBackground:"#f3f4f6",border:"#d0d7de",text:"#24292f",textSecondary:"#57606a",buttonBackground:"#f6f8fa",buttonBackgroundHover:"#f3f4f6",buttonBorder:"#d0d7de",buttonText:"#24292f",buttonPrimary:"#1f883d",buttonPrimaryHover:"#1a7f37",success:"#1f883d",successBackground:"#dafbe1",error:"#cf222e",errorBackground:"#ffebe9",sqlKeyword:"#cf222e",sqlFunction:"#8250df",sqlString:"#0a3069",sqlNumber:"#0550ae",sqlComment:"#6e7781",sqlOperator:"#cf222e",sqlIdentifier:"#24292f",sqlPunctuation:"#24292f",collapsedBackground:"#ddf4ff",collapsedText:"#0969da",indentLine:"#d0d7de"}},"github-dark":{name:"github-dark",colors:{background:"#0d1117",surfaceBackground:"#161b22",hoverBackground:"#30363d",border:"#30363d",text:"#c9d1d9",textSecondary:"#8b949e",buttonBackground:"#21262d",buttonBackgroundHover:"#30363d",buttonBorder:"#30363d",buttonText:"#c9d1d9",buttonPrimary:"#238636",buttonPrimaryHover:"#2ea043",success:"#3fb950",successBackground:"#0f2e1c",error:"#f85149",errorBackground:"#3d1319",sqlKeyword:"#ff7b72",sqlFunction:"#d2a8ff",sqlString:"#a5d6ff",sqlNumber:"#79c0ff",sqlComment:"#8b949e",sqlOperator:"#ff7b72",sqlIdentifier:"#c9d1d9",sqlPunctuation:"#c9d1d9",collapsedBackground:"#1c2d41",collapsedText:"#58a6ff",indentLine:"#30363d"}},"min-light":{name:"min-light",colors:{background:"#ffffff",surfaceBackground:"#fafafa",hoverBackground:"#f9f9f9",border:"#e5e5e5",text:"#333333",textSecondary:"#888888",buttonBackground:"#f8f8f8",buttonBackgroundHover:"#eeeeee",buttonBorder:"#e0e0e0",buttonText:"#333333",buttonPrimary:"#007acc",buttonPrimaryHover:"#005a9e",success:"#22c55e",successBackground:"#f0fdf4",error:"#ef4444",errorBackground:"#fef2f2",sqlKeyword:"#22c55e",sqlFunction:"#8b5cf6",sqlString:"#ef4444",sqlNumber:"#3b82f6",sqlComment:"#6b7280",sqlOperator:"#ef4444",sqlIdentifier:"#1f2937",sqlPunctuation:"#374151",collapsedBackground:"#e0f2fe",collapsedText:"#0284c7",indentLine:"#e5e7eb"}},"slack-ochin":{name:"slack-ochin",colors:{background:"#fef5ed",surfaceBackground:"#fef9f3",hoverBackground:"#f9f0e5",border:"#e9dcc9",text:"#3d3c40",textSecondary:"#616061",buttonBackground:"#fef9f3",buttonBackgroundHover:"#f9f0e5",buttonBorder:"#e9dcc9",buttonText:"#3d3c40",buttonPrimary:"#007a5a",buttonPrimaryHover:"#006644",success:"#007a5a",successBackground:"#d1f4e0",error:"#e01e5a",errorBackground:"#ffdbea",sqlKeyword:"#e01e5a",sqlFunction:"#8b2eff",sqlString:"#0b4c8c",sqlNumber:"#1264a3",sqlComment:"#616061",sqlOperator:"#e01e5a",sqlIdentifier:"#3d3c40",sqlPunctuation:"#3d3c40",collapsedBackground:"#d8eaf5",collapsedText:"#0b4c8c",indentLine:"#3e4348"}}},wT=E=>er[E]||er["github-light"],y=E=>E.flatMap(WT),WT=E=>Vt(KT(E)).map(XT),XT=E=>E.replace(/ +/g," ").trim(),KT=E=>({type:"mandatory_block",items:tE(E,0)[0]}),tE=(E,t,r)=>{const n=[];for(;E[t];){const[s,a]=kT(E,t);if(n.push(s),t=a,E[t]==="|")t++;else if(E[t]==="}"||E[t]==="]"){if(r!==E[t])throw new Error(`Unbalanced parenthesis in: ${E}`);return t++,[n,t]}else if(t===E.length){if(r)throw new Error(`Unbalanced parenthesis in: ${E}`);return[n,t]}else throw new Error(`Unexpected "${E[t]}"`)}return[n,t]},kT=(E,t)=>{const r=[];for(;;){const[n,s]=$T(E,t);if(n)r.push(n),t=s;else break}return r.length===1?[r[0],t]:[{type:"concatenation",items:r},t]},$T=(E,t)=>{if(E[t]==="{")return qT(E,t+1);if(E[t]==="[")return JT(E,t+1);{let r="";for(;E[t]&&/[A-Za-z0-9_ ]/.test(E[t]);)r+=E[t],t++;return[r,t]}},qT=(E,t)=>{const[r,n]=tE(E,t,"}");return[{type:"mandatory_block",items:r},n]},JT=(E,t)=>{const[r,n]=tE(E,t,"]");return[{type:"optional_block",items:r},n]},Vt=E=>{if(typeof E=="string")return[E];if(E.type==="concatenation")return E.items.map(Vt).reduce(QT,[""]);if(E.type==="mandatory_block")return E.items.flatMap(Vt);if(E.type==="optional_block")return["",...E.items.flatMap(Vt)];throw new Error(`Unknown node type: ${E}`)},QT=(E,t)=>{const r=[];for(const n of E)for(const s of t)r.push(n+s);return r};var $;(function(E){E.QUOTED_IDENTIFIER="QUOTED_IDENTIFIER",E.IDENTIFIER="IDENTIFIER",E.STRING="STRING",E.VARIABLE="VARIABLE",E.RESERVED_DATA_TYPE="RESERVED_DATA_TYPE",E.RESERVED_PARAMETERIZED_DATA_TYPE="RESERVED_PARAMETERIZED_DATA_TYPE",E.RESERVED_KEYWORD="RESERVED_KEYWORD",E.RESERVED_FUNCTION_NAME="RESERVED_FUNCTION_NAME",E.RESERVED_KEYWORD_PHRASE="RESERVED_KEYWORD_PHRASE",E.RESERVED_DATA_TYPE_PHRASE="RESERVED_DATA_TYPE_PHRASE",E.RESERVED_SET_OPERATION="RESERVED_SET_OPERATION",E.RESERVED_CLAUSE="RESERVED_CLAUSE",E.RESERVED_SELECT="RESERVED_SELECT",E.RESERVED_JOIN="RESERVED_JOIN",E.ARRAY_IDENTIFIER="ARRAY_IDENTIFIER",E.ARRAY_KEYWORD="ARRAY_KEYWORD",E.CASE="CASE",E.END="END",E.WHEN="WHEN",E.ELSE="ELSE",E.THEN="THEN",E.LIMIT="LIMIT",E.BETWEEN="BETWEEN",E.AND="AND",E.OR="OR",E.XOR="XOR",E.OPERATOR="OPERATOR",E.COMMA="COMMA",E.ASTERISK="ASTERISK",E.PROPERTY_ACCESS_OPERATOR="PROPERTY_ACCESS_OPERATOR",E.OPEN_PAREN="OPEN_PAREN",E.CLOSE_PAREN="CLOSE_PAREN",E.LINE_COMMENT="LINE_COMMENT",E.BLOCK_COMMENT="BLOCK_COMMENT",E.DISABLE_COMMENT="DISABLE_COMMENT",E.NUMBER="NUMBER",E.NAMED_PARAMETER="NAMED_PARAMETER",E.QUOTED_PARAMETER="QUOTED_PARAMETER",E.NUMBERED_PARAMETER="NUMBERED_PARAMETER",E.POSITIONAL_PARAMETER="POSITIONAL_PARAMETER",E.CUSTOM_PARAMETER="CUSTOM_PARAMETER",E.DELIMITER="DELIMITER",E.EOF="EOF"})($=$||($={}));const tr=E=>({type:$.EOF,raw:"«EOF»",text:"«EOF»",start:E}),It=tr(1/0),ft=E=>t=>t.type===E.type&&t.text===E.text,Ot={ARRAY:ft({text:"ARRAY",type:$.RESERVED_DATA_TYPE}),BY:ft({text:"BY",type:$.RESERVED_KEYWORD}),SET:ft({text:"SET",type:$.RESERVED_CLAUSE}),STRUCT:ft({text:"STRUCT",type:$.RESERVED_DATA_TYPE}),WINDOW:ft({text:"WINDOW",type:$.RESERVED_CLAUSE}),VALUES:ft({text:"VALUES",type:$.RESERVED_CLAUSE})},Er=E=>E===$.RESERVED_DATA_TYPE||E===$.RESERVED_KEYWORD||E===$.RESERVED_FUNCTION_NAME||E===$.RESERVED_KEYWORD_PHRASE||E===$.RESERVED_DATA_TYPE_PHRASE||E===$.RESERVED_CLAUSE||E===$.RESERVED_SELECT||E===$.RESERVED_SET_OPERATION||E===$.RESERVED_JOIN||E===$.ARRAY_KEYWORD||E===$.CASE||E===$.END||E===$.WHEN||E===$.ELSE||E===$.THEN||E===$.LIMIT||E===$.BETWEEN||E===$.AND||E===$.OR||E===$.XOR,ZT=E=>E===$.AND||E===$.OR||E===$.XOR,jT=["KEYS.NEW_KEYSET","KEYS.ADD_KEY_FROM_RAW_BYTES","AEAD.DECRYPT_BYTES","AEAD.DECRYPT_STRING","AEAD.ENCRYPT","KEYS.KEYSET_CHAIN","KEYS.KEYSET_FROM_JSON","KEYS.KEYSET_TO_JSON","KEYS.ROTATE_KEYSET","KEYS.KEYSET_LENGTH","ANY_VALUE","ARRAY_AGG","AVG","CORR","COUNT","COUNTIF","COVAR_POP","COVAR_SAMP","MAX","MIN","ST_CLUSTERDBSCAN","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","VAR_POP","VAR_SAMP","ANY_VALUE","ARRAY_AGG","ARRAY_CONCAT_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","COUNTIF","LOGICAL_AND","LOGICAL_OR","MAX","MIN","STRING_AGG","SUM","APPROX_COUNT_DISTINCT","APPROX_QUANTILES","APPROX_TOP_COUNT","APPROX_TOP_SUM","ARRAY_CONCAT","ARRAY_LENGTH","ARRAY_TO_STRING","GENERATE_ARRAY","GENERATE_DATE_ARRAY","GENERATE_TIMESTAMP_ARRAY","ARRAY_REVERSE","OFFSET","SAFE_OFFSET","ORDINAL","SAFE_ORDINAL","BIT_COUNT","PARSE_BIGNUMERIC","PARSE_NUMERIC","SAFE_CAST","CURRENT_DATE","EXTRACT","DATE","DATE_ADD","DATE_SUB","DATE_DIFF","DATE_TRUNC","DATE_FROM_UNIX_DATE","FORMAT_DATE","LAST_DAY","PARSE_DATE","UNIX_DATE","CURRENT_DATETIME","DATETIME","EXTRACT","DATETIME_ADD","DATETIME_SUB","DATETIME_DIFF","DATETIME_TRUNC","FORMAT_DATETIME","LAST_DAY","PARSE_DATETIME","ERROR","EXTERNAL_QUERY","S2_CELLIDFROMPOINT","S2_COVERINGCELLIDS","ST_ANGLE","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_AZIMUTH","ST_BOUNDARY","ST_BOUNDINGBOX","ST_BUFFER","ST_BUFFERWITHTOLERANCE","ST_CENTROID","ST_CENTROID_AGG","ST_CLOSESTPOINT","ST_CLUSTERDBSCAN","ST_CONTAINS","ST_CONVEXHULL","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DUMP","ST_DWITHIN","ST_ENDPOINT","ST_EQUALS","ST_EXTENT","ST_EXTERIORRING","ST_GEOGFROM","ST_GEOGFROMGEOJSON","ST_GEOGFROMTEXT","ST_GEOGFROMWKB","ST_GEOGPOINT","ST_GEOGPOINTFROMGEOHASH","ST_GEOHASH","ST_GEOMETRYTYPE","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_INTERSECTSBOX","ST_ISCOLLECTION","ST_ISEMPTY","ST_LENGTH","ST_MAKELINE","ST_MAKEPOLYGON","ST_MAKEPOLYGONORIENTED","ST_MAXDISTANCE","ST_NPOINTS","ST_NUMGEOMETRIES","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SIMPLIFY","ST_SNAPTOGRID","ST_STARTPOINT","ST_TOUCHES","ST_UNION","ST_UNION_AGG","ST_WITHIN","ST_X","ST_Y","FARM_FINGERPRINT","MD5","SHA1","SHA256","SHA512","HLL_COUNT.INIT","HLL_COUNT.MERGE","HLL_COUNT.MERGE_PARTIAL","HLL_COUNT.EXTRACT","MAKE_INTERVAL","EXTRACT","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","JSON_EXTRACT","JSON_QUERY","JSON_EXTRACT_SCALAR","JSON_VALUE","JSON_EXTRACT_ARRAY","JSON_QUERY_ARRAY","JSON_EXTRACT_STRING_ARRAY","JSON_VALUE_ARRAY","TO_JSON_STRING","ABS","SIGN","IS_INF","IS_NAN","IEEE_DIVIDE","RAND","SQRT","POW","POWER","EXP","LN","LOG","LOG10","GREATEST","LEAST","DIV","SAFE_DIVIDE","SAFE_MULTIPLY","SAFE_NEGATE","SAFE_ADD","SAFE_SUBTRACT","MOD","ROUND","TRUNC","CEIL","CEILING","FLOOR","COS","COSH","ACOS","ACOSH","SIN","SINH","ASIN","ASINH","TAN","TANH","ATAN","ATANH","ATAN2","RANGE_BUCKET","FIRST_VALUE","LAST_VALUE","NTH_VALUE","LEAD","LAG","PERCENTILE_CONT","PERCENTILE_DISC","NET.IP_FROM_STRING","NET.SAFE_IP_FROM_STRING","NET.IP_TO_STRING","NET.IP_NET_MASK","NET.IP_TRUNC","NET.IPV4_FROM_INT64","NET.IPV4_TO_INT64","NET.HOST","NET.PUBLIC_SUFFIX","NET.REG_DOMAIN","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","NTILE","ROW_NUMBER","SESSION_USER","CORR","COVAR_POP","COVAR_SAMP","STDDEV_POP","STDDEV_SAMP","STDDEV","VAR_POP","VAR_SAMP","VARIANCE","ASCII","BYTE_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CODE_POINTS_TO_BYTES","CODE_POINTS_TO_STRING","CONCAT","CONTAINS_SUBSTR","ENDS_WITH","FORMAT","FROM_BASE32","FROM_BASE64","FROM_HEX","INITCAP","INSTR","LEFT","LENGTH","LPAD","LOWER","LTRIM","NORMALIZE","NORMALIZE_AND_CASEFOLD","OCTET_LENGTH","REGEXP_CONTAINS","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","REPEAT","REVERSE","RIGHT","RPAD","RTRIM","SAFE_CONVERT_BYTES_TO_STRING","SOUNDEX","SPLIT","STARTS_WITH","STRPOS","SUBSTR","SUBSTRING","TO_BASE32","TO_BASE64","TO_CODE_POINTS","TO_HEX","TRANSLATE","TRIM","UNICODE","UPPER","CURRENT_TIME","TIME","EXTRACT","TIME_ADD","TIME_SUB","TIME_DIFF","TIME_TRUNC","FORMAT_TIME","PARSE_TIME","CURRENT_TIMESTAMP","EXTRACT","STRING","TIMESTAMP","TIMESTAMP_ADD","TIMESTAMP_SUB","TIMESTAMP_DIFF","TIMESTAMP_TRUNC","FORMAT_TIMESTAMP","PARSE_TIMESTAMP","TIMESTAMP_SECONDS","TIMESTAMP_MILLIS","TIMESTAMP_MICROS","UNIX_SECONDS","UNIX_MILLIS","UNIX_MICROS","GENERATE_UUID","COALESCE","IF","IFNULL","NULLIF","AVG","BIT_AND","BIT_OR","BIT_XOR","CORR","COUNT","COVAR_POP","COVAR_SAMP","EXACT_COUNT_DISTINCT","FIRST","GROUP_CONCAT","GROUP_CONCAT_UNQUOTED","LAST","MAX","MIN","NEST","NTH","QUANTILES","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","TOP","UNIQUE","VARIANCE","VAR_POP","VAR_SAMP","BIT_COUNT","BOOLEAN","BYTES","CAST","FLOAT","HEX_STRING","INTEGER","STRING","COALESCE","GREATEST","IFNULL","IS_INF","IS_NAN","IS_EXPLICITLY_DEFINED","LEAST","NVL","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE","DATE_ADD","DATEDIFF","DAY","DAYOFWEEK","DAYOFYEAR","FORMAT_UTC_USEC","HOUR","MINUTE","MONTH","MSEC_TO_TIMESTAMP","NOW","PARSE_UTC_USEC","QUARTER","SEC_TO_TIMESTAMP","SECOND","STRFTIME_UTC_USEC","TIME","TIMESTAMP","TIMESTAMP_TO_MSEC","TIMESTAMP_TO_SEC","TIMESTAMP_TO_USEC","USEC_TO_TIMESTAMP","UTC_USEC_TO_DAY","UTC_USEC_TO_HOUR","UTC_USEC_TO_MONTH","UTC_USEC_TO_WEEK","UTC_USEC_TO_YEAR","WEEK","YEAR","FORMAT_IP","PARSE_IP","FORMAT_PACKED_IP","PARSE_PACKED_IP","JSON_EXTRACT","JSON_EXTRACT_SCALAR","ABS","ACOS","ACOSH","ASIN","ASINH","ATAN","ATANH","ATAN2","CEIL","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG2","LOG10","PI","POW","RADIANS","RAND","ROUND","SIN","SINH","SQRT","TAN","TANH","REGEXP_MATCH","REGEXP_EXTRACT","REGEXP_REPLACE","CONCAT","INSTR","LEFT","LENGTH","LOWER","LPAD","LTRIM","REPLACE","RIGHT","RPAD","RTRIM","SPLIT","SUBSTR","UPPER","TABLE_DATE_RANGE","TABLE_DATE_RANGE_STRICT","TABLE_QUERY","HOST","DOMAIN","TLD","AVG","COUNT","MAX","MIN","STDDEV","SUM","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","CURRENT_USER","EVERY","FROM_BASE64","HASH","FARM_FINGERPRINT","IF","POSITION","SHA1","SOME","TO_BASE64","BQ.JOBS.CANCEL","BQ.REFRESH_MATERIALIZED_VIEW","OPTIONS","PIVOT","UNPIVOT"],zT=["ALL","AND","ANY","AS","ASC","ASSERT_ROWS_MODIFIED","AT","BETWEEN","BY","CASE","CAST","COLLATE","CONTAINS","CREATE","CROSS","CUBE","CURRENT","DEFAULT","DEFINE","DESC","DISTINCT","ELSE","END","ENUM","ESCAPE","EXCEPT","EXCLUDE","EXISTS","EXTRACT","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","GROUP","GROUPING","GROUPS","HASH","HAVING","IF","IGNORE","IN","INNER","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LIMIT","LOOKUP","MERGE","NATURAL","NEW","NO","NOT","NULL","NULLS","OF","ON","OR","ORDER","OUTER","OVER","PARTITION","PRECEDING","PROTO","RANGE","RECURSIVE","RESPECT","RIGHT","ROLLUP","ROWS","SELECT","SET","SOME","TABLE","TABLESAMPLE","THEN","TO","TREAT","TRUE","UNBOUNDED","UNION","UNNEST","USING","WHEN","WHERE","WINDOW","WITH","WITHIN","SAFE","LIKE","COPY","CLONE","IN","OUT","INOUT","RETURNS","LANGUAGE","CASCADE","RESTRICT","DETERMINISTIC"],eo=["ARRAY","BOOL","BYTES","DATE","DATETIME","GEOGRAPHY","INTERVAL","INT64","INT","SMALLINT","INTEGER","BIGINT","TINYINT","BYTEINT","NUMERIC","DECIMAL","BIGNUMERIC","BIGDECIMAL","FLOAT64","STRING","STRUCT","TIME","TIMEZONE"],to=y(["SELECT [ALL | DISTINCT] [AS STRUCT | AS VALUE]"]),Eo=y(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","QUALIFY","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","OMIT RECORD IF","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY SOURCE | BY TARGET] [THEN]","UPDATE SET","CLUSTER BY","FOR SYSTEM_TIME AS OF","WITH CONNECTION","WITH PARTITION COLUMNS","REMOTE WITH CONNECTION"]),rr=y(["CREATE [OR REPLACE] [TEMP|TEMPORARY|SNAPSHOT|EXTERNAL] TABLE [IF NOT EXISTS]"]),EE=y(["CREATE [OR REPLACE] [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE [FROM]","DROP [SNAPSHOT | EXTERNAL] TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME TO","ALTER COLUMN [IF EXISTS]","SET DEFAULT COLLATE","SET OPTIONS","DROP NOT NULL","SET DATA TYPE","ALTER SCHEMA [IF EXISTS]","ALTER [MATERIALIZED] VIEW [IF EXISTS]","ALTER BI_CAPACITY","TRUNCATE TABLE","CREATE SCHEMA [IF NOT EXISTS]","DEFAULT COLLATE","CREATE [OR REPLACE] [TEMP|TEMPORARY|TABLE] FUNCTION [IF NOT EXISTS]","CREATE [OR REPLACE] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] ROW ACCESS POLICY [IF NOT EXISTS]","GRANT TO","FILTER USING","CREATE CAPACITY","AS JSON","CREATE RESERVATION","CREATE ASSIGNMENT","CREATE SEARCH INDEX [IF NOT EXISTS]","DROP SCHEMA [IF EXISTS]","DROP [MATERIALIZED] VIEW [IF EXISTS]","DROP [TABLE] FUNCTION [IF EXISTS]","DROP PROCEDURE [IF EXISTS]","DROP ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","DROP CAPACITY [IF EXISTS]","DROP RESERVATION [IF EXISTS]","DROP ASSIGNMENT [IF EXISTS]","DROP SEARCH INDEX [IF EXISTS]","DROP [IF EXISTS]","GRANT","REVOKE","DECLARE","EXECUTE IMMEDIATE","LOOP","END LOOP","REPEAT","END REPEAT","WHILE","END WHILE","BREAK","LEAVE","CONTINUE","ITERATE","FOR","END FOR","BEGIN","BEGIN TRANSACTION","COMMIT TRANSACTION","ROLLBACK TRANSACTION","RAISE","RETURN","CALL","ASSERT","EXPORT DATA"]),ro=y(["UNION {ALL | DISTINCT}","EXCEPT DISTINCT","INTERSECT DISTINCT"]),no=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),so=y(["TABLESAMPLE SYSTEM","ANY TYPE","ALL COLUMNS","NOT DETERMINISTIC","{ROWS | RANGE} BETWEEN","IS [NOT] DISTINCT FROM"]),To=y([]),oo={name:"bigquery",tokenizerOptions:{reservedSelect:to,reservedClauses:[...Eo,...EE,...rr],reservedSetOperations:ro,reservedJoins:no,reservedKeywordPhrases:so,reservedDataTypePhrases:To,reservedKeywords:zT,reservedDataTypes:eo,reservedFunctionNames:jT,extraParens:["[]"],stringTypes:[{quote:'""".."""',prefixes:["R","B","RB","BR"]},{quote:"'''..'''",prefixes:["R","B","RB","BR"]},'""-bs',"''-bs",{quote:'""-raw',prefixes:["R","B","RB","BR"],requirePrefix:!0},{quote:"''-raw",prefixes:["R","B","RB","BR"],requirePrefix:!0}],identTypes:["``"],identChars:{dashes:!0},paramTypes:{positional:!0,named:["@"],quoted:["@"]},variableTypes:[{regex:String.raw`@@\w+`}],lineCommentTypes:["--","#"],operators:["&","|","^","~",">>","<<","||","=>"],postProcess:ao},formatOptions:{onelineClauses:[...rr,...EE],tabularOnelineClauses:EE}};function ao(E){return io(Ao(E))}function io(E){let t=It;return E.map(r=>r.text==="OFFSET"&&t.text==="["?(t=r,Object.assign(Object.assign({},r),{type:$.RESERVED_FUNCTION_NAME})):(t=r,r))}function Ao(E){var t;const r=[];for(let n=0;n<E.length;n++){const s=E[n];if((Ot.ARRAY(s)||Ot.STRUCT(s))&&((t=E[n+1])===null||t===void 0?void 0:t.text)==="<"){const a=Ro(E,n+1),A=E.slice(n,a+1);r.push({type:$.IDENTIFIER,raw:A.map(nr("raw")).join(""),text:A.map(nr("text")).join(""),start:s.start}),n=a}else r.push(s)}return r}const nr=E=>t=>t.type===$.IDENTIFIER||t.type===$.COMMA?t[E]+" ":t[E];function Ro(E,t){let r=0;for(let n=t;n<E.length;n++){const s=E[n];if(s.text==="<"?r++:s.text===">"?r--:s.text===">>"&&(r-=2),r===0)return n}return E.length-1}const So=["BIT_AND","BIT_OR","BIT_XOR","BLAKE3","CAST","CHARACTER_LENGTH","CHAR_LENGTH","COVAR_POP","COVAR_SAMP","CRC32","CRC32IEEE","CRC64","DATE","DATE_DIFF","DATE_FORMAT","DATE_TRUNC","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","FORMAT_BYTES","FQDN","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","HOUR","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","IPv4CIDRToRange","IPv4NumToString","IPv4NumToStringClassC","IPv4StringToNum","IPv4StringToNumOrDefault","IPv4StringToNumOrNull","IPv4ToIPv6","IPv6CIDRToRange","IPv6NumToString","IPv6StringToNum","IPv6StringToNumOrDefault","IPv6StringToNumOrNull","JSONAllPaths","JSONAllPathsWithTypes","JSONArrayLength","JSONDynamicPaths","JSONDynamicPathsWithTypes","JSONExtract","JSONExtractArrayRaw","JSONExtractArrayRawCaseInsensitive","JSONExtractBool","JSONExtractBoolCaseInsensitive","JSONExtractCaseInsensitive","JSONExtractFloat","JSONExtractFloatCaseInsensitive","JSONExtractInt","JSONExtractIntCaseInsensitive","JSONExtractKeys","JSONExtractKeysAndValues","JSONExtractKeysAndValuesCaseInsensitive","JSONExtractKeysAndValuesRaw","JSONExtractKeysAndValuesRawCaseInsensitive","JSONExtractKeysCaseInsensitive","JSONExtractRaw","JSONExtractRawCaseInsensitive","JSONExtractString","JSONExtractStringCaseInsensitive","JSONExtractUInt","JSONExtractUIntCaseInsensitive","JSONHas","JSONKey","JSONLength","JSONMergePatch","JSONSharedDataPaths","JSONSharedDataPathsWithTypes","JSONType","JSON_ARRAY_LENGTH","JSON_EXISTS","JSON_QUERY","JSON_VALUE","L1Distance","L1Norm","L1Normalize","L2Distance","L2Norm","L2Normalize","L2SquaredDistance","L2SquaredNorm","LAST_DAY","LinfDistance","LinfNorm","LinfNormalize","LpDistance","LpNorm","LpNormalize","MACNumToString","MACStringToNum","MACStringToOUI","MAP_FROM_ARRAYS","MD4","MD5","MILLISECOND","MINUTE","MONTH","OCTET_LENGTH","QUARTER","REGEXP_EXTRACT","REGEXP_MATCHES","REGEXP_REPLACE","RIPEMD160","SCHEMA","SECOND","SHA1","SHA224","SHA256","SHA384","SHA512","SHA512_256","STD","STDDEV_POP","STDDEV_SAMP","ST_LineFromWKB","ST_MLineFromWKB","ST_MPolyFromWKB","ST_PointFromWKB","ST_PolyFromWKB","SUBSTRING_INDEX","SVG","TIMESTAMP_DIFF","TO_BASE64","TO_DAYS","TO_UNIXTIME","ULIDStringToDateTime","URLHash","URLHierarchy","URLPathHierarchy","UTCTimestamp","UTC_timestamp","UUIDNumToString","UUIDStringToNum","UUIDToNum","UUIDv7ToDateTime","VAR_POP","VAR_SAMP","YEAR","YYYYMMDDToDate","YYYYMMDDToDate32","YYYYMMDDhhmmssToDateTime","YYYYMMDDhhmmssToDateTime64","_CAST","__actionName","__bitBoolMaskAnd","__bitBoolMaskOr","__bitSwapLastTwo","__bitWrapperFunc","__getScalar","__patchPartitionID","__scalarSubqueryResult","abs","accurateCast","accurateCastOrDefault","accurateCastOrNull","acos","acosh","addDate","addDays","addHours","addInterval","addMicroseconds","addMilliseconds","addMinutes","addMonths","addNanoseconds","addQuarters","addSeconds","addTupleOfIntervals","addWeeks","addYears","addressToLine","addressToLineWithInlines","addressToSymbol","aes_decrypt_mysql","aes_encrypt_mysql","age","aggThrow","alphaTokens","analysisOfVariance","anova","any","anyHeavy","anyLast","anyLastRespectNulls","anyLast_respect_nulls","anyRespectNulls","anyValueRespectNulls","any_respect_nulls","any_value","any_value_respect_nulls","appendTrailingCharIfAbsent","approx_top_count","approx_top_k","approx_top_sum","argMax","argMin","array","arrayAUC","arrayAUCPR","arrayAll","arrayAvg","arrayCompact","arrayConcat","arrayCount","arrayCumSum","arrayCumSumNonNegative","arrayDifference","arrayDistinct","arrayDotProduct","arrayElement","arrayElementOrNull","arrayEnumerate","arrayEnumerateDense","arrayEnumerateDenseRanked","arrayEnumerateUniq","arrayEnumerateUniqRanked","arrayExists","arrayFill","arrayFilter","arrayFirst","arrayFirstIndex","arrayFirstOrNull","arrayFlatten","arrayFold","arrayIntersect","arrayJaccardIndex","arrayJoin","arrayLast","arrayLastIndex","arrayLastOrNull","arrayLevenshteinDistance","arrayLevenshteinDistanceWeighted","arrayMap","arrayMax","arrayMin","arrayNormalizedGini","arrayPRAUC","arrayPartialReverseSort","arrayPartialShuffle","arrayPartialSort","arrayPopBack","arrayPopFront","arrayProduct","arrayPushBack","arrayPushFront","arrayROCAUC","arrayRandomSample","arrayReduce","arrayReduceInRanges","arrayResize","arrayReverse","arrayReverseFill","arrayReverseSort","arrayReverseSplit","arrayRotateLeft","arrayRotateRight","arrayShiftLeft","arrayShiftRight","arrayShingles","arrayShuffle","arraySimilarity","arraySlice","arraySort","arraySplit","arrayStringConcat","arraySum","arraySymmetricDifference","arrayUnion","arrayUniq","arrayWithConstant","arrayZip","arrayZipUnaligned","array_agg","array_concat_agg","ascii","asin","asinh","assumeNotNull","atan","atan2","atanh","authenticatedUser","avg","avgWeighted","bar","base32Decode","base32Encode","base58Decode","base58Encode","base64Decode","base64Encode","base64URLDecode","base64URLEncode","basename","bech32Decode","bech32Encode","bin","bitAnd","bitCount","bitHammingDistance","bitNot","bitOr","bitPositionsToArray","bitRotateLeft","bitRotateRight","bitShiftLeft","bitShiftRight","bitSlice","bitTest","bitTestAll","bitTestAny","bitXor","bitmapAnd","bitmapAndCardinality","bitmapAndnot","bitmapAndnotCardinality","bitmapBuild","bitmapCardinality","bitmapContains","bitmapHasAll","bitmapHasAny","bitmapMax","bitmapMin","bitmapOr","bitmapOrCardinality","bitmapSubsetInRange","bitmapSubsetLimit","bitmapToArray","bitmapTransform","bitmapXor","bitmapXorCardinality","bitmaskToArray","bitmaskToList","blockNumber","blockSerializedSize","blockSize","boundingRatio","buildId","byteHammingDistance","byteSize","byteSlice","byteSwap","caseWithExpr","caseWithExpression","caseWithoutExpr","caseWithoutExpression","catboostEvaluate","categoricalInformationValue","cbrt","ceil","ceiling","changeDay","changeHour","changeMinute","changeMonth","changeSecond","changeYear","char","cityHash64","clamp","coalesce","colorOKLCHToSRGB","colorSRGBToOKLCH","compareSubstrings","concat","concatAssumeInjective","concatWithSeparator","concatWithSeparatorAssumeInjective","concat_ws","connectionId","connection_id","contingency","convertCharset","corr","corrMatrix","corrStable","cos","cosh","cosineDistance","count","countDigits","countEqual","countMatches","countMatchesCaseInsensitive","countSubstrings","countSubstringsCaseInsensitive","countSubstringsCaseInsensitiveUTF8","covarPop","covarPopMatrix","covarPopStable","covarSamp","covarSampMatrix","covarSampStable","cramersV","cramersVBiasCorrected","curdate","currentDatabase","currentProfiles","currentQueryID","currentRoles","currentSchemas","currentUser","current_database","current_date","current_query_id","current_schemas","current_timestamp","current_user","cutFragment","cutIPv6","cutQueryString","cutQueryStringAndFragment","cutToFirstSignificantSubdomain","cutToFirstSignificantSubdomainCustom","cutToFirstSignificantSubdomainCustomRFC","cutToFirstSignificantSubdomainCustomWithWWW","cutToFirstSignificantSubdomainCustomWithWWWRFC","cutToFirstSignificantSubdomainRFC","cutToFirstSignificantSubdomainWithWWW","cutToFirstSignificantSubdomainWithWWWRFC","cutURLParameter","cutWWW","damerauLevenshteinDistance","dateDiff","dateName","dateTime64ToSnowflake","dateTime64ToSnowflakeID","dateTimeToSnowflake","dateTimeToSnowflakeID","dateTimeToUUIDv7","dateTrunc","date_bin","date_diff","decodeHTMLComponent","decodeURLComponent","decodeURLFormComponent","decodeXMLComponent","decrypt","defaultProfiles","defaultRoles","defaultValueOfArgumentType","defaultValueOfTypeName","degrees","deltaSum","deltaSumTimestamp","demangle","denseRank","dense_rank","detectCharset","detectLanguage","detectLanguageMixed","detectLanguageUnknown","detectProgrammingLanguage","detectTonality","dictGet","dictGetAll","dictGetChildren","dictGetDate","dictGetDateOrDefault","dictGetDateTime","dictGetDateTimeOrDefault","dictGetDescendants","dictGetFloat32","dictGetFloat32OrDefault","dictGetFloat64","dictGetFloat64OrDefault","dictGetHierarchy","dictGetIPv4","dictGetIPv4OrDefault","dictGetIPv6","dictGetIPv6OrDefault","dictGetInt16","dictGetInt16OrDefault","dictGetInt32","dictGetInt32OrDefault","dictGetInt64","dictGetInt64OrDefault","dictGetInt8","dictGetInt8OrDefault","dictGetOrDefault","dictGetOrNull","dictGetString","dictGetStringOrDefault","dictGetUInt16","dictGetUInt16OrDefault","dictGetUInt32","dictGetUInt32OrDefault","dictGetUInt64","dictGetUInt64OrDefault","dictGetUInt8","dictGetUInt8OrDefault","dictGetUUID","dictGetUUIDOrDefault","dictHas","dictIsIn","displayName","distanceL1","distanceL2","distanceL2Squared","distanceLinf","distanceLp","distinctDynamicTypes","distinctJSONPaths","distinctJSONPathsAndTypes","divide","divideDecimal","divideOrNull","domain","domainRFC","domainWithoutWWW","domainWithoutWWWRFC","dotProduct","dumpColumnStructure","dynamicElement","dynamicType","e","editDistance","editDistanceUTF8","empty","emptyArrayDate","emptyArrayDateTime","emptyArrayFloat32","emptyArrayFloat64","emptyArrayInt16","emptyArrayInt32","emptyArrayInt64","emptyArrayInt8","emptyArrayString","emptyArrayToSingle","emptyArrayUInt16","emptyArrayUInt32","emptyArrayUInt64","emptyArrayUInt8","enabledProfiles","enabledRoles","encodeURLComponent","encodeURLFormComponent","encodeXMLComponent","encrypt","endsWith","endsWithUTF8","entropy","equals","erf","erfc","errorCodeToName","estimateCompressionRatio","evalMLMethod","exp","exp10","exp2","exponentialMovingAverage","exponentialTimeDecayedAvg","exponentialTimeDecayedCount","exponentialTimeDecayedMax","exponentialTimeDecayedSum","extract","extractAll","extractAllGroups","extractAllGroupsHorizontal","extractAllGroupsVertical","extractGroups","extractKeyValuePairs","extractKeyValuePairsWithEscaping","extractTextFromHTML","extractURLParameter","extractURLParameterNames","extractURLParameters","factorial","farmFingerprint64","farmHash64","file","filesystemAvailable","filesystemCapacity","filesystemUnreserved","finalizeAggregation","financialInternalRateOfReturn","financialInternalRateOfReturnExtended","financialNetPresentValue","financialNetPresentValueExtended","firstLine","firstSignificantSubdomain","firstSignificantSubdomainCustom","firstSignificantSubdomainCustomRFC","firstSignificantSubdomainRFC","firstValueRespectNulls","first_value","first_value_respect_nulls","flameGraph","flatten","flattenTuple","floor","formatDateTime","formatDateTimeInJodaSyntax","formatQuery","formatQueryOrNull","formatQuerySingleLine","formatQuerySingleLineOrNull","formatReadableDecimalSize","formatReadableQuantity","formatReadableSize","formatReadableTimeDelta","formatRow","formatRowNoNewline","fragment","fromDaysSinceYearZero","fromDaysSinceYearZero32","fromModifiedJulianDay","fromModifiedJulianDayOrNull","fromUTCTimestamp","fromUnixTimestamp","fromUnixTimestamp64Micro","fromUnixTimestamp64Milli","fromUnixTimestamp64Nano","fromUnixTimestamp64Second","fromUnixTimestampInJodaSyntax","from_utc_timestamp","fullHostName","fuzzBits","gccMurmurHash","gcd","generateRandomStructure","generateSerialID","generateSnowflakeID","generateULID","generateUUIDv4","generateUUIDv7","geoDistance","geoToH3","geoToS2","geohashDecode","geohashEncode","geohashesInBox","getClientHTTPHeader","getMacro","getMaxTableNameLengthForDatabase","getMergeTreeSetting","getOSKernelVersion","getServerPort","getServerSetting","getSetting","getSettingOrDefault","getSizeOfEnumType","getSubcolumn","getTypeSerializationStreams","globalIn","globalInIgnoreSet","globalNotIn","globalNotInIgnoreSet","globalNotNullIn","globalNotNullInIgnoreSet","globalNullIn","globalNullInIgnoreSet","globalVariable","greatCircleAngle","greatCircleDistance","greater","greaterOrEquals","greatest","groupArray","groupArrayInsertAt","groupArrayIntersect","groupArrayLast","groupArrayMovingAvg","groupArrayMovingSum","groupArraySample","groupArraySorted","groupBitAnd","groupBitOr","groupBitXor","groupBitmap","groupBitmapAnd","groupBitmapOr","groupBitmapXor","groupConcat","groupNumericIndexedVector","groupUniqArray","group_concat","h3CellAreaM2","h3CellAreaRads2","h3Distance","h3EdgeAngle","h3EdgeLengthKm","h3EdgeLengthM","h3ExactEdgeLengthKm","h3ExactEdgeLengthM","h3ExactEdgeLengthRads","h3GetBaseCell","h3GetDestinationIndexFromUnidirectionalEdge","h3GetFaces","h3GetIndexesFromUnidirectionalEdge","h3GetOriginIndexFromUnidirectionalEdge","h3GetPentagonIndexes","h3GetRes0Indexes","h3GetResolution","h3GetUnidirectionalEdge","h3GetUnidirectionalEdgeBoundary","h3GetUnidirectionalEdgesFromHexagon","h3HexAreaKm2","h3HexAreaM2","h3HexRing","h3IndexesAreNeighbors","h3IsPentagon","h3IsResClassIII","h3IsValid","h3Line","h3NumHexagons","h3PointDistKm","h3PointDistM","h3PointDistRads","h3ToCenterChild","h3ToChildren","h3ToGeo","h3ToGeoBoundary","h3ToParent","h3ToString","h3UnidirectionalEdgeIsValid","h3kRing","halfMD5","has","hasAll","hasAny","hasColumnInTable","hasSubsequence","hasSubsequenceCaseInsensitive","hasSubsequenceCaseInsensitiveUTF8","hasSubsequenceUTF8","hasSubstr","hasThreadFuzzer","hasToken","hasTokenCaseInsensitive","hasTokenCaseInsensitiveOrNull","hasTokenOrNull","hex","hilbertDecode","hilbertEncode","histogram","hiveHash","hop","hopEnd","hopStart","hostName","hostname","hypot","icebergBucket","icebergHash","icebergTruncate","identity","idnaDecode","idnaEncode","if","ifNotFinite","ifNull","ignore","inIgnoreSet","indexHint","indexOf","indexOfAssumeSorted","initcap","initcapUTF8","initialQueryID","initialQueryStartTime","initial_query_id","initial_query_start_time","initializeAggregation","instr","intDiv","intDivOrNull","intDivOrZero","intExp10","intExp2","intHash32","intHash64","intervalLengthSum","isConstant","isDecimalOverflow","isDynamicElementInSharedData","isFinite","isIPAddressInRange","isIPv4String","isIPv6String","isInfinite","isMergeTreePartCoveredBy","isNaN","isNotDistinctFrom","isNotNull","isNull","isNullable","isValidJSON","isValidUTF8","isZeroOrNull","jaroSimilarity","jaroWinklerSimilarity","javaHash","javaHashUTF16LE","joinGet","joinGetOrNull","jsonMergePatch","jumpConsistentHash","kafkaMurmurHash","keccak256","kolmogorovSmirnovTest","kostikConsistentHash","kql_array_sort_asc","kql_array_sort_desc","kurtPop","kurtSamp","lag","lagInFrame","largestTriangleThreeBuckets","lastValueRespectNulls","last_value","last_value_respect_nulls","lcase","lcm","lead","leadInFrame","least","left","leftPad","leftPadUTF8","leftUTF8","lemmatize","length","lengthUTF8","less","lessOrEquals","levenshteinDistance","levenshteinDistanceUTF8","lgamma","ln","locate","log","log10","log1p","log2","logTrace","lowCardinalityIndices","lowCardinalityKeys","lower","lowerUTF8","lpad","ltrim","lttb","makeDate","makeDate32","makeDateTime","makeDateTime64","mannWhitneyUTest","map","mapAdd","mapAll","mapApply","mapConcat","mapContains","mapContainsKey","mapContainsKeyLike","mapContainsValue","mapContainsValueLike","mapExists","mapExtractKeyLike","mapExtractValueLike","mapFilter","mapFromArrays","mapFromString","mapKeys","mapPartialReverseSort","mapPartialSort","mapPopulateSeries","mapReverseSort","mapSort","mapSubtract","mapUpdate","mapValues","match","materialize","max","max2","maxIntersections","maxIntersectionsPosition","maxMappedArrays","meanZTest","median","medianBFloat16","medianBFloat16Weighted","medianDD","medianDeterministic","medianExact","medianExactHigh","medianExactLow","medianExactWeighted","medianExactWeightedInterpolated","medianGK","medianInterpolatedWeighted","medianTDigest","medianTDigestWeighted","medianTiming","medianTimingWeighted","mergeTreePartInfo","metroHash64","mid","min","min2","minMappedArrays","minSampleSizeContinous","minSampleSizeContinuous","minSampleSizeConversion","minus","mismatches","mod","modOrNull","modulo","moduloLegacy","moduloOrNull","moduloOrZero","monthName","mortonDecode","mortonEncode","multiFuzzyMatchAllIndices","multiFuzzyMatchAny","multiFuzzyMatchAnyIndex","multiIf","multiMatchAllIndices","multiMatchAny","multiMatchAnyIndex","multiSearchAllPositions","multiSearchAllPositionsCaseInsensitive","multiSearchAllPositionsCaseInsensitiveUTF8","multiSearchAllPositionsUTF8","multiSearchAny","multiSearchAnyCaseInsensitive","multiSearchAnyCaseInsensitiveUTF8","multiSearchAnyUTF8","multiSearchFirstIndex","multiSearchFirstIndexCaseInsensitive","multiSearchFirstIndexCaseInsensitiveUTF8","multiSearchFirstIndexUTF8","multiSearchFirstPosition","multiSearchFirstPositionCaseInsensitive","multiSearchFirstPositionCaseInsensitiveUTF8","multiSearchFirstPositionUTF8","multiply","multiplyDecimal","murmurHash2_32","murmurHash2_64","murmurHash3_128","murmurHash3_32","murmurHash3_64","negate","neighbor","nested","netloc","ngramDistance","ngramDistanceCaseInsensitive","ngramDistanceCaseInsensitiveUTF8","ngramDistanceUTF8","ngramMinHash","ngramMinHashArg","ngramMinHashArgCaseInsensitive","ngramMinHashArgCaseInsensitiveUTF8","ngramMinHashArgUTF8","ngramMinHashCaseInsensitive","ngramMinHashCaseInsensitiveUTF8","ngramMinHashUTF8","ngramSearch","ngramSearchCaseInsensitive","ngramSearchCaseInsensitiveUTF8","ngramSearchUTF8","ngramSimHash","ngramSimHashCaseInsensitive","ngramSimHashCaseInsensitiveUTF8","ngramSimHashUTF8","ngrams","nonNegativeDerivative","normL1","normL2","normL2Squared","normLinf","normLp","normalizeL1","normalizeL2","normalizeLinf","normalizeLp","normalizeQuery","normalizeQueryKeepNames","normalizeUTF8NFC","normalizeUTF8NFD","normalizeUTF8NFKC","normalizeUTF8NFKD","normalizedQueryHash","normalizedQueryHashKeepNames","notEmpty","notEquals","notILike","notIn","notInIgnoreSet","notLike","notNullIn","notNullInIgnoreSet","nothing","nothingNull","nothingUInt64","now","now64","nowInBlock","nowInBlock64","nth_value","ntile","nullIf","nullIn","nullInIgnoreSet","numbers","numericIndexedVectorAllValueSum","numericIndexedVectorBuild","numericIndexedVectorCardinality","numericIndexedVectorGetValue","numericIndexedVectorPointwiseAdd","numericIndexedVectorPointwiseDivide","numericIndexedVectorPointwiseEqual","numericIndexedVectorPointwiseGreater","numericIndexedVectorPointwiseGreaterEqual","numericIndexedVectorPointwiseLess","numericIndexedVectorPointwiseLessEqual","numericIndexedVectorPointwiseMultiply","numericIndexedVectorPointwiseNotEqual","numericIndexedVectorPointwiseSubtract","numericIndexedVectorShortDebugString","numericIndexedVectorToMap","overlay","overlayUTF8","parseDateTime","parseDateTime32BestEffort","parseDateTime32BestEffortOrNull","parseDateTime32BestEffortOrZero","parseDateTime64","parseDateTime64BestEffort","parseDateTime64BestEffortOrNull","parseDateTime64BestEffortOrZero","parseDateTime64BestEffortUS","parseDateTime64BestEffortUSOrNull","parseDateTime64BestEffortUSOrZero","parseDateTime64InJodaSyntax","parseDateTime64InJodaSyntaxOrNull","parseDateTime64InJodaSyntaxOrZero","parseDateTime64OrNull","parseDateTime64OrZero","parseDateTimeBestEffort","parseDateTimeBestEffortOrNull","parseDateTimeBestEffortOrZero","parseDateTimeBestEffortUS","parseDateTimeBestEffortUSOrNull","parseDateTimeBestEffortUSOrZero","parseDateTimeInJodaSyntax","parseDateTimeInJodaSyntaxOrNull","parseDateTimeInJodaSyntaxOrZero","parseDateTimeOrNull","parseDateTimeOrZero","parseReadableSize","parseReadableSizeOrNull","parseReadableSizeOrZero","parseTimeDelta","partitionID","partitionId","path","pathFull","percentRank","percent_rank","pi","plus","pmod","pmodOrNull","pointInEllipses","pointInPolygon","polygonAreaCartesian","polygonAreaSpherical","polygonConvexHullCartesian","polygonPerimeterCartesian","polygonPerimeterSpherical","polygonsDistanceCartesian","polygonsDistanceSpherical","polygonsEqualsCartesian","polygonsIntersectCartesian","polygonsIntersectSpherical","polygonsIntersectionCartesian","polygonsIntersectionSpherical","polygonsSymDifferenceCartesian","polygonsSymDifferenceSpherical","polygonsUnionCartesian","polygonsUnionSpherical","polygonsWithinCartesian","polygonsWithinSpherical","port","portRFC","position","positionCaseInsensitive","positionCaseInsensitiveUTF8","positionUTF8","positiveModulo","positiveModuloOrNull","positive_modulo","positive_modulo_or_null","pow","power","printf","proportionsZTest","protocol","punycodeDecode","punycodeEncode","quantile","quantileBFloat16","quantileBFloat16Weighted","quantileDD","quantileDeterministic","quantileExact","quantileExactExclusive","quantileExactHigh","quantileExactInclusive","quantileExactLow","quantileExactWeighted","quantileExactWeightedInterpolated","quantileGK","quantileInterpolatedWeighted","quantileTDigest","quantileTDigestWeighted","quantileTiming","quantileTimingWeighted","quantiles","quantilesBFloat16","quantilesBFloat16Weighted","quantilesDD","quantilesDeterministic","quantilesExact","quantilesExactExclusive","quantilesExactHigh","quantilesExactInclusive","quantilesExactLow","quantilesExactWeighted","quantilesExactWeightedInterpolated","quantilesGK","quantilesInterpolatedWeighted","quantilesTDigest","quantilesTDigestWeighted","quantilesTiming","quantilesTimingWeighted","queryID","queryString","queryStringAndFragment","query_id","radians","rand","rand32","rand64","randBernoulli","randBinomial","randCanonical","randChiSquared","randConstant","randExponential","randFisherF","randLogNormal","randNegativeBinomial","randNormal","randPoisson","randStudentT","randUniform","randomFixedString","randomPrintableASCII","randomString","randomStringUTF8","rank","rankCorr","readWKBLineString","readWKBMultiLineString","readWKBMultiPolygon","readWKBPoint","readWKBPolygon","readWKTLineString","readWKTMultiLineString","readWKTMultiPolygon","readWKTPoint","readWKTPolygon","readWKTRing","regexpExtract","regexpQuoteMeta","regionHierarchy","regionIn","regionToArea","regionToCity","regionToContinent","regionToCountry","regionToDistrict","regionToName","regionToPopulation","regionToTopContinent","reinterpret","reinterpretAsDate","reinterpretAsDateTime","reinterpretAsFixedString","reinterpretAsFloat32","reinterpretAsFloat64","reinterpretAsInt128","reinterpretAsInt16","reinterpretAsInt256","reinterpretAsInt32","reinterpretAsInt64","reinterpretAsInt8","reinterpretAsString","reinterpretAsUInt128","reinterpretAsUInt16","reinterpretAsUInt256","reinterpretAsUInt32","reinterpretAsUInt64","reinterpretAsUInt8","reinterpretAsUUID","repeat","replace","replaceAll","replaceOne","replaceRegexpAll","replaceRegexpOne","replicate","retention","reverse","reverseUTF8","revision","right","rightPad","rightPadUTF8","rightUTF8","round","roundAge","roundBankers","roundDown","roundDuration","roundToExp2","rowNumberInAllBlocks","rowNumberInBlock","row_number","rpad","rtrim","runningAccumulate","runningConcurrency","runningDifference","runningDifferenceStartingWithFirstValue","s2CapContains","s2CapUnion","s2CellsIntersect","s2GetNeighbors","s2RectAdd","s2RectContains","s2RectIntersection","s2RectUnion","s2ToGeo","scalarProduct","searchAll","searchAny","sequenceCount","sequenceMatch","sequenceMatchEvents","sequenceNextNode","seriesDecomposeSTL","seriesOutliersDetectTukey","seriesPeriodDetectFFT","serverTimeZone","serverTimezone","serverUUID","shardCount","shardNum","showCertificate","sigmoid","sign","simpleJSONExtractBool","simpleJSONExtractFloat","simpleJSONExtractInt","simpleJSONExtractRaw","simpleJSONExtractString","simpleJSONExtractUInt","simpleJSONHas","simpleLinearRegression","sin","singleValueOrNull","sinh","sipHash128","sipHash128Keyed","sipHash128Reference","sipHash128ReferenceKeyed","sipHash64","sipHash64Keyed","skewPop","skewSamp","sleep","sleepEachRow","snowflakeIDToDateTime","snowflakeIDToDateTime64","snowflakeToDateTime","snowflakeToDateTime64","soundex","space","sparkBar","sparkbar","sparseGrams","sparseGramsHashes","sparseGramsHashesUTF8","sparseGramsUTF8","splitByAlpha","splitByChar","splitByNonAlpha","splitByRegexp","splitByString","splitByWhitespace","sqid","sqidDecode","sqidEncode","sqrt","startsWith","startsWithUTF8","stddevPop","stddevPopStable","stddevSamp","stddevSampStable","stem","stochasticLinearRegression","stochasticLogisticRegression","str_to_date","str_to_map","stringBytesEntropy","stringBytesUniq","stringJaccardIndex","stringJaccardIndexUTF8","stringToH3","structureToCapnProtoSchema","structureToProtobufSchema","studentTTest","subBitmap","subDate","substr","substring","substringIndex","substringIndexUTF8","substringUTF8","subtractDays","subtractHours","subtractInterval","subtractMicroseconds","subtractMilliseconds","subtractMinutes","subtractMonths","subtractNanoseconds","subtractQuarters","subtractSeconds","subtractTupleOfIntervals","subtractWeeks","subtractYears","sum","sumCount","sumKahan","sumMapFiltered","sumMapFilteredWithOverflow","sumMapWithOverflow","sumMappedArrays","sumWithOverflow","svg","synonyms","tan","tanh","tcpPort","tgamma","theilsU","throwIf","tid","timeDiff","timeSeriesDeltaToGrid","timeSeriesDerivToGrid","timeSeriesFromGrid","timeSeriesGroupArray","timeSeriesIdToTags","timeSeriesIdToTagsGroup","timeSeriesIdeltaToGrid","timeSeriesInstantDeltaToGrid","timeSeriesInstantRateToGrid","timeSeriesIrateToGrid","timeSeriesLastToGrid","timeSeriesLastTwoSamples","timeSeriesPredictLinearToGrid","timeSeriesRange","timeSeriesRateToGrid","timeSeriesResampleToGridWithStaleness","timeSeriesStoreTags","timeSeriesTagsGroupToTags","timeSlot","timeSlots","timeZone","timeZoneOf","timeZoneOffset","time_bucket","timestamp","timestampDiff","timestamp_diff","timezone","timezoneOf","timezoneOffset","toBFloat16","toBFloat16OrNull","toBFloat16OrZero","toBool","toColumnTypeName","toDate","toDate32","toDate32OrDefault","toDate32OrNull","toDate32OrZero","toDateOrDefault","toDateOrNull","toDateOrZero","toDateTime","toDateTime32","toDateTime64","toDateTime64OrDefault","toDateTime64OrNull","toDateTime64OrZero","toDateTimeOrDefault","toDateTimeOrNull","toDateTimeOrZero","toDayOfMonth","toDayOfWeek","toDayOfYear","toDaysSinceYearZero","toDecimal128","toDecimal128OrDefault","toDecimal128OrNull","toDecimal128OrZero","toDecimal256","toDecimal256OrDefault","toDecimal256OrNull","toDecimal256OrZero","toDecimal32","toDecimal32OrDefault","toDecimal32OrNull","toDecimal32OrZero","toDecimal64","toDecimal64OrDefault","toDecimal64OrNull","toDecimal64OrZero","toDecimalString","toFixedString","toFloat32","toFloat32OrDefault","toFloat32OrNull","toFloat32OrZero","toFloat64","toFloat64OrDefault","toFloat64OrNull","toFloat64OrZero","toHour","toIPv4","toIPv4OrDefault","toIPv4OrNull","toIPv4OrZero","toIPv6","toIPv6OrDefault","toIPv6OrNull","toIPv6OrZero","toISOWeek","toISOYear","toInt128","toInt128OrDefault","toInt128OrNull","toInt128OrZero","toInt16","toInt16OrDefault","toInt16OrNull","toInt16OrZero","toInt256","toInt256OrDefault","toInt256OrNull","toInt256OrZero","toInt32","toInt32OrDefault","toInt32OrNull","toInt32OrZero","toInt64","toInt64OrDefault","toInt64OrNull","toInt64OrZero","toInt8","toInt8OrDefault","toInt8OrNull","toInt8OrZero","toInterval","toIntervalDay","toIntervalHour","toIntervalMicrosecond","toIntervalMillisecond","toIntervalMinute","toIntervalMonth","toIntervalNanosecond","toIntervalQuarter","toIntervalSecond","toIntervalWeek","toIntervalYear","toJSONString","toLastDayOfMonth","toLastDayOfWeek","toLowCardinality","toMillisecond","toMinute","toModifiedJulianDay","toModifiedJulianDayOrNull","toMonday","toMonth","toMonthNumSinceEpoch","toNullable","toQuarter","toRelativeDayNum","toRelativeHourNum","toRelativeMinuteNum","toRelativeMonthNum","toRelativeQuarterNum","toRelativeSecondNum","toRelativeWeekNum","toRelativeYearNum","toSecond","toStartOfDay","toStartOfFifteenMinutes","toStartOfFiveMinute","toStartOfFiveMinutes","toStartOfHour","toStartOfISOYear","toStartOfInterval","toStartOfMicrosecond","toStartOfMillisecond","toStartOfMinute","toStartOfMonth","toStartOfNanosecond","toStartOfQuarter","toStartOfSecond","toStartOfTenMinutes","toStartOfWeek","toStartOfYear","toString","toStringCutToZero","toTime","toTime64","toTime64OrNull","toTime64OrZero","toTimeOrNull","toTimeOrZero","toTimeWithFixedDate","toTimeZone","toTimezone","toTypeName","toUInt128","toUInt128OrDefault","toUInt128OrNull","toUInt128OrZero","toUInt16","toUInt16OrDefault","toUInt16OrNull","toUInt16OrZero","toUInt256","toUInt256OrDefault","toUInt256OrNull","toUInt256OrZero","toUInt32","toUInt32OrDefault","toUInt32OrNull","toUInt32OrZero","toUInt64","toUInt64OrDefault","toUInt64OrNull","toUInt64OrZero","toUInt8","toUInt8OrDefault","toUInt8OrNull","toUInt8OrZero","toUTCTimestamp","toUUID","toUUIDOrDefault","toUUIDOrNull","toUUIDOrZero","toUnixTimestamp","toUnixTimestamp64Micro","toUnixTimestamp64Milli","toUnixTimestamp64Nano","toUnixTimestamp64Second","toValidUTF8","toWeek","toYYYYMM","toYYYYMMDD","toYYYYMMDDhhmmss","toYear","toYearNumSinceEpoch","toYearWeek","to_utc_timestamp","today","tokens","topK","topKWeighted","topLevelDomain","topLevelDomainRFC","transactionID","transactionLatestSnapshot","transactionOldestSnapshot","transform","translate","translateUTF8","trim","trimBoth","trimLeft","trimRight","trunc","tryBase32Decode","tryBase58Decode","tryBase64Decode","tryBase64URLDecode","tryDecrypt","tryIdnaEncode","tryPunycodeDecode","tumble","tumbleEnd","tumbleStart","tuple","tupleConcat","tupleDivide","tupleDivideByNumber","tupleElement","tupleHammingDistance","tupleIntDiv","tupleIntDivByNumber","tupleIntDivOrZero","tupleIntDivOrZeroByNumber","tupleMinus","tupleModulo","tupleModuloByNumber","tupleMultiply","tupleMultiplyByNumber","tupleNames","tupleNegate","tuplePlus","tupleToNameValuePairs","ucase","unbin","unhex","uniq","uniqCombined","uniqCombined64","uniqExact","uniqHLL12","uniqTheta","uniqThetaIntersect","uniqThetaNot","uniqThetaUnion","uniqUpTo","upper","upperUTF8","uptime","user","validateNestedArraySizes","varPop","varPopStable","varSamp","varSampStable","variantElement","variantType","vectorDifference","vectorSum","version","visibleWidth","visitParamExtractBool","visitParamExtractFloat","visitParamExtractInt","visitParamExtractRaw","visitParamExtractString","visitParamExtractUInt","visitParamHas","week","welchTTest","widthBucket","width_bucket","windowFunnel","windowID","wkb","wkt","wordShingleMinHash","wordShingleMinHashArg","wordShingleMinHashArgCaseInsensitive","wordShingleMinHashArgCaseInsensitiveUTF8","wordShingleMinHashArgUTF8","wordShingleMinHashCaseInsensitive","wordShingleMinHashCaseInsensitiveUTF8","wordShingleMinHashUTF8","wordShingleSimHash","wordShingleSimHashCaseInsensitive","wordShingleSimHashCaseInsensitiveUTF8","wordShingleSimHashUTF8","wyHash64","xor","xxHash32","xxHash64","xxh3","yandexConsistentHash","yearweek","yesterday","zookeeperSessionUptime","MergeTree","ReplacingMergeTree","SummingMergeTree","AggregatingMergeTree","CollapsingMergeTree","VersionedCollapsingMergeTree","GraphiteMergeTree","CoalescingMergeTree","Atomic","Shared","Lazy","Replicated","PostgreSQL","MySQL","SQLite","MaterializedPostgreSQL","DataLakeCatalog"],No=["ACCESS","ACTION","ADD","ADMIN","AFTER","ALGORITHM","ALIAS","ALL","ALLOWED_LATENESS","ALTER","AND","ANTI","APPEND","APPLY","AS","ASC","ASCENDING","ASOF","ASSUME","AST","ASYNC","ATTACH","AUTO_INCREMENT","AZURE","BACKUP","BAGEXPANSION","BASE_BACKUP","BCRYPT_HASH","BCRYPT_PASSWORD","BEGIN","BETWEEN","BIDIRECTIONAL","BOTH","BY","CACHE","CACHES","CASCADE","CASE","CHANGE","CHANGEABLE_IN_READONLY","CHANGED","CHARACTER","CHECK","CLEANUP","CLEAR","CLUSTER","CLUSTERS","CLUSTER_HOST_IDS","CN","CODEC","COLLATE","COLLECTION","COLUMN","COLUMNS","COMMENT","COMMIT","COMPRESSION","CONST","CONSTRAINT","CREATE","CROSS","CUBE","CURRENT","D","DATA","DATABASE","DATABASES","DAYS","DD","DDL","DEDUPLICATE","DEFAULT","DEFINER","DELAY","DELETE","DELETED","DEPENDS","DESC","DESCENDING","DESCRIBE","DETACH","DETACHED","DICTIONARIES","DICTIONARY","DISK","DISTINCT","DIV","DOUBLE_SHA1_HASH","DOUBLE_SHA1_PASSWORD","DROP","ELSE","ENABLED","END","ENFORCED","ENGINE","ENGINES","EPHEMERAL","ESTIMATE","EVENT","EVENTS","EVERY","EXCEPT","EXCHANGE","EXISTS","EXPLAIN","EXPRESSION","EXTENDED","EXTERNAL","FAKE","FALSE","FETCH","FIELDS","FILESYSTEM","FILL","FILTER","FINAL","FIRST","FOLLOWING","FOR","FOREIGN","FORMAT","FREEZE","FROM","FULL","FULLTEXT","FUNCTION","FUNCTIONS","GLOBAL","GRANT","GRANTEES","GRANTS","GRANULARITY","GROUP","GROUPING","GROUPS","H","HASH","HAVING","HDFS","HH","HIERARCHICAL","HOST","HOURS","HTTP","IDENTIFIED","ILIKE","IN","INDEX","INDEXES","INDICES","INFILE","INHERIT","INJECTIVE","INNER","INSERT","INTERPOLATE","INTERSECT","INTERVAL","INTO","INVISIBLE","INVOKER","IP","IS","IS_OBJECT_ID","JOIN","JWT","KERBEROS","KEY","KEYED","KEYS","KILL","KIND","LARGE","LAST","LAYOUT","LDAP","LEADING","LEVEL","LIFETIME","LIGHTWEIGHT","LIKE","LIMIT","LIMITS","LINEAR","LIST","LIVE","LOCAL","M","MASK","MATERIALIZED","MCS","MEMORY","MERGES","METRICS","MI","MICROSECOND","MICROSECONDS","MILLISECONDS","MINUTES","MM","MODIFY","MONTHS","MOVE","MS","MUTATION","N","NAME","NAMED","NANOSECOND","NANOSECONDS","NEXT","NO","NONE","NOT","NO_PASSWORD","NS","NULL","NULLS","OBJECT","OFFSET","ON","ONLY","OPTIMIZE","OPTION","OR","ORDER","OUTER","OUTFILE","OVER","OVERRIDABLE","OVERRIDE","PART","PARTIAL","PARTITION","PARTITIONS","PART_MOVE_TO_SHARD","PASTE","PERIODIC","PERMANENTLY","PERMISSIVE","PERSISTENT","PIPELINE","PLAINTEXT_PASSWORD","PLAN","POLICY","POPULATE","PRECEDING","PRECISION","PREWHERE","PRIMARY","PRIVILEGES","PROCESSLIST","PROFILE","PROJECTION","PROTOBUF","PULL","Q","QQ","QUALIFY","QUARTERS","QUERY","QUOTA","RANDOMIZE","RANDOMIZED","RANGE","READONLY","REALM","RECOMPRESS","RECURSIVE","REFERENCES","REFRESH","REGEXP","REMOVE","RENAME","RESET","RESPECT","RESTORE","RESTRICT","RESTRICTIVE","RESUME","REVOKE","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","S","S3","SALT","SAMPLE","SAN","SCHEME","SECONDS","SECURITY","SELECT","SEMI","SEQUENTIAL","SERVER","SET","SETS","SETTING","SETTINGS","SHA256_HASH","SHA256_PASSWORD","SHARD","SHOW","SIGNED","SIMPLE","SNAPSHOT","SOURCE","SPATIAL","SQL","SQL_TSI_DAY","SQL_TSI_HOUR","SQL_TSI_MICROSECOND","SQL_TSI_MILLISECOND","SQL_TSI_MINUTE","SQL_TSI_MONTH","SQL_TSI_NANOSECOND","SQL_TSI_QUARTER","SQL_TSI_SECOND","SQL_TSI_WEEK","SQL_TSI_YEAR","SS","SSH_KEY","SSL_CERTIFICATE","STALENESS","START","STATISTICS","STDOUT","STEP","STORAGE","STRICT","STRICTLY_ASCENDING","SUBPARTITION","SUBPARTITIONS","SUSPEND","SYNC","SYNTAX","SYSTEM","TABLE","TABLES","TAGS","TEMPORARY","TEST","THAN","THEN","TIES","TIME","TO","TOP","TOTALS","TRACKING","TRAILING","TRANSACTION","TREE","TRIGGER","TRUE","TRUNCATE","TTL","TYPE","TYPEOF","UNBOUNDED","UNDROP","UNFREEZE","UNION","UNIQUE","UNSET","UNSIGNED","UNTIL","UPDATE","URL","USE","USING","UUID","VALID","VALUES","VARYING","VIEW","VISIBLE","VOLUME","WATCH","WATERMARK","WEEKS","WHEN","WHERE","WINDOW","WITH","WITH_ITEMINDEX","WK","WRITABLE","WW","YEARS","YY","YYYY","ZKPATH"],Io=["AGGREGATEFUNCTION","ARRAY","BFLOAT16","BIGINT","BIGINT SIGNED","BIGINT UNSIGNED","BINARY","BINARY LARGE OBJECT","BINARY VARYING","BIT","BLOB","BYTE","BYTEA","BOOL","CHAR","CHAR LARGE OBJECT","CHAR VARYING","CHARACTER","CHARACTER LARGE OBJECT","CHARACTER VARYING","CLOB","DEC","DOUBLE","DOUBLE PRECISION","DATE","DATE32","DATETIME","DATETIME32","DATETIME64","DECIMAL","DECIMAL128","DECIMAL256","DECIMAL32","DECIMAL64","DYNAMIC","ENUM","ENUM","ENUM16","ENUM8","FIXED","FLOAT","FIXEDSTRING","FLOAT32","FLOAT64","GEOMETRY","INET4","INET6","INT","INT SIGNED","INT UNSIGNED","INT1","INT1 SIGNED","INT1 UNSIGNED","INTEGER","INTEGER SIGNED","INTEGER UNSIGNED","IPV4","IPV6","INT128","INT16","INT256","INT32","INT64","INT8","INTERVALDAY","INTERVALHOUR","INTERVALMICROSECOND","INTERVALMILLISECOND","INTERVALMINUTE","INTERVALMONTH","INTERVALNANOSECOND","INTERVALQUARTER","INTERVALSECOND","INTERVALWEEK","INTERVALYEAR","JSON","LONGBLOB","LONGTEXT","LINESTRING","LOWCARDINALITY","MEDIUMBLOB","MEDIUMINT","MEDIUMINT SIGNED","MEDIUMINT UNSIGNED","MEDIUMTEXT","MAP","MULTILINESTRING","MULTIPOLYGON","NATIONAL CHAR","NATIONAL CHAR VARYING","NATIONAL CHARACTER","NATIONAL CHARACTER LARGE OBJECT","NATIONAL CHARACTER VARYING","NCHAR","NCHAR LARGE OBJECT","NCHAR VARYING","NUMERIC","NVARCHAR","NESTED","NOTHING","NULLABLE","OBJECT","POINT","POLYGON","REAL","RING","SET","SIGNED","SINGLE","SMALLINT","SMALLINT SIGNED","SMALLINT UNSIGNED","SIMPLEAGGREGATEFUNCTION","STRING","TEXT","TIMESTAMP","TINYBLOB","TINYINT","TINYINT SIGNED","TINYINT UNSIGNED","TINYTEXT","TIME","TIME64","TUPLE","UINT128","UINT16","UINT256","UINT32","UINT64","UINT8","UNSIGNED","UUID","VARBINARY","VARCHAR","VARCHAR2","VARIANT","YEAR","BOOL","BOOLEAN"],Oo=y(["SELECT [DISTINCT]","MODIFY QUERY SELECT [DISTINCT]"]),lo=y(["SET","WITH","FROM","SAMPLE","PREWHERE","WHERE","GROUP BY","HAVING","QUALIFY","ORDER BY","LIMIT","SETTINGS","INTO OUTFILE","FORMAT","WINDOW","PARTITION BY","INSERT INTO","VALUES","DEPENDS ON","MOVE {USER | ROLE | QUOTA | SETTINGS PROFILE | ROW POLICY}","GRANT","REVOKE","CHECK GRANT","SET [DEFAULT] ROLE [NONE | ALL | ALL EXCEPT]","DEDUPLICATE BY","MODIFY STATISTICS","TYPE","ALTER USER [IF EXISTS]","ALTER [ROW] POLICY [IF EXISTS]","DROP {USER | ROLE | QUOTA | PROFILE | SETTINGS PROFILE | ROW POLICY | POLICY} [IF EXISTS]"]),sr=y(["CREATE [OR REPLACE] [TEMPORARY] TABLE [IF NOT EXISTS]"]),rE=y(["ALL EXCEPT","ON CLUSTER","UPDATE","SYSTEM RELOAD {DICTIONARIES | DICTIONARY | FUNCTIONS | FUNCTION | ASYNCHRONOUS METRICS}","SYSTEM DROP {DNS CACHE | MARK CACHE | ICEBERG METADATA CACHE | TEXT INDEX DICTIONARY CACHE | TEXT INDEX HEADER CACHE | TEXT INDEX POSTINGS CACHE | REPLICA | DATABASE REPLICA | UNCOMPRESSED CACHE | COMPILED EXPRESSION CACHE | QUERY CONDITION CACHE | QUERY CACHE | FORMAT SCHEMA CACHE | FILESYSTEM CACHE}","SYSTEM FLUSH LOGS","SYSTEM RELOAD {CONFIG | USERS}","SYSTEM SHUTDOWN","SYSTEM KILL","SYSTEM FLUSH DISTRIBUTED","SYSTEM START DISTRIBUTED SENDS","SYSTEM {STOP | START} {LISTEN | MERGES | TTL MERGES | MOVES | FETCHES | REPLICATED SENDS | REPLICATION QUEUES | PULLING REPLICATION LOG}","SYSTEM {SYNC | RESTART | RESTORE} REPLICA","SYSTEM {SYNC | RESTORE} DATABASE REPLICA","SYSTEM RESTART REPLICAS","SYSTEM UNFREEZE","SYSTEM WAIT LOADING PARTS","SYSTEM {LOAD | UNLOAD} PRIMARY KEY","SYSTEM {STOP | START} [REPLICATED] VIEW","SYSTEM {STOP | START} VIEWS","SYSTEM {REFRESH | CANCEL | WAIT} VIEW","WITH NAME","SHOW [CREATE] {TABLE | TEMPORARY TABLE | DICTIONARY | VIEW | DATABASE}","SHOW DATABASES [[NOT] {LIKE | ILIKE}]","SHOW [FULL] [TEMPORARY] TABLES [FROM | IN]","SHOW [EXTENDED] [FULL] COLUMNS {FROM | IN}","ATTACH {TABLE | DICTIONARY | DATABASE} [IF NOT EXISTS]","DETACH {TABLE | DICTIONARY | DATABASE} [IF EXISTS]","PERMANENTLY","SYNC","DROP {DICTIONARY | DATABASE | PROFILE | VIEW | FUNCTION | NAMED COLLECTION} [IF EXISTS]","DROP [TEMPORARY] TABLE [IF EXISTS] [IF EMPTY]","RENAME TO","EXISTS [TEMPORARY] {TABLE | DICTIONARY | DATABASE}","KILL QUERY","OPTIMIZE TABLE","RENAME {TABLE | DICTIONARY | DATABASE}","EXCHANGE {TABLES | DICTIONARIES}","TRUNCATE TABLE [IF EXISTS]","EXECUTE AS","USE","TO","UNDROP TABLE","CREATE {DATABASE | NAMED COLLECTION} [IF NOT EXISTS]","CREATE [OR REPLACE] {VIEW | DICTIONARY} [IF NOT EXISTS]","CREATE MATERIALIZED VIEW [IF NOT EXISTS]","CREATE FUNCTION","CREATE {USER | ROLE | QUOTA | SETTINGS PROFILE} [IF NOT EXISTS | OR REPLACE]","CREATE [ROW] POLICY [IF NOT EXISTS | OR REPLACE]","REPLACE [TEMPORARY] TABLE [IF NOT EXISTS]","ALTER {ROLE | QUOTA | SETTINGS PROFILE} [IF EXISTS]","ALTER [TEMPORARY] TABLE","ALTER NAMED COLLECTION [IF EXISTS]","GRANTEES","NOT IDENTIFIED","RESET AUTHENTICATION METHODS TO NEW","{IDENTIFIED | ADD IDENTIFIED} [WITH | BY]","[ADD | DROP] HOST {LOCAL | NAME | REGEXP | IP | LIKE}","VALID UNTIL","DROP [ALL] {PROFILES | SETTINGS}","{ADD | MODIFY} SETTINGS","ADD PROFILES","APPLY DELETED MASK","IN PARTITION","{ADD | DROP | RENAME | CLEAR | COMMENT | MODIFY | ALTER | MATERIALIZE} COLUMN","{DETACH | DROP | ATTACH | FETCH | MOVE} {PART | PARTITION}","DROP DETACHED {PART | PARTITION}","{FORGET | REPLACE} PARTITION","CLEAR COLUMN","{FREEZE | UNFREEZE} [PARTITION]","CLEAR INDEX","TO {DISK | VOLUME}","[DELETE | REWRITE PARTS] IN PARTITION","{MODIFY | RESET} SETTING","DELETE WHERE","MODIFY ORDER BY","{MODIFY | REMOVE} SAMPLE BY","{ADD | MATERIALIZE | CLEAR} INDEX [IF NOT EXISTS]","DROP INDEX [IF EXISTS]","GRANULARITY","AFTER","FIRST","ADD CONSTRAINT [IF NOT EXISTS]","DROP CONSTRAINT [IF EXISTS]","MODIFY TTL","REMOVE TTL","ADD STATISTICS [IF NOT EXISTS]","{DROP | CLEAR} STATISTICS [IF EXISTS]","MATERIALIZE STATISTICS [ALL | IF EXISTS]","KEYED BY","NOT KEYED","FOR [RANDOMIZED] INTERVAL","AS {PERMISSIVE | RESTRICTIVE}","FOR SELECT","ADD PROJECTION [IF NOT EXISTS]","{DROP | MATERIALIZE | CLEAR} PROJECTION [IF EXISTS]","REFRESH {EVERY | AFTER}","RANDOMIZE FOR","APPEND","APPEND TO","DELETE FROM","EXPLAIN [AST | SYNTAX | QUERY TREE | PLAN | PIPELINE | ESTIMATE | TABLE OVERRIDE]","GRANT ON CLUSTER","GRANT CURRENT GRANTS","WITH GRANT OPTION","REVOKE ON CLUSTER","ADMIN OPTION FOR","CHECK TABLE","PARTITION ID","{DESC | DESCRIBE} TABLE"]),uo=y(["UNION [ALL | DISTINCT]","PARALLEL WITH"]),Co=y(["[GLOBAL] [INNER|LEFT|RIGHT|FULL|CROSS] [OUTER|SEMI|ANTI|ANY|ALL|ASOF] JOIN","[LEFT] ARRAY JOIN"]),co=y(["{ROWS | RANGE} BETWEEN","ALTER MATERIALIZE STATISTICS"]),_o={name:"clickhouse",tokenizerOptions:{reservedSelect:Oo,reservedClauses:[...lo,...sr,...rE],reservedSetOperations:uo,reservedJoins:Co,reservedKeywordPhrases:co,reservedKeywords:No,reservedDataTypes:Io,reservedFunctionNames:So,extraParens:["[]","{}"],lineCommentTypes:["#","--"],nestedBlockComments:!1,underscoresInNumbers:!0,stringTypes:["$$","''-qq-bs"],identTypes:['""-qq-bs',"``"],paramTypes:{custom:[{regex:String.raw`\{[^:']+:[^}]+\}`,key:E=>{const t=/\{([^:]+):/.exec(E);return t?t[1].trim():E}}]},operators:["%","||","?",":","==","<=>","->"],postProcess:Lo},formatOptions:{onelineClauses:[...sr,...rE],tabularOnelineClauses:rE}};function Lo(E){return E.map((t,r)=>{const n=E[r+1]||It,s=E[r-1]||It;return t.type===$.RESERVED_SELECT&&(n.type===$.COMMA||s.type===$.RESERVED_CLAUSE||s.type===$.COMMA)?Object.assign(Object.assign({},t),{type:$.RESERVED_KEYWORD}):Ot.SET(t)&&n.type===$.OPEN_PAREN?Object.assign(Object.assign({},t),{type:$.RESERVED_FUNCTION_NAME}):t})}const Do=["ARRAY_AGG","AVG","CORRELATION","COUNT","COUNT_BIG","COVARIANCE","COVARIANCE_SAMP","CUME_DIST","GROUPING","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_ICPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_SAMP","SUM","VARIANCE","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","AGE","ARRAY_DELETE","ARRAY_FIRST","ARRAY_LAST","ARRAY_NEXT","ARRAY_PRIOR","ASCII","ASCII_STR","ASIN","ATAN","ATAN2","ATANH","BITAND","BITANDNOT","BITOR","BITXOR","BITNOT","BPCHAR","BSON_TO_JSON","BTRIM","CARDINALITY","CEILING","CEIL","CHARACTER_LENGTH","CHR","COALESCE","COLLATION_KEY","COLLATION_KEY_BIT","COMPARE_DECFLOAT","CONCAT","COS","COSH","COT","CURSOR_ROWCOUNT","DATAPARTITIONNUM","DATE_PART","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFWEEK_ISO","DAYOFYEAR","DAYS","DAYS_BETWEEN","DAYS_TO_END_OF_MONTH","DBPARTITIONNUM","DECFLOAT","DECFLOAT_FORMAT","DECODE","DECRYPT_BIN","DECRYPT_CHAR","DEGREES","DEREF","DIFFERENCE","DIGITS","DOUBLE_PRECISION","EMPTY_BLOB","EMPTY_CLOB","EMPTY_DBCLOB","EMPTY_NCLOB","ENCRYPT","EVENT_MON_STATE","EXP","EXTRACT","FIRST_DAY","FLOOR","FROM_UTC_TIMESTAMP","GENERATE_UNIQUE","GETHINT","GREATEST","HASH","HASH4","HASH8","HASHEDVALUE","HEX","HEXTORAW","HOUR","HOURS_BETWEEN","IDENTITY_VAL_LOCAL","IFNULL","INITCAP","INSERT","INSTR","INSTR2","INSTR4","INSTRB","INTNAND","INTNOR","INTNXOR","INTNNOT","ISNULL","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_VALUE","JULIAN_DAY","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LENGTH2","LENGTH4","LENGTHB","LN","LOCATE","LOCATE_IN_STRING","LOG10","LONG_VARCHAR","LONG_VARGRAPHIC","LOWER","LPAD","LTRIM","MAX","MAX_CARDINALITY","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MINUTES_BETWEEN","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MULTIPLY_ALT","NEXT_DAY","NEXT_MONTH","NEXT_QUARTER","NEXT_WEEK","NEXT_YEAR","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARAMETER","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","QUOTE_IDENT","QUOTE_LITERAL","RADIANS","RAISE_ERROR","RAND","RANDOM","RAWTOHEX","REC2XML","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH_COUNT","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RID_BIT","RIGHT","ROUND","ROUND_TIMESTAMP","RPAD","RTRIM","SECLABEL","SECLABEL_BY_NAME","SECLABEL_TO_CHAR","SECOND","SECONDS_BETWEEN","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTR2","SUBSTR4","SUBSTRB","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","THIS_MONTH","THIS_QUARTER","THIS_WEEK","THIS_YEAR","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF","TIMEZONE","TO_CHAR","TO_CLOB","TO_DATE","TO_HEX","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_UTC_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM","TRIM_ARRAY","TRUNC_TIMESTAMP","TRUNCATE","TRUNC","TYPE_ID","TYPE_NAME","TYPE_SCHEMA","UCASE","UNICODE_STR","UPPER","VALUE","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT","VARCHAR_FORMAT_BIT","VERIFY_GROUP_FOR_USER","VERIFY_ROLE_FOR_USER","VERIFY_TRUSTED_CONTEXT_ROLE_FOR_USER","WEEK","WEEK_ISO","WEEKS_BETWEEN","WIDTH_BUCKET","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLQUERY","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XMLXSROBJECTID","XSLTRANSFORM","YEAR","YEARS_BETWEEN","YMD_BETWEEN","BASE_TABLE","JSON_TABLE","UNNEST","XMLTABLE","RANK","DENSE_RANK","NTILE","LAG","LEAD","ROW_NUMBER","FIRST_VALUE","LAST_VALUE","NTH_VALUE","RATIO_TO_REPORT","CAST"],po=["ACTIVATE","ADD","AFTER","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","AS","ASENSITIVE","ASSOCIATE","ASUTIME","AT","ATTRIBUTES","AUDIT","AUTHORIZATION","AUX","AUXILIARY","BEFORE","BEGIN","BETWEEN","BINARY","BUFFERPOOL","BY","CACHE","CALL","CALLED","CAPTURE","CARDINALITY","CASCADED","CASE","CAST","CHECK","CLONE","CLOSE","CLUSTER","COLLECTION","COLLID","COLUMN","COMMENT","COMMIT","CONCAT","CONDITION","CONNECT","CONNECTION","CONSTRAINT","CONTAINS","CONTINUE","COUNT","COUNT_BIG","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_LC_CTYPE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATA","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFINITION","DELETE","DENSERANK","DENSE_RANK","DESCRIBE","DESCRIPTOR","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DSSIZE","DYNAMIC","EACH","EDITPROC","ELSE","ELSEIF","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ERASE","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXPLAIN","EXTENDED","EXTERNAL","EXTRACT","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST1","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GRAPHIC","GROUP","HANDLER","HASH","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IMMEDIATE","IMPORT","IN","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDICATOR","INDICATORS","INF","INFINITY","INHERIT","INNER","INOUT","INSENSITIVE","INSERT","INTEGRITY","INTERSECT","INTO","IS","ISNULL","ISOBID","ISOLATION","ITERATE","JAR","JAVA","JOIN","KEEP","KEY","LABEL","LANGUAGE","LAST3","LATERAL","LC_CTYPE","LEAVE","LEFT","LIKE","LIMIT","LINKTYPE","LOCAL","LOCALDATE","LOCALE","LOCALTIME","LOCALTIMESTAMP","LOCATOR","LOCATORS","LOCK","LOCKMAX","LOCKSIZE","LOOP","MAINTAINED","MATERIALIZED","MAXVALUE","MICROSECOND","MICROSECONDS","MINUTE","MINUTES","MINVALUE","MODE","MODIFIES","MONTH","MONTHS","NAN","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT2","NOTNULL","NULL","NULLS","NUMPARTS","OBID","OF","OFF","OFFSET","OLD","OLD_TABLE","ON","OPEN","OPTIMIZATION","OPTIMIZE","OPTION","OR","ORDER","OUT","OUTER","OVER","OVERRIDING","PACKAGE","PADDED","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSWORD","PATH","PERCENT","PIECESIZE","PLAN","POSITION","PRECISION","PREPARE","PREVVAL","PRIMARY","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PSID","PUBLIC","QUERY","QUERYNO","RANGE","RANK","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESTRICT","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNS","REVOKE","RIGHT","ROLE","ROLLBACK","ROUND_CEILING","ROUND_DOWN","ROUND_FLOOR","ROUND_HALF_DOWN","ROUND_HALF_EVEN","ROUND_HALF_UP","ROUND_UP","ROUTINE","ROW","ROWNUMBER","ROWS","ROWSET","ROW_NUMBER","RRN","RUN","SAVEPOINT","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURITY","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","STACKED","STANDARD","START","STARTING","STATEMENT","STATIC","STATMENT","STAY","STOGROUP","STORES","STYLE","SUBSTRING","SUMMARY","SYNONYM","SYSFUN","SYSIBM","SYSPROC","SYSTEM","SYSTEM_USER","TABLE","TABLESPACE","THEN","TO","TRANSACTION","TRIGGER","TRIM","TRUNCATE","TYPE","UNDO","UNION","UNIQUE","UNTIL","UPDATE","USAGE","USER","USING","VALIDPROC","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VIEW","VOLATILE","VOLUMES","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHOUT","WLM","WRITE","XMLELEMENT","XMLEXISTS","XMLNAMESPACES","YEAR","YEARS"],Po=["ARRAY","BIGINT","BINARY","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATE","DATETIME","DBCLOB","DEC","DECIMAL","DOUBLE","DOUBLE PRECISION","FLOAT","FLOAT4","FLOAT8","GRAPHIC","INT","INT2","INT4","INT8","INTEGER","INTERVAL","LONG VARCHAR","LONG VARGRAPHIC","NCHAR","NCHR","NCLOB","NVARCHAR","NUMERIC","SMALLINT","REAL","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC"],fo=y(["SELECT [ALL | DISTINCT]"]),ho=y(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH NEXT","FOR UPDATE [OF]","FOR {READ | FETCH} ONLY","FOR {RR | CS | UR | RS} [USE AND KEEP {SHARE | UPDATE | EXCLUSIVE} LOCKS]","WAIT FOR OUTCOME","SKIP LOCKED DATA","INTO","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT"]),Tr=y(["CREATE [GLOBAL TEMPORARY | EXTERNAL] TABLE [IF NOT EXISTS]"]),nE=y(["CREATE [OR REPLACE] VIEW","UPDATE","WHERE CURRENT OF","WITH {RR | RS | CS | UR}","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME COLUMN","ALTER [COLUMN]","SET DATA TYPE","SET NOT NULL","DROP {DEFAULT | GENERATED | NOT NULL}","TRUNCATE [TABLE]","ALLOCATE","ALTER AUDIT POLICY","ALTER BUFFERPOOL","ALTER DATABASE PARTITION GROUP","ALTER DATABASE","ALTER EVENT MONITOR","ALTER FUNCTION","ALTER HISTOGRAM TEMPLATE","ALTER INDEX","ALTER MASK","ALTER METHOD","ALTER MODULE","ALTER NICKNAME","ALTER PACKAGE","ALTER PERMISSION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SECURITY LABEL COMPONENT","ALTER SECURITY POLICY","ALTER SEQUENCE","ALTER SERVER","ALTER SERVICE CLASS","ALTER STOGROUP","ALTER TABLESPACE","ALTER THRESHOLD","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER TYPE","ALTER USAGE LIST","ALTER USER MAPPING","ALTER VIEW","ALTER WORK ACTION SET","ALTER WORK CLASS SET","ALTER WORKLOAD","ALTER WRAPPER","ALTER XSROBJECT","ALTER STOGROUP","ALTER TABLESPACE","ALTER TRIGGER","ALTER TRUSTED CONTEXT","ALTER VIEW","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","AUDIT","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON","COMMIT [WORK]","CONNECT","CREATE [OR REPLACE] [PUBLIC] ALIAS","CREATE AUDIT POLICY","CREATE BUFFERPOOL","CREATE DATABASE PARTITION GROUP","CREATE EVENT MONITOR","CREATE [OR REPLACE] FUNCTION","CREATE FUNCTION MAPPING","CREATE HISTOGRAM TEMPLATE","CREATE [UNIQUE] INDEX","CREATE INDEX EXTENSION","CREATE [OR REPLACE] MASK","CREATE [SPECIFIC] METHOD","CREATE [OR REPLACE] MODULE","CREATE [OR REPLACE] NICKNAME","CREATE [OR REPLACE] PERMISSION","CREATE [OR REPLACE] PROCEDURE","CREATE ROLE","CREATE SCHEMA","CREATE SECURITY LABEL [COMPONENT]","CREATE SECURITY POLICY","CREATE [OR REPLACE] SEQUENCE","CREATE SERVICE CLASS","CREATE SERVER","CREATE STOGROUP","CREATE SYNONYM","CREATE [LARGE | REGULAR | {SYSTEM | USER} TEMPORARY] TABLESPACE","CREATE THRESHOLD","CREATE {TRANSFORM | TRANSFORMS} FOR","CREATE [OR REPLACE] TRIGGER","CREATE TRUSTED CONTEXT","CREATE [OR REPLACE] TYPE","CREATE TYPE MAPPING","CREATE USAGE LIST","CREATE USER MAPPING FOR","CREATE [OR REPLACE] VARIABLE","CREATE WORK ACTION SET","CREATE WORK CLASS SET","CREATE WORKLOAD","CREATE WRAPPER","DECLARE","DECLARE GLOBAL TEMPORARY TABLE","DESCRIBE [INPUT | OUTPUT]","DISCONNECT","DROP [PUBLIC] ALIAS","DROP AUDIT POLICY","DROP BUFFERPOOL","DROP DATABASE PARTITION GROUP","DROP EVENT MONITOR","DROP [SPECIFIC] FUNCTION","DROP FUNCTION MAPPING","DROP HISTOGRAM TEMPLATE","DROP INDEX [EXTENSION]","DROP MASK","DROP [SPECIFIC] METHOD","DROP MODULE","DROP NICKNAME","DROP PACKAGE","DROP PERMISSION","DROP [SPECIFIC] PROCEDURE","DROP ROLE","DROP SCHEMA","DROP SECURITY LABEL [COMPONENT]","DROP SECURITY POLICY","DROP SEQUENCE","DROP SERVER","DROP SERVICE CLASS","DROP STOGROUP","DROP TABLE HIERARCHY","DROP {TABLESPACE | TABLESPACES}","DROP {TRANSFORM | TRANSFORMS}","DROP THRESHOLD","DROP TRIGGER","DROP TRUSTED CONTEXT","DROP TYPE [MAPPING]","DROP USAGE LIST","DROP USER MAPPING FOR","DROP VARIABLE","DROP VIEW [HIERARCHY]","DROP WORK {ACTION | CLASS} SET","DROP WORKLOAD","DROP WRAPPER","DROP XSROBJECT","END DECLARE SECTION","EXECUTE [IMMEDIATE]","EXPLAIN {PLAN [SECTION] | ALL}","FETCH [FROM]","FLUSH {BUFFERPOOL | BUFFERPOOLS} ALL","FLUSH EVENT MONITOR","FLUSH FEDERATED CACHE","FLUSH OPTIMIZATION PROFILE CACHE","FLUSH PACKAGE CACHE [DYNAMIC]","FLUSH AUTHENTICATION CACHE [FOR ALL]","FREE LOCATOR","GET DIAGNOSTICS","GOTO","GRANT","INCLUDE","ITERATE","LEAVE","LOCK TABLE","LOOP","OPEN","PIPE","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX | STOGROUP | TABLESPACE]","REPEAT","RESIGNAL","RETURN","REVOKE","ROLLBACK [WORK] [TO SAVEPOINT]","SAVEPOINT","SET COMPILATION ENVIRONMENT","SET CONNECTION","SET CURRENT","SET ENCRYPTION PASSWORD","SET EVENT MONITOR STATE","SET INTEGRITY","SET PASSTHRU","SET PATH","SET ROLE","SET SCHEMA","SET SERVER OPTION","SET {SESSION AUTHORIZATION | SESSION_USER}","SET USAGE LIST","SIGNAL","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}","WHILE"]),Mo=y(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),Uo=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),mo=y(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),Bo=y([]),go={name:"db2",tokenizerOptions:{reservedSelect:fo,reservedClauses:[...ho,...Tr,...nE],reservedSetOperations:Mo,reservedJoins:Uo,reservedKeywordPhrases:mo,reservedDataTypePhrases:Bo,reservedKeywords:po,reservedDataTypes:Po,reservedFunctionNames:Do,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N","U&"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","%","|","&","^","~","¬=","¬>","¬<","!>","!<","^=","^>","^<","||","->","=>"]},formatOptions:{onelineClauses:[...Tr,...nE],tabularOnelineClauses:nE}},yo=["ARRAY_AGG","AVG","CORR","CORRELATION","COUNT","COUNT_BIG","COVAR_POP","COVARIANCE","COVAR","COVAR_SAMP","COVARIANCE_SAMP","EVERY","GROUPING","JSON_ARRAYAGG","JSON_OBJECTAGG","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","SOME","STDDEV_POP","STDDEV","STDDEV_SAMP","SUM","VAR_POP","VARIANCE","VAR","VAR_SAMP","VARIANCE_SAMP","XMLAGG","XMLGROUP","ABS","ABSVAL","ACOS","ADD_DAYS","ADD_HOURS","ADD_MINUTES","ADD_MONTHS","ADD_SECONDS","ADD_YEARS","ANTILOG","ARRAY_MAX_CARDINALITY","ARRAY_TRIM","ASCII","ASIN","ATAN","ATAN2","ATANH","BASE64_DECODE","BASE64_ENCODE","BIT_LENGTH","BITAND","BITANDNOT","BITNOT","BITOR","BITXOR","BSON_TO_JSON","CARDINALITY","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","COALESCE","COMPARE_DECFLOAT","CONCAT","CONTAINS","COS","COSH","COT","CURDATE","CURTIME","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK_ISO","DAYOFWEEK","DAYOFYEAR","DAYS","DBPARTITIONNAME","DBPARTITIONNUM","DECFLOAT_FORMAT","DECFLOAT_SORTKEY","DECRYPT_BINARY","DECRYPT_BIT","DECRYPT_CHAR","DECRYPT_DB","DEGREES","DIFFERENCE","DIGITS","DLCOMMENT","DLLINKTYPE","DLURLCOMPLETE","DLURLPATH","DLURLPATHONLY","DLURLSCHEME","DLURLSERVER","DLVALUE","DOUBLE_PRECISION","DOUBLE","ENCRPYT","ENCRYPT_AES","ENCRYPT_AES256","ENCRYPT_RC2","ENCRYPT_TDES","EXP","EXTRACT","FIRST_DAY","FLOOR","GENERATE_UNIQUE","GET_BLOB_FROM_FILE","GET_CLOB_FROM_FILE","GET_DBCLOB_FROM_FILE","GET_XML_FILE","GETHINT","GREATEST","HASH_MD5","HASH_ROW","HASH_SHA1","HASH_SHA256","HASH_SHA512","HASH_VALUES","HASHED_VALUE","HEX","HEXTORAW","HOUR","HTML_ENTITY_DECODE","HTML_ENTITY_ENCODE","HTTP_DELETE_BLOB","HTTP_DELETE","HTTP_GET_BLOB","HTTP_GET","HTTP_PATCH_BLOB","HTTP_PATCH","HTTP_POST_BLOB","HTTP_POST","HTTP_PUT_BLOB","HTTP_PUT","IDENTITY_VAL_LOCAL","IFNULL","INSERT","INSTR","INTERPRET","ISFALSE","ISNOTFALSE","ISNOTTRUE","ISTRUE","JSON_ARRAY","JSON_OBJECT","JSON_QUERY","JSON_TO_BSON","JSON_UPDATE","JSON_VALUE","JULIAN_DAY","LAND","LAST_DAY","LCASE","LEAST","LEFT","LENGTH","LN","LNOT","LOCATE_IN_STRING","LOCATE","LOG10","LOR","LOWER","LPAD","LTRIM","MAX_CARDINALITY","MAX","MICROSECOND","MIDNIGHT_SECONDS","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","MQREAD","MQREADCLOB","MQRECEIVE","MQRECEIVECLOB","MQSEND","MULTIPLY_ALT","NEXT_DAY","NORMALIZE_DECFLOAT","NOW","NULLIF","NVL","OCTET_LENGTH","OVERLAY","PI","POSITION","POSSTR","POW","POWER","QUANTIZE","QUARTER","RADIANS","RAISE_ERROR","RANDOM","RAND","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","RID","RIGHT","ROUND_TIMESTAMP","ROUND","RPAD","RRN","RTRIM","SCORE","SECOND","SIGN","SIN","SINH","SOUNDEX","SPACE","SQRT","STRIP","STRLEFT","STRPOS","STRRIGHT","SUBSTR","SUBSTRING","TABLE_NAME","TABLE_SCHEMA","TAN","TANH","TIMESTAMP_FORMAT","TIMESTAMP_ISO","TIMESTAMPDIFF_BIG","TIMESTAMPDIFF","TO_CHAR","TO_CLOB","TO_DATE","TO_NUMBER","TO_TIMESTAMP","TOTALORDER","TRANSLATE","TRIM_ARRAY","TRIM","TRUNC_TIMESTAMP","TRUNC","TRUNCATE","UCASE","UPPER","URL_DECODE","URL_ENCODE","VALUE","VARBINARY_FORMAT","VARCHAR_BIT_FORMAT","VARCHAR_FORMAT_BINARY","VARCHAR_FORMAT","VERIFY_GROUP_FOR_USER","WEEK_ISO","WEEK","WRAP","XMLATTRIBUTES","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTEXT","XMLVALIDATE","XOR","XSLTRANSFORM","YEAR","ZONED","BASE_TABLE","HTTP_DELETE_BLOB_VERBOSE","HTTP_DELETE_VERBOSE","HTTP_GET_BLOB_VERBOSE","HTTP_GET_VERBOSE","HTTP_PATCH_BLOB_VERBOSE","HTTP_PATCH_VERBOSE","HTTP_POST_BLOB_VERBOSE","HTTP_POST_VERBOSE","HTTP_PUT_BLOB_VERBOSE","HTTP_PUT_VERBOSE","JSON_TABLE","MQREADALL","MQREADALLCLOB","MQRECEIVEALL","MQRECEIVEALLCLOB","XMLTABLE","UNPACK","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","RATIO_TO_REPORT","ROW_NUMBER","CAST"],Go=["ABSENT","ACCORDING","ACCTNG","ACTION","ACTIVATE","ADD","ALIAS","ALL","ALLOCATE","ALLOW","ALTER","AND","ANY","APPEND","APPLNAME","ARRAY","ARRAY_AGG","ARRAY_TRIM","AS","ASC","ASENSITIVE","ASSOCIATE","ATOMIC","ATTACH","ATTRIBUTES","AUTHORIZATION","AUTONOMOUS","BEFORE","BEGIN","BETWEEN","BIND","BSON","BUFFERPOOL","BY","CACHE","CALL","CALLED","CARDINALITY","CASE","CAST","CHECK","CL","CLOSE","CLUSTER","COLLECT","COLLECTION","COLUMN","COMMENT","COMMIT","COMPACT","COMPARISONS","COMPRESS","CONCAT","CONCURRENT","CONDITION","CONNECT","CONNECT_BY_ROOT","CONNECTION","CONSTANT","CONSTRAINT","CONTAINS","CONTENT","CONTINUE","COPY","COUNT","COUNT_BIG","CREATE","CREATEIN","CROSS","CUBE","CUME_DIST","CURRENT","CURRENT_DATE","CURRENT_PATH","CURRENT_SCHEMA","CURRENT_SERVER","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","CURSOR","CYCLE","DATABASE","DATAPARTITIONNAME","DATAPARTITIONNUM","DAY","DAYS","DB2GENERAL","DB2GENRL","DB2SQL","DBINFO","DBPARTITIONNAME","DBPARTITIONNUM","DEACTIVATE","DEALLOCATE","DECLARE","DEFAULT","DEFAULTS","DEFER","DEFINE","DEFINITION","DELETE","DELETING","DENSE_RANK","DENSERANK","DESC","DESCRIBE","DESCRIPTOR","DETACH","DETERMINISTIC","DIAGNOSTICS","DISABLE","DISALLOW","DISCONNECT","DISTINCT","DO","DOCUMENT","DROP","DYNAMIC","EACH","ELSE","ELSEIF","EMPTY","ENABLE","ENCODING","ENCRYPTION","END","END-EXEC","ENDING","ENFORCED","ERROR","ESCAPE","EVERY","EXCEPT","EXCEPTION","EXCLUDING","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTEND","EXTERNAL","EXTRACT","FALSE","FENCED","FETCH","FIELDPROC","FILE","FINAL","FIRST_VALUE","FOR","FOREIGN","FORMAT","FREE","FREEPAGE","FROM","FULL","FUNCTION","GBPCACHE","GENERAL","GENERATED","GET","GLOBAL","GO","GOTO","GRANT","GROUP","HANDLER","HASH","HASH_ROW","HASHED_VALUE","HAVING","HINT","HOLD","HOUR","HOURS","IDENTITY","IF","IGNORE","IMMEDIATE","IMPLICITLY","IN","INCLUDE","INCLUDING","INCLUSIVE","INCREMENT","INDEX","INDEXBP","INDICATOR","INF","INFINITY","INHERIT","INLINE","INNER","INOUT","INSENSITIVE","INSERT","INSERTING","INTEGRITY","INTERPRET","INTERSECT","INTO","IS","ISNULL","ISOLATION","ITERATE","JAVA","JOIN","JSON","JSON_ARRAY","JSON_ARRAYAGG","JSON_EXISTS","JSON_OBJECT","JSON_OBJECTAGG","JSON_QUERY","JSON_TABLE","JSON_VALUE","KEEP","KEY","KEYS","LABEL","LAG","LANGUAGE","LAST_VALUE","LATERAL","LEAD","LEAVE","LEFT","LEVEL2","LIKE","LIMIT","LINKTYPE","LISTAGG","LOCAL","LOCALDATE","LOCALTIME","LOCALTIMESTAMP","LOCATION","LOCATOR","LOCK","LOCKSIZE","LOG","LOGGED","LOOP","MAINTAINED","MASK","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MICROSECOND","MICROSECONDS","MINPCTUSED","MINUTE","MINUTES","MINVALUE","MIRROR","MIXED","MODE","MODIFIES","MONTH","MONTHS","NAMESPACE","NAN","NATIONAL","NCHAR","NCLOB","NESTED","NEW","NEW_TABLE","NEXTVAL","NO","NOCACHE","NOCYCLE","NODENAME","NODENUMBER","NOMAXVALUE","NOMINVALUE","NONE","NOORDER","NORMALIZED","NOT","NOTNULL","NTH_VALUE","NTILE","NULL","NULLS","NVARCHAR","OBID","OBJECT","OF","OFF","OFFSET","OLD","OLD_TABLE","OMIT","ON","ONLY","OPEN","OPTIMIZE","OPTION","OR","ORDER","ORDINALITY","ORGANIZE","OUT","OUTER","OVER","OVERLAY","OVERRIDING","PACKAGE","PADDED","PAGE","PAGESIZE","PARAMETER","PART","PARTITION","PARTITIONED","PARTITIONING","PARTITIONS","PASSING","PASSWORD","PATH","PCTFREE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PERIOD","PERMISSION","PIECESIZE","PIPE","PLAN","POSITION","PREPARE","PREVVAL","PRIMARY","PRIOR","PRIQTY","PRIVILEGES","PROCEDURE","PROGRAM","PROGRAMID","QUERY","RANGE","RANK","RATIO_TO_REPORT","RCDFMT","READ","READS","RECOVERY","REFERENCES","REFERENCING","REFRESH","REGEXP_LIKE","RELEASE","RENAME","REPEAT","RESET","RESIGNAL","RESTART","RESULT","RESULT_SET_LOCATOR","RETURN","RETURNING","RETURNS","REVOKE","RID","RIGHT","ROLLBACK","ROLLUP","ROUTINE","ROW","ROW_NUMBER","ROWNUMBER","ROWS","RRN","RUN","SAVEPOINT","SBCS","SCALAR","SCHEMA","SCRATCHPAD","SCROLL","SEARCH","SECOND","SECONDS","SECQTY","SECURED","SELECT","SENSITIVE","SEQUENCE","SESSION","SESSION_USER","SET","SIGNAL","SIMPLE","SKIP","SNAN","SOME","SOURCE","SPECIFIC","SQL","SQLID","SQLIND_DEFAULT","SQLIND_UNASSIGNED","STACKED","START","STARTING","STATEMENT","STATIC","STOGROUP","SUBSTRING","SUMMARY","SYNONYM","SYSTEM_TIME","SYSTEM_USER","TABLE","TABLESPACE","TABLESPACES","TAG","THEN","THREADSAFE","TO","TRANSACTION","TRANSFER","TRIGGER","TRIM","TRIM_ARRAY","TRUE","TRUNCATE","TRY_CAST","TYPE","UNDO","UNION","UNIQUE","UNIT","UNKNOWN","UNNEST","UNTIL","UPDATE","UPDATING","URI","USAGE","USE","USER","USERID","USING","VALUE","VALUES","VARIABLE","VARIANT","VCAT","VERSION","VERSIONING","VIEW","VOLATILE","WAIT","WHEN","WHENEVER","WHERE","WHILE","WITH","WITHIN","WITHOUT","WRAPPED","WRAPPER","WRITE","WRKSTNNAME","XMLAGG","XMLATTRIBUTES","XMLCAST","XMLCOMMENT","XMLCONCAT","XMLDOCUMENT","XMLELEMENT","XMLFOREST","XMLGROUP","XMLNAMESPACES","XMLPARSE","XMLPI","XMLROW","XMLSERIALIZE","XMLTABLE","XMLTEXT","XMLVALIDATE","XSLTRANSFORM","XSROBJECT","YEAR","YEARS","YES","ZONE"],Fo=["ARRAY","BIGINT","BINARY","BIT","BLOB","BOOLEAN","CCSID","CHAR","CHARACTER","CLOB","DATA","DATALINK","DATE","DBCLOB","DECFLOAT","DECIMAL","DEC","DOUBLE","DOUBLE PRECISION","FLOAT","GRAPHIC","INT","INTEGER","LONG","NUMERIC","REAL","ROWID","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR","VARGRAPHIC","XML"],Ho=y(["SELECT [ALL | DISTINCT]"]),bo=y(["WITH [RECURSIVE]","INTO","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY [INPUT SEQUENCE]","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","FOR READ ONLY","OPTIMIZE FOR","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","DELETE","INSERT","FOR SYSTEM NAME"]),or=y(["CREATE [OR REPLACE] TABLE"]),sE=y(["CREATE [OR REPLACE] [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","WITH {NC | RR | RS | CS | UR}","DELETE FROM","DROP TABLE","ALTER TABLE","ADD [COLUMN]","ALTER [COLUMN]","DROP [COLUMN]","SET DATA TYPE","SET {GENERATED ALWAYS | GENERATED BY DEFAULT}","SET NOT NULL","SET {NOT HIDDEN | IMPLICITLY HIDDEN}","SET FIELDPROC","DROP {DEFAULT | NOT NULL | GENERATED | IDENTITY | ROW CHANGE TIMESTAMP | FIELDPROC}","TRUNCATE [TABLE]","SET [CURRENT] SCHEMA","SET CURRENT_SCHEMA","ALLOCATE CURSOR","ALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL] SQL","ALTER [SPECIFIC] {FUNCTION | PROCEDURE}","ALTER {MASK | PERMISSION | SEQUENCE | TRIGGER}","ASSOCIATE [RESULT SET] {LOCATOR | LOCATORS}","BEGIN DECLARE SECTION","CALL","CLOSE","COMMENT ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PARAMETER | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","COMMENT ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON PARAMETER SPECIFIC {FUNCTION | PROCEDURE | ROUTINE}","COMMENT ON [TABLE FUNCTION] RETURN COLUMN","COMMENT ON [TABLE FUNCTION] RETURN COLUMN SPECIFIC [PROCEDURE | ROUTINE]","COMMIT [WORK] [HOLD]","CONNECT [TO | RESET] USER","CREATE [OR REPLACE] {ALIAS | FUNCTION | MASK | PERMISSION | PROCEDURE | SEQUENCE | TRIGGER | VARIABLE}","CREATE [ENCODED VECTOR] INDEX","CREATE UNIQUE [WHERE NOT NULL] INDEX","CREATE SCHEMA","CREATE TYPE","DEALLOCATE [SQL] DESCRIPTOR [LOCAL | GLOBAL]","DECLARE CURSOR","DECLARE GLOBAL TEMPORARY TABLE","DECLARE","DESCRIBE CURSOR","DESCRIBE INPUT","DESCRIBE [OUTPUT]","DESCRIBE {PROCEDURE | ROUTINE}","DESCRIBE TABLE","DISCONNECT ALL [SQL]","DISCONNECT [CURRENT]","DROP {ALIAS | INDEX | MASK | PACKAGE | PERMISSION | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT} [IF EXISTS]","DROP [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE} [IF EXISTS]","END DECLARE SECTION","EXECUTE [IMMEDIATE]","FREE LOCATOR","GET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","GET [CURRENT | STACKED] DIAGNOSTICS","GRANT {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","HOLD LOCATOR","INCLUDE","LABEL ON {ALIAS | COLUMN | CONSTRAINT | INDEX | MASK | PACKAGE | PERMISSION | SEQUENCE | TABLE | TRIGGER | VARIABLE | XSROBJECT}","LABEL ON [SPECIFIC] {FUNCTION | PROCEDURE | ROUTINE}","LOCK TABLE","OPEN","PREPARE","REFRESH TABLE","RELEASE","RELEASE [TO] SAVEPOINT","RENAME [TABLE | INDEX] TO","REVOKE {ALL [PRIVILEGES] | ALTER | EXECUTE} ON {FUNCTION | PROCEDURE | ROUTINE | PACKAGE | SCHEMA | SEQUENCE | TABLE | TYPE | VARIABLE | XSROBJECT}","ROLLBACK [WORK] [HOLD | TO SAVEPOINT]","SAVEPOINT","SET CONNECTION","SET CURRENT {DEBUG MODE | DECFLOAT ROUNDING MODE | DEGREE | IMPLICIT XMLPARSE OPTION | TEMPORAL SYSTEM_TIME}","SET [SQL] DESCRIPTOR [LOCAL | GLOBAL]","SET ENCRYPTION PASSWORD","SET OPTION","SET {[CURRENT [FUNCTION]] PATH | CURRENT_PATH}","SET RESULT SETS [WITH RETURN [TO CALLER | TO CLIENT]]","SET SESSION AUTHORIZATION","SET SESSION_USER","SET TRANSACTION","SIGNAL SQLSTATE [VALUE]","TAG","TRANSFER OWNERSHIP OF","WHENEVER {NOT FOUND | SQLERROR | SQLWARNING}"]),xo=y(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),Yo=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT | RIGHT] EXCEPTION JOIN","{INNER | CROSS} JOIN"]),Vo=y(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),vo=y([]),wo={name:"db2i",tokenizerOptions:{reservedSelect:Ho,reservedClauses:[...bo,...or,...sE],reservedSetOperations:xo,reservedJoins:Yo,reservedKeywordPhrases:Vo,reservedDataTypePhrases:vo,reservedKeywords:Go,reservedDataTypes:Fo,reservedFunctionNames:yo,nestedBlockComments:!0,extraParens:["[]"],stringTypes:[{quote:"''-qq",prefixes:["G","N"]},{quote:"''-raw",prefixes:["X","BX","GX","UX"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{first:"@#$",rest:"@#$"},paramTypes:{positional:!0,named:[":"]},paramChars:{first:"@#$",rest:"@#$"},operators:["**","¬=","¬>","¬<","!>","!<","||","=>"]},formatOptions:{onelineClauses:[...or,...sE],tabularOnelineClauses:sE}},Wo=["ABS","ACOS","ADD","ADD_PARQUET_KEY","AGE","AGGREGATE","ALIAS","ALL_PROFILING_OUTPUT","ANY_VALUE","APPLY","APPROX_COUNT_DISTINCT","APPROX_QUANTILE","ARBITRARY","ARGMAX","ARGMIN","ARG_MAX","ARG_MAX_NULL","ARG_MIN","ARG_MIN_NULL","ARRAY_AGG","ARRAY_AGGR","ARRAY_AGGREGATE","ARRAY_APPEND","ARRAY_APPLY","ARRAY_CAT","ARRAY_CONCAT","ARRAY_CONTAINS","ARRAY_COSINE_SIMILARITY","ARRAY_CROSS_PRODUCT","ARRAY_DISTANCE","ARRAY_DISTINCT","ARRAY_DOT_PRODUCT","ARRAY_EXTRACT","ARRAY_FILTER","ARRAY_GRADE_UP","ARRAY_HAS","ARRAY_HAS_ALL","ARRAY_HAS_ANY","ARRAY_INDEXOF","ARRAY_INNER_PRODUCT","ARRAY_INTERSECT","ARRAY_LENGTH","ARRAY_POP_BACK","ARRAY_POP_FRONT","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_PUSH_BACK","ARRAY_PUSH_FRONT","ARRAY_REDUCE","ARRAY_RESIZE","ARRAY_REVERSE","ARRAY_REVERSE_SORT","ARRAY_SELECT","ARRAY_SLICE","ARRAY_SORT","ARRAY_TO_JSON","ARRAY_TO_STRING","ARRAY_TRANSFORM","ARRAY_UNIQUE","ARRAY_VALUE","ARRAY_WHERE","ARRAY_ZIP","ARROW_SCAN","ARROW_SCAN_DUMB","ASCII","ASIN","ATAN","ATAN2","AVG","BASE64","BIN","BITSTRING","BITSTRING_AGG","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_POSITION","BIT_XOR","BOOL_AND","BOOL_OR","CARDINALITY","CBRT","CEIL","CEILING","CENTURY","CHECKPOINT","CHR","COLLATIONS","COL_DESCRIPTION","COMBINE","CONCAT","CONCAT_WS","CONSTANT_OR_NULL","CONTAINS","COPY_DATABASE","CORR","COS","COT","COUNT","COUNT_IF","COUNT_STAR","COVAR_POP","COVAR_SAMP","CREATE_SORT_KEY","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_DATE","CURRENT_LOCALTIME","CURRENT_LOCALTIMESTAMP","CURRENT_QUERY","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_SETTING","CURRENT_USER","CURRVAL","DAMERAU_LEVENSHTEIN","DATABASE_LIST","DATABASE_SIZE","DATEDIFF","DATEPART","DATESUB","DATETRUNC","DATE_ADD","DATE_DIFF","DATE_PART","DATE_SUB","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECADE","DECODE","DEGREES","DISABLE_CHECKPOINT_ON_SHUTDOWN","DISABLE_OBJECT_CACHE","DISABLE_OPTIMIZER","DISABLE_PRINT_PROGRESS_BAR","DISABLE_PROFILE","DISABLE_PROFILING","DISABLE_PROGRESS_BAR","DISABLE_VERIFICATION","DISABLE_VERIFY_EXTERNAL","DISABLE_VERIFY_FETCH_ROW","DISABLE_VERIFY_PARALLELISM","DISABLE_VERIFY_SERIALIZER","DIVIDE","DUCKDB_COLUMNS","DUCKDB_CONSTRAINTS","DUCKDB_DATABASES","DUCKDB_DEPENDENCIES","DUCKDB_EXTENSIONS","DUCKDB_FUNCTIONS","DUCKDB_INDEXES","DUCKDB_KEYWORDS","DUCKDB_MEMORY","DUCKDB_OPTIMIZERS","DUCKDB_SCHEMAS","DUCKDB_SECRETS","DUCKDB_SEQUENCES","DUCKDB_SETTINGS","DUCKDB_TABLES","DUCKDB_TEMPORARY_FILES","DUCKDB_TYPES","DUCKDB_VIEWS","EDIT","EDITDIST3","ELEMENT_AT","ENABLE_CHECKPOINT_ON_SHUTDOWN","ENABLE_OBJECT_CACHE","ENABLE_OPTIMIZER","ENABLE_PRINT_PROGRESS_BAR","ENABLE_PROFILE","ENABLE_PROFILING","ENABLE_PROGRESS_BAR","ENABLE_VERIFICATION","ENCODE","ENDS_WITH","ENTROPY","ENUM_CODE","ENUM_FIRST","ENUM_LAST","ENUM_RANGE","ENUM_RANGE_BOUNDARY","EPOCH","EPOCH_MS","EPOCH_NS","EPOCH_US","ERA","ERROR","EVEN","EXP","FACTORIAL","FAVG","FDIV","FILTER","FINALIZE","FIRST","FLATTEN","FLOOR","FMOD","FORCE_CHECKPOINT","FORMAT","FORMATREADABLEDECIMALSIZE","FORMATREADABLESIZE","FORMAT_BYTES","FORMAT_PG_TYPE","FORMAT_TYPE","FROM_BASE64","FROM_BINARY","FROM_HEX","FROM_JSON","FROM_JSON_STRICT","FSUM","FUNCTIONS","GAMMA","GCD","GENERATE_SERIES","GENERATE_SUBSCRIPTS","GEN_RANDOM_UUID","GEOMEAN","GEOMETRIC_MEAN","GETENV","GET_BIT","GET_BLOCK_SIZE","GET_CURRENT_TIME","GET_CURRENT_TIMESTAMP","GLOB","GRADE_UP","GREATEST","GREATEST_COMMON_DIVISOR","GROUP_CONCAT","HAMMING","HASH","HAS_ANY_COLUMN_PRIVILEGE","HAS_COLUMN_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE","HAS_FUNCTION_PRIVILEGE","HAS_LANGUAGE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_SEQUENCE_PRIVILEGE","HAS_SERVER_PRIVILEGE","HAS_TABLESPACE_PRIVILEGE","HAS_TABLE_PRIVILEGE","HEX","HISTOGRAM","HOUR","ICU_CALENDAR_NAMES","ICU_SORT_KEY","ILIKE_ESCAPE","IMPORT_DATABASE","INDEX_SCAN","INET_CLIENT_ADDR","INET_CLIENT_PORT","INET_SERVER_ADDR","INET_SERVER_PORT","INSTR","IN_SEARCH_PATH","ISFINITE","ISINF","ISNAN","ISODOW","ISOYEAR","JACCARD","JARO_SIMILARITY","JARO_WINKLER_SIMILARITY","JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_CONTAINS","JSON_DESERIALIZE_SQL","JSON_EXECUTE_SERIALIZED_SQL","JSON_EXTRACT","JSON_EXTRACT_PATH","JSON_EXTRACT_PATH_TEXT","JSON_EXTRACT_STRING","JSON_GROUP_ARRAY","JSON_GROUP_OBJECT","JSON_GROUP_STRUCTURE","JSON_KEYS","JSON_MERGE_PATCH","JSON_OBJECT","JSON_QUOTE","JSON_SERIALIZE_PLAN","JSON_SERIALIZE_SQL","JSON_STRUCTURE","JSON_TRANSFORM","JSON_TRANSFORM_STRICT","JSON_TYPE","JSON_VALID","JULIAN","KAHAN_SUM","KURTOSIS","KURTOSIS_POP","LAST","LAST_DAY","LCASE","LCM","LEAST","LEAST_COMMON_MULTIPLE","LEFT","LEFT_GRAPHEME","LEN","LENGTH","LENGTH_GRAPHEME","LEVENSHTEIN","LGAMMA","LIKE_ESCAPE","LIST","LISTAGG","LIST_AGGR","LIST_AGGREGATE","LIST_ANY_VALUE","LIST_APPEND","LIST_APPLY","LIST_APPROX_COUNT_DISTINCT","LIST_AVG","LIST_BIT_AND","LIST_BIT_OR","LIST_BIT_XOR","LIST_BOOL_AND","LIST_BOOL_OR","LIST_CAT","LIST_CONCAT","LIST_CONTAINS","LIST_COSINE_SIMILARITY","LIST_COUNT","LIST_DISTANCE","LIST_DISTINCT","LIST_DOT_PRODUCT","LIST_ELEMENT","LIST_ENTROPY","LIST_EXTRACT","LIST_FILTER","LIST_FIRST","LIST_GRADE_UP","LIST_HAS","LIST_HAS_ALL","LIST_HAS_ANY","LIST_HISTOGRAM","LIST_INDEXOF","LIST_INNER_PRODUCT","LIST_INTERSECT","LIST_KURTOSIS","LIST_KURTOSIS_POP","LIST_LAST","LIST_MAD","LIST_MAX","LIST_MEDIAN","LIST_MIN","LIST_MODE","LIST_PACK","LIST_POSITION","LIST_PREPEND","LIST_PRODUCT","LIST_REDUCE","LIST_RESIZE","LIST_REVERSE","LIST_REVERSE_SORT","LIST_SELECT","LIST_SEM","LIST_SKEWNESS","LIST_SLICE","LIST_SORT","LIST_STDDEV_POP","LIST_STDDEV_SAMP","LIST_STRING_AGG","LIST_SUM","LIST_TRANSFORM","LIST_UNIQUE","LIST_VALUE","LIST_VAR_POP","LIST_VAR_SAMP","LIST_WHERE","LIST_ZIP","LN","LOG","LOG10","LOG2","LOWER","LPAD","LSMODE","LTRIM","MAD","MAKE_DATE","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","MAP","MAP_CONCAT","MAP_ENTRIES","MAP_EXTRACT","MAP_FROM_ENTRIES","MAP_KEYS","MAP_VALUES","MAX","MAX_BY","MD5","MD5_NUMBER","MD5_NUMBER_LOWER","MD5_NUMBER_UPPER","MEAN","MEDIAN","METADATA_INFO","MICROSECOND","MILLENNIUM","MILLISECOND","MIN","MINUTE","MIN_BY","MISMATCHES","MOD","MODE","MONTH","MONTHNAME","MULTIPLY","NEXTAFTER","NEXTVAL","NFC_NORMALIZE","NOT_ILIKE_ESCAPE","NOT_LIKE_ESCAPE","NOW","NULLIF","OBJ_DESCRIPTION","OCTET_LENGTH","ORD","PARQUET_FILE_METADATA","PARQUET_KV_METADATA","PARQUET_METADATA","PARQUET_SCAN","PARQUET_SCHEMA","PARSE_DIRNAME","PARSE_DIRPATH","PARSE_FILENAME","PARSE_PATH","PG_COLLATION_IS_VISIBLE","PG_CONF_LOAD_TIME","PG_CONVERSION_IS_VISIBLE","PG_FUNCTION_IS_VISIBLE","PG_GET_CONSTRAINTDEF","PG_GET_EXPR","PG_GET_VIEWDEF","PG_HAS_ROLE","PG_IS_OTHER_TEMP_SCHEMA","PG_MY_TEMP_SCHEMA","PG_OPCLASS_IS_VISIBLE","PG_OPERATOR_IS_VISIBLE","PG_OPFAMILY_IS_VISIBLE","PG_POSTMASTER_START_TIME","PG_SIZE_PRETTY","PG_TABLE_IS_VISIBLE","PG_TIMEZONE_NAMES","PG_TS_CONFIG_IS_VISIBLE","PG_TS_DICT_IS_VISIBLE","PG_TS_PARSER_IS_VISIBLE","PG_TS_TEMPLATE_IS_VISIBLE","PG_TYPEOF","PG_TYPE_IS_VISIBLE","PI","PLATFORM","POSITION","POW","POWER","PRAGMA_COLLATIONS","PRAGMA_DATABASE_SIZE","PRAGMA_METADATA_INFO","PRAGMA_PLATFORM","PRAGMA_SHOW","PRAGMA_STORAGE_INFO","PRAGMA_TABLE_INFO","PRAGMA_USER_AGENT","PRAGMA_VERSION","PREFIX","PRINTF","PRODUCT","QUANTILE","QUANTILE_CONT","QUANTILE_DISC","QUARTER","RADIANS","RANDOM","RANGE","READFILE","READ_BLOB","READ_CSV","READ_CSV_AUTO","READ_JSON","READ_JSON_AUTO","READ_JSON_OBJECTS","READ_JSON_OBJECTS_AUTO","READ_NDJSON","READ_NDJSON_AUTO","READ_NDJSON_OBJECTS","READ_PARQUET","READ_TEXT","REDUCE","REGEXP_ESCAPE","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_FULL_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REPEAT","REPEAT_ROW","REPLACE","RESERVOIR_QUANTILE","REVERSE","RIGHT","RIGHT_GRAPHEME","ROUND","ROUNDBANKERS","ROUND_EVEN","ROW","ROW_TO_JSON","RPAD","RTRIM","SECOND","SEM","SEQ_SCAN","SESSION_USER","SETSEED","SET_BIT","SHA256","SHA3","SHELL_ADD_SCHEMA","SHELL_ESCAPE_CRNL","SHELL_IDQUOTE","SHELL_MODULE_SCHEMA","SHELL_PUTSNL","SHOBJ_DESCRIPTION","SHOW","SHOW_DATABASES","SHOW_TABLES","SHOW_TABLES_EXPANDED","SIGN","SIGNBIT","SIN","SKEWNESS","SNIFF_CSV","SPLIT","SPLIT_PART","SQL_AUTO_COMPLETE","SQRT","STARTS_WITH","STATS","STDDEV","STDDEV_POP","STDDEV_SAMP","STORAGE_INFO","STRFTIME","STRING_AGG","STRING_SPLIT","STRING_SPLIT_REGEX","STRING_TO_ARRAY","STRIP_ACCENTS","STRLEN","STRPOS","STRPTIME","STRUCT_EXTRACT","STRUCT_INSERT","STRUCT_PACK","STR_SPLIT","STR_SPLIT_REGEX","SUBSTR","SUBSTRING","SUBSTRING_GRAPHEME","SUBTRACT","SUFFIX","SUM","SUMKAHAN","SUMMARY","SUM_NO_OVERFLOW","TABLE_INFO","TAN","TEST_ALL_TYPES","TEST_VECTOR_TYPES","TIMEZONE","TIMEZONE_HOUR","TIMEZONE_MINUTE","TIME_BUCKET","TODAY","TO_BASE","TO_BASE64","TO_BINARY","TO_CENTURIES","TO_DAYS","TO_DECADES","TO_HEX","TO_HOURS","TO_JSON","TO_MICROSECONDS","TO_MILLENNIA","TO_MILLISECONDS","TO_MINUTES","TO_MONTHS","TO_SECONDS","TO_TIMESTAMP","TO_WEEKS","TO_YEARS","TRANSACTION_TIMESTAMP","TRANSLATE","TRIM","TRUNC","TRY_STRPTIME","TXID_CURRENT","TYPEOF","UCASE","UNBIN","UNHEX","UNICODE","UNION_EXTRACT","UNION_TAG","UNION_VALUE","UNNEST","UNPIVOT_LIST","UPPER","USER","USER_AGENT","UUID","VARIANCE","VAR_POP","VAR_SAMP","VECTOR_TYPE","VERIFY_EXTERNAL","VERIFY_FETCH_ROW","VERIFY_PARALLELISM","VERIFY_SERIALIZER","VERSION","WEEK","WEEKDAY","WEEKOFYEAR","WHICH_SECRET","WRITEFILE","XOR","YEAR","YEARWEEK","CAST","COALESCE","RANK","ROW_NUMBER"],Xo=["ALL","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ATTACH","ASYMMETRIC","BOTH","CASE","CAST","CHECK","COLLATE","COLUMN","CONSTRAINT","CREATE","DEFAULT","DEFERRABLE","DESC","DESCRIBE","DETACH","DISTINCT","DO","ELSE","END","EXCEPT","FALSE","FETCH","FOR","FOREIGN","FROM","GRANT","GROUP","HAVING","IN","INITIALLY","INTERSECT","INTO","IS","LATERAL","LEADING","LIMIT","NOT","NULL","OFFSET","ON","ONLY","OR","ORDER","PIVOT","PIVOT_LONGER","PIVOT_WIDER","PLACING","PRIMARY","REFERENCES","RETURNING","SELECT","SHOW","SOME","SUMMARIZE","SYMMETRIC","TABLE","THEN","TO","TRAILING","TRUE","UNION","UNIQUE","UNPIVOT","USING","VARIADIC","WHEN","WHERE","WINDOW","WITH"],Ko=["ARRAY","BIGINT","BINARY","BIT","BITSTRING","BLOB","BOOL","BOOLEAN","BPCHAR","BYTEA","CHAR","DATE","DATETIME","DEC","DECIMAL","DOUBLE","ENUM","FLOAT","FLOAT4","FLOAT8","GUID","HUGEINT","INET","INT","INT1","INT128","INT16","INT2","INT32","INT4","INT64","INT8","INTEGER","INTEGRAL","INTERVAL","JSON","LIST","LOGICAL","LONG","MAP","NUMERIC","NVARCHAR","OID","REAL","ROW","SHORT","SIGNED","SMALLINT","STRING","STRUCT","TEXT","TIME","TIMESTAMP_MS","TIMESTAMP_NS","TIMESTAMP_S","TIMESTAMP_US","TIMESTAMP","TIMESTAMPTZ","TIMETZ","TINYINT","UBIGINT","UHUGEINT","UINT128","UINT16","UINT32","UINT64","UINT8","UINTEGER","UNION","USMALLINT","UTINYINT","UUID","VARBINARY","VARCHAR"],ko=y(["SELECT [ALL | DISTINCT]"]),$o=y(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL]","HAVING","WINDOW","PARTITION BY","ORDER BY [ALL]","LIMIT","OFFSET","USING SAMPLE","QUALIFY","INSERT [OR REPLACE] INTO","VALUES","DEFAULT VALUES","SET","RETURNING"]),ar=y(["CREATE [OR REPLACE] [TEMPORARY | TEMP] TABLE [IF NOT EXISTS]"]),TE=y(["UPDATE","ON CONFLICT","DELETE FROM","DROP TABLE [IF EXISTS]","TRUNCATE","ALTER TABLE","ADD [COLUMN] [IF NOT EXISTS]","ADD PRIMARY KEY","DROP [COLUMN] [IF EXISTS]","ALTER [COLUMN]","RENAME [COLUMN]","RENAME TO","SET [DATA] TYPE","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","CREATE [OR REPLACE] [TEMPORARY | TEMP] {MACRO | FUNCTION}","DROP MACRO [TABLE] [IF EXISTS]","DROP FUNCTION [IF EXISTS]","CREATE [UNIQUE] INDEX [IF NOT EXISTS]","DROP INDEX [IF EXISTS]","CREATE [OR REPLACE] SCHEMA [IF NOT EXISTS]","DROP SCHEMA [IF EXISTS]","CREATE [OR REPLACE] [PERSISTENT | TEMPORARY] SECRET [IF NOT EXISTS]","DROP [PERSISTENT | TEMPORARY] SECRET [IF EXISTS]","CREATE [OR REPLACE] [TEMPORARY | TEMP] SEQUENCE","DROP SEQUENCE [IF EXISTS]","CREATE [OR REPLACE] [TEMPORARY | TEMP] VIEW [IF NOT EXISTS]","DROP VIEW [IF EXISTS]","ALTER VIEW","CREATE TYPE","DROP TYPE [IF EXISTS]","ANALYZE","ATTACH [DATABASE] [IF NOT EXISTS]","DETACH [DATABASE] [IF EXISTS]","CALL","[FORCE] CHECKPOINT","COMMENT ON [TABLE | COLUMN | VIEW | INDEX | SEQUENCE | TYPE | MACRO | MACRO TABLE]","COPY [FROM DATABASE]","DESCRIBE","EXPORT DATABASE","IMPORT DATABASE","INSTALL","LOAD","PIVOT","PIVOT_WIDER","UNPIVOT","EXPLAIN [ANALYZE]","SET {LOCAL | SESSION | GLOBAL}","RESET [LOCAL | SESSION | GLOBAL]","{SET | RESET} VARIABLE","SUMMARIZE","BEGIN TRANSACTION","ROLLBACK","COMMIT","ABORT","USE","VACUUM [ANALYZE]","PREPARE","EXECUTE","DEALLOCATE [PREPARE]"]),qo=y(["UNION [ALL | BY NAME]","EXCEPT [ALL]","INTERSECT [ALL]"]),Jo=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","{NATURAL | ASOF} [INNER] JOIN","{NATURAL | ASOF} {LEFT | RIGHT | FULL} [OUTER] JOIN","POSITIONAL JOIN","ANTI JOIN","SEMI JOIN"]),Qo=y(["{ROWS | RANGE | GROUPS} BETWEEN","SIMILAR TO","IS [NOT] DISTINCT FROM"]),Zo=y(["TIMESTAMP WITH TIME ZONE"]),jo={name:"duckdb",tokenizerOptions:{reservedSelect:ko,reservedClauses:[...$o,...ar,...TE],reservedSetOperations:qo,reservedJoins:Jo,reservedKeywordPhrases:Qo,reservedDataTypePhrases:Zo,supportsXor:!0,reservedKeywords:Xo,reservedDataTypes:Ko,reservedFunctionNames:Wo,nestedBlockComments:!0,extraParens:["[]","{}"],underscoresInNumbers:!0,stringTypes:["$$","''-qq",{quote:"''-qq-bs",prefixes:["E"],requirePrefix:!0},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:['""-qq'],identChars:{rest:"$"},paramTypes:{positional:!0,numbered:["$"],quoted:["$"]},operators:["//","%","**","^","!","&","|","~","<<",">>","::","==","->","->>",":",":=","=>","~~","!~~","~~*","!~~*","~~~","~","!~","~*","!~*","^@","||",">>=","<<="]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...ar,...TE],tabularOnelineClauses:TE}},zo=["ABS","ACOS","ASIN","ATAN","BIN","BROUND","CBRT","CEIL","CEILING","CONV","COS","DEGREES","EXP","FACTORIAL","FLOOR","GREATEST","HEX","LEAST","LN","LOG","LOG10","LOG2","NEGATIVE","PI","PMOD","POSITIVE","POW","POWER","RADIANS","RAND","ROUND","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIN","SQRT","TAN","UNHEX","WIDTH_BUCKET","ARRAY_CONTAINS","MAP_KEYS","MAP_VALUES","SIZE","SORT_ARRAY","BINARY","CAST","ADD_MONTHS","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","QUARTER","SECOND","TIMESTAMP","TO_DATE","TO_UTC_TIMESTAMP","TRUNC","UNIX_TIMESTAMP","WEEKOFYEAR","YEAR","ASSERT_TRUE","COALESCE","IF","ISNOTNULL","ISNULL","NULLIF","NVL","ASCII","BASE64","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONTEXT_NGRAMS","DECODE","ELT","ENCODE","FIELD","FIND_IN_SET","FORMAT_NUMBER","GET_JSON_OBJECT","IN_FILE","INITCAP","INSTR","LCASE","LENGTH","LEVENSHTEIN","LOCATE","LOWER","LPAD","LTRIM","NGRAMS","OCTET_LENGTH","PARSE_URL","PRINTF","QUOTE","REGEXP_EXTRACT","REGEXP_REPLACE","REPEAT","REVERSE","RPAD","RTRIM","SENTENCES","SOUNDEX","SPACE","SPLIT","STR_TO_MAP","SUBSTR","SUBSTRING","TRANSLATE","TRIM","UCASE","UNBASE64","UPPER","MASK","MASK_FIRST_N","MASK_HASH","MASK_LAST_N","MASK_SHOW_FIRST_N","MASK_SHOW_LAST_N","AES_DECRYPT","AES_ENCRYPT","CRC32","CURRENT_DATABASE","CURRENT_USER","HASH","JAVA_METHOD","LOGGED_IN_USER","MD5","REFLECT","SHA","SHA1","SHA2","SURROGATE_KEY","VERSION","AVG","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COVAR_POP","COVAR_SAMP","HISTOGRAM_NUMERIC","MAX","MIN","NTILE","PERCENTILE","PERCENTILE_APPROX","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","EXPLODE","INLINE","JSON_TUPLE","PARSE_URL_TUPLE","POSEXPLODE","STACK","LEAD","LAG","FIRST_VALUE","LAST_VALUE","RANK","ROW_NUMBER","DENSE_RANK","CUME_DIST","PERCENT_RANK","NTILE"],ea=["ADD","ADMIN","AFTER","ANALYZE","ARCHIVE","ASC","BEFORE","BUCKET","BUCKETS","CASCADE","CHANGE","CLUSTER","CLUSTERED","CLUSTERSTATUS","COLLECTION","COLUMNS","COMMENT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONTINUE","DATA","DATABASES","DATETIME","DAY","DBPROPERTIES","DEFERRED","DEFINED","DELIMITED","DEPENDENCY","DESC","DIRECTORIES","DIRECTORY","DISABLE","DISTRIBUTE","ELEM_TYPE","ENABLE","ESCAPED","EXCLUSIVE","EXPLAIN","EXPORT","FIELDS","FILE","FILEFORMAT","FIRST","FORMAT","FORMATTED","FUNCTIONS","HOLD_DDLTIME","HOUR","IDXPROPERTIES","IGNORE","INDEX","INDEXES","INPATH","INPUTDRIVER","INPUTFORMAT","ITEMS","JAR","KEYS","KEY_TYPE","LIMIT","LINES","LOAD","LOCATION","LOCK","LOCKS","LOGICAL","LONG","MAPJOIN","MATERIALIZED","METADATA","MINUS","MINUTE","MONTH","MSCK","NOSCAN","NO_DROP","OFFLINE","OPTION","OUTPUTDRIVER","OUTPUTFORMAT","OVERWRITE","OWNER","PARTITIONED","PARTITIONS","PLUS","PRETTY","PRINCIPALS","PROTECTION","PURGE","READ","READONLY","REBUILD","RECORDREADER","RECORDWRITER","RELOAD","RENAME","REPAIR","REPLACE","REPLICATION","RESTRICT","REWRITE","ROLE","ROLES","SCHEMA","SCHEMAS","SECOND","SEMI","SERDE","SERDEPROPERTIES","SERVER","SETS","SHARED","SHOW","SHOW_DATABASE","SKEWED","SORT","SORTED","SSL","STATISTICS","STORED","STREAMTABLE","STRING","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","TINYINT","TOUCH","TRANSACTIONS","UNARCHIVE","UNDO","UNIONTYPE","UNLOCK","UNSET","UNSIGNED","URI","USE","UTC","UTCTIMESTAMP","VALUE_TYPE","VIEW","WHILE","YEAR","AUTOCOMMIT","ISOLATION","LEVEL","OFFSET","SNAPSHOT","TRANSACTION","WORK","WRITE","ABORT","KEY","LAST","NORELY","NOVALIDATE","NULLS","RELY","VALIDATE","DETAIL","DOW","EXPRESSION","OPERATOR","QUARTER","SUMMARY","VECTORIZATION","WEEK","YEARS","MONTHS","WEEKS","DAYS","HOURS","MINUTES","SECONDS","TIMESTAMPTZ","ZONE","ALL","ALTER","AND","AS","AUTHORIZATION","BETWEEN","BOTH","BY","CASE","CAST","COLUMN","CONF","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIMESTAMP","CURSOR","DATABASE","DELETE","DESCRIBE","DISTINCT","DROP","ELSE","END","EXCHANGE","EXISTS","EXTENDED","EXTERNAL","FALSE","FETCH","FOLLOWING","FOR","FROM","FULL","FUNCTION","GRANT","GROUP","GROUPING","HAVING","IF","IMPORT","IN","INNER","INSERT","INTERSECT","INTO","IS","JOIN","LATERAL","LEFT","LESS","LIKE","LOCAL","MACRO","MORE","NONE","NOT","NULL","OF","ON","OR","ORDER","OUT","OUTER","OVER","PARTIALSCAN","PARTITION","PERCENT","PRECEDING","PRESERVE","PROCEDURE","RANGE","READS","REDUCE","REVOKE","RIGHT","ROLLUP","ROW","ROWS","SELECT","SET","TABLE","TABLESAMPLE","THEN","TO","TRANSFORM","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNION","UNIQUEJOIN","UPDATE","USER","USING","UTC_TMESTAMP","VALUES","WHEN","WHERE","WINDOW","WITH","COMMIT","ONLY","REGEXP","RLIKE","ROLLBACK","START","CACHE","CONSTRAINT","FOREIGN","PRIMARY","REFERENCES","DAYOFWEEK","EXTRACT","FLOOR","VIEWS","TIME","SYNC","TEXTFILE","SEQUENCEFILE","ORC","CSV","TSV","PARQUET","AVRO","RCFILE","JSONFILE","INPUTFORMAT","OUTPUTFORMAT"],ta=["ARRAY","BIGINT","BINARY","BOOLEAN","CHAR","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MAP","NUMERIC","PRECISION","SMALLINT","STRUCT","TIMESTAMP","VARCHAR"],Ea=y(["SELECT [ALL | DISTINCT]"]),ra=y(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT INTO [TABLE]","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED [THEN]","UPDATE SET","INSERT [VALUES]","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),ir=y(["CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS]"]),oE=y(["CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","RENAME TO","TRUNCATE [TABLE]","ALTER","CREATE","USE","DESCRIBE","DROP","FETCH","SHOW","STORED AS","STORED BY","ROW FORMAT"]),na=y(["UNION [ALL | DISTINCT]"]),sa=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","LEFT SEMI JOIN"]),Ta=y(["{ROWS | RANGE} BETWEEN"]),oa=y([]),aa={name:"hive",tokenizerOptions:{reservedSelect:Ea,reservedClauses:[...ra,...ir,...oE],reservedSetOperations:na,reservedJoins:sa,reservedKeywordPhrases:Ta,reservedDataTypePhrases:oa,reservedKeywords:ea,reservedDataTypes:ta,reservedFunctionNames:zo,extraParens:["[]"],stringTypes:['""-bs',"''-bs"],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||"]},formatOptions:{onelineClauses:[...ir,...oE],tabularOnelineClauses:oE}};function vt(E){return E.map((t,r)=>{const n=E[r+1]||It;if(Ot.SET(t)&&n.text==="(")return Object.assign(Object.assign({},t),{type:$.RESERVED_FUNCTION_NAME});const s=E[r-1]||It;return Ot.VALUES(t)&&s.text==="="?Object.assign(Object.assign({},t),{type:$.RESERVED_FUNCTION_NAME}):t})}const ia=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DELETE_DOMAIN_ID","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DO_DOMAIN_IDS","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERAL","GRANT","GROUP","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IGNORE_DOMAIN_IDS","IGNORE_SERVER_IDS","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MASTER_HEARTBEAT_PERIOD","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OFFSET","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PAGE_CHECKSUM","PARSE_VCOL_EXPR","PARTITION","POSITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","READ_WRITE","RECURSIVE","REF_SYSTEM_ID","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","RETURNING","REVOKE","RIGHT","RLIKE","ROW_NUMBER","ROWS","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SLOW","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],Aa=["BIGINT","BINARY","BIT","BLOB","CHAR BYTE","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],Ra=["ADDDATE","ADD_MONTHS","BIT_AND","BIT_OR","BIT_XOR","CAST","COUNT","CUME_DIST","CURDATE","CURTIME","DATE_ADD","DATE_SUB","DATE_FORMAT","DECODE","DENSE_RANK","EXTRACT","FIRST_VALUE","GROUP_CONCAT","JSON_ARRAYAGG","JSON_OBJECTAGG","LAG","LEAD","MAX","MEDIAN","MID","MIN","NOW","NTH_VALUE","NTILE","POSITION","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","ROW_NUMBER","SESSION_USER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUBDATE","SUBSTR","SUBSTRING","SUM","SYSTEM_USER","TRIM","TRIM_ORACLE","VARIANCE","VAR_POP","VAR_SAMP","ABS","ACOS","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ASIN","ATAN","ATAN2","BENCHMARK","BIN","BINLOG_GTID_POS","BIT_COUNT","BIT_LENGTH","CEIL","CEILING","CHARACTER_LENGTH","CHAR_LENGTH","CHR","COERCIBILITY","COLUMN_CHECK","COLUMN_EXISTS","COLUMN_LIST","COLUMN_JSON","COMPRESS","CONCAT","CONCAT_OPERATOR_ORACLE","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","DATEDIFF","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEGREES","DECODE_HISTOGRAM","DECODE_ORACLE","DES_DECRYPT","DES_ENCRYPT","ELT","ENCODE","ENCRYPT","EXP","EXPORT_SET","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GET_LOCK","GREATEST","HEX","IFNULL","INSTR","ISNULL","IS_FREE_LOCK","IS_USED_LOCK","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_COMPACT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_DETAILED","JSON_EXISTS","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_LOOSE","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_QUERY","JSON_QUOTE","JSON_OBJECT","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_SEARCH","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAST_DAY","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LENGTHB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LPAD_ORACLE","LTRIM","LTRIM_ORACLE","MAKEDATE","MAKETIME","MAKE_SET","MASTER_GTID_WAIT","MASTER_POS_WAIT","MD5","MONTHNAME","NAME_CONST","NVL","NVL2","OCT","OCTET_LENGTH","ORD","PERIOD_ADD","PERIOD_DIFF","PI","POW","POWER","QUOTE","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","RADIANS","RAND","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPLACE_ORACLE","REVERSE","ROUND","RPAD","RPAD_ORACLE","RTRIM","RTRIM_ORACLE","SEC_TO_TIME","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SPACE","SQRT","STRCMP","STR_TO_DATE","SUBSTR_ORACLE","SUBSTRING_INDEX","SUBTIME","SYS_GUID","TAN","TIMEDIFF","TIME_FORMAT","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_SECONDS","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VERSION","WEEKDAY","WEEKOFYEAR","WSREP_LAST_WRITTEN_GTID","WSREP_LAST_SEEN_GTID","WSREP_SYNC_WAIT_UPTO_GTID","YEARWEEK","COALESCE","NULLIF"],Sa=y(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),Na=y(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET","RETURNING"]),Ar=y(["CREATE [OR REPLACE] [TEMPORARY] TABLE [IF NOT EXISTS]"]),aE=y(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] [IGNORE] TABLE [IF EXISTS]","ADD [COLUMN] [IF NOT EXISTS]","{CHANGE | MODIFY} [COLUMN] [IF EXISTS]","DROP [COLUMN] [IF EXISTS]","RENAME [TO]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","SET {VISIBLE | INVISIBLE}","TRUNCATE [TABLE]","ALTER DATABASE","ALTER DATABASE COMMENT","ALTER EVENT","ALTER FUNCTION","ALTER PROCEDURE","ALTER SCHEMA","ALTER SCHEMA COMMENT","ALTER SEQUENCE","ALTER SERVER","ALTER USER","ALTER VIEW","ANALYZE","ANALYZE TABLE","BACKUP LOCK","BACKUP STAGE","BACKUP UNLOCK","BEGIN","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHECK TABLE","CHECK VIEW","CHECKSUM TABLE","COMMIT","CREATE AGGREGATE FUNCTION","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE INDEX","CREATE PROCEDURE","CREATE ROLE","CREATE SEQUENCE","CREATE SERVER","CREATE SPATIAL INDEX","CREATE TRIGGER","CREATE UNIQUE INDEX","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP INDEX","DROP PREPARE","DROP PROCEDURE","DROP ROLE","DROP SEQUENCE","DROP SERVER","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GET DIAGNOSTICS","GET DIAGNOSTICS CONDITION","GRANT","HANDLER","HELP","INSTALL PLUGIN","INSTALL SONAME","KILL","LOAD DATA INFILE","LOAD INDEX INTO CACHE","LOAD XML INFILE","LOCK TABLE","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","PURGE MASTER LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","REPAIR VIEW","RESET MASTER","RESET QUERY CACHE","RESET REPLICA","RESET SLAVE","RESIGNAL","REVOKE","ROLLBACK","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET GLOBAL TRANSACTION","SET NAMES","SET PASSWORD","SET ROLE","SET STATEMENT","SET TRANSACTION","SHOW","SHOW ALL REPLICAS STATUS","SHOW ALL SLAVES STATUS","SHOW AUTHORS","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW BINLOG STATUS","SHOW CHARACTER SET","SHOW CLIENT_STATISTICS","SHOW COLLATION","SHOW COLUMNS","SHOW CONTRIBUTORS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PACKAGE","SHOW CREATE PACKAGE BODY","SHOW CREATE PROCEDURE","SHOW CREATE SEQUENCE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINE INNODB STATUS","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW EXPLAIN","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW INDEXES","SHOW INDEX_STATISTICS","SHOW KEYS","SHOW LOCALES","SHOW MASTER LOGS","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PACKAGE BODY CODE","SHOW PACKAGE BODY STATUS","SHOW PACKAGE STATUS","SHOW PLUGINS","SHOW PLUGINS SONAME","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW QUERY_RESPONSE_TIME","SHOW RELAYLOG EVENTS","SHOW REPLICA","SHOW REPLICA HOSTS","SHOW REPLICA STATUS","SHOW SCHEMAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW SLAVE STATUS","SHOW STATUS","SHOW STORAGE ENGINES","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW USER_STATISTICS","SHOW VARIABLES","SHOW WARNINGS","SHOW WSREP_MEMBERSHIP","SHOW WSREP_STATUS","SHUTDOWN","SIGNAL","START ALL REPLICAS","START ALL SLAVES","START REPLICA","START SLAVE","START TRANSACTION","STOP ALL REPLICAS","STOP ALL SLAVES","STOP REPLICA","STOP SLAVE","UNINSTALL PLUGIN","UNINSTALL SONAME","UNLOCK TABLE","USE","XA BEGIN","XA COMMIT","XA END","XA PREPARE","XA RECOVER","XA ROLLBACK","XA START"]),Ia=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]","MINUS [ALL | DISTINCT]"]),Oa=y(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),la=y(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),ua=y([]),Ca={name:"mariadb",tokenizerOptions:{reservedSelect:Sa,reservedClauses:[...Na,...Ar,...aE],reservedSetOperations:Ia,reservedJoins:Oa,reservedKeywordPhrases:la,reservedDataTypePhrases:ua,supportsXor:!0,reservedKeywords:ia,reservedDataTypes:Aa,reservedFunctionNames:Ra,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","&&","||","!","*.*"],postProcess:vt},formatOptions:{onelineClauses:[...Ar,...aE],tabularOnelineClauses:aE}},ca=["ACCESSIBLE","ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CUBE","CUME_DIST","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DENSE_RANK","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FIRST_VALUE","FOR","FORCE","FOREIGN","FROM","FULLTEXT","FUNCTION","GENERATED","GET","GRANT","GROUP","GROUPING","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","INTERSECT","INTERVAL","INTO","IO_AFTER_GTIDS","IO_BEFORE_GTIDS","IS","ITERATE","JOIN","JSON_TABLE","KEY","KEYS","KILL","LAG","LAST_VALUE","LATERAL","LEAD","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NTH_VALUE","NTILE","NULL","OF","ON","OPTIMIZE","OPTIMIZER_COSTS","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PERCENT_RANK","PRIMARY","PROCEDURE","PURGE","RANGE","RANK","READ","READS","READ_WRITE","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETURN","REVOKE","RIGHT","RLIKE","ROW","ROWS","ROW_NUMBER","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STORED","STRAIGHT_JOIN","SYSTEM","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],_a=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],La=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BINARY","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","CAN_ACCESS_COLUMN","CAN_ACCESS_DATABASE","CAN_ACCESS_TABLE","CAN_ACCESS_USER","CAN_ACCESS_VIEW","CAST","CEIL","CEILING","CHAR","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DEFAULT","DEGREES","DENSE_RANK","DIV","ELT","EXP","EXPORT_SET","EXTRACT","EXTRACTVALUE","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_PICO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLECTION","GEOMETRYCOLLECTION","GET_DD_COLUMN_PRIVILEGES","GET_DD_CREATE_OPTIONS","GET_DD_INDEX_SUB_PART_LENGTH","GET_FORMAT","GET_LOCK","GREATEST","GROUP_CONCAT","GROUPING","GTID_SUBSET","GTID_SUBTRACT","HEX","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INSERT","INSTR","INTERNAL_AUTO_INCREMENT","INTERNAL_AVG_ROW_LENGTH","INTERNAL_CHECK_TIME","INTERNAL_CHECKSUM","INTERNAL_DATA_FREE","INTERNAL_DATA_LENGTH","INTERNAL_DD_CHAR_LENGTH","INTERNAL_GET_COMMENT_OR_ERROR","INTERNAL_GET_ENABLED_ROLE_JSON","INTERNAL_GET_HOSTNAME","INTERNAL_GET_USERNAME","INTERNAL_GET_VIEW_WARNING_OR_ERROR","INTERNAL_INDEX_COLUMN_CARDINALITY","INTERNAL_INDEX_LENGTH","INTERNAL_IS_ENABLED_ROLE","INTERNAL_IS_MANDATORY_ROLE","INTERNAL_KEYS_DISABLED","INTERNAL_MAX_DATA_LENGTH","INTERNAL_TABLE_ROWS","INTERNAL_UPDATE_TIME","INTERVAL","IS","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS NOT","IS NOT NULL","IS NULL","IS_USED_LOCK","IS_UUID","ISNULL","JSON_ARRAY","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_ARRAYAGG","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LINESTRING","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MATCH","MAX","MBRCONTAINS","MBRCOVEREDBY","MBRCOVERS","MBRDISJOINT","MBREQUALS","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MEMBER OF","MICROSECOND","MID","MIN","MINUTE","MOD","MONTH","MONTHNAME","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","NAME_CONST","NOT","NOT IN","NOT LIKE","NOT REGEXP","NOW","NTH_VALUE","NTILE","NULLIF","OCT","OCTET_LENGTH","ORD","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","POINT","POLYGON","POSITION","POW","POWER","PS_CURRENT_THREAD_ID","PS_THREAD_ID","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROLES_GRAPHML","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SHA1","SHA2","SIGN","SIN","SLEEP","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","ST_AREA","ST_ASBINARY","ST_ASGEOJSON","ST_ASTEXT","ST_BUFFER","ST_BUFFER_STRATEGY","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_CONVEXHULL","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DISTANCE_SPHERE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_FRECHETDISTANCE","ST_GEOHASH","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMGEOJSON","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_HAUSDORFFDISTANCE","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_ISVALID","ST_LATFROMGEOHASH","ST_LATITUDE","ST_LENGTH","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINEINTERPOLATEPOINT","ST_LINEINTERPOLATEPOINTS","ST_LONGFROMGEOHASH","ST_LONGITUDE","ST_MAKEENVELOPE","ST_MLINEFROMTEXT","ST_MLINEFROMWKB","ST_MPOINTFROMTEXT","ST_MPOINTFROMWKB","ST_MPOLYFROMTEXT","ST_MPOLYFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTATDISTANCE","ST_POINTFROMGEOHASH","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SWAPXY","ST_SYMDIFFERENCE","ST_TOUCHES","ST_TRANSFORM","ST_UNION","ST_VALIDATE","ST_WITHIN","ST_X","ST_Y","STATEMENT_DIGEST","STATEMENT_DIGEST_TEXT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRIM","TRUNCATE","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VALUES","VAR_POP","VAR_SAMP","VARIANCE","VERSION","WAIT_FOR_EXECUTED_GTID_SET","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],Da=y(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),pa=y(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),Rr=y(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),iE=y(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER EVENT","ALTER FUNCTION","ALTER INSTANCE","ALTER LOGFILE GROUP","ALTER PROCEDURE","ALTER RESOURCE GROUP","ALTER SERVER","ALTER TABLESPACE","ALTER USER","ALTER VIEW","ANALYZE TABLE","BINLOG","CACHE INDEX","CALL","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK TABLE","CHECKSUM TABLE","CLONE","COMMIT","CREATE DATABASE","CREATE EVENT","CREATE FUNCTION","CREATE FUNCTION","CREATE INDEX","CREATE LOGFILE GROUP","CREATE PROCEDURE","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SERVER","CREATE SPATIAL REFERENCE SYSTEM","CREATE TABLESPACE","CREATE TRIGGER","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP EVENT","DROP FUNCTION","DROP FUNCTION","DROP INDEX","DROP LOGFILE GROUP","DROP PROCEDURE","DROP RESOURCE GROUP","DROP ROLE","DROP SERVER","DROP SPATIAL REFERENCE SYSTEM","DROP TABLESPACE","DROP TRIGGER","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","GRANT","HANDLER","HELP","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE EVENT","SHOW CREATE FUNCTION","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE TRIGGER","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SOURCE_POS_WAIT","START GROUP_REPLICATION","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP REPLICA","STOP SLAVE","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),da=y(["UNION [ALL | DISTINCT]"]),Pa=y(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),fa=y(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),ha=y([]),Ma={name:"mysql",tokenizerOptions:{reservedSelect:Da,reservedClauses:[...pa,...Rr,...iE],reservedSetOperations:da,reservedJoins:Pa,reservedKeywordPhrases:fa,reservedDataTypePhrases:ha,supportsXor:!0,reservedKeywords:ca,reservedDataTypes:_a,reservedFunctionNames:La,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:vt},formatOptions:{onelineClauses:[...Rr,...iE],tabularOnelineClauses:iE}},Ua=["ADD","ALL","ALTER","ANALYZE","AND","ARRAY","AS","ASC","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DISTINCT","DISTINCTROW","DIV","DOUBLE","DROP","DUAL","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GRANT","GROUP","GROUPS","HAVING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","ILIKE","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERSECT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LONG","LOW_PRIORITY","MATCH","MAXVALUE","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL","OF","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","RANGE","READ","RECURSIVE","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","REVOKE","RIGHT","RLIKE","ROW","ROWS","SECOND_MICROSECOND","SELECT","SET","SHOW","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STARTING","STATS_EXTENDED","STORED","STRAIGHT_JOIN","TABLE","TABLESAMPLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","TiDB_CURRENT_TSO","UNION","UNIQUE","UNLOCK","UNSIGNED","UNTIL","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","VALUES","VIRTUAL","WHEN","WHERE","WHILE","WINDOW","WITH","WRITE","XOR","YEAR_MONTH","ZEROFILL"],ma=["BIGINT","BINARY","BIT","BLOB","BOOL","BOOLEAN","CHAR","CHARACTER","DATE","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","VARBINARY","VARCHAR","VARCHARACTER","VARYING","YEAR"],Ba=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","ASCII","ASIN","ATAN","ATAN2","AVG","BENCHMARK","BIN","BIN_TO_UUID","BIT_AND","BIT_COUNT","BIT_LENGTH","BIT_OR","BIT_XOR","BITAND","BITNEG","BITOR","BITXOR","CASE","CAST","CEIL","CEILING","CHAR_FUNC","CHAR_LENGTH","CHARACTER_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CRC32","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_RESOURCE_GROUP","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATE_FORMAT","DATE_SUB","DATEDIFF","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT_FUNC","DEGREES","DENSE_RANK","DES_DECRYPT","DES_ENCRYPT","DIV","ELT","ENCODE","ENCRYPT","EQ","EXP","EXPORT_SET","EXTRACT","FIELD","FIND_IN_SET","FIRST_VALUE","FLOOR","FORMAT","FORMAT_BYTES","FORMAT_NANO_TIME","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GE","GET_FORMAT","GET_LOCK","GETPARAM","GREATEST","GROUP_CONCAT","GROUPING","GT","HEX","HOUR","IF","IFNULL","ILIKE","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSERT_FUNC","INSTR","INTDIV","INTERVAL","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","IS_UUID","ISFALSE","ISNULL","ISTRUE","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MEMBEROF","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","LAG","LAST_DAY","LAST_INSERT_ID","LAST_VALUE","LASTVAL","LCASE","LE","LEAD","LEAST","LEFT","LEFTSHIFT","LENGTH","LIKE","LN","LOAD_FILE","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LT","LTRIM","MAKE_SET","MAKEDATE","MAKETIME","MASTER_POS_WAIT","MAX","MD5","MICROSECOND","MID","MIN","MINUS","MINUTE","MOD","MONTH","MONTHNAME","MUL","NAME_CONST","NE","NEXTVAL","NOT","NOW","NTH_VALUE","NTILE","NULLEQ","OCT","OCTET_LENGTH","OLD_PASSWORD","ORD","PASSWORD_FUNC","PERCENT_RANK","PERIOD_ADD","PERIOD_DIFF","PI","PLUS","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANDOM_BYTES","RANK","REGEXP","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","RELEASE_ALL_LOCKS","RELEASE_LOCK","REPEAT","REPLACE","REVERSE","RIGHT","RIGHTSHIFT","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCHEMA","SEC_TO_TIME","SECOND","SESSION_USER","SETVAL","SETVAR","SHA","SHA1","SHA2","SIGN","SIN","SLEEP","SM3","SPACE","SQRT","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","STRCMP","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUBTIME","SUM","SYSDATE","SYSTEM_USER","TAN","TIDB_BOUNDED_STALENESS","TIDB_CURRENT_TSO","TIDB_DECODE_BINARY_PLAN","TIDB_DECODE_KEY","TIDB_DECODE_PLAN","TIDB_DECODE_SQL_DIGESTS","TIDB_ENCODE_SQL_DIGEST","TIDB_IS_DDL_OWNER","TIDB_PARSE_TSO","TIDB_PARSE_TSO_LOGICAL","TIDB_ROW_CHECKSUM","TIDB_SHARD","TIDB_VERSION","TIME","TIME_FORMAT","TIME_TO_SEC","TIMEDIFF","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TO_BASE64","TO_DAYS","TO_SECONDS","TRANSLATE","TRIM","TRUNCATE","UCASE","UNARYMINUS","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","UUID_SHORT","UUID_TO_BIN","VALIDATE_PASSWORD_STRENGTH","VAR_POP","VAR_SAMP","VARIANCE","VERSION","VITESS_HASH","WEEK","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","YEAR","YEARWEEK"],ga=y(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),ya=y(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO]","REPLACE [LOW_PRIORITY | DELAYED] [INTO]","VALUES","ON DUPLICATE KEY UPDATE","SET"]),Sr=y(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),AE=y(["CREATE [OR REPLACE] [SQL SECURITY DEFINER | SQL SECURITY INVOKER] VIEW [IF NOT EXISTS]","UPDATE [LOW_PRIORITY] [IGNORE]","DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","{CHANGE | MODIFY} [COLUMN]","DROP [COLUMN]","RENAME [TO | AS]","RENAME COLUMN","ALTER [COLUMN]","{SET | DROP} DEFAULT","TRUNCATE [TABLE]","ALTER DATABASE","ALTER INSTANCE","ALTER RESOURCE GROUP","ALTER SEQUENCE","ALTER USER","ALTER VIEW","ANALYZE TABLE","CHECK TABLE","CHECKSUM TABLE","COMMIT","CREATE DATABASE","CREATE INDEX","CREATE RESOURCE GROUP","CREATE ROLE","CREATE SEQUENCE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DROP DATABASE","DROP INDEX","DROP RESOURCE GROUP","DROP ROLE","DROP TABLESPACE","DROP USER","DROP VIEW","EXPLAIN","FLUSH","GRANT","IMPORT TABLE","INSTALL COMPONENT","INSTALL PLUGIN","KILL","LOAD DATA","LOCK INSTANCE FOR BACKUP","LOCK TABLES","OPTIMIZE TABLE","PREPARE","RELEASE SAVEPOINT","RENAME TABLE","RENAME USER","REPAIR TABLE","RESET","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW BINARY LOGS","SHOW BINLOG EVENTS","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW EVENTS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW TRIGGERS","SHOW VARIABLES","SHOW WARNINGS","TABLE","UNINSTALL COMPONENT","UNINSTALL PLUGIN","UNLOCK INSTANCE","UNLOCK TABLES","USE"]),Ga=y(["UNION [ALL | DISTINCT]"]),Fa=y(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),Ha=y(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),ba=y([]),xa={name:"tidb",tokenizerOptions:{reservedSelect:ga,reservedClauses:[...ya,...Sr,...AE],reservedSetOperations:Ga,reservedJoins:Fa,reservedKeywordPhrases:Ha,reservedDataTypePhrases:ba,supportsXor:!0,reservedKeywords:Ua,reservedDataTypes:ma,reservedFunctionNames:Ba,stringTypes:['""-qq-bs',{quote:"''-qq-bs",prefixes:["N"]},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_.$]+"},{quote:'""-qq-bs',prefixes:["@"],requirePrefix:!0},{quote:"''-qq-bs",prefixes:["@"],requirePrefix:!0},{quote:"``",prefixes:["@"],requirePrefix:!0}],paramTypes:{positional:!0},lineCommentTypes:["--","#"],operators:["%",":=","&","|","^","~","<<",">>","<=>","->","->>","&&","||","!","*.*"],postProcess:vt},formatOptions:{onelineClauses:[...Sr,...AE],tabularOnelineClauses:AE}},Ya=["ABORT","ABS","ACOS","ADVISOR","ARRAY_AGG","ARRAY_AGG","ARRAY_APPEND","ARRAY_AVG","ARRAY_BINARY_SEARCH","ARRAY_CONCAT","ARRAY_CONTAINS","ARRAY_COUNT","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_FLATTEN","ARRAY_IFNULL","ARRAY_INSERT","ARRAY_INTERSECT","ARRAY_LENGTH","ARRAY_MAX","ARRAY_MIN","ARRAY_MOVE","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_PUT","ARRAY_RANGE","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_REPLACE","ARRAY_REVERSE","ARRAY_SORT","ARRAY_STAR","ARRAY_SUM","ARRAY_SYMDIFF","ARRAY_SYMDIFF1","ARRAY_SYMDIFFN","ARRAY_UNION","ASIN","ATAN","ATAN2","AVG","BASE64","BASE64_DECODE","BASE64_ENCODE","BITAND ","BITCLEAR ","BITNOT ","BITOR ","BITSET ","BITSHIFT ","BITTEST ","BITXOR ","CEIL","CLOCK_LOCAL","CLOCK_MILLIS","CLOCK_STR","CLOCK_TZ","CLOCK_UTC","COALESCE","CONCAT","CONCAT2","CONTAINS","CONTAINS_TOKEN","CONTAINS_TOKEN_LIKE","CONTAINS_TOKEN_REGEXP","COS","COUNT","COUNT","COUNTN","CUME_DIST","CURL","DATE_ADD_MILLIS","DATE_ADD_STR","DATE_DIFF_MILLIS","DATE_DIFF_STR","DATE_FORMAT_STR","DATE_PART_MILLIS","DATE_PART_STR","DATE_RANGE_MILLIS","DATE_RANGE_STR","DATE_TRUNC_MILLIS","DATE_TRUNC_STR","DECODE","DECODE_JSON","DEGREES","DENSE_RANK","DURATION_TO_STR","ENCODED_SIZE","ENCODE_JSON","EXP","FIRST_VALUE","FLOOR","GREATEST","HAS_TOKEN","IFINF","IFMISSING","IFMISSINGORNULL","IFNAN","IFNANORINF","IFNULL","INITCAP","ISARRAY","ISATOM","ISBITSET","ISBOOLEAN","ISNUMBER","ISOBJECT","ISSTRING","LAG","LAST_VALUE","LEAD","LEAST","LENGTH","LN","LOG","LOWER","LTRIM","MAX","MEAN","MEDIAN","META","MILLIS","MILLIS_TO_LOCAL","MILLIS_TO_STR","MILLIS_TO_TZ","MILLIS_TO_UTC","MILLIS_TO_ZONE_NAME","MIN","MISSINGIF","NANIF","NEGINFIF","NOW_LOCAL","NOW_MILLIS","NOW_STR","NOW_TZ","NOW_UTC","NTH_VALUE","NTILE","NULLIF","NVL","NVL2","OBJECT_ADD","OBJECT_CONCAT","OBJECT_INNER_PAIRS","OBJECT_INNER_VALUES","OBJECT_LENGTH","OBJECT_NAMES","OBJECT_PAIRS","OBJECT_PUT","OBJECT_REMOVE","OBJECT_RENAME","OBJECT_REPLACE","OBJECT_UNWRAP","OBJECT_VALUES","PAIRS","PERCENT_RANK","PI","POLY_LENGTH","POSINFIF","POSITION","POWER","RADIANS","RANDOM","RANK","RATIO_TO_REPORT","REGEXP_CONTAINS","REGEXP_LIKE","REGEXP_MATCHES","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGEX_CONTAINS","REGEX_LIKE","REGEX_MATCHES","REGEX_POSITION","REGEX_REPLACE","REGEX_SPLIT","REPEAT","REPLACE","REVERSE","ROUND","ROW_NUMBER","RTRIM","SEARCH","SEARCH_META","SEARCH_SCORE","SIGN","SIN","SPLIT","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DURATION","STR_TO_MILLIS","STR_TO_TZ","STR_TO_UTC","STR_TO_ZONE_NAME","SUBSTR","SUFFIXES","SUM","TAN","TITLE","TOARRAY","TOATOM","TOBOOLEAN","TOKENS","TOKENS","TONUMBER","TOOBJECT","TOSTRING","TRIM","TRUNC","UPPER","UUID","VARIANCE","VARIANCE_POP","VARIANCE_SAMP","VAR_POP","VAR_SAMP","WEEKDAY_MILLIS","WEEKDAY_STR","CAST"],Va=["ADVISE","ALL","ALTER","ANALYZE","AND","ANY","ARRAY","AS","ASC","AT","BEGIN","BETWEEN","BINARY","BOOLEAN","BREAK","BUCKET","BUILD","BY","CALL","CASE","CAST","CLUSTER","COLLATE","COLLECTION","COMMIT","COMMITTED","CONNECT","CONTINUE","CORRELATED","COVER","CREATE","CURRENT","DATABASE","DATASET","DATASTORE","DECLARE","DECREMENT","DELETE","DERIVED","DESC","DESCRIBE","DISTINCT","DO","DROP","EACH","ELEMENT","ELSE","END","EVERY","EXCEPT","EXCLUDE","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FILTER","FIRST","FLATTEN","FLUSH","FOLLOWING","FOR","FORCE","FROM","FTS","FUNCTION","GOLANG","GRANT","GROUP","GROUPS","GSI","HASH","HAVING","IF","IGNORE","ILIKE","IN","INCLUDE","INCREMENT","INDEX","INFER","INLINE","INNER","INSERT","INTERSECT","INTO","IS","ISOLATION","JAVASCRIPT","JOIN","KEY","KEYS","KEYSPACE","KNOWN","LANGUAGE","LAST","LEFT","LET","LETTING","LEVEL","LIKE","LIMIT","LSM","MAP","MAPPING","MATCHED","MATERIALIZED","MERGE","MINUS","MISSING","NAMESPACE","NEST","NL","NO","NOT","NTH_VALUE","NULL","NULLS","NUMBER","OBJECT","OFFSET","ON","OPTION","OPTIONS","OR","ORDER","OTHERS","OUTER","OVER","PARSE","PARTITION","PASSWORD","PATH","POOL","PRECEDING","PREPARE","PRIMARY","PRIVATE","PRIVILEGE","PROBE","PROCEDURE","PUBLIC","RANGE","RAW","REALM","REDUCE","RENAME","RESPECT","RETURN","RETURNING","REVOKE","RIGHT","ROLE","ROLLBACK","ROW","ROWS","SATISFIES","SAVEPOINT","SCHEMA","SCOPE","SELECT","SELF","SEMI","SET","SHOW","SOME","START","STATISTICS","STRING","SYSTEM","THEN","TIES","TO","TRAN","TRANSACTION","TRIGGER","TRUE","TRUNCATE","UNBOUNDED","UNDER","UNION","UNIQUE","UNKNOWN","UNNEST","UNSET","UPDATE","UPSERT","USE","USER","USING","VALIDATE","VALUE","VALUED","VALUES","VIA","VIEW","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WORK","XOR"],va=[],wa=y(["SELECT [ALL | DISTINCT]"]),Wa=y(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET","MERGE INTO","WHEN [NOT] MATCHED THEN","UPDATE SET","INSERT","NEST","UNNEST","RETURNING"]),Nr=y(["UPDATE","DELETE FROM","SET SCHEMA","ADVISE","ALTER INDEX","BEGIN TRANSACTION","BUILD INDEX","COMMIT TRANSACTION","CREATE COLLECTION","CREATE FUNCTION","CREATE INDEX","CREATE PRIMARY INDEX","CREATE SCOPE","DROP COLLECTION","DROP FUNCTION","DROP INDEX","DROP PRIMARY INDEX","DROP SCOPE","EXECUTE","EXECUTE FUNCTION","EXPLAIN","GRANT","INFER","PREPARE","REVOKE","ROLLBACK TRANSACTION","SAVEPOINT","SET TRANSACTION","UPDATE STATISTICS","UPSERT","LET","SET CURRENT SCHEMA","SHOW","USE [PRIMARY] KEYS"]),Xa=y(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),Ka=y(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","INNER JOIN"]),ka=y(["{ROWS | RANGE | GROUPS} BETWEEN"]),$a=y([]),qa={name:"n1ql",tokenizerOptions:{reservedSelect:wa,reservedClauses:[...Wa,...Nr],reservedSetOperations:Xa,reservedJoins:Ka,reservedKeywordPhrases:ka,reservedDataTypePhrases:$a,supportsXor:!0,reservedKeywords:Va,reservedDataTypes:va,reservedFunctionNames:Ya,stringTypes:['""-bs',"''-bs"],identTypes:["``"],extraParens:["[]","{}"],paramTypes:{positional:!0,numbered:["$"],named:["$"]},lineCommentTypes:["#","--"],operators:["%","==",":","||"]},formatOptions:{onelineClauses:Nr}},Ja=["ADD","AGENT","AGGREGATE","ALL","ALTER","AND","ANY","ARROW","AS","ASC","AT","ATTRIBUTE","AUTHID","AVG","BEGIN","BETWEEN","BLOCK","BODY","BOTH","BOUND","BULK","BY","BYTE","CALL","CALLING","CASCADE","CASE","CHARSET","CHARSETFORM","CHARSETID","CHECK","CLOSE","CLUSTER","CLUSTERS","COLAUTH","COLLECT","COLUMNS","COMMENT","COMMIT","COMMITTED","COMPILED","COMPRESS","CONNECT","CONSTANT","CONSTRUCTOR","CONTEXT","CONVERT","COUNT","CRASH","CREATE","CURRENT","CURSOR","CUSTOMDATUM","DANGLING","DATA","DAY","DECLARE","DEFAULT","DEFINE","DELETE","DESC","DETERMINISTIC","DISTINCT","DROP","DURATION","ELEMENT","ELSE","ELSIF","EMPTY","END","ESCAPE","EXCEPT","EXCEPTION","EXCEPTIONS","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FINAL","FIXED","FOR","FORALL","FORCE","FORM","FROM","FUNCTION","GENERAL","GOTO","GRANT","GROUP","HASH","HAVING","HEAP","HIDDEN","HOUR","IDENTIFIED","IF","IMMEDIATE","IN","INCLUDING","INDEX","INDEXES","INDICATOR","INDICES","INFINITE","INSERT","INSTANTIABLE","INTERFACE","INTERSECT","INTERVAL","INTO","INVALIDATE","IS","ISOLATION","JAVA","LANGUAGE","LARGE","LEADING","LENGTH","LEVEL","LIBRARY","LIKE","LIKE2","LIKE4","LIKEC","LIMIT","LIMITED","LOCAL","LOCK","LOOP","MAP","MAX","MAXLEN","MEMBER","MERGE","MIN","MINUS","MINUTE","MOD","MODE","MODIFY","MONTH","MULTISET","NAME","NAN","NATIONAL","NATIVE","NEW","NOCOMPRESS","NOCOPY","NOT","NOWAIT","NULL","OBJECT","OCICOLL","OCIDATE","OCIDATETIME","OCIDURATION","OCIINTERVAL","OCILOBLOCATOR","OCINUMBER","OCIRAW","OCIREF","OCIREFCURSOR","OCIROWID","OCISTRING","OCITYPE","OF","ON","ONLY","OPAQUE","OPEN","OPERATOR","OPTION","OR","ORACLE","ORADATA","ORDER","OVERLAPS","ORGANIZATION","ORLANY","ORLVARY","OTHERS","OUT","OVERRIDING","PACKAGE","PARALLEL_ENABLE","PARAMETER","PARAMETERS","PARTITION","PASCAL","PIPE","PIPELINED","PRAGMA","PRIOR","PRIVATE","PROCEDURE","PUBLIC","RAISE","RANGE","READ","RECORD","REF","REFERENCE","REM","REMAINDER","RENAME","RESOURCE","RESULT","RETURN","RETURNING","REVERSE","REVOKE","ROLLBACK","ROW","SAMPLE","SAVE","SAVEPOINT","SB1","SB2","SB4","SECOND","SEGMENT","SELECT","SELF","SEPARATE","SEQUENCE","SERIALIZABLE","SET","SHARE","SHORT","SIZE","SIZE_T","SOME","SPARSE","SQL","SQLCODE","SQLDATA","SQLNAME","SQLSTATE","STANDARD","START","STATIC","STDDEV","STORED","STRING","STRUCT","STYLE","SUBMULTISET","SUBPARTITION","SUBSTITUTABLE","SUBTYPE","SUM","SYNONYM","TABAUTH","TABLE","TDO","THE","THEN","TIME","TIMEZONE_ABBR","TIMEZONE_HOUR","TIMEZONE_MINUTE","TIMEZONE_REGION","TO","TRAILING","TRANSAC","TRANSACTIONAL","TRUSTED","TYPE","UB1","UB2","UB4","UNDER","UNION","UNIQUE","UNSIGNED","UNTRUSTED","UPDATE","USE","USING","VALIST","VALUE","VALUES","VARIABLE","VARIANCE","VARRAY","VIEW","VIEWS","VOID","WHEN","WHERE","WHILE","WITH","WORK","WRAPPED","WRITE","YEAR","ZONE"],Qa=["ARRAY","BFILE_BASE","BINARY","BLOB_BASE","CHAR VARYING","CHAR_BASE","CHAR","CHARACTER VARYING","CHARACTER","CLOB_BASE","DATE_BASE","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTERVAL DAY","INTERVAL YEAR","LONG","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR VARYING","NCHAR","NCHAR","NUMBER_BASE","NUMBER","NUMBERIC","NVARCHAR","PRECISION","RAW","TIMESTAMP","UROWID","VARCHAR","VARCHAR2"],Za=["ABS","ACOS","ASIN","ATAN","ATAN2","BITAND","CEIL","COS","COSH","EXP","FLOOR","LN","LOG","MOD","NANVL","POWER","REMAINDER","ROUND","SIGN","SIN","SINH","SQRT","TAN","TANH","TRUNC","WIDTH_BUCKET","CHR","CONCAT","INITCAP","LOWER","LPAD","LTRIM","NLS_INITCAP","NLS_LOWER","NLSSORT","NLS_UPPER","REGEXP_REPLACE","REGEXP_SUBSTR","REPLACE","RPAD","RTRIM","SOUNDEX","SUBSTR","TRANSLATE","TREAT","TRIM","UPPER","NLS_CHARSET_DECL_LEN","NLS_CHARSET_ID","NLS_CHARSET_NAME","ASCII","INSTR","LENGTH","REGEXP_INSTR","ADD_MONTHS","CURRENT_DATE","CURRENT_TIMESTAMP","DBTIMEZONE","EXTRACT","FROM_TZ","LAST_DAY","LOCALTIMESTAMP","MONTHS_BETWEEN","NEW_TIME","NEXT_DAY","NUMTODSINTERVAL","NUMTOYMINTERVAL","ROUND","SESSIONTIMEZONE","SYS_EXTRACT_UTC","SYSDATE","SYSTIMESTAMP","TO_CHAR","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_DSINTERVAL","TO_YMINTERVAL","TRUNC","TZ_OFFSET","GREATEST","LEAST","ASCIISTR","BIN_TO_NUM","CAST","CHARTOROWID","COMPOSE","CONVERT","DECOMPOSE","HEXTORAW","NUMTODSINTERVAL","NUMTOYMINTERVAL","RAWTOHEX","RAWTONHEX","ROWIDTOCHAR","ROWIDTONCHAR","SCN_TO_TIMESTAMP","TIMESTAMP_TO_SCN","TO_BINARY_DOUBLE","TO_BINARY_FLOAT","TO_CHAR","TO_CLOB","TO_DATE","TO_DSINTERVAL","TO_LOB","TO_MULTI_BYTE","TO_NCHAR","TO_NCLOB","TO_NUMBER","TO_DSINTERVAL","TO_SINGLE_BYTE","TO_TIMESTAMP","TO_TIMESTAMP_TZ","TO_YMINTERVAL","TO_YMINTERVAL","TRANSLATE","UNISTR","BFILENAME","EMPTY_BLOB,","EMPTY_CLOB","CARDINALITY","COLLECT","POWERMULTISET","POWERMULTISET_BY_CARDINALITY","SET","SYS_CONNECT_BY_PATH","CLUSTER_ID","CLUSTER_PROBABILITY","CLUSTER_SET","FEATURE_ID","FEATURE_SET","FEATURE_VALUE","PREDICTION","PREDICTION_COST","PREDICTION_DETAILS","PREDICTION_PROBABILITY","PREDICTION_SET","APPENDCHILDXML","DELETEXML","DEPTH","EXTRACT","EXISTSNODE","EXTRACTVALUE","INSERTCHILDXML","INSERTXMLBEFORE","PATH","SYS_DBURIGEN","SYS_XMLAGG","SYS_XMLGEN","UPDATEXML","XMLAGG","XMLCDATA","XMLCOLATTVAL","XMLCOMMENT","XMLCONCAT","XMLFOREST","XMLPARSE","XMLPI","XMLQUERY","XMLROOT","XMLSEQUENCE","XMLSERIALIZE","XMLTABLE","XMLTRANSFORM","DECODE","DUMP","ORA_HASH","VSIZE","COALESCE","LNNVL","NULLIF","NVL","NVL2","SYS_CONTEXT","SYS_GUID","SYS_TYPEID","UID","USER","USERENV","AVG","COLLECT","CORR","CORR_S","CORR_K","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","FIRST","GROUP_ID","GROUPING","GROUPING_ID","LAST","MAX","MEDIAN","MIN","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANK","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","STATS_BINOMIAL_TEST","STATS_CROSSTAB","STATS_F_TEST","STATS_KS_TEST","STATS_MODE","STATS_MW_TEST","STATS_ONE_WAY_ANOVA","STATS_T_TEST_ONE","STATS_T_TEST_PAIRED","STATS_T_TEST_INDEP","STATS_T_TEST_INDEPU","STATS_WSR_TEST","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTILE","RATIO_TO_REPORT","ROW_NUMBER","DEREF","MAKE_REF","REF","REFTOHEX","VALUE","CV","ITERATION_NUMBER","PRESENTNNV","PRESENTV","PREVIOUS"],ja=y(["SELECT [ALL | DISTINCT | UNIQUE]"]),za=y(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER [SIBLINGS] BY","OFFSET","FETCH {FIRST | NEXT}","FOR UPDATE [OF]","INSERT [INTO | ALL INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [THEN]","UPDATE SET","RETURNING"]),Ir=y(["CREATE [GLOBAL TEMPORARY | PRIVATE TEMPORARY | SHARDED | DUPLICATED | IMMUTABLE BLOCKCHAIN | BLOCKCHAIN | IMMUTABLE] TABLE"]),RE=y(["CREATE [OR REPLACE] [NO FORCE | FORCE] [EDITIONING | EDITIONABLE | EDITIONABLE EDITIONING | NONEDITIONABLE] VIEW","CREATE MATERIALIZED VIEW","UPDATE [ONLY]","DELETE FROM [ONLY]","DROP TABLE","ALTER TABLE","ADD","DROP {COLUMN | UNUSED COLUMNS | COLUMNS CONTINUE}","MODIFY","RENAME TO","RENAME COLUMN","TRUNCATE TABLE","SET SCHEMA","BEGIN","CONNECT BY","DECLARE","EXCEPT","EXCEPTION","LOOP","START WITH"]),ei=y(["UNION [ALL]","MINUS","INTERSECT"]),ti=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | OUTER} APPLY"]),Ei=y(["ON {UPDATE | DELETE} [SET NULL]","ON COMMIT","{ROWS | RANGE} BETWEEN"]),ri=y([]),ni={name:"plsql",tokenizerOptions:{reservedSelect:ja,reservedClauses:[...za,...Ir,...RE],reservedSetOperations:ei,reservedJoins:ti,reservedKeywordPhrases:Ei,reservedDataTypePhrases:ri,supportsXor:!0,reservedKeywords:Ja,reservedDataTypes:Qa,reservedFunctionNames:Za,stringTypes:[{quote:"''-qq",prefixes:["N"]},{quote:"q''",prefixes:["N"]}],identTypes:['""-qq'],identChars:{rest:"$#"},variableTypes:[{regex:"&{1,2}[A-Za-z][A-Za-z0-9_$#]*"}],paramTypes:{numbered:[":"],named:[":"]},operators:["**",":=","%","~=","^=",">>","<<","=>","@","||"],postProcess:si},formatOptions:{alwaysDenseOperators:["@"],onelineClauses:[...Ir,...RE],tabularOnelineClauses:RE}};function si(E){let t=It;return E.map(r=>Ot.SET(r)&&Ot.BY(t)?Object.assign(Object.assign({},r),{type:$.RESERVED_KEYWORD}):(Er(r.type)&&(t=r),r))}const Ti=["ABS","ACOS","ACOSD","ACOSH","ASIN","ASIND","ASINH","ATAN","ATAN2","ATAN2D","ATAND","ATANH","CBRT","CEIL","CEILING","COS","COSD","COSH","COT","COTD","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SCALE","SETSEED","SIGN","SIN","SIND","SINH","SQRT","TAN","TAND","TANH","TRIM_SCALE","TRUNC","WIDTH_BUCKET","ABS","ASCII","BIT_LENGTH","BTRIM","CHARACTER_LENGTH","CHAR_LENGTH","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LEFT","LENGTH","LOWER","LPAD","LTRIM","MD5","NORMALIZE","OCTET_LENGTH","OVERLAY","PARSE_IDENT","PG_CLIENT_ENCODING","POSITION","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REPEAT","REPLACE","REVERSE","RIGHT","RPAD","RTRIM","SPLIT_PART","SPRINTF","STARTS_WITH","STRING_AGG","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","SUBSTRING","TO_ASCII","TO_HEX","TRANSLATE","TRIM","UNISTR","UPPER","BIT_COUNT","BIT_LENGTH","BTRIM","CONVERT","CONVERT_FROM","CONVERT_TO","DECODE","ENCODE","GET_BIT","GET_BYTE","LENGTH","LTRIM","MD5","OCTET_LENGTH","OVERLAY","POSITION","RTRIM","SET_BIT","SET_BYTE","SHA224","SHA256","SHA384","SHA512","STRING_AGG","SUBSTR","SUBSTRING","TRIM","BIT_COUNT","BIT_LENGTH","GET_BIT","LENGTH","OCTET_LENGTH","OVERLAY","POSITION","SET_BIT","SUBSTRING","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","TO_CHAR","TO_DATE","TO_NUMBER","TO_TIMESTAMP","CLOCK_TIMESTAMP","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","EXTRACT","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","LOCALTIME","LOCALTIMESTAMP","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","PG_SLEEP","PG_SLEEP_FOR","PG_SLEEP_UNTIL","STATEMENT_TIMESTAMP","TIMEOFDAY","TO_TIMESTAMP","TRANSACTION_TIMESTAMP","ENUM_FIRST","ENUM_LAST","ENUM_RANGE","AREA","BOUND_BOX","BOX","CENTER","CIRCLE","DIAGONAL","DIAMETER","HEIGHT","ISCLOSED","ISOPEN","LENGTH","LINE","LSEG","NPOINTS","PATH","PCLOSE","POINT","POLYGON","POPEN","RADIUS","SLOPE","WIDTH","ABBREV","BROADCAST","FAMILY","HOST","HOSTMASK","INET_MERGE","INET_SAME_FAMILY","MACADDR8_SET7BIT","MASKLEN","NETMASK","NETWORK","SET_MASKLEN","TRUNC","ARRAY_TO_TSVECTOR","GET_CURRENT_TS_CONFIG","JSONB_TO_TSVECTOR","JSON_TO_TSVECTOR","LENGTH","NUMNODE","PHRASETO_TSQUERY","PLAINTO_TSQUERY","QUERYTREE","SETWEIGHT","STRIP","TO_TSQUERY","TO_TSVECTOR","TSQUERY_PHRASE","TSVECTOR_TO_ARRAY","TS_DEBUG","TS_DELETE","TS_FILTER","TS_HEADLINE","TS_LEXIZE","TS_PARSE","TS_RANK","TS_RANK_CD","TS_REWRITE","TS_STAT","TS_TOKEN_TYPE","WEBSEARCH_TO_TSQUERY","GEN_RANDOM_UUID","UUIDV4","UUIDV7","UUID_EXTRACT_TIMESTAMP","UUID_EXTRACT_VERSION","CURSOR_TO_XML","CURSOR_TO_XMLSCHEMA","DATABASE_TO_XML","DATABASE_TO_XMLSCHEMA","DATABASE_TO_XML_AND_XMLSCHEMA","NEXTVAL","QUERY_TO_XML","QUERY_TO_XMLSCHEMA","QUERY_TO_XML_AND_XMLSCHEMA","SCHEMA_TO_XML","SCHEMA_TO_XMLSCHEMA","SCHEMA_TO_XML_AND_XMLSCHEMA","STRING","TABLE_TO_XML","TABLE_TO_XMLSCHEMA","TABLE_TO_XML_AND_XMLSCHEMA","XMLAGG","XMLCOMMENT","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","XMLTABLE","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_CONTENT","XML_IS_WELL_FORMED_DOCUMENT","XPATH","XPATH_EXISTS","ARRAY_TO_JSON","JSONB_AGG","JSONB_ARRAY_ELEMENTS","JSONB_ARRAY_ELEMENTS_TEXT","JSONB_ARRAY_LENGTH","JSONB_BUILD_ARRAY","JSONB_BUILD_OBJECT","JSONB_EACH","JSONB_EACH_TEXT","JSONB_EXTRACT_PATH","JSONB_EXTRACT_PATH_TEXT","JSONB_INSERT","JSONB_OBJECT","JSONB_OBJECT_AGG","JSONB_OBJECT_KEYS","JSONB_PATH_EXISTS","JSONB_PATH_EXISTS_TZ","JSONB_PATH_MATCH","JSONB_PATH_MATCH_TZ","JSONB_PATH_QUERY","JSONB_PATH_QUERY_ARRAY","JSONB_PATH_QUERY_ARRAY_TZ","JSONB_PATH_QUERY_FIRST","JSONB_PATH_QUERY_FIRST_TZ","JSONB_PATH_QUERY_TZ","JSONB_POPULATE_RECORD","JSONB_POPULATE_RECORDSET","JSONB_PRETTY","JSONB_SET","JSONB_SET_LAX","JSONB_STRIP_NULLS","JSONB_TO_RECORD","JSONB_TO_RECORDSET","JSONB_TYPEOF","JSON_AGG","JSON_ARRAY_ELEMENTS","JSON_ARRAY_ELEMENTS_TEXT","JSON_ARRAY_LENGTH","JSON_BUILD_ARRAY","JSON_BUILD_OBJECT","JSON_EACH","JSON_EACH_TEXT","JSON_EXTRACT_PATH","JSON_EXTRACT_PATH_TEXT","JSON_OBJECT","JSON_OBJECT_AGG","JSON_OBJECT_KEYS","JSON_POPULATE_RECORD","JSON_POPULATE_RECORDSET","JSON_STRIP_NULLS","JSON_TO_RECORD","JSON_TO_RECORDSET","JSON_TYPEOF","ROW_TO_JSON","TO_JSON","TO_JSONB","TO_TIMESTAMP","CURRVAL","LASTVAL","NEXTVAL","SETVAL","COALESCE","GREATEST","LEAST","NULLIF","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_DIMS","ARRAY_FILL","ARRAY_LENGTH","ARRAY_LOWER","ARRAY_NDIMS","ARRAY_POSITION","ARRAY_POSITIONS","ARRAY_PREPEND","ARRAY_REMOVE","ARRAY_REPLACE","ARRAY_TO_STRING","ARRAY_UPPER","CARDINALITY","STRING_TO_ARRAY","TRIM_ARRAY","UNNEST","ISEMPTY","LOWER","LOWER_INC","LOWER_INF","MULTIRANGE","RANGE_MERGE","UPPER","UPPER_INC","UPPER_INF","ARRAY_AGG","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COALESCE","CORR","COUNT","COVAR_POP","COVAR_SAMP","CUME_DIST","DENSE_RANK","EVERY","GROUPING","JSONB_AGG","JSONB_OBJECT_AGG","JSON_AGG","JSON_OBJECT_AGG","MAX","MIN","MODE","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","RANGE_AGG","RANGE_INTERSECT_AGG","RANK","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","STDDEV","STDDEV_POP","STDDEV_SAMP","STRING_AGG","SUM","TO_JSON","TO_JSONB","VARIANCE","VAR_POP","VAR_SAMP","XMLAGG","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","GENERATE_SERIES","GENERATE_SUBSCRIPTS","ACLDEFAULT","ACLEXPLODE","COL_DESCRIPTION","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_QUERY","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","FORMAT_TYPE","HAS_ANY_COLUMN_PRIVILEGE","HAS_COLUMN_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE","HAS_FUNCTION_PRIVILEGE","HAS_LANGUAGE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_SEQUENCE_PRIVILEGE","HAS_SERVER_PRIVILEGE","HAS_TABLESPACE_PRIVILEGE","HAS_TABLE_PRIVILEGE","HAS_TYPE_PRIVILEGE","INET_CLIENT_ADDR","INET_CLIENT_PORT","INET_SERVER_ADDR","INET_SERVER_PORT","MAKEACLITEM","OBJ_DESCRIPTION","PG_BACKEND_PID","PG_BLOCKING_PIDS","PG_COLLATION_IS_VISIBLE","PG_CONF_LOAD_TIME","PG_CONTROL_CHECKPOINT","PG_CONTROL_INIT","PG_CONTROL_SYSTEM","PG_CONVERSION_IS_VISIBLE","PG_CURRENT_LOGFILE","PG_CURRENT_SNAPSHOT","PG_CURRENT_XACT_ID","PG_CURRENT_XACT_ID_IF_ASSIGNED","PG_DESCRIBE_OBJECT","PG_FUNCTION_IS_VISIBLE","PG_GET_CATALOG_FOREIGN_KEYS","PG_GET_CONSTRAINTDEF","PG_GET_EXPR","PG_GET_FUNCTIONDEF","PG_GET_FUNCTION_ARGUMENTS","PG_GET_FUNCTION_IDENTITY_ARGUMENTS","PG_GET_FUNCTION_RESULT","PG_GET_INDEXDEF","PG_GET_KEYWORDS","PG_GET_OBJECT_ADDRESS","PG_GET_OWNED_SEQUENCE","PG_GET_RULEDEF","PG_GET_SERIAL_SEQUENCE","PG_GET_STATISTICSOBJDEF","PG_GET_TRIGGERDEF","PG_GET_USERBYID","PG_GET_VIEWDEF","PG_HAS_ROLE","PG_IDENTIFY_OBJECT","PG_IDENTIFY_OBJECT_AS_ADDRESS","PG_INDEXAM_HAS_PROPERTY","PG_INDEX_COLUMN_HAS_PROPERTY","PG_INDEX_HAS_PROPERTY","PG_IS_OTHER_TEMP_SCHEMA","PG_JIT_AVAILABLE","PG_LAST_COMMITTED_XACT","PG_LISTENING_CHANNELS","PG_MY_TEMP_SCHEMA","PG_NOTIFICATION_QUEUE_USAGE","PG_OPCLASS_IS_VISIBLE","PG_OPERATOR_IS_VISIBLE","PG_OPFAMILY_IS_VISIBLE","PG_OPTIONS_TO_TABLE","PG_POSTMASTER_START_TIME","PG_SAFE_SNAPSHOT_BLOCKING_PIDS","PG_SNAPSHOT_XIP","PG_SNAPSHOT_XMAX","PG_SNAPSHOT_XMIN","PG_STATISTICS_OBJ_IS_VISIBLE","PG_TABLESPACE_DATABASES","PG_TABLESPACE_LOCATION","PG_TABLE_IS_VISIBLE","PG_TRIGGER_DEPTH","PG_TS_CONFIG_IS_VISIBLE","PG_TS_DICT_IS_VISIBLE","PG_TS_PARSER_IS_VISIBLE","PG_TS_TEMPLATE_IS_VISIBLE","PG_TYPEOF","PG_TYPE_IS_VISIBLE","PG_VISIBLE_IN_SNAPSHOT","PG_XACT_COMMIT_TIMESTAMP","PG_XACT_COMMIT_TIMESTAMP_ORIGIN","PG_XACT_STATUS","PQSERVERVERSION","ROW_SECURITY_ACTIVE","SESSION_USER","SHOBJ_DESCRIPTION","TO_REGCLASS","TO_REGCOLLATION","TO_REGNAMESPACE","TO_REGOPER","TO_REGOPERATOR","TO_REGPROC","TO_REGPROCEDURE","TO_REGROLE","TO_REGTYPE","TXID_CURRENT","TXID_CURRENT_IF_ASSIGNED","TXID_CURRENT_SNAPSHOT","TXID_SNAPSHOT_XIP","TXID_SNAPSHOT_XMAX","TXID_SNAPSHOT_XMIN","TXID_STATUS","TXID_VISIBLE_IN_SNAPSHOT","USER","VERSION","BRIN_DESUMMARIZE_RANGE","BRIN_SUMMARIZE_NEW_VALUES","BRIN_SUMMARIZE_RANGE","CONVERT_FROM","CURRENT_SETTING","GIN_CLEAN_PENDING_LIST","PG_ADVISORY_LOCK","PG_ADVISORY_LOCK_SHARED","PG_ADVISORY_UNLOCK","PG_ADVISORY_UNLOCK_ALL","PG_ADVISORY_UNLOCK_SHARED","PG_ADVISORY_XACT_LOCK","PG_ADVISORY_XACT_LOCK_SHARED","PG_BACKUP_START_TIME","PG_CANCEL_BACKEND","PG_COLLATION_ACTUAL_VERSION","PG_COLUMN_COMPRESSION","PG_COLUMN_SIZE","PG_COPY_LOGICAL_REPLICATION_SLOT","PG_COPY_PHYSICAL_REPLICATION_SLOT","PG_CREATE_LOGICAL_REPLICATION_SLOT","PG_CREATE_PHYSICAL_REPLICATION_SLOT","PG_CREATE_RESTORE_POINT","PG_CURRENT_WAL_FLUSH_LSN","PG_CURRENT_WAL_INSERT_LSN","PG_CURRENT_WAL_LSN","PG_DATABASE_SIZE","PG_DROP_REPLICATION_SLOT","PG_EXPORT_SNAPSHOT","PG_FILENODE_RELATION","PG_GET_WAL_REPLAY_PAUSE_STATE","PG_IMPORT_SYSTEM_COLLATIONS","PG_INDEXES_SIZE","PG_IS_IN_BACKUP","PG_IS_IN_RECOVERY","PG_IS_WAL_REPLAY_PAUSED","PG_LAST_WAL_RECEIVE_LSN","PG_LAST_WAL_REPLAY_LSN","PG_LAST_XACT_REPLAY_TIMESTAMP","PG_LOGICAL_EMIT_MESSAGE","PG_LOGICAL_SLOT_GET_BINARY_CHANGES","PG_LOGICAL_SLOT_GET_CHANGES","PG_LOGICAL_SLOT_PEEK_BINARY_CHANGES","PG_LOGICAL_SLOT_PEEK_CHANGES","PG_LOG_BACKEND_MEMORY_CONTEXTS","PG_LS_ARCHIVE_STATUSDIR","PG_LS_DIR","PG_LS_LOGDIR","PG_LS_TMPDIR","PG_LS_WALDIR","PG_PARTITION_ANCESTORS","PG_PARTITION_ROOT","PG_PARTITION_TREE","PG_PROMOTE","PG_READ_BINARY_FILE","PG_READ_FILE","PG_RELATION_FILENODE","PG_RELATION_FILEPATH","PG_RELATION_SIZE","PG_RELOAD_CONF","PG_REPLICATION_ORIGIN_ADVANCE","PG_REPLICATION_ORIGIN_CREATE","PG_REPLICATION_ORIGIN_DROP","PG_REPLICATION_ORIGIN_OID","PG_REPLICATION_ORIGIN_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_IS_SETUP","PG_REPLICATION_ORIGIN_SESSION_PROGRESS","PG_REPLICATION_ORIGIN_SESSION_RESET","PG_REPLICATION_ORIGIN_SESSION_SETUP","PG_REPLICATION_ORIGIN_XACT_RESET","PG_REPLICATION_ORIGIN_XACT_SETUP","PG_REPLICATION_SLOT_ADVANCE","PG_ROTATE_LOGFILE","PG_SIZE_BYTES","PG_SIZE_PRETTY","PG_START_BACKUP","PG_STAT_FILE","PG_STOP_BACKUP","PG_SWITCH_WAL","PG_TABLESPACE_SIZE","PG_TABLE_SIZE","PG_TERMINATE_BACKEND","PG_TOTAL_RELATION_SIZE","PG_TRY_ADVISORY_LOCK","PG_TRY_ADVISORY_LOCK_SHARED","PG_TRY_ADVISORY_XACT_LOCK","PG_TRY_ADVISORY_XACT_LOCK_SHARED","PG_WALFILE_NAME","PG_WALFILE_NAME_OFFSET","PG_WAL_LSN_DIFF","PG_WAL_REPLAY_PAUSE","PG_WAL_REPLAY_RESUME","SET_CONFIG","SUPPRESS_REDUNDANT_UPDATES_TRIGGER","TSVECTOR_UPDATE_TRIGGER","TSVECTOR_UPDATE_TRIGGER_COLUMN","PG_EVENT_TRIGGER_DDL_COMMANDS","PG_EVENT_TRIGGER_DROPPED_OBJECTS","PG_EVENT_TRIGGER_TABLE_REWRITE_OID","PG_EVENT_TRIGGER_TABLE_REWRITE_REASON","PG_GET_OBJECT_ADDRESS","PG_MCV_LIST_ITEMS","CAST"],oi=["ALL","ANALYSE","ANALYZE","AND","ANY","AS","ASC","ASYMMETRIC","AUTHORIZATION","BETWEEN","BINARY","BOTH","CASE","CAST","CHECK","COLLATE","COLLATION","COLUMN","CONCURRENTLY","CONSTRAINT","CREATE","CROSS","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DAY","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","END","EXCEPT","EXISTS","FALSE","FETCH","FILTER","FOR","FOREIGN","FREEZE","FROM","FULL","GRANT","GROUP","HAVING","HOUR","ILIKE","IN","INITIALLY","INNER","INOUT","INTERSECT","INTO","IS","ISNULL","JOIN","LATERAL","LEADING","LEFT","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","MINUTE","MONTH","NATURAL","NOT","NOTNULL","NULL","NULLIF","OFFSET","ON","ONLY","OR","ORDER","OUT","OUTER","OVER","OVERLAPS","PLACING","PRIMARY","REFERENCES","RETURNING","RIGHT","ROW","SECOND","SELECT","SESSION_USER","SIMILAR","SOME","SYMMETRIC","TABLE","TABLESAMPLE","THEN","TO","TRAILING","TRUE","UNION","UNIQUE","USER","USING","VALUES","VARIADIC","VERBOSE","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","YEAR"],ai=["ARRAY","BIGINT","BIT","BIT VARYING","BOOL","BOOLEAN","CHAR","CHARACTER","CHARACTER VARYING","DECIMAL","DEC","DOUBLE","ENUM","FLOAT","INT","INTEGER","INTERVAL","NCHAR","NUMERIC","JSON","JSONB","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TIMESTAMPTZ","UUID","VARCHAR","XML","ZONE"],ii=y(["SELECT [ALL | DISTINCT]"]),Ai=y(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","FOR {UPDATE | NO KEY UPDATE | SHARE | KEY SHARE} [OF]","INSERT INTO","VALUES","DEFAULT VALUES","SET","RETURNING"]),Or=y(["CREATE [GLOBAL | LOCAL] [TEMPORARY | TEMP | UNLOGGED] TABLE [IF NOT EXISTS]"]),SE=y(["CREATE [OR REPLACE] [TEMP | TEMPORARY] [RECURSIVE] VIEW","CREATE [MATERIALIZED] VIEW [IF NOT EXISTS]","UPDATE [ONLY]","WHERE CURRENT OF","ON CONFLICT","DELETE FROM [ONLY]","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS] [ONLY]","ALTER TABLE ALL IN TABLESPACE","RENAME [COLUMN]","RENAME TO","ADD [COLUMN] [IF NOT EXISTS]","DROP [COLUMN] [IF EXISTS]","ALTER [COLUMN]","SET DATA TYPE","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","TRUNCATE [TABLE] [ONLY]","SET SCHEMA","AFTER","ABORT","ALTER AGGREGATE","ALTER COLLATION","ALTER CONVERSION","ALTER DATABASE","ALTER DEFAULT PRIVILEGES","ALTER DOMAIN","ALTER EVENT TRIGGER","ALTER EXTENSION","ALTER FOREIGN DATA WRAPPER","ALTER FOREIGN TABLE","ALTER FUNCTION","ALTER GROUP","ALTER INDEX","ALTER LANGUAGE","ALTER LARGE OBJECT","ALTER MATERIALIZED VIEW","ALTER OPERATOR","ALTER OPERATOR CLASS","ALTER OPERATOR FAMILY","ALTER POLICY","ALTER PROCEDURE","ALTER PUBLICATION","ALTER ROLE","ALTER ROUTINE","ALTER RULE","ALTER SCHEMA","ALTER SEQUENCE","ALTER SERVER","ALTER STATISTICS","ALTER SUBSCRIPTION","ALTER SYSTEM","ALTER TABLESPACE","ALTER TEXT SEARCH CONFIGURATION","ALTER TEXT SEARCH DICTIONARY","ALTER TEXT SEARCH PARSER","ALTER TEXT SEARCH TEMPLATE","ALTER TRIGGER","ALTER TYPE","ALTER USER","ALTER USER MAPPING","ALTER VIEW","ANALYZE","BEGIN","CALL","CHECKPOINT","CLOSE","CLUSTER","COMMENT ON","COMMIT","COMMIT PREPARED","COPY","CREATE ACCESS METHOD","CREATE [OR REPLACE] AGGREGATE","CREATE CAST","CREATE COLLATION","CREATE [DEFAULT] CONVERSION","CREATE DATABASE","CREATE DOMAIN","CREATE EVENT TRIGGER","CREATE EXTENSION","CREATE FOREIGN DATA WRAPPER","CREATE FOREIGN TABLE","CREATE [OR REPLACE] FUNCTION","CREATE GROUP","CREATE [UNIQUE] INDEX","CREATE [OR REPLACE] [TRUSTED] [PROCEDURAL] LANGUAGE","CREATE OPERATOR","CREATE OPERATOR CLASS","CREATE OPERATOR FAMILY","CREATE POLICY","CREATE [OR REPLACE] PROCEDURE","CREATE PUBLICATION","CREATE ROLE","CREATE [OR REPLACE] RULE","CREATE SCHEMA [AUTHORIZATION]","CREATE [TEMPORARY | TEMP | UNLOGGED] SEQUENCE","CREATE SERVER","CREATE STATISTICS","CREATE SUBSCRIPTION","CREATE TABLESPACE","CREATE TEXT SEARCH CONFIGURATION","CREATE TEXT SEARCH DICTIONARY","CREATE TEXT SEARCH PARSER","CREATE TEXT SEARCH TEMPLATE","CREATE [OR REPLACE] TRANSFORM","CREATE [OR REPLACE] [CONSTRAINT] TRIGGER","CREATE TYPE","CREATE USER","CREATE USER MAPPING","DEALLOCATE","DECLARE","DISCARD","DROP ACCESS METHOD","DROP AGGREGATE","DROP CAST","DROP COLLATION","DROP CONVERSION","DROP DATABASE","DROP DOMAIN","DROP EVENT TRIGGER","DROP EXTENSION","DROP FOREIGN DATA WRAPPER","DROP FOREIGN TABLE","DROP FUNCTION","DROP GROUP","DROP IDENTITY","DROP INDEX","DROP LANGUAGE","DROP MATERIALIZED VIEW [IF EXISTS]","DROP OPERATOR","DROP OPERATOR CLASS","DROP OPERATOR FAMILY","DROP OWNED","DROP POLICY","DROP PROCEDURE","DROP PUBLICATION","DROP ROLE","DROP ROUTINE","DROP RULE","DROP SCHEMA","DROP SEQUENCE","DROP SERVER","DROP STATISTICS","DROP SUBSCRIPTION","DROP TABLESPACE","DROP TEXT SEARCH CONFIGURATION","DROP TEXT SEARCH DICTIONARY","DROP TEXT SEARCH PARSER","DROP TEXT SEARCH TEMPLATE","DROP TRANSFORM","DROP TRIGGER","DROP TYPE","DROP USER","DROP USER MAPPING","DROP VIEW","EXECUTE","EXPLAIN","FETCH","GRANT","IMPORT FOREIGN SCHEMA","LISTEN","LOAD","LOCK","MOVE","NOTIFY","OVERRIDING SYSTEM VALUE","PREPARE","PREPARE TRANSACTION","REASSIGN OWNED","REFRESH MATERIALIZED VIEW","REINDEX","RELEASE SAVEPOINT","RESET [ALL|ROLE|SESSION AUTHORIZATION]","REVOKE","ROLLBACK","ROLLBACK PREPARED","ROLLBACK TO SAVEPOINT","SAVEPOINT","SECURITY LABEL","SELECT INTO","SET CONSTRAINTS","SET ROLE","SET SESSION AUTHORIZATION","SET TRANSACTION","SHOW","START TRANSACTION","UNLISTEN","VACUUM"]),Ri=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),Si=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),Ni=y(["PRIMARY KEY","GENERATED {ALWAYS | BY DEFAULT} AS IDENTITY","ON {UPDATE | DELETE} [NO ACTION | RESTRICT | CASCADE | SET NULL | SET DEFAULT]","DO {NOTHING | UPDATE}","AS MATERIALIZED","{ROWS | RANGE | GROUPS} BETWEEN","IS [NOT] DISTINCT FROM","NULLS {FIRST | LAST}","WITH ORDINALITY"]),Ii=y(["[TIMESTAMP | TIME] {WITH | WITHOUT} TIME ZONE"]),Oi={name:"postgresql",tokenizerOptions:{reservedSelect:ii,reservedClauses:[...Ai,...Or,...SE],reservedSetOperations:Ri,reservedJoins:Si,reservedKeywordPhrases:Ni,reservedDataTypePhrases:Ii,reservedKeywords:oi,reservedDataTypes:ai,reservedFunctionNames:Ti,nestedBlockComments:!0,extraParens:["[]"],underscoresInNumbers:!0,stringTypes:["$$",{quote:"''-qq",prefixes:["U&"]},{quote:"''-qq-bs",prefixes:["E"],requirePrefix:!0},{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:[{quote:'""-qq',prefixes:["U&"]}],identChars:{rest:"$"},paramTypes:{numbered:["$"]},operators:["%","^","|/","||/","@",":=","&","|","#","~","<<",">>","~>~","~<~","~>=~","~<=~","@-@","@@","##","<->","&&","&<","&>","<<|","&<|","|>>","|&>","<^","^>","?#","?-","?|","?-|","?||","@>","<@","~=","?","@?","?&","->","->>","#>","#>>","#-","=>",">>=","<<=","~~","~~*","!~~","!~~*","~","~*","!~","!~*","-|-","||","@@@","!!","^@","<%","%>","<<%","%>>","<<->","<->>","<<<->","<->>>","::",":","<#>","<=>","<+>","<~>","<%>"],operatorKeyword:!0},formatOptions:{alwaysDenseOperators:["::",":"],onelineClauses:[...Or,...SE],tabularOnelineClauses:SE}},li=["ANY_VALUE","APPROXIMATE PERCENTILE_DISC","AVG","COUNT","LISTAGG","MAX","MEDIAN","MIN","PERCENTILE_CONT","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","array_concat","array_flatten","get_array_length","split_to_array","subarray","BIT_AND","BIT_OR","BOOL_AND","BOOL_OR","COALESCE","DECODE","GREATEST","LEAST","NVL","NVL2","NULLIF","ADD_MONTHS","AT TIME ZONE","CONVERT_TIMEZONE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATE_CMP","DATE_CMP_TIMESTAMP","DATE_CMP_TIMESTAMPTZ","DATE_PART_YEAR","DATEADD","DATEDIFF","DATE_PART","DATE_TRUNC","EXTRACT","GETDATE","INTERVAL_CMP","LAST_DAY","MONTHS_BETWEEN","NEXT_DAY","SYSDATE","TIMEOFDAY","TIMESTAMP_CMP","TIMESTAMP_CMP_DATE","TIMESTAMP_CMP_TIMESTAMPTZ","TIMESTAMPTZ_CMP","TIMESTAMPTZ_CMP_DATE","TIMESTAMPTZ_CMP_TIMESTAMP","TIMEZONE","TO_TIMESTAMP","TRUNC","AddBBox","DropBBox","GeometryType","ST_AddPoint","ST_Angle","ST_Area","ST_AsBinary","ST_AsEWKB","ST_AsEWKT","ST_AsGeoJSON","ST_AsText","ST_Azimuth","ST_Boundary","ST_Collect","ST_Contains","ST_ContainsProperly","ST_ConvexHull","ST_CoveredBy","ST_Covers","ST_Crosses","ST_Dimension","ST_Disjoint","ST_Distance","ST_DistanceSphere","ST_DWithin","ST_EndPoint","ST_Envelope","ST_Equals","ST_ExteriorRing","ST_Force2D","ST_Force3D","ST_Force3DM","ST_Force3DZ","ST_Force4D","ST_GeometryN","ST_GeometryType","ST_GeomFromEWKB","ST_GeomFromEWKT","ST_GeomFromText","ST_GeomFromWKB","ST_InteriorRingN","ST_Intersects","ST_IsPolygonCCW","ST_IsPolygonCW","ST_IsClosed","ST_IsCollection","ST_IsEmpty","ST_IsSimple","ST_IsValid","ST_Length","ST_LengthSphere","ST_Length2D","ST_LineFromMultiPoint","ST_LineInterpolatePoint","ST_M","ST_MakeEnvelope","ST_MakeLine","ST_MakePoint","ST_MakePolygon","ST_MemSize","ST_MMax","ST_MMin","ST_Multi","ST_NDims","ST_NPoints","ST_NRings","ST_NumGeometries","ST_NumInteriorRings","ST_NumPoints","ST_Perimeter","ST_Perimeter2D","ST_Point","ST_PointN","ST_Points","ST_Polygon","ST_RemovePoint","ST_Reverse","ST_SetPoint","ST_SetSRID","ST_Simplify","ST_SRID","ST_StartPoint","ST_Touches","ST_Within","ST_X","ST_XMax","ST_XMin","ST_Y","ST_YMax","ST_YMin","ST_Z","ST_ZMax","ST_ZMin","SupportsBBox","CHECKSUM","FUNC_SHA1","FNV_HASH","MD5","SHA","SHA1","SHA2","HLL","HLL_CREATE_SKETCH","HLL_CARDINALITY","HLL_COMBINE","IS_VALID_JSON","IS_VALID_JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_EXTRACT_ARRAY_ELEMENT_TEXT","JSON_EXTRACT_PATH_TEXT","JSON_PARSE","JSON_SERIALIZE","ABS","ACOS","ASIN","ATAN","ATAN2","CBRT","CEILING","CEIL","COS","COT","DEGREES","DEXP","DLOG1","DLOG10","EXP","FLOOR","LN","LOG","MOD","PI","POWER","RADIANS","RANDOM","ROUND","SIN","SIGN","SQRT","TAN","TO_HEX","TRUNC","EXPLAIN_MODEL","ASCII","BPCHARCMP","BTRIM","BTTEXT_PATTERN_CMP","CHAR_LENGTH","CHARACTER_LENGTH","CHARINDEX","CHR","COLLATE","CONCAT","CRC32","DIFFERENCE","INITCAP","LEFT","RIGHT","LEN","LENGTH","LOWER","LPAD","RPAD","LTRIM","OCTETINDEX","OCTET_LENGTH","POSITION","QUOTE_IDENT","QUOTE_LITERAL","REGEXP_COUNT","REGEXP_INSTR","REGEXP_REPLACE","REGEXP_SUBSTR","REPEAT","REPLACE","REPLICATE","REVERSE","RTRIM","SOUNDEX","SPLIT_PART","STRPOS","STRTOL","SUBSTRING","TEXTLEN","TRANSLATE","TRIM","UPPER","decimal_precision","decimal_scale","is_array","is_bigint","is_boolean","is_char","is_decimal","is_float","is_integer","is_object","is_scalar","is_smallint","is_varchar","json_typeof","AVG","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","LAST_VALUE","LAG","LEAD","LISTAGG","MAX","MEDIAN","MIN","NTH_VALUE","NTILE","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","RANK","RATIO_TO_REPORT","ROW_NUMBER","STDDEV_SAMP","STDDEV_POP","SUM","VAR_SAMP","VAR_POP","CAST","CONVERT","TO_CHAR","TO_DATE","TO_NUMBER","TEXT_TO_INT_ALT","TEXT_TO_NUMERIC_ALT","CHANGE_QUERY_PRIORITY","CHANGE_SESSION_PRIORITY","CHANGE_USER_PRIORITY","CURRENT_SETTING","PG_CANCEL_BACKEND","PG_TERMINATE_BACKEND","REBOOT_CLUSTER","SET_CONFIG","CURRENT_AWS_ACCOUNT","CURRENT_DATABASE","CURRENT_NAMESPACE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_USER","CURRENT_USER_ID","HAS_ASSUMEROLE_PRIVILEGE","HAS_DATABASE_PRIVILEGE","HAS_SCHEMA_PRIVILEGE","HAS_TABLE_PRIVILEGE","PG_BACKEND_PID","PG_GET_COLS","PG_GET_GRANTEE_BY_IAM_ROLE","PG_GET_IAM_ROLE_BY_USER","PG_GET_LATE_BINDING_VIEW_COLS","PG_LAST_COPY_COUNT","PG_LAST_COPY_ID","PG_LAST_UNLOAD_ID","PG_LAST_QUERY_ID","PG_LAST_UNLOAD_COUNT","SESSION_USER","SLICE_NUM","USER","VERSION"],ui=["AES128","AES256","ALL","ALLOWOVERWRITE","ANY","AS","ASC","AUTHORIZATION","BACKUP","BETWEEN","BINARY","BOTH","CHECK","COLUMN","CONSTRAINT","CREATE","CROSS","DEFAULT","DEFERRABLE","DEFLATE","DEFRAG","DESC","DISABLE","DISTINCT","DO","ENABLE","ENCODE","ENCRYPT","ENCRYPTION","EXPLICIT","FALSE","FOR","FOREIGN","FREEZE","FROM","FULL","GLOBALDICT256","GLOBALDICT64K","GROUP","IDENTITY","IGNORE","ILIKE","IN","INITIALLY","INNER","INTO","IS","ISNULL","LANGUAGE","LEADING","LIKE","LIMIT","LOCALTIME","LOCALTIMESTAMP","LUN","LUNS","MINUS","NATURAL","NEW","NOT","NOTNULL","NULL","NULLS","OFF","OFFLINE","OFFSET","OID","OLD","ON","ONLY","OPEN","ORDER","OUTER","OVERLAPS","PARALLEL","PARTITION","PERCENT","PERMISSIONS","PLACING","PRIMARY","RECOVER","REFERENCES","REJECTLOG","RESORT","RESPECT","RESTORE","SIMILAR","SNAPSHOT","SOME","SYSTEM","TABLE","TAG","TDES","THEN","TIMESTAMP","TO","TOP","TRAILING","TRUE","UNIQUE","USING","VERBOSE","WALLET","WITHOUT","ACCEPTANYDATE","ACCEPTINVCHARS","BLANKSASNULL","DATEFORMAT","EMPTYASNULL","ENCODING","ESCAPE","EXPLICIT_IDS","FILLRECORD","IGNOREBLANKLINES","IGNOREHEADER","REMOVEQUOTES","ROUNDEC","TIMEFORMAT","TRIMBLANKS","TRUNCATECOLUMNS","COMPROWS","COMPUPDATE","MAXERROR","NOLOAD","STATUPDATE","FORMAT","CSV","DELIMITER","FIXEDWIDTH","SHAPEFILE","AVRO","JSON","PARQUET","ORC","ACCESS_KEY_ID","CREDENTIALS","ENCRYPTED","IAM_ROLE","MASTER_SYMMETRIC_KEY","SECRET_ACCESS_KEY","SESSION_TOKEN","BZIP2","GZIP","LZOP","ZSTD","MANIFEST","READRATIO","REGION","SSH","RAW","AZ64","BYTEDICT","DELTA","DELTA32K","LZO","MOSTLY8","MOSTLY16","MOSTLY32","RUNLENGTH","TEXT255","TEXT32K","CATALOG_ROLE","SECRET_ARN","EXTERNAL","AUTO","EVEN","KEY","PREDICATE","COMPRESSION"],Ci=["ARRAY","BIGINT","BPCHAR","CHAR","CHARACTER VARYING","CHARACTER","DECIMAL","INT","INT2","INT4","INT8","INTEGER","NCHAR","NUMERIC","NVARCHAR","SMALLINT","TEXT","VARBYTE","VARCHAR"],ci=y(["SELECT [ALL | DISTINCT]"]),_i=y(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","QUALIFY","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET"]),lr=y(["CREATE [TEMPORARY | TEMP | LOCAL TEMPORARY | LOCAL TEMP] TABLE [IF NOT EXISTS]"]),NE=y(["CREATE [OR REPLACE | MATERIALIZED] VIEW","UPDATE","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ALTER TABLE APPEND","ADD [COLUMN]","DROP [COLUMN]","RENAME TO","RENAME COLUMN","ALTER COLUMN","TYPE","ENCODE","TRUNCATE [TABLE]","ABORT","ALTER DATABASE","ALTER DATASHARE","ALTER DEFAULT PRIVILEGES","ALTER GROUP","ALTER MATERIALIZED VIEW","ALTER PROCEDURE","ALTER SCHEMA","ALTER USER","ANALYSE","ANALYZE","ANALYSE COMPRESSION","ANALYZE COMPRESSION","BEGIN","CALL","CANCEL","CLOSE","COMMIT","COPY","CREATE DATABASE","CREATE DATASHARE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL SCHEMA","CREATE EXTERNAL TABLE","CREATE FUNCTION","CREATE GROUP","CREATE LIBRARY","CREATE MODEL","CREATE PROCEDURE","CREATE SCHEMA","CREATE USER","DEALLOCATE","DECLARE","DESC DATASHARE","DROP DATABASE","DROP DATASHARE","DROP FUNCTION","DROP GROUP","DROP LIBRARY","DROP MODEL","DROP MATERIALIZED VIEW","DROP PROCEDURE","DROP SCHEMA","DROP USER","DROP VIEW","DROP","EXECUTE","EXPLAIN","FETCH","GRANT","LOCK","PREPARE","REFRESH MATERIALIZED VIEW","RESET","REVOKE","ROLLBACK","SELECT INTO","SET SESSION AUTHORIZATION","SET SESSION CHARACTERISTICS","SHOW","SHOW EXTERNAL TABLE","SHOW MODEL","SHOW DATASHARES","SHOW PROCEDURE","SHOW TABLE","SHOW VIEW","START TRANSACTION","UNLOAD","VACUUM"]),Li=y(["UNION [ALL]","EXCEPT","INTERSECT","MINUS"]),Di=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),pi=y(["NULL AS","DATA CATALOG","HIVE METASTORE","{ROWS | RANGE} BETWEEN"]),di=y([]),Pi={name:"redshift",tokenizerOptions:{reservedSelect:ci,reservedClauses:[..._i,...lr,...NE],reservedSetOperations:Li,reservedJoins:Di,reservedKeywordPhrases:pi,reservedDataTypePhrases:di,reservedKeywords:ui,reservedDataTypes:Ci,reservedFunctionNames:li,extraParens:["[]"],stringTypes:["''-qq"],identTypes:['""-qq'],identChars:{first:"#"},paramTypes:{numbered:["$"]},operators:["^","%","@","|/","||/","&","|","~","<<",">>","||","::"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...lr,...NE],tabularOnelineClauses:NE}},fi=["ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANTI","ANY","ARCHIVE","AS","ASC","AT","AUTHORIZATION","BETWEEN","BOTH","BUCKET","BUCKETS","BY","CACHE","CASCADE","CAST","CHANGE","CHECK","CLEAR","CLUSTER","CLUSTERED","CODEGEN","COLLATE","COLLECTION","COLUMN","COLUMNS","COMMENT","COMMIT","COMPACT","COMPACTIONS","COMPUTE","CONCATENATE","CONSTRAINT","COST","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATA","DATABASE","DATABASES","DAY","DBPROPERTIES","DEFINED","DELETE","DELIMITED","DESC","DESCRIBE","DFS","DIRECTORIES","DIRECTORY","DISTINCT","DISTRIBUTE","DIV","DROP","ESCAPE","ESCAPED","EXCEPT","EXCHANGE","EXISTS","EXPORT","EXTENDED","EXTERNAL","EXTRACT","FALSE","FETCH","FIELDS","FILTER","FILEFORMAT","FIRST","FIRST_VALUE","FOLLOWING","FOR","FOREIGN","FORMAT","FORMATTED","FULL","FUNCTION","FUNCTIONS","GLOBAL","GRANT","GROUP","GROUPING","HOUR","IF","IGNORE","IMPORT","IN","INDEX","INDEXES","INNER","INPATH","INPUTFORMAT","INTERSECT","INTO","IS","ITEMS","KEYS","LAST","LAST_VALUE","LATERAL","LAZY","LEADING","LEFT","LIKE","LINES","LIST","LOCAL","LOCATION","LOCK","LOCKS","LOGICAL","MACRO","MATCHED","MERGE","MINUTE","MONTH","MSCK","NAMESPACE","NAMESPACES","NATURAL","NO","NOT","NULL","NULLS","OF","ONLY","OPTION","OPTIONS","OR","ORDER","OUT","OUTER","OUTPUTFORMAT","OVER","OVERLAPS","OVERLAY","OVERWRITE","OWNER","PARTITION","PARTITIONED","PARTITIONS","PERCENT","PLACING","POSITION","PRECEDING","PRIMARY","PRINCIPALS","PROPERTIES","PURGE","QUERY","RANGE","RECORDREADER","RECORDWRITER","RECOVER","REDUCE","REFERENCES","RENAME","REPAIR","REPLACE","RESPECT","RESTRICT","REVOKE","RIGHT","RLIKE","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","SCHEMA","SECOND","SELECT","SEMI","SEPARATED","SERDE","SERDEPROPERTIES","SESSION_USER","SETS","SHOW","SKEWED","SOME","SORT","SORTED","START","STATISTICS","STORED","STRATIFY","SUBSTR","SUBSTRING","TABLE","TABLES","TBLPROPERTIES","TEMPORARY","TERMINATED","THEN","TO","TOUCH","TRAILING","TRANSACTION","TRANSACTIONS","TRIM","TRUE","TRUNCATE","UNARCHIVE","UNBOUNDED","UNCACHE","UNIQUE","UNKNOWN","UNLOCK","UNSET","USE","USER","USING","VIEW","WINDOW","YEAR","ANALYSE","ARRAY_ZIP","COALESCE","CONTAINS","CONVERT","DAYS","DAY_HOUR","DAY_MINUTE","DAY_SECOND","DECODE","DEFAULT","DISTINCTROW","ENCODE","EXPLODE","EXPLODE_OUTER","FIXED","GREATEST","GROUP_CONCAT","HOURS","HOUR_MINUTE","HOUR_SECOND","IFNULL","LEAST","LEVEL","MINUTE_SECOND","NULLIF","OFFSET","ON","OPTIMIZE","REGEXP","SEPARATOR","SIZE","TYPE","TYPES","UNSIGNED","VARIABLES","YEAR_MONTH"],hi=["ARRAY","BIGINT","BINARY","BOOLEAN","BYTE","CHAR","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","LONG","MAP","NUMERIC","REAL","SHORT","SMALLINT","STRING","STRUCT","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TINYINT","VARCHAR"],Mi=["APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","AVG","BIT_AND","BIT_OR","BIT_XOR","BOOL_AND","BOOL_OR","COLLECT_LIST","COLLECT_SET","CORR","COUNT","COUNT","COUNT","COUNT_IF","COUNT_MIN_SKETCH","COVAR_POP","COVAR_SAMP","EVERY","FIRST","FIRST_VALUE","GROUPING","GROUPING_ID","KURTOSIS","LAST","LAST_VALUE","MAX","MAX_BY","MEAN","MIN","MIN_BY","PERCENTILE","PERCENTILE","PERCENTILE_APPROX","SKEWNESS","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CUME_DIST","DENSE_RANK","LAG","LEAD","NTH_VALUE","NTILE","PERCENT_RANK","RANK","ROW_NUMBER","ARRAY","ARRAY_CONTAINS","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_REPEAT","ARRAY_UNION","ARRAYS_OVERLAP","ARRAYS_ZIP","FLATTEN","SEQUENCE","SHUFFLE","SLICE","SORT_ARRAY","ELEMENT_AT","ELEMENT_AT","MAP_CONCAT","MAP_ENTRIES","MAP_FROM_ARRAYS","MAP_FROM_ENTRIES","MAP_KEYS","MAP_VALUES","STR_TO_MAP","ADD_MONTHS","CURRENT_DATE","CURRENT_DATE","CURRENT_TIMESTAMP","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","DATE_ADD","DATE_FORMAT","DATE_FROM_UNIX_DATE","DATE_PART","DATE_SUB","DATE_TRUNC","DATEDIFF","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","EXTRACT","FROM_UNIXTIME","FROM_UTC_TIMESTAMP","HOUR","LAST_DAY","MAKE_DATE","MAKE_DT_INTERVAL","MAKE_INTERVAL","MAKE_TIMESTAMP","MAKE_YM_INTERVAL","MINUTE","MONTH","MONTHS_BETWEEN","NEXT_DAY","NOW","QUARTER","SECOND","SESSION_WINDOW","TIMESTAMP_MICROS","TIMESTAMP_MILLIS","TIMESTAMP_SECONDS","TO_DATE","TO_TIMESTAMP","TO_UNIX_TIMESTAMP","TO_UTC_TIMESTAMP","TRUNC","UNIX_DATE","UNIX_MICROS","UNIX_MILLIS","UNIX_SECONDS","UNIX_TIMESTAMP","WEEKDAY","WEEKOFYEAR","WINDOW","YEAR","FROM_JSON","GET_JSON_OBJECT","JSON_ARRAY_LENGTH","JSON_OBJECT_KEYS","JSON_TUPLE","SCHEMA_OF_JSON","TO_JSON","ABS","ACOS","ACOSH","AGGREGATE","ARRAY_SORT","ASCII","ASIN","ASINH","ASSERT_TRUE","ATAN","ATAN2","ATANH","BASE64","BIN","BIT_COUNT","BIT_GET","BIT_LENGTH","BROUND","BTRIM","CARDINALITY","CBRT","CEIL","CEILING","CHAR_LENGTH","CHARACTER_LENGTH","CHR","CONCAT","CONCAT_WS","CONV","COS","COSH","COT","CRC32","CURRENT_CATALOG","CURRENT_DATABASE","CURRENT_USER","DEGREES","ELT","EXP","EXPM1","FACTORIAL","FIND_IN_SET","FLOOR","FORALL","FORMAT_NUMBER","FORMAT_STRING","FROM_CSV","GETBIT","HASH","HEX","HYPOT","INITCAP","INLINE","INLINE_OUTER","INPUT_FILE_BLOCK_LENGTH","INPUT_FILE_BLOCK_START","INPUT_FILE_NAME","INSTR","ISNAN","ISNOTNULL","ISNULL","JAVA_METHOD","LCASE","LEFT","LENGTH","LEVENSHTEIN","LN","LOCATE","LOG","LOG10","LOG1P","LOG2","LOWER","LPAD","LTRIM","MAP_FILTER","MAP_ZIP_WITH","MD5","MOD","MONOTONICALLY_INCREASING_ID","NAMED_STRUCT","NANVL","NEGATIVE","NVL","NVL2","OCTET_LENGTH","OVERLAY","PARSE_URL","PI","PMOD","POSEXPLODE","POSEXPLODE_OUTER","POSITION","POSITIVE","POW","POWER","PRINTF","RADIANS","RAISE_ERROR","RAND","RANDN","RANDOM","REFLECT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_REPLACE","REPEAT","REPLACE","REVERSE","RIGHT","RINT","ROUND","RPAD","RTRIM","SCHEMA_OF_CSV","SENTENCES","SHA","SHA1","SHA2","SHIFTLEFT","SHIFTRIGHT","SHIFTRIGHTUNSIGNED","SIGN","SIGNUM","SIN","SINH","SOUNDEX","SPACE","SPARK_PARTITION_ID","SPLIT","SQRT","STACK","SUBSTR","SUBSTRING","SUBSTRING_INDEX","TAN","TANH","TO_CSV","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRY_ADD","TRY_DIVIDE","TYPEOF","UCASE","UNBASE64","UNHEX","UPPER","UUID","VERSION","WIDTH_BUCKET","XPATH","XPATH_BOOLEAN","XPATH_DOUBLE","XPATH_FLOAT","XPATH_INT","XPATH_LONG","XPATH_NUMBER","XPATH_SHORT","XPATH_STRING","XXHASH64","ZIP_WITH","CAST","COALESCE","NULLIF"],Ui=y(["SELECT [ALL | DISTINCT]"]),mi=y(["WITH","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","SORT BY","CLUSTER BY","DISTRIBUTE BY","LIMIT","INSERT [INTO | OVERWRITE] [TABLE]","VALUES","INSERT OVERWRITE [LOCAL] DIRECTORY","LOAD DATA [LOCAL] INPATH","[OVERWRITE] INTO TABLE"]),ur=y(["CREATE [EXTERNAL] TABLE [IF NOT EXISTS]"]),IE=y(["CREATE [OR REPLACE] [GLOBAL TEMPORARY | TEMPORARY] VIEW [IF NOT EXISTS]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD COLUMNS","DROP {COLUMN | COLUMNS}","RENAME TO","RENAME COLUMN","ALTER COLUMN","TRUNCATE TABLE","LATERAL VIEW","ALTER DATABASE","ALTER VIEW","CREATE DATABASE","CREATE FUNCTION","DROP DATABASE","DROP FUNCTION","DROP VIEW","REPAIR TABLE","USE DATABASE","TABLESAMPLE","PIVOT","TRANSFORM","EXPLAIN","ADD FILE","ADD JAR","ANALYZE TABLE","CACHE TABLE","CLEAR CACHE","DESCRIBE DATABASE","DESCRIBE FUNCTION","DESCRIBE QUERY","DESCRIBE TABLE","LIST FILE","LIST JAR","REFRESH","REFRESH TABLE","REFRESH FUNCTION","RESET","SHOW COLUMNS","SHOW CREATE TABLE","SHOW DATABASES","SHOW FUNCTIONS","SHOW PARTITIONS","SHOW TABLE EXTENDED","SHOW TABLES","SHOW TBLPROPERTIES","SHOW VIEWS","UNCACHE TABLE"]),Bi=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),gi=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT] {ANTI | SEMI} JOIN","NATURAL [LEFT] {ANTI | SEMI} JOIN"]),yi=y(["ON DELETE","ON UPDATE","CURRENT ROW","{ROWS | RANGE} BETWEEN"]),Gi=y([]),Fi={name:"spark",tokenizerOptions:{reservedSelect:Ui,reservedClauses:[...mi,...ur,...IE],reservedSetOperations:Bi,reservedJoins:gi,reservedKeywordPhrases:yi,reservedDataTypePhrases:Gi,supportsXor:!0,reservedKeywords:fi,reservedDataTypes:hi,reservedFunctionNames:Mi,extraParens:["[]"],stringTypes:["''-bs",'""-bs',{quote:"''-raw",prefixes:["R","X"],requirePrefix:!0},{quote:'""-raw',prefixes:["R","X"],requirePrefix:!0}],identTypes:["``"],identChars:{allowFirstCharNumber:!0},variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||","->"],postProcess:Hi},formatOptions:{onelineClauses:[...ur,...IE],tabularOnelineClauses:IE}};function Hi(E){return E.map((t,r)=>{const n=E[r-1]||It,s=E[r+1]||It;return Ot.WINDOW(t)&&s.type===$.OPEN_PAREN?Object.assign(Object.assign({},t),{type:$.RESERVED_FUNCTION_NAME}):t.text==="ITEMS"&&t.type===$.RESERVED_KEYWORD&&!(n.text==="COLLECTION"&&s.text==="TERMINATED")?Object.assign(Object.assign({},t),{type:$.IDENTIFIER,text:t.raw}):t})}const bi=["ABS","CHANGES","CHAR","COALESCE","FORMAT","GLOB","HEX","IFNULL","IIF","INSTR","LAST_INSERT_ROWID","LENGTH","LIKE","LIKELIHOOD","LIKELY","LOAD_EXTENSION","LOWER","LTRIM","NULLIF","PRINTF","QUOTE","RANDOM","RANDOMBLOB","REPLACE","ROUND","RTRIM","SIGN","SOUNDEX","SQLITE_COMPILEOPTION_GET","SQLITE_COMPILEOPTION_USED","SQLITE_OFFSET","SQLITE_SOURCE_ID","SQLITE_VERSION","SUBSTR","SUBSTRING","TOTAL_CHANGES","TRIM","TYPEOF","UNICODE","UNLIKELY","UPPER","ZEROBLOB","AVG","COUNT","GROUP_CONCAT","MAX","MIN","SUM","TOTAL","DATE","TIME","DATETIME","JULIANDAY","UNIXEPOCH","STRFTIME","row_number","rank","dense_rank","percent_rank","cume_dist","ntile","lag","lead","first_value","last_value","nth_value","ACOS","ACOSH","ASIN","ASINH","ATAN","ATAN2","ATANH","CEIL","CEILING","COS","COSH","DEGREES","EXP","FLOOR","LN","LOG","LOG","LOG10","LOG2","MOD","PI","POW","POWER","RADIANS","SIN","SINH","SQRT","TAN","TANH","TRUNC","JSON","JSON_ARRAY","JSON_ARRAY_LENGTH","JSON_ARRAY_LENGTH","JSON_EXTRACT","JSON_INSERT","JSON_OBJECT","JSON_PATCH","JSON_REMOVE","JSON_REPLACE","JSON_SET","JSON_TYPE","JSON_TYPE","JSON_VALID","JSON_QUOTE","JSON_GROUP_ARRAY","JSON_GROUP_OBJECT","JSON_EACH","JSON_TREE","CAST"],xi=["ABORT","ACTION","ADD","AFTER","ALL","ALTER","AND","ARE","ALWAYS","ANALYZE","AS","ASC","ATTACH","AUTOINCREMENT","BEFORE","BEGIN","BETWEEN","BY","CASCADE","CASE","CAST","CHECK","COLLATE","COLUMN","COMMIT","CONFLICT","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATABASE","DEFAULT","DEFERRABLE","DEFERRED","DELETE","DESC","DETACH","DISTINCT","DO","DROP","EACH","ELSE","END","ESCAPE","EXCEPT","EXCLUDE","EXCLUSIVE","EXISTS","EXPLAIN","FAIL","FILTER","FIRST","FOLLOWING","FOR","FOREIGN","FROM","FULL","GENERATED","GLOB","GROUP","HAVING","IF","IGNORE","IMMEDIATE","IN","INDEX","INDEXED","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","KEY","LAST","LEFT","LIKE","LIMIT","MATCH","MATERIALIZED","NATURAL","NO","NOT","NOTHING","NOTNULL","NULL","NULLS","OF","OFFSET","ON","ONLY","OPEN","OR","ORDER","OTHERS","OUTER","OVER","PARTITION","PLAN","PRAGMA","PRECEDING","PRIMARY","QUERY","RAISE","RANGE","RECURSIVE","REFERENCES","REGEXP","REINDEX","RELEASE","RENAME","REPLACE","RESTRICT","RETURNING","RIGHT","ROLLBACK","ROW","ROWS","SAVEPOINT","SELECT","SET","TABLE","TEMP","TEMPORARY","THEN","TIES","TO","TRANSACTION","TRIGGER","UNBOUNDED","UNION","UNIQUE","UPDATE","USING","VACUUM","VALUES","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT"],Yi=["ANY","ARRAY","BLOB","CHARACTER","DECIMAL","INT","INTEGER","NATIVE CHARACTER","NCHAR","NUMERIC","NVARCHAR","REAL","TEXT","VARCHAR","VARYING CHARACTER"],Vi=y(["SELECT [ALL | DISTINCT]"]),vi=y(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK] INTO","REPLACE INTO","VALUES","SET","RETURNING"]),Cr=y(["CREATE [TEMPORARY | TEMP] TABLE [IF NOT EXISTS]"]),OE=y(["CREATE [TEMPORARY | TEMP] VIEW [IF NOT EXISTS]","UPDATE [OR ABORT | OR FAIL | OR IGNORE | OR REPLACE | OR ROLLBACK]","ON CONFLICT","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD [COLUMN]","DROP [COLUMN]","RENAME [COLUMN]","RENAME TO","SET SCHEMA"]),wi=y(["UNION [ALL]","EXCEPT","INTERSECT"]),Wi=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),Xi=y(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN","DO UPDATE"]),Ki=y([]),ki={name:"sqlite",tokenizerOptions:{reservedSelect:Vi,reservedClauses:[...vi,...Cr,...OE],reservedSetOperations:wi,reservedJoins:Wi,reservedKeywordPhrases:Xi,reservedDataTypePhrases:Ki,reservedKeywords:xi,reservedDataTypes:Yi,reservedFunctionNames:bi,stringTypes:["''-qq",{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``","[]"],paramTypes:{positional:!0,numbered:["?"],named:[":","@","$"]},operators:["%","~","&","|","<<",">>","==","->","->>","||"]},formatOptions:{onelineClauses:[...Cr,...OE],tabularOnelineClauses:OE}},$i=["GROUPING","RANK","DENSE_RANK","PERCENT_RANK","CUME_DIST","ROW_NUMBER","POSITION","OCCURRENCES_REGEX","POSITION_REGEX","EXTRACT","CHAR_LENGTH","CHARACTER_LENGTH","OCTET_LENGTH","CARDINALITY","ABS","MOD","LN","EXP","POWER","SQRT","FLOOR","CEIL","CEILING","WIDTH_BUCKET","SUBSTRING","SUBSTRING_REGEX","UPPER","LOWER","CONVERT","TRANSLATE","TRANSLATE_REGEX","TRIM","OVERLAY","NORMALIZE","SPECIFICTYPE","CURRENT_DATE","CURRENT_TIME","LOCALTIME","CURRENT_TIMESTAMP","LOCALTIMESTAMP","COUNT","AVG","MAX","MIN","SUM","STDDEV_POP","STDDEV_SAMP","VAR_SAMP","VAR_POP","COLLECT","FUSION","INTERSECTION","COVAR_POP","COVAR_SAMP","CORR","REGR_SLOPE","REGR_INTERCEPT","REGR_COUNT","REGR_R2","REGR_AVGX","REGR_AVGY","REGR_SXX","REGR_SYY","REGR_SXY","PERCENTILE_CONT","PERCENTILE_DISC","CAST","COALESCE","NULLIF","ROUND","SIN","COS","TAN","ASIN","ACOS","ATAN"],qi=["ALL","ALLOCATE","ALTER","ANY","ARE","AS","ASC","ASENSITIVE","ASYMMETRIC","AT","ATOMIC","AUTHORIZATION","BEGIN","BETWEEN","BOTH","BY","CALL","CALLED","CASCADED","CAST","CHECK","CLOSE","COALESCE","COLLATE","COLUMN","COMMIT","CONDITION","CONNECT","CONSTRAINT","CORRESPONDING","CREATE","CROSS","CUBE","CURRENT","CURRENT_CATALOG","CURRENT_DEFAULT_TRANSFORM_GROUP","CURRENT_PATH","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_TRANSFORM_GROUP_FOR_TYPE","CURRENT_USER","CURSOR","CYCLE","DEALLOCATE","DAY","DECLARE","DEFAULT","DELETE","DEREF","DESC","DESCRIBE","DETERMINISTIC","DISCONNECT","DISTINCT","DROP","DYNAMIC","EACH","ELEMENT","END-EXEC","ESCAPE","EVERY","EXCEPT","EXEC","EXECUTE","EXISTS","EXTERNAL","FALSE","FETCH","FILTER","FOR","FOREIGN","FREE","FROM","FULL","FUNCTION","GET","GLOBAL","GRANT","GROUP","HAVING","HOLD","HOUR","IDENTITY","IN","INDICATOR","INNER","INOUT","INSENSITIVE","INSERT","INTERSECT","INTO","IS","LANGUAGE","LARGE","LATERAL","LEADING","LEFT","LIKE","LIKE_REGEX","LOCAL","MATCH","MEMBER","MERGE","METHOD","MINUTE","MODIFIES","MODULE","MONTH","NATURAL","NEW","NO","NONE","NOT","NULL","NULLIF","OF","OLD","ON","ONLY","OPEN","ORDER","OUT","OUTER","OVER","OVERLAPS","PARAMETER","PARTITION","PRECISION","PREPARE","PRIMARY","PROCEDURE","RANGE","READS","REAL","RECURSIVE","REF","REFERENCES","REFERENCING","RELEASE","RESULT","RETURN","RETURNS","REVOKE","RIGHT","ROLLBACK","ROLLUP","ROW","ROWS","SAVEPOINT","SCOPE","SCROLL","SEARCH","SECOND","SELECT","SENSITIVE","SESSION_USER","SET","SIMILAR","SOME","SPECIFIC","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","START","STATIC","SUBMULTISET","SYMMETRIC","SYSTEM","SYSTEM_USER","TABLE","TABLESAMPLE","THEN","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO","TRAILING","TRANSLATION","TREAT","TRIGGER","TRUE","UESCAPE","UNION","UNIQUE","UNKNOWN","UNNEST","UPDATE","USER","USING","VALUE","VALUES","WHENEVER","WINDOW","WITHIN","WITHOUT","YEAR"],Ji=["ARRAY","BIGINT","BINARY LARGE OBJECT","BINARY VARYING","BINARY","BLOB","BOOLEAN","CHAR LARGE OBJECT","CHAR VARYING","CHAR","CHARACTER LARGE OBJECT","CHARACTER VARYING","CHARACTER","CLOB","DATE","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MULTISET","NATIONAL CHAR VARYING","NATIONAL CHAR","NATIONAL CHARACTER LARGE OBJECT","NATIONAL CHARACTER VARYING","NATIONAL CHARACTER","NCHAR LARGE OBJECT","NCHAR VARYING","NCHAR","NCLOB","NUMERIC","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],Qi=y(["SELECT [ALL | DISTINCT]"]),Zi=y(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET"]),cr=y(["CREATE [GLOBAL TEMPORARY | LOCAL TEMPORARY] TABLE"]),lE=y(["CREATE [RECURSIVE] VIEW","UPDATE","WHERE CURRENT OF","DELETE FROM","DROP TABLE","ALTER TABLE","ADD COLUMN","DROP [COLUMN]","RENAME COLUMN","RENAME TO","ALTER [COLUMN]","{SET | DROP} DEFAULT","ADD SCOPE","DROP SCOPE {CASCADE | RESTRICT}","RESTART WITH","TRUNCATE TABLE","SET SCHEMA"]),ji=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),zi=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),eA=y(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),tA=y([]),EA={name:"sql",tokenizerOptions:{reservedSelect:Qi,reservedClauses:[...Zi,...cr,...lE],reservedSetOperations:ji,reservedJoins:zi,reservedKeywordPhrases:eA,reservedDataTypePhrases:tA,reservedKeywords:qi,reservedDataTypes:Ji,reservedFunctionNames:$i,stringTypes:[{quote:"''-qq-bs",prefixes:["N","U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``"],paramTypes:{positional:!0},operators:["||"]},formatOptions:{onelineClauses:[...cr,...lE],tabularOnelineClauses:lE}},rA=["ABS","ACOS","ALL_MATCH","ANY_MATCH","APPROX_DISTINCT","APPROX_MOST_FREQUENT","APPROX_PERCENTILE","APPROX_SET","ARBITRARY","ARRAYS_OVERLAP","ARRAY_AGG","ARRAY_DISTINCT","ARRAY_EXCEPT","ARRAY_INTERSECT","ARRAY_JOIN","ARRAY_MAX","ARRAY_MIN","ARRAY_POSITION","ARRAY_REMOVE","ARRAY_SORT","ARRAY_UNION","ASIN","ATAN","ATAN2","AT_TIMEZONE","AVG","BAR","BETA_CDF","BING_TILE","BING_TILES_AROUND","BING_TILE_AT","BING_TILE_COORDINATES","BING_TILE_POLYGON","BING_TILE_QUADKEY","BING_TILE_ZOOM_LEVEL","BITWISE_AND","BITWISE_AND_AGG","BITWISE_LEFT_SHIFT","BITWISE_NOT","BITWISE_OR","BITWISE_OR_AGG","BITWISE_RIGHT_SHIFT","BITWISE_RIGHT_SHIFT_ARITHMETIC","BITWISE_XOR","BIT_COUNT","BOOL_AND","BOOL_OR","CARDINALITY","CAST","CBRT","CEIL","CEILING","CHAR2HEXINT","CHECKSUM","CHR","CLASSIFY","COALESCE","CODEPOINT","COLOR","COMBINATIONS","CONCAT","CONCAT_WS","CONTAINS","CONTAINS_SEQUENCE","CONVEX_HULL_AGG","CORR","COS","COSH","COSINE_SIMILARITY","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CRC32","CUME_DIST","CURRENT_CATALOG","CURRENT_DATE","CURRENT_GROUPS","CURRENT_SCHEMA","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_USER","DATE","DATE_ADD","DATE_DIFF","DATE_FORMAT","DATE_PARSE","DATE_TRUNC","DAY","DAY_OF_MONTH","DAY_OF_WEEK","DAY_OF_YEAR","DEGREES","DENSE_RANK","DOW","DOY","E","ELEMENT_AT","EMPTY_APPROX_SET","EVALUATE_CLASSIFIER_PREDICTIONS","EVERY","EXP","EXTRACT","FEATURES","FILTER","FIRST_VALUE","FLATTEN","FLOOR","FORMAT","FORMAT_DATETIME","FORMAT_NUMBER","FROM_BASE","FROM_BASE32","FROM_BASE64","FROM_BASE64URL","FROM_BIG_ENDIAN_32","FROM_BIG_ENDIAN_64","FROM_ENCODED_POLYLINE","FROM_GEOJSON_GEOMETRY","FROM_HEX","FROM_IEEE754_32","FROM_IEEE754_64","FROM_ISO8601_DATE","FROM_ISO8601_TIMESTAMP","FROM_ISO8601_TIMESTAMP_NANOS","FROM_UNIXTIME","FROM_UNIXTIME_NANOS","FROM_UTF8","GEOMETRIC_MEAN","GEOMETRY_FROM_HADOOP_SHAPE","GEOMETRY_INVALID_REASON","GEOMETRY_NEAREST_POINTS","GEOMETRY_TO_BING_TILES","GEOMETRY_UNION","GEOMETRY_UNION_AGG","GREATEST","GREAT_CIRCLE_DISTANCE","HAMMING_DISTANCE","HASH_COUNTS","HISTOGRAM","HMAC_MD5","HMAC_SHA1","HMAC_SHA256","HMAC_SHA512","HOUR","HUMAN_READABLE_SECONDS","IF","INDEX","INFINITY","INTERSECTION_CARDINALITY","INVERSE_BETA_CDF","INVERSE_NORMAL_CDF","IS_FINITE","IS_INFINITE","IS_JSON_SCALAR","IS_NAN","JACCARD_INDEX","JSON_ARRAY_CONTAINS","JSON_ARRAY_GET","JSON_ARRAY_LENGTH","JSON_EXISTS","JSON_EXTRACT","JSON_EXTRACT_SCALAR","JSON_FORMAT","JSON_PARSE","JSON_QUERY","JSON_SIZE","JSON_VALUE","KURTOSIS","LAG","LAST_DAY_OF_MONTH","LAST_VALUE","LEAD","LEARN_CLASSIFIER","LEARN_LIBSVM_CLASSIFIER","LEARN_LIBSVM_REGRESSOR","LEARN_REGRESSOR","LEAST","LENGTH","LEVENSHTEIN_DISTANCE","LINE_INTERPOLATE_POINT","LINE_INTERPOLATE_POINTS","LINE_LOCATE_POINT","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","LUHN_CHECK","MAKE_SET_DIGEST","MAP","MAP_AGG","MAP_CONCAT","MAP_ENTRIES","MAP_FILTER","MAP_FROM_ENTRIES","MAP_KEYS","MAP_UNION","MAP_VALUES","MAP_ZIP_WITH","MAX","MAX_BY","MD5","MERGE","MERGE_SET_DIGEST","MILLISECOND","MIN","MINUTE","MIN_BY","MOD","MONTH","MULTIMAP_AGG","MULTIMAP_FROM_ENTRIES","MURMUR3","NAN","NGRAMS","NONE_MATCH","NORMALIZE","NORMAL_CDF","NOW","NTH_VALUE","NTILE","NULLIF","NUMERIC_HISTOGRAM","OBJECTID","OBJECTID_TIMESTAMP","PARSE_DATA_SIZE","PARSE_DATETIME","PARSE_DURATION","PERCENT_RANK","PI","POSITION","POW","POWER","QDIGEST_AGG","QUARTER","RADIANS","RAND","RANDOM","RANK","REDUCE","REDUCE_AGG","REGEXP_COUNT","REGEXP_EXTRACT","REGEXP_EXTRACT_ALL","REGEXP_LIKE","REGEXP_POSITION","REGEXP_REPLACE","REGEXP_SPLIT","REGRESS","REGR_INTERCEPT","REGR_SLOPE","RENDER","REPEAT","REPLACE","REVERSE","RGB","ROUND","ROW_NUMBER","RPAD","RTRIM","SECOND","SEQUENCE","SHA1","SHA256","SHA512","SHUFFLE","SIGN","SIMPLIFY_GEOMETRY","SIN","SKEWNESS","SLICE","SOUNDEX","SPATIAL_PARTITIONING","SPATIAL_PARTITIONS","SPLIT","SPLIT_PART","SPLIT_TO_MAP","SPLIT_TO_MULTIMAP","SPOOKY_HASH_V2_32","SPOOKY_HASH_V2_64","SQRT","STARTS_WITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRPOS","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_BOUNDARY","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CONVEXHULL","ST_COORDDIM","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_ENVELOPEASPTS","ST_EQUALS","ST_EXTERIORRING","ST_GEOMETRIES","ST_GEOMETRYFROMTEXT","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMBINARY","ST_INTERIORRINGN","ST_INTERIORRINGS","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISRING","ST_ISSIMPLE","ST_ISVALID","ST_LENGTH","ST_LINEFROMTEXT","ST_LINESTRING","ST_MULTIPOINT","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMPOINTS","ST_OVERLAPS","ST_POINT","ST_POINTN","ST_POINTS","ST_POLYGON","ST_RELATE","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","SUBSTR","SUBSTRING","SUM","TAN","TANH","TDIGEST_AGG","TIMESTAMP_OBJECTID","TIMEZONE_HOUR","TIMEZONE_MINUTE","TO_BASE","TO_BASE32","TO_BASE64","TO_BASE64URL","TO_BIG_ENDIAN_32","TO_BIG_ENDIAN_64","TO_CHAR","TO_DATE","TO_ENCODED_POLYLINE","TO_GEOJSON_GEOMETRY","TO_GEOMETRY","TO_HEX","TO_IEEE754_32","TO_IEEE754_64","TO_ISO8601","TO_MILLISECONDS","TO_SPHERICAL_GEOGRAPHY","TO_TIMESTAMP","TO_UNIXTIME","TO_UTF8","TRANSFORM","TRANSFORM_KEYS","TRANSFORM_VALUES","TRANSLATE","TRIM","TRIM_ARRAY","TRUNCATE","TRY","TRY_CAST","TYPEOF","UPPER","URL_DECODE","URL_ENCODE","URL_EXTRACT_FRAGMENT","URL_EXTRACT_HOST","URL_EXTRACT_PARAMETER","URL_EXTRACT_PATH","URL_EXTRACT_PORT","URL_EXTRACT_PROTOCOL","URL_EXTRACT_QUERY","UUID","VALUES_AT_QUANTILES","VALUE_AT_QUANTILE","VARIANCE","VAR_POP","VAR_SAMP","VERSION","WEEK","WEEK_OF_YEAR","WIDTH_BUCKET","WILSON_INTERVAL_LOWER","WILSON_INTERVAL_UPPER","WITH_TIMEZONE","WORD_STEM","XXHASH64","YEAR","YEAR_OF_WEEK","YOW","ZIP","ZIP_WITH","CLASSIFIER","FIRST","LAST","MATCH_NUMBER","NEXT","PERMUTE","PREV"],nA=["ABSENT","ADD","ADMIN","AFTER","ALL","ALTER","ANALYZE","AND","ANY","AS","ASC","AT","AUTHORIZATION","BERNOULLI","BETWEEN","BOTH","BY","CALL","CASCADE","CASE","CATALOGS","COLUMN","COLUMNS","COMMENT","COMMIT","COMMITTED","CONDITIONAL","CONSTRAINT","COPARTITION","CREATE","CROSS","CUBE","CURRENT","CURRENT_PATH","CURRENT_ROLE","DATA","DEALLOCATE","DEFAULT","DEFINE","DEFINER","DELETE","DENY","DESC","DESCRIBE","DESCRIPTOR","DISTINCT","DISTRIBUTED","DOUBLE","DROP","ELSE","EMPTY","ENCODING","END","ERROR","ESCAPE","EXCEPT","EXCLUDING","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FINAL","FIRST","FOLLOWING","FOR","FROM","FULL","FUNCTIONS","GRANT","GRANTED","GRANTS","GRAPHVIZ","GROUP","GROUPING","GROUPS","HAVING","IGNORE","IN","INCLUDING","INITIAL","INNER","INPUT","INSERT","INTERSECT","INTERVAL","INTO","INVOKER","IO","IS","ISOLATION","JOIN","JSON","JSON_ARRAY","JSON_OBJECT","KEEP","KEY","KEYS","LAST","LATERAL","LEADING","LEFT","LEVEL","LIKE","LIMIT","LOCAL","LOGICAL","MATCH","MATCHED","MATCHES","MATCH_RECOGNIZE","MATERIALIZED","MEASURES","NATURAL","NEXT","NFC","NFD","NFKC","NFKD","NO","NONE","NOT","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OR","ORDER","ORDINALITY","OUTER","OUTPUT","OVER","OVERFLOW","PARTITION","PARTITIONS","PASSING","PAST","PATH","PATTERN","PER","PERMUTE","PRECEDING","PRECISION","PREPARE","PRIVILEGES","PROPERTIES","PRUNE","QUOTES","RANGE","READ","RECURSIVE","REFRESH","RENAME","REPEATABLE","RESET","RESPECT","RESTRICT","RETURNING","REVOKE","RIGHT","ROLE","ROLES","ROLLBACK","ROLLUP","ROW","ROWS","RUNNING","SCALAR","SCHEMA","SCHEMAS","SECURITY","SEEK","SELECT","SERIALIZABLE","SESSION","SET","SETS","SHOW","SKIP","SOME","START","STATS","STRING","SUBSET","SYSTEM","TABLE","TABLES","TABLESAMPLE","TEXT","THEN","TIES","TIME","TIMESTAMP","TO","TRAILING","TRANSACTION","TRUE","TYPE","UESCAPE","UNBOUNDED","UNCOMMITTED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UNNEST","UPDATE","USE","USER","USING","UTF16","UTF32","UTF8","VALIDATE","VALUE","VALUES","VERBOSE","VIEW","WHEN","WHERE","WINDOW","WITH","WITHIN","WITHOUT","WORK","WRAPPER","WRITE","ZONE"],sA=["BIGINT","INT","INTEGER","SMALLINT","TINYINT","BOOLEAN","DATE","DECIMAL","REAL","DOUBLE","HYPERLOGLOG","QDIGEST","TDIGEST","P4HYPERLOGLOG","INTERVAL","TIMESTAMP","TIME","VARBINARY","VARCHAR","CHAR","ROW","ARRAY","MAP","JSON","JSON2016","IPADDRESS","GEOMETRY","UUID","SETDIGEST","JONIREGEXP","RE2JREGEXP","LIKEPATTERN","COLOR","CODEPOINTS","FUNCTION","JSONPATH"],TA=y(["SELECT [ALL | DISTINCT]"]),oA=y(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET","MATCH_RECOGNIZE","MEASURES","ONE ROW PER MATCH","ALL ROWS PER MATCH","AFTER MATCH","PATTERN","SUBSET","DEFINE"]),_r=y(["CREATE TABLE [IF NOT EXISTS]"]),uE=y(["CREATE [OR REPLACE] [MATERIALIZED] VIEW","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","ADD COLUMN [IF NOT EXISTS]","DROP COLUMN [IF EXISTS]","RENAME COLUMN [IF EXISTS]","RENAME TO","SET AUTHORIZATION [USER | ROLE]","SET PROPERTIES","EXECUTE","TRUNCATE TABLE","ALTER SCHEMA","ALTER MATERIALIZED VIEW","ALTER VIEW","CREATE SCHEMA","CREATE ROLE","DROP SCHEMA","DROP MATERIALIZED VIEW","DROP VIEW","DROP ROLE","EXPLAIN","ANALYZE","EXPLAIN ANALYZE","EXPLAIN ANALYZE VERBOSE","USE","DESCRIBE INPUT","DESCRIBE OUTPUT","REFRESH MATERIALIZED VIEW","RESET SESSION","SET SESSION","SET PATH","SET TIME ZONE","SHOW GRANTS","SHOW CREATE TABLE","SHOW CREATE SCHEMA","SHOW CREATE VIEW","SHOW CREATE MATERIALIZED VIEW","SHOW TABLES","SHOW SCHEMAS","SHOW CATALOGS","SHOW COLUMNS","SHOW STATS FOR","SHOW ROLES","SHOW CURRENT ROLES","SHOW ROLE GRANTS","SHOW FUNCTIONS","SHOW SESSION"]),aA=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),iA=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),AA=y(["{ROWS | RANGE | GROUPS} BETWEEN","IS [NOT] DISTINCT FROM"]),RA=y([]),SA={name:"trino",tokenizerOptions:{reservedSelect:TA,reservedClauses:[...oA,..._r,...uE],reservedSetOperations:aA,reservedJoins:iA,reservedKeywordPhrases:AA,reservedDataTypePhrases:RA,reservedKeywords:nA,reservedDataTypes:sA,reservedFunctionNames:rA,extraParens:["[]","{}"],stringTypes:[{quote:"''-qq",prefixes:["U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq'],paramTypes:{positional:!0},operators:["%","->","=>",":","||","|","^","$"]},formatOptions:{onelineClauses:[..._r,...uE],tabularOnelineClauses:uE}},NA=["APPROX_COUNT_DISTINCT","AVG","CHECKSUM_AGG","COUNT","COUNT_BIG","GROUPING","GROUPING_ID","MAX","MIN","STDEV","STDEVP","SUM","VAR","VARP","CUME_DIST","FIRST_VALUE","LAG","LAST_VALUE","LEAD","PERCENTILE_CONT","PERCENTILE_DISC","PERCENT_RANK","Collation - COLLATIONPROPERTY","Collation - TERTIARY_WEIGHTS","@@DBTS","@@LANGID","@@LANGUAGE","@@LOCK_TIMEOUT","@@MAX_CONNECTIONS","@@MAX_PRECISION","@@NESTLEVEL","@@OPTIONS","@@REMSERVER","@@SERVERNAME","@@SERVICENAME","@@SPID","@@TEXTSIZE","@@VERSION","CAST","CONVERT","PARSE","TRY_CAST","TRY_CONVERT","TRY_PARSE","ASYMKEY_ID","ASYMKEYPROPERTY","CERTPROPERTY","CERT_ID","CRYPT_GEN_RANDOM","DECRYPTBYASYMKEY","DECRYPTBYCERT","DECRYPTBYKEY","DECRYPTBYKEYAUTOASYMKEY","DECRYPTBYKEYAUTOCERT","DECRYPTBYPASSPHRASE","ENCRYPTBYASYMKEY","ENCRYPTBYCERT","ENCRYPTBYKEY","ENCRYPTBYPASSPHRASE","HASHBYTES","IS_OBJECTSIGNED","KEY_GUID","KEY_ID","KEY_NAME","SIGNBYASYMKEY","SIGNBYCERT","SYMKEYPROPERTY","VERIFYSIGNEDBYCERT","VERIFYSIGNEDBYASYMKEY","@@CURSOR_ROWS","@@FETCH_STATUS","CURSOR_STATUS","DATALENGTH","IDENT_CURRENT","IDENT_INCR","IDENT_SEED","IDENTITY","SQL_VARIANT_PROPERTY","@@DATEFIRST","CURRENT_TIMESTAMP","CURRENT_TIMEZONE","CURRENT_TIMEZONE_ID","DATEADD","DATEDIFF","DATEDIFF_BIG","DATEFROMPARTS","DATENAME","DATEPART","DATETIME2FROMPARTS","DATETIMEFROMPARTS","DATETIMEOFFSETFROMPARTS","DAY","EOMONTH","GETDATE","GETUTCDATE","ISDATE","MONTH","SMALLDATETIMEFROMPARTS","SWITCHOFFSET","SYSDATETIME","SYSDATETIMEOFFSET","SYSUTCDATETIME","TIMEFROMPARTS","TODATETIMEOFFSET","YEAR","JSON","ISJSON","JSON_VALUE","JSON_QUERY","JSON_MODIFY","ABS","ACOS","ASIN","ATAN","ATN2","CEILING","COS","COT","DEGREES","EXP","FLOOR","LOG","LOG10","PI","POWER","RADIANS","RAND","ROUND","SIGN","SIN","SQRT","SQUARE","TAN","CHOOSE","GREATEST","IIF","LEAST","@@PROCID","APP_NAME","APPLOCK_MODE","APPLOCK_TEST","ASSEMBLYPROPERTY","COL_LENGTH","COL_NAME","COLUMNPROPERTY","DATABASEPROPERTYEX","DB_ID","DB_NAME","FILE_ID","FILE_IDEX","FILE_NAME","FILEGROUP_ID","FILEGROUP_NAME","FILEGROUPPROPERTY","FILEPROPERTY","FILEPROPERTYEX","FULLTEXTCATALOGPROPERTY","FULLTEXTSERVICEPROPERTY","INDEX_COL","INDEXKEY_PROPERTY","INDEXPROPERTY","NEXT VALUE FOR","OBJECT_DEFINITION","OBJECT_ID","OBJECT_NAME","OBJECT_SCHEMA_NAME","OBJECTPROPERTY","OBJECTPROPERTYEX","ORIGINAL_DB_NAME","PARSENAME","SCHEMA_ID","SCHEMA_NAME","SCOPE_IDENTITY","SERVERPROPERTY","STATS_DATE","TYPE_ID","TYPE_NAME","TYPEPROPERTY","DENSE_RANK","NTILE","RANK","ROW_NUMBER","PUBLISHINGSERVERNAME","CERTENCODED","CERTPRIVATEKEY","CURRENT_USER","DATABASE_PRINCIPAL_ID","HAS_DBACCESS","HAS_PERMS_BY_NAME","IS_MEMBER","IS_ROLEMEMBER","IS_SRVROLEMEMBER","LOGINPROPERTY","ORIGINAL_LOGIN","PERMISSIONS","PWDENCRYPT","PWDCOMPARE","SESSION_USER","SESSIONPROPERTY","SUSER_ID","SUSER_NAME","SUSER_SID","SUSER_SNAME","SYSTEM_USER","USER","USER_ID","USER_NAME","ASCII","CHARINDEX","CONCAT","CONCAT_WS","DIFFERENCE","FORMAT","LEFT","LEN","LOWER","LTRIM","PATINDEX","QUOTENAME","REPLACE","REPLICATE","REVERSE","RIGHT","RTRIM","SOUNDEX","SPACE","STR","STRING_AGG","STRING_ESCAPE","STUFF","SUBSTRING","TRANSLATE","TRIM","UNICODE","UPPER","$PARTITION","@@ERROR","@@IDENTITY","@@PACK_RECEIVED","@@ROWCOUNT","@@TRANCOUNT","BINARY_CHECKSUM","CHECKSUM","COMPRESS","CONNECTIONPROPERTY","CONTEXT_INFO","CURRENT_REQUEST_ID","CURRENT_TRANSACTION_ID","DECOMPRESS","ERROR_LINE","ERROR_MESSAGE","ERROR_NUMBER","ERROR_PROCEDURE","ERROR_SEVERITY","ERROR_STATE","FORMATMESSAGE","GET_FILESTREAM_TRANSACTION_CONTEXT","GETANSINULL","HOST_ID","HOST_NAME","ISNULL","ISNUMERIC","MIN_ACTIVE_ROWVERSION","NEWID","NEWSEQUENTIALID","ROWCOUNT_BIG","SESSION_CONTEXT","XACT_STATE","@@CONNECTIONS","@@CPU_BUSY","@@IDLE","@@IO_BUSY","@@PACK_SENT","@@PACKET_ERRORS","@@TIMETICKS","@@TOTAL_ERRORS","@@TOTAL_READ","@@TOTAL_WRITE","TEXTPTR","TEXTVALID","COLUMNS_UPDATED","EVENTDATA","TRIGGER_NESTLEVEL","UPDATE","COALESCE","NULLIF"],IA=["ADD","ALL","ALTER","AND","ANY","AS","ASC","AUTHORIZATION","BACKUP","BEGIN","BETWEEN","BREAK","BROWSE","BULK","BY","CASCADE","CHECK","CHECKPOINT","CLOSE","CLUSTERED","COALESCE","COLLATE","COLUMN","COMMIT","COMPUTE","CONSTRAINT","CONTAINS","CONTAINSTABLE","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DBCC","DEALLOCATE","DECLARE","DEFAULT","DELETE","DENY","DESC","DISK","DISTINCT","DISTRIBUTED","DROP","DUMP","ERRLVL","ESCAPE","EXEC","EXECUTE","EXISTS","EXIT","EXTERNAL","FETCH","FILE","FILLFACTOR","FOR","FOREIGN","FREETEXT","FREETEXTTABLE","FROM","FULL","FUNCTION","GOTO","GRANT","GROUP","HAVING","HOLDLOCK","IDENTITY","IDENTITYCOL","IDENTITY_INSERT","IF","IN","INDEX","INNER","INSERT","INTERSECT","INTO","IS","JOIN","KEY","KILL","LEFT","LIKE","LINENO","LOAD","MERGE","NOCHECK","NONCLUSTERED","NOT","NULL","NULLIF","OF","OFF","OFFSETS","ON","OPEN","OPENDATASOURCE","OPENQUERY","OPENROWSET","OPENXML","OPTION","OR","ORDER","OUTER","OVER","PERCENT","PIVOT","PLAN","PRIMARY","PRINT","PROC","PROCEDURE","PUBLIC","RAISERROR","READ","READTEXT","RECONFIGURE","REFERENCES","REPLICATION","RESTORE","RESTRICT","RETURN","REVERT","REVOKE","RIGHT","ROLLBACK","ROWCOUNT","ROWGUIDCOL","RULE","SAVE","SCHEMA","SECURITYAUDIT","SELECT","SEMANTICKEYPHRASETABLE","SEMANTICSIMILARITYDETAILSTABLE","SEMANTICSIMILARITYTABLE","SESSION_USER","SET","SETUSER","SHUTDOWN","SOME","STATISTICS","SYSTEM_USER","TABLE","TABLESAMPLE","TEXTSIZE","THEN","TO","TOP","TRAN","TRANSACTION","TRIGGER","TRUNCATE","TRY_CONVERT","TSEQUAL","UNION","UNIQUE","UNPIVOT","UPDATE","UPDATETEXT","USE","USER","VALUES","VIEW","WAITFOR","WHERE","WHILE","WITH","WITHIN GROUP","WRITETEXT","$ACTION"],OA=["BINARY","BIT","CHAR","CHAR","CHARACTER","DATE","DATETIME2","DATETIMEOFFSET","DEC","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","NATIONAL","NCHAR","NUMERIC","NVARCHAR","PRECISION","REAL","SMALLINT","TIME","TIMESTAMP","VARBINARY","VARCHAR"],lA=y(["SELECT [ALL | DISTINCT]"]),uA=y(["WITH","INTO","FROM","WHERE","GROUP BY","HAVING","WINDOW","PARTITION BY","ORDER BY","OFFSET","FETCH {FIRST | NEXT}","FOR {BROWSE | XML | JSON}","OPTION","INSERT [INTO]","VALUES","SET","MERGE [INTO]","WHEN [NOT] MATCHED [BY TARGET | BY SOURCE] [THEN]","UPDATE SET"]),Lr=y(["CREATE TABLE"]),CE=y(["CREATE [OR ALTER] [MATERIALIZED] VIEW","UPDATE","WHERE CURRENT OF","DELETE [FROM]","DROP TABLE [IF EXISTS]","ALTER TABLE","ADD","DROP COLUMN [IF EXISTS]","ALTER COLUMN","TRUNCATE TABLE","CREATE [UNIQUE] [CLUSTERED] INDEX","CREATE DATABASE","ALTER DATABASE","DROP DATABASE [IF EXISTS]","CREATE [OR ALTER] [PARTITION] {FUNCTION | PROCEDURE | PROC}","ALTER [PARTITION] {FUNCTION | PROCEDURE | PROC}","DROP [PARTITION] {FUNCTION | PROCEDURE | PROC} [IF EXISTS]","GO","USE","ADD SENSITIVITY CLASSIFICATION","ADD SIGNATURE","AGGREGATE","ANSI_DEFAULTS","ANSI_NULLS","ANSI_NULL_DFLT_OFF","ANSI_NULL_DFLT_ON","ANSI_PADDING","ANSI_WARNINGS","APPLICATION ROLE","ARITHABORT","ARITHIGNORE","ASSEMBLY","ASYMMETRIC KEY","AUTHORIZATION","AVAILABILITY GROUP","BACKUP","BACKUP CERTIFICATE","BACKUP MASTER KEY","BACKUP SERVICE MASTER KEY","BEGIN CONVERSATION TIMER","BEGIN DIALOG CONVERSATION","BROKER PRIORITY","BULK INSERT","CERTIFICATE","CLOSE MASTER KEY","CLOSE SYMMETRIC KEY","COLUMN ENCRYPTION KEY","COLUMN MASTER KEY","COLUMNSTORE INDEX","CONCAT_NULL_YIELDS_NULL","CONTEXT_INFO","CONTRACT","CREDENTIAL","CRYPTOGRAPHIC PROVIDER","CURSOR_CLOSE_ON_COMMIT","DATABASE","DATABASE AUDIT SPECIFICATION","DATABASE ENCRYPTION KEY","DATABASE HADR","DATABASE SCOPED CONFIGURATION","DATABASE SCOPED CREDENTIAL","DATABASE SET","DATEFIRST","DATEFORMAT","DEADLOCK_PRIORITY","DENY","DENY XML","DISABLE TRIGGER","ENABLE TRIGGER","END CONVERSATION","ENDPOINT","EVENT NOTIFICATION","EVENT SESSION","EXECUTE AS","EXTERNAL DATA SOURCE","EXTERNAL FILE FORMAT","EXTERNAL LANGUAGE","EXTERNAL LIBRARY","EXTERNAL RESOURCE POOL","EXTERNAL TABLE","FIPS_FLAGGER","FMTONLY","FORCEPLAN","FULLTEXT CATALOG","FULLTEXT INDEX","FULLTEXT STOPLIST","GET CONVERSATION GROUP","GET_TRANSMISSION_STATUS","GRANT","GRANT XML","IDENTITY_INSERT","IMPLICIT_TRANSACTIONS","INDEX","LANGUAGE","LOCK_TIMEOUT","LOGIN","MASTER KEY","MESSAGE TYPE","MOVE CONVERSATION","NOCOUNT","NOEXEC","NUMERIC_ROUNDABORT","OFFSETS","OPEN MASTER KEY","OPEN SYMMETRIC KEY","PARSEONLY","PARTITION SCHEME","QUERY_GOVERNOR_COST_LIMIT","QUEUE","QUOTED_IDENTIFIER","RECEIVE","REMOTE SERVICE BINDING","REMOTE_PROC_TRANSACTIONS","RESOURCE GOVERNOR","RESOURCE POOL","RESTORE","RESTORE FILELISTONLY","RESTORE HEADERONLY","RESTORE LABELONLY","RESTORE MASTER KEY","RESTORE REWINDONLY","RESTORE SERVICE MASTER KEY","RESTORE VERIFYONLY","REVERT","REVOKE","REVOKE XML","ROLE","ROUTE","ROWCOUNT","RULE","SCHEMA","SEARCH PROPERTY LIST","SECURITY POLICY","SELECTIVE XML INDEX","SEND","SENSITIVITY CLASSIFICATION","SEQUENCE","SERVER AUDIT","SERVER AUDIT SPECIFICATION","SERVER CONFIGURATION","SERVER ROLE","SERVICE","SERVICE MASTER KEY","SETUSER","SHOWPLAN_ALL","SHOWPLAN_TEXT","SHOWPLAN_XML","SIGNATURE","SPATIAL INDEX","STATISTICS","STATISTICS IO","STATISTICS PROFILE","STATISTICS TIME","STATISTICS XML","SYMMETRIC KEY","SYNONYM","TABLE","TABLE IDENTITY","TEXTSIZE","TRANSACTION ISOLATION LEVEL","TRIGGER","TYPE","UPDATE STATISTICS","USER","WORKLOAD GROUP","XACT_ABORT","XML INDEX","XML SCHEMA COLLECTION"]),CA=y(["UNION [ALL]","EXCEPT","INTERSECT"]),cA=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","{CROSS | OUTER} APPLY"]),_A=y(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),LA=y([]),DA={name:"transactsql",tokenizerOptions:{reservedSelect:lA,reservedClauses:[...uA,...Lr,...CE],reservedSetOperations:CA,reservedJoins:cA,reservedKeywordPhrases:_A,reservedDataTypePhrases:LA,reservedKeywords:IA,reservedDataTypes:OA,reservedFunctionNames:NA,nestedBlockComments:!0,stringTypes:[{quote:"''-qq",prefixes:["N"]},"{}"],identTypes:['""-qq',"[]"],identChars:{first:"#@",rest:"#@$"},paramTypes:{named:["@"],quoted:["@"]},operators:["%","&","|","^","~","!<","!>","+=","-=","*=","/=","%=","|=","&=","^=","::",":"],propertyAccessOperators:[".."]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...Lr,...CE],tabularOnelineClauses:CE}},pA=["ADD","ALL","ALTER","ANALYZE","AND","AS","ASC","ASENSITIVE","BEFORE","BETWEEN","_BINARY","BOTH","BY","CALL","CASCADE","CASE","CHANGE","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURSOR","DATABASE","DATABASES","DAY_HOUR","DAY_MICROSECOND","DAY_MINUTE","DAY_SECOND","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DROP","DUAL","EACH","ELSE","ELSEIF","ENCLOSED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","EXTRA_JOIN","FALSE","FETCH","FOR","FORCE","FORCE_COMPILED_MODE","FORCE_INTERPRETER_MODE","FOREIGN","FROM","FULL","FULLTEXT","GRANT","GROUP","HAVING","HEARTBEAT_NO_LOGGING","HIGH_PRIORITY","HOUR_MICROSECOND","HOUR_MINUTE","HOUR_SECOND","IF","IGNORE","IN","INDEX","INFILE","INNER","INOUT","INSENSITIVE","INSERT","IN","_INTERNAL_DYNAMIC_TYPECAST","INTERSECT","INTERVAL","INTO","ITERATE","JOIN","KEY","KEYS","KILL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINES","LOAD","LOCALTIME","LOCALTIMESTAMP","LOCK","LOOP","LOW_PRIORITY","MATCH","MAXVALUE","MINUS","MINUTE_MICROSECOND","MINUTE_SECOND","MOD","MODIFIES","NATURAL","NO_QUERY_REWRITE","NOT","NO_WRITE_TO_BINLOG","NO_QUERY_REWRITE","NULL","ON","OPTIMIZE","OPTION","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESTRICT","RETURN","REVOKE","RIGHT","RIGHT_ANTI_JOIN","RIGHT_SEMI_JOIN","RIGHT_STRAIGHT_JOIN","RLIKE","SCHEMA","SCHEMAS","SECOND_MICROSECOND","SELECT","SEMI_JOIN","SENSITIVE","SEPARATOR","SET","SHOW","SIGNAL","SPATIAL","SPECIFIC","SQL","SQL_BIG_RESULT","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQLEXCEPTION","SQL_NO_CACHE","SQL_NO_LOGGING","SQL_SMALL_RESULT","SQLSTATE","SQLWARNING","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNBOUNDED","UNDO","UNION","UNIQUE","UNLOCK","UPDATE","USAGE","USE","USING","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","_UTF8","VALUES","WHEN","WHERE","WHILE","WINDOW","WITH","WITHIN","WRITE","XOR","YEAR_MONTH","ZEROFILL"],dA=["BIGINT","BINARY","BIT","BLOB","CHAR","CHARACTER","DATETIME","DEC","DECIMAL","DOUBLE PRECISION","DOUBLE","ENUM","FIXED","FLOAT","FLOAT4","FLOAT8","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","LONG","LONGBLOB","LONGTEXT","MEDIUMBLOB","MEDIUMINT","MEDIUMTEXT","MIDDLEINT","NATIONAL CHAR","NATIONAL VARCHAR","NUMERIC","PRECISION","REAL","SMALLINT","TEXT","TIME","TIMESTAMP","TINYBLOB","TINYINT","TINYTEXT","UNSIGNED","VARBINARY","VARCHAR","VARCHARACTER","YEAR"],PA=["ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_COUNT_DISTINCT_ACCUMULATE","APPROX_COUNT_DISTINCT_COMBINE","APPROX_COUNT_DISTINCT_ESTIMATE","APPROX_GEOGRAPHY_INTERSECTS","APPROX_PERCENTILE","ASCII","ASIN","ATAN","ATAN2","AVG","BIN","BINARY","BIT_AND","BIT_COUNT","BIT_OR","BIT_XOR","CAST","CEIL","CEILING","CHAR","CHARACTER_LENGTH","CHAR_LENGTH","CHARSET","COALESCE","COERCIBILITY","COLLATION","COLLECT","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT","CONVERT_TZ","COS","COT","COUNT","CUME_DIST","CURDATE","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","CURTIME","DATABASE","DATE","DATE_ADD","DATEDIFF","DATE_FORMAT","DATE_SUB","DATE_TRUNC","DAY","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEFAULT","DEGREES","DENSE_RANK","DIV","DOT_PRODUCT","ELT","EUCLIDEAN_DISTANCE","EXP","EXTRACT","FIELD","FIRST","FIRST_VALUE","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOGRAPHY_AREA","GEOGRAPHY_CONTAINS","GEOGRAPHY_DISTANCE","GEOGRAPHY_INTERSECTS","GEOGRAPHY_LATITUDE","GEOGRAPHY_LENGTH","GEOGRAPHY_LONGITUDE","GEOGRAPHY_POINT","GEOGRAPHY_WITHIN_DISTANCE","GEOMETRY_AREA","GEOMETRY_CONTAINS","GEOMETRY_DISTANCE","GEOMETRY_FILTER","GEOMETRY_INTERSECTS","GEOMETRY_LENGTH","GEOMETRY_POINT","GEOMETRY_WITHIN_DISTANCE","GEOMETRY_X","GEOMETRY_Y","GREATEST","GROUPING","GROUP_CONCAT","HEX","HIGHLIGHT","HOUR","ICU_VERSION","IF","IFNULL","INET_ATON","INET_NTOA","INET6_ATON","INET6_NTOA","INITCAP","INSERT","INSTR","INTERVAL","IS","IS NULL","JSON_AGG","JSON_ARRAY_CONTAINS_DOUBLE","JSON_ARRAY_CONTAINS_JSON","JSON_ARRAY_CONTAINS_STRING","JSON_ARRAY_PUSH_DOUBLE","JSON_ARRAY_PUSH_JSON","JSON_ARRAY_PUSH_STRING","JSON_DELETE_KEY","JSON_EXTRACT_DOUBLE","JSON_EXTRACT_JSON","JSON_EXTRACT_STRING","JSON_EXTRACT_BIGINT","JSON_GET_TYPE","JSON_LENGTH","JSON_SET_DOUBLE","JSON_SET_JSON","JSON_SET_STRING","JSON_SPLICE_DOUBLE","JSON_SPLICE_JSON","JSON_SPLICE_STRING","LAG","LAST_DAY","LAST_VALUE","LCASE","LEAD","LEAST","LEFT","LENGTH","LIKE","LN","LOCALTIME","LOCALTIMESTAMP","LOCATE","LOG","LOG10","LOG2","LPAD","LTRIM","MATCH","MAX","MD5","MEDIAN","MICROSECOND","MIN","MINUTE","MOD","MONTH","MONTHNAME","MONTHS_BETWEEN","NOT","NOW","NTH_VALUE","NTILE","NULLIF","OCTET_LENGTH","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIVOT","POSITION","POW","POWER","QUARTER","QUOTE","RADIANS","RAND","RANK","REGEXP","REPEAT","REPLACE","REVERSE","RIGHT","RLIKE","ROUND","ROW_COUNT","ROW_NUMBER","RPAD","RTRIM","SCALAR","SCHEMA","SEC_TO_TIME","SHA1","SHA2","SIGMOID","SIGN","SIN","SLEEP","SPLIT","SOUNDEX","SOUNDS LIKE","SOURCE_POS_WAIT","SPACE","SQRT","STDDEV","STDDEV_POP","STDDEV_SAMP","STR_TO_DATE","SUBDATE","SUBSTR","SUBSTRING","SUBSTRING_INDEX","SUM","SYS_GUID","TAN","TIME","TIMEDIFF","TIME_BUCKET","TIME_FORMAT","TIMESTAMP","TIMESTAMPADD","TIMESTAMPDIFF","TIME_TO_SEC","TO_BASE64","TO_CHAR","TO_DAYS","TO_JSON","TO_NUMBER","TO_SECONDS","TO_TIMESTAMP","TRIM","TRUNC","TRUNCATE","UCASE","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","UUID","VALUES","VARIANCE","VAR_POP","VAR_SAMP","VECTOR_SUB","VERSION","WEEK","WEEKDAY","WEEKOFYEAR","YEAR"],fA=y(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),hA=y(["WITH","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT [IGNORE] [INTO]","VALUES","REPLACE [INTO]","ON DUPLICATE KEY UPDATE","SET","CREATE [OR REPLACE] [TEMPORARY] PROCEDURE [IF NOT EXISTS]","CREATE [OR REPLACE] [EXTERNAL] FUNCTION"]),Dr=y(["CREATE [ROWSTORE] [REFERENCE | TEMPORARY | GLOBAL TEMPORARY] TABLE [IF NOT EXISTS]"]),cE=y(["CREATE VIEW","UPDATE","DELETE [FROM]","DROP [TEMPORARY] TABLE [IF EXISTS]","ALTER [ONLINE] TABLE","ADD [COLUMN]","ADD [UNIQUE] {INDEX | KEY}","DROP [COLUMN]","MODIFY [COLUMN]","CHANGE","RENAME [TO | AS]","TRUNCATE [TABLE]","ADD AGGREGATOR","ADD LEAF","AGGREGATOR SET AS MASTER","ALTER DATABASE","ALTER PIPELINE","ALTER RESOURCE POOL","ALTER USER","ALTER VIEW","ANALYZE TABLE","ATTACH DATABASE","ATTACH LEAF","ATTACH LEAF ALL","BACKUP DATABASE","BINLOG","BOOTSTRAP AGGREGATOR","CACHE INDEX","CALL","CHANGE","CHANGE MASTER TO","CHANGE REPLICATION FILTER","CHANGE REPLICATION SOURCE TO","CHECK BLOB CHECKSUM","CHECK TABLE","CHECKSUM TABLE","CLEAR ORPHAN DATABASES","CLONE","COMMIT","CREATE DATABASE","CREATE GROUP","CREATE INDEX","CREATE LINK","CREATE MILESTONE","CREATE PIPELINE","CREATE RESOURCE POOL","CREATE ROLE","CREATE USER","DEALLOCATE PREPARE","DESCRIBE","DETACH DATABASE","DETACH PIPELINE","DROP DATABASE","DROP FUNCTION","DROP INDEX","DROP LINK","DROP PIPELINE","DROP PROCEDURE","DROP RESOURCE POOL","DROP ROLE","DROP USER","DROP VIEW","EXECUTE","EXPLAIN","FLUSH","FORCE","GRANT","HANDLER","HELP","KILL CONNECTION","KILLALL QUERIES","LOAD DATA","LOAD INDEX INTO CACHE","LOAD XML","LOCK INSTANCE FOR BACKUP","LOCK TABLES","MASTER_POS_WAIT","OPTIMIZE TABLE","PREPARE","PURGE BINARY LOGS","REBALANCE PARTITIONS","RELEASE SAVEPOINT","REMOVE AGGREGATOR","REMOVE LEAF","REPAIR TABLE","REPLACE","REPLICATE DATABASE","RESET","RESET MASTER","RESET PERSIST","RESET REPLICA","RESET SLAVE","RESTART","RESTORE DATABASE","RESTORE REDUNDANCY","REVOKE","ROLLBACK","ROLLBACK TO SAVEPOINT","SAVEPOINT","SET CHARACTER SET","SET DEFAULT ROLE","SET NAMES","SET PASSWORD","SET RESOURCE GROUP","SET ROLE","SET TRANSACTION","SHOW","SHOW CHARACTER SET","SHOW COLLATION","SHOW COLUMNS","SHOW CREATE DATABASE","SHOW CREATE FUNCTION","SHOW CREATE PIPELINE","SHOW CREATE PROCEDURE","SHOW CREATE TABLE","SHOW CREATE USER","SHOW CREATE VIEW","SHOW DATABASES","SHOW ENGINE","SHOW ENGINES","SHOW ERRORS","SHOW FUNCTION CODE","SHOW FUNCTION STATUS","SHOW GRANTS","SHOW INDEX","SHOW MASTER STATUS","SHOW OPEN TABLES","SHOW PLUGINS","SHOW PRIVILEGES","SHOW PROCEDURE CODE","SHOW PROCEDURE STATUS","SHOW PROCESSLIST","SHOW PROFILE","SHOW PROFILES","SHOW RELAYLOG EVENTS","SHOW REPLICA STATUS","SHOW REPLICAS","SHOW SLAVE","SHOW SLAVE HOSTS","SHOW STATUS","SHOW TABLE STATUS","SHOW TABLES","SHOW VARIABLES","SHOW WARNINGS","SHUTDOWN","SNAPSHOT DATABASE","SOURCE_POS_WAIT","START GROUP_REPLICATION","START PIPELINE","START REPLICA","START SLAVE","START TRANSACTION","STOP GROUP_REPLICATION","STOP PIPELINE","STOP REPLICA","STOP REPLICATING","STOP SLAVE","TEST PIPELINE","UNLOCK INSTANCE","UNLOCK TABLES","USE","XA","ITERATE","LEAVE","LOOP","REPEAT","RETURN","WHILE"]),MA=y(["UNION [ALL | DISTINCT]","EXCEPT","INTERSECT","MINUS"]),UA=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),mA=y(["ON DELETE","ON UPDATE","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),BA=y([]),gA={name:"singlestoredb",tokenizerOptions:{reservedSelect:fA,reservedClauses:[...hA,...Dr,...cE],reservedSetOperations:MA,reservedJoins:UA,reservedKeywordPhrases:mA,reservedDataTypePhrases:BA,reservedKeywords:pA,reservedDataTypes:dA,reservedFunctionNames:PA,stringTypes:['""-qq-bs',"''-qq-bs",{quote:"''-raw",prefixes:["B","X"],requirePrefix:!0}],identTypes:["``"],identChars:{first:"$",rest:"$",allowFirstCharNumber:!0},variableTypes:[{regex:"@@?[A-Za-z0-9_$]+"},{quote:"``",prefixes:["@"],requirePrefix:!0}],lineCommentTypes:["--","#"],operators:[":=","&","|","^","~","<<",">>","<=>","&&","||","::","::$","::%",":>","!:>","*.*"],postProcess:vt},formatOptions:{alwaysDenseOperators:["::","::$","::%"],onelineClauses:[...Dr,...cE],tabularOnelineClauses:cE}},yA=["ABS","ACOS","ACOSH","ADD_MONTHS","ALL_USER_NAMES","ANY_VALUE","APPROX_COUNT_DISTINCT","APPROX_PERCENTILE","APPROX_PERCENTILE_ACCUMULATE","APPROX_PERCENTILE_COMBINE","APPROX_PERCENTILE_ESTIMATE","APPROX_TOP_K","APPROX_TOP_K_ACCUMULATE","APPROX_TOP_K_COMBINE","APPROX_TOP_K_ESTIMATE","APPROXIMATE_JACCARD_INDEX","APPROXIMATE_SIMILARITY","ARRAY_AGG","ARRAY_APPEND","ARRAY_CAT","ARRAY_COMPACT","ARRAY_CONSTRUCT","ARRAY_CONSTRUCT_COMPACT","ARRAY_CONTAINS","ARRAY_INSERT","ARRAY_INTERSECTION","ARRAY_POSITION","ARRAY_PREPEND","ARRAY_SIZE","ARRAY_SLICE","ARRAY_TO_STRING","ARRAY_UNION_AGG","ARRAY_UNIQUE_AGG","ARRAYS_OVERLAP","AS_ARRAY","AS_BINARY","AS_BOOLEAN","AS_CHAR","AS_VARCHAR","AS_DATE","AS_DECIMAL","AS_NUMBER","AS_DOUBLE","AS_REAL","AS_INTEGER","AS_OBJECT","AS_TIME","AS_TIMESTAMP_LTZ","AS_TIMESTAMP_NTZ","AS_TIMESTAMP_TZ","ASCII","ASIN","ASINH","ATAN","ATAN2","ATANH","AUTO_REFRESH_REGISTRATION_HISTORY","AUTOMATIC_CLUSTERING_HISTORY","AVG","BASE64_DECODE_BINARY","BASE64_DECODE_STRING","BASE64_ENCODE","BIT_LENGTH","BITAND","BITAND_AGG","BITMAP_BIT_POSITION","BITMAP_BUCKET_NUMBER","BITMAP_CONSTRUCT_AGG","BITMAP_COUNT","BITMAP_OR_AGG","BITNOT","BITOR","BITOR_AGG","BITSHIFTLEFT","BITSHIFTRIGHT","BITXOR","BITXOR_AGG","BOOLAND","BOOLAND_AGG","BOOLNOT","BOOLOR","BOOLOR_AGG","BOOLXOR","BOOLXOR_AGG","BUILD_SCOPED_FILE_URL","BUILD_STAGE_FILE_URL","CASE","CAST","CBRT","CEIL","CHARINDEX","CHECK_JSON","CHECK_XML","CHR","CHAR","COALESCE","COLLATE","COLLATION","COMPLETE_TASK_GRAPHS","COMPRESS","CONCAT","CONCAT_WS","CONDITIONAL_CHANGE_EVENT","CONDITIONAL_TRUE_EVENT","CONTAINS","CONVERT_TIMEZONE","COPY_HISTORY","CORR","COS","COSH","COT","COUNT","COUNT_IF","COVAR_POP","COVAR_SAMP","CUME_DIST","CURRENT_ACCOUNT","CURRENT_AVAILABLE_ROLES","CURRENT_CLIENT","CURRENT_DATABASE","CURRENT_DATE","CURRENT_IP_ADDRESS","CURRENT_REGION","CURRENT_ROLE","CURRENT_SCHEMA","CURRENT_SCHEMAS","CURRENT_SECONDARY_ROLES","CURRENT_SESSION","CURRENT_STATEMENT","CURRENT_TASK_GRAPHS","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_TRANSACTION","CURRENT_USER","CURRENT_VERSION","CURRENT_WAREHOUSE","DATA_TRANSFER_HISTORY","DATABASE_REFRESH_HISTORY","DATABASE_REFRESH_PROGRESS","DATABASE_REFRESH_PROGRESS_BY_JOB","DATABASE_STORAGE_USAGE_HISTORY","DATE_FROM_PARTS","DATE_PART","DATE_TRUNC","DATEADD","DATEDIFF","DAYNAME","DECODE","DECOMPRESS_BINARY","DECOMPRESS_STRING","DECRYPT","DECRYPT_RAW","DEGREES","DENSE_RANK","DIV0","EDITDISTANCE","ENCRYPT","ENCRYPT_RAW","ENDSWITH","EQUAL_NULL","EXP","EXPLAIN_JSON","EXTERNAL_FUNCTIONS_HISTORY","EXTERNAL_TABLE_FILES","EXTERNAL_TABLE_FILE_REGISTRATION_HISTORY","EXTRACT","EXTRACT_SEMANTIC_CATEGORIES","FACTORIAL","FILTER","FIRST_VALUE","FLATTEN","FLOOR","GENERATE_COLUMN_DESCRIPTION","GENERATOR","GET","GET_ABSOLUTE_PATH","GET_DDL","GET_IGNORE_CASE","GET_OBJECT_REFERENCES","GET_PATH","GET_PRESIGNED_URL","GET_RELATIVE_PATH","GET_STAGE_LOCATION","GETBIT","GREATEST","GREATEST_IGNORE_NULLS","GROUPING","GROUPING_ID","HASH","HASH_AGG","HAVERSINE","HEX_DECODE_BINARY","HEX_DECODE_STRING","HEX_ENCODE","HLL","HLL_ACCUMULATE","HLL_COMBINE","HLL_ESTIMATE","HLL_EXPORT","HLL_IMPORT","HOUR","MINUTE","SECOND","IDENTIFIER","IFF","IFNULL","ILIKE","ILIKE ANY","INFER_SCHEMA","INITCAP","INSERT","INVOKER_ROLE","INVOKER_SHARE","IS_ARRAY","IS_BINARY","IS_BOOLEAN","IS_CHAR","IS_VARCHAR","IS_DATE","IS_DATE_VALUE","IS_DECIMAL","IS_DOUBLE","IS_REAL","IS_GRANTED_TO_INVOKER_ROLE","IS_INTEGER","IS_NULL_VALUE","IS_OBJECT","IS_ROLE_IN_SESSION","IS_TIME","IS_TIMESTAMP_LTZ","IS_TIMESTAMP_NTZ","IS_TIMESTAMP_TZ","JAROWINKLER_SIMILARITY","JSON_EXTRACT_PATH_TEXT","KURTOSIS","LAG","LAST_DAY","LAST_QUERY_ID","LAST_TRANSACTION","LAST_VALUE","LEAD","LEAST","LEFT","LENGTH","LEN","LIKE","LIKE ALL","LIKE ANY","LISTAGG","LN","LOCALTIME","LOCALTIMESTAMP","LOG","LOGIN_HISTORY","LOGIN_HISTORY_BY_USER","LOWER","LPAD","LTRIM","MATERIALIZED_VIEW_REFRESH_HISTORY","MD5","MD5_HEX","MD5_BINARY","MD5_NUMBER — Obsoleted","MD5_NUMBER_LOWER64","MD5_NUMBER_UPPER64","MEDIAN","MIN","MAX","MINHASH","MINHASH_COMBINE","MOD","MODE","MONTHNAME","MONTHS_BETWEEN","NEXT_DAY","NORMAL","NTH_VALUE","NTILE","NULLIF","NULLIFZERO","NVL","NVL2","OBJECT_AGG","OBJECT_CONSTRUCT","OBJECT_CONSTRUCT_KEEP_NULL","OBJECT_DELETE","OBJECT_INSERT","OBJECT_KEYS","OBJECT_PICK","OCTET_LENGTH","PARSE_IP","PARSE_JSON","PARSE_URL","PARSE_XML","PERCENT_RANK","PERCENTILE_CONT","PERCENTILE_DISC","PI","PIPE_USAGE_HISTORY","POLICY_CONTEXT","POLICY_REFERENCES","POSITION","POW","POWER","PREVIOUS_DAY","QUERY_ACCELERATION_HISTORY","QUERY_HISTORY","QUERY_HISTORY_BY_SESSION","QUERY_HISTORY_BY_USER","QUERY_HISTORY_BY_WAREHOUSE","RADIANS","RANDOM","RANDSTR","RANK","RATIO_TO_REPORT","REGEXP","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_REPLACE","REGEXP_SUBSTR","REGEXP_SUBSTR_ALL","REGR_AVGX","REGR_AVGY","REGR_COUNT","REGR_INTERCEPT","REGR_R2","REGR_SLOPE","REGR_SXX","REGR_SXY","REGR_SYY","REGR_VALX","REGR_VALY","REPEAT","REPLACE","REPLICATION_GROUP_REFRESH_HISTORY","REPLICATION_GROUP_REFRESH_PROGRESS","REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB","REPLICATION_GROUP_USAGE_HISTORY","REPLICATION_USAGE_HISTORY","REST_EVENT_HISTORY","RESULT_SCAN","REVERSE","RIGHT","RLIKE","ROUND","ROW_NUMBER","RPAD","RTRIM","RTRIMMED_LENGTH","SEARCH_OPTIMIZATION_HISTORY","SEQ1","SEQ2","SEQ4","SEQ8","SERVERLESS_TASK_HISTORY","SHA1","SHA1_HEX","SHA1_BINARY","SHA2","SHA2_HEX","SHA2_BINARY","SIGN","SIN","SINH","SKEW","SOUNDEX","SPACE","SPLIT","SPLIT_PART","SPLIT_TO_TABLE","SQRT","SQUARE","ST_AREA","ST_ASEWKB","ST_ASEWKT","ST_ASGEOJSON","ST_ASWKB","ST_ASBINARY","ST_ASWKT","ST_ASTEXT","ST_AZIMUTH","ST_CENTROID","ST_COLLECT","ST_CONTAINS","ST_COVEREDBY","ST_COVERS","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_DWITHIN","ST_ENDPOINT","ST_ENVELOPE","ST_GEOGFROMGEOHASH","ST_GEOGPOINTFROMGEOHASH","ST_GEOGRAPHYFROMWKB","ST_GEOGRAPHYFROMWKT","ST_GEOHASH","ST_GEOMETRYFROMWKB","ST_GEOMETRYFROMWKT","ST_HAUSDORFFDISTANCE","ST_INTERSECTION","ST_INTERSECTS","ST_LENGTH","ST_MAKEGEOMPOINT","ST_GEOM_POINT","ST_MAKELINE","ST_MAKEPOINT","ST_POINT","ST_MAKEPOLYGON","ST_POLYGON","ST_NPOINTS","ST_NUMPOINTS","ST_PERIMETER","ST_POINTN","ST_SETSRID","ST_SIMPLIFY","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_UNION","ST_WITHIN","ST_X","ST_XMAX","ST_XMIN","ST_Y","ST_YMAX","ST_YMIN","STAGE_DIRECTORY_FILE_REGISTRATION_HISTORY","STAGE_STORAGE_USAGE_HISTORY","STARTSWITH","STDDEV","STDDEV_POP","STDDEV_SAMP","STRIP_NULL_VALUE","STRTOK","STRTOK_SPLIT_TO_TABLE","STRTOK_TO_ARRAY","SUBSTR","SUBSTRING","SUM","SYSDATE","SYSTEM$ABORT_SESSION","SYSTEM$ABORT_TRANSACTION","SYSTEM$AUTHORIZE_PRIVATELINK","SYSTEM$AUTHORIZE_STAGE_PRIVATELINK_ACCESS","SYSTEM$BEHAVIOR_CHANGE_BUNDLE_STATUS","SYSTEM$CANCEL_ALL_QUERIES","SYSTEM$CANCEL_QUERY","SYSTEM$CLUSTERING_DEPTH","SYSTEM$CLUSTERING_INFORMATION","SYSTEM$CLUSTERING_RATIO ","SYSTEM$CURRENT_USER_TASK_NAME","SYSTEM$DATABASE_REFRESH_HISTORY ","SYSTEM$DATABASE_REFRESH_PROGRESS","SYSTEM$DATABASE_REFRESH_PROGRESS_BY_JOB ","SYSTEM$DISABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$DISABLE_DATABASE_REPLICATION","SYSTEM$ENABLE_BEHAVIOR_CHANGE_BUNDLE","SYSTEM$ESTIMATE_QUERY_ACCELERATION","SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS","SYSTEM$EXPLAIN_JSON_TO_TEXT","SYSTEM$EXPLAIN_PLAN_JSON","SYSTEM$EXTERNAL_TABLE_PIPE_STATUS","SYSTEM$GENERATE_SAML_CSR","SYSTEM$GENERATE_SCIM_ACCESS_TOKEN","SYSTEM$GET_AWS_SNS_IAM_POLICY","SYSTEM$GET_PREDECESSOR_RETURN_VALUE","SYSTEM$GET_PRIVATELINK","SYSTEM$GET_PRIVATELINK_AUTHORIZED_ENDPOINTS","SYSTEM$GET_PRIVATELINK_CONFIG","SYSTEM$GET_SNOWFLAKE_PLATFORM_INFO","SYSTEM$GET_TAG","SYSTEM$GET_TAG_ALLOWED_VALUES","SYSTEM$GET_TAG_ON_CURRENT_COLUMN","SYSTEM$GET_TAG_ON_CURRENT_TABLE","SYSTEM$GLOBAL_ACCOUNT_SET_PARAMETER","SYSTEM$LAST_CHANGE_COMMIT_TIME","SYSTEM$LINK_ACCOUNT_OBJECTS_BY_NAME","SYSTEM$MIGRATE_SAML_IDP_REGISTRATION","SYSTEM$PIPE_FORCE_RESUME","SYSTEM$PIPE_STATUS","SYSTEM$REVOKE_PRIVATELINK","SYSTEM$REVOKE_STAGE_PRIVATELINK_ACCESS","SYSTEM$SET_RETURN_VALUE","SYSTEM$SHOW_OAUTH_CLIENT_SECRETS","SYSTEM$STREAM_GET_TABLE_TIMESTAMP","SYSTEM$STREAM_HAS_DATA","SYSTEM$TASK_DEPENDENTS_ENABLE","SYSTEM$TYPEOF","SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS","SYSTEM$VERIFY_EXTERNAL_OAUTH_TOKEN","SYSTEM$WAIT","SYSTEM$WHITELIST","SYSTEM$WHITELIST_PRIVATELINK","TAG_REFERENCES","TAG_REFERENCES_ALL_COLUMNS","TAG_REFERENCES_WITH_LINEAGE","TAN","TANH","TASK_DEPENDENTS","TASK_HISTORY","TIME_FROM_PARTS","TIME_SLICE","TIMEADD","TIMEDIFF","TIMESTAMP_FROM_PARTS","TIMESTAMPADD","TIMESTAMPDIFF","TO_ARRAY","TO_BINARY","TO_BOOLEAN","TO_CHAR","TO_VARCHAR","TO_DATE","DATE","TO_DECIMAL","TO_NUMBER","TO_NUMERIC","TO_DOUBLE","TO_GEOGRAPHY","TO_GEOMETRY","TO_JSON","TO_OBJECT","TO_TIME","TIME","TO_TIMESTAMP","TO_TIMESTAMP_LTZ","TO_TIMESTAMP_NTZ","TO_TIMESTAMP_TZ","TO_VARIANT","TO_XML","TRANSLATE","TRIM","TRUNCATE","TRUNC","TRUNC","TRY_BASE64_DECODE_BINARY","TRY_BASE64_DECODE_STRING","TRY_CAST","TRY_HEX_DECODE_BINARY","TRY_HEX_DECODE_STRING","TRY_PARSE_JSON","TRY_TO_BINARY","TRY_TO_BOOLEAN","TRY_TO_DATE","TRY_TO_DECIMAL","TRY_TO_NUMBER","TRY_TO_NUMERIC","TRY_TO_DOUBLE","TRY_TO_GEOGRAPHY","TRY_TO_GEOMETRY","TRY_TO_TIME","TRY_TO_TIMESTAMP","TRY_TO_TIMESTAMP_LTZ","TRY_TO_TIMESTAMP_NTZ","TRY_TO_TIMESTAMP_TZ","TYPEOF","UNICODE","UNIFORM","UPPER","UUID_STRING","VALIDATE","VALIDATE_PIPE_LOAD","VAR_POP","VAR_SAMP","VARIANCE","VARIANCE_SAMP","VARIANCE_POP","WAREHOUSE_LOAD_HISTORY","WAREHOUSE_METERING_HISTORY","WIDTH_BUCKET","XMLGET","YEAR","YEAROFWEEK","YEAROFWEEKISO","DAY","DAYOFMONTH","DAYOFWEEK","DAYOFWEEKISO","DAYOFYEAR","WEEK","WEEK","WEEKOFYEAR","WEEKISO","MONTH","QUARTER","ZEROIFNULL","ZIPF"],GA=["ACCOUNT","ALL","ALTER","AND","ANY","AS","BETWEEN","BY","CASE","CAST","CHECK","COLUMN","CONNECT","CONNECTION","CONSTRAINT","CREATE","CROSS","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DATABASE","DELETE","DISTINCT","DROP","ELSE","EXISTS","FALSE","FOLLOWING","FOR","FROM","FULL","GRANT","GROUP","GSCLUSTER","HAVING","ILIKE","IN","INCREMENT","INNER","INSERT","INTERSECT","INTO","IS","ISSUE","JOIN","LATERAL","LEFT","LIKE","LOCALTIME","LOCALTIMESTAMP","MINUS","NATURAL","NOT","NULL","OF","ON","OR","ORDER","ORGANIZATION","QUALIFY","REGEXP","REVOKE","RIGHT","RLIKE","ROW","ROWS","SAMPLE","SCHEMA","SELECT","SET","SOME","START","TABLE","TABLESAMPLE","THEN","TO","TRIGGER","TRUE","TRY_CAST","UNION","UNIQUE","UPDATE","USING","VALUES","VIEW","WHEN","WHENEVER","WHERE","WITH","COMMENT"],FA=["NUMBER","DECIMAL","NUMERIC","INT","INTEGER","BIGINT","SMALLINT","TINYINT","BYTEINT","FLOAT","FLOAT4","FLOAT8","DOUBLE","DOUBLE PRECISION","REAL","VARCHAR","CHAR","CHARACTER","STRING","TEXT","BINARY","VARBINARY","BOOLEAN","DATE","DATETIME","TIME","TIMESTAMP","TIMESTAMP_LTZ","TIMESTAMP_NTZ","TIMESTAMP","TIMESTAMP_TZ","VARIANT","OBJECT","ARRAY","GEOGRAPHY","GEOMETRY"],HA=y(["SELECT [ALL | DISTINCT]"]),bA=y(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","PARTITION BY","ORDER BY","QUALIFY","LIMIT","OFFSET","FETCH [FIRST | NEXT]","INSERT [OVERWRITE] [ALL INTO | INTO | ALL | FIRST]","{THEN | ELSE} INTO","VALUES","SET","CLUSTER BY","[WITH] {MASKING POLICY | TAG | ROW ACCESS POLICY}","COPY GRANTS","USING TEMPLATE","MERGE INTO","WHEN MATCHED [AND]","THEN {UPDATE SET | DELETE}","WHEN NOT MATCHED THEN INSERT"]),pr=y(["CREATE [OR REPLACE] [VOLATILE] TABLE [IF NOT EXISTS]","CREATE [OR REPLACE] [LOCAL | GLOBAL] {TEMP|TEMPORARY} TABLE [IF NOT EXISTS]"]),_E=y(["CREATE [OR REPLACE] [SECURE] [RECURSIVE] VIEW [IF NOT EXISTS]","UPDATE","DELETE FROM","DROP TABLE [IF EXISTS]","ALTER TABLE [IF EXISTS]","RENAME TO","SWAP WITH","[SUSPEND | RESUME] RECLUSTER","DROP CLUSTERING KEY","ADD [COLUMN]","RENAME COLUMN","{ALTER | MODIFY} [COLUMN]","DROP [COLUMN]","{ADD | ALTER | MODIFY | DROP} [CONSTRAINT]","RENAME CONSTRAINT","{ADD | DROP} SEARCH OPTIMIZATION","{SET | UNSET} TAG","{ADD | DROP} ROW ACCESS POLICY","DROP ALL ROW ACCESS POLICIES","{SET | DROP} DEFAULT","{SET | DROP} NOT NULL","SET DATA TYPE","UNSET COMMENT","{SET | UNSET} MASKING POLICY","TRUNCATE [TABLE] [IF EXISTS]","ALTER ACCOUNT","ALTER API INTEGRATION","ALTER CONNECTION","ALTER DATABASE","ALTER EXTERNAL TABLE","ALTER FAILOVER GROUP","ALTER FILE FORMAT","ALTER FUNCTION","ALTER INTEGRATION","ALTER MASKING POLICY","ALTER MATERIALIZED VIEW","ALTER NETWORK POLICY","ALTER NOTIFICATION INTEGRATION","ALTER PIPE","ALTER PROCEDURE","ALTER REPLICATION GROUP","ALTER RESOURCE MONITOR","ALTER ROLE","ALTER ROW ACCESS POLICY","ALTER SCHEMA","ALTER SECURITY INTEGRATION","ALTER SEQUENCE","ALTER SESSION","ALTER SESSION POLICY","ALTER SHARE","ALTER STAGE","ALTER STORAGE INTEGRATION","ALTER STREAM","ALTER TAG","ALTER TASK","ALTER USER","ALTER VIEW","ALTER WAREHOUSE","BEGIN","CALL","COMMIT","COPY INTO","CREATE ACCOUNT","CREATE API INTEGRATION","CREATE CONNECTION","CREATE DATABASE","CREATE EXTERNAL FUNCTION","CREATE EXTERNAL TABLE","CREATE FAILOVER GROUP","CREATE FILE FORMAT","CREATE FUNCTION","CREATE INTEGRATION","CREATE MANAGED ACCOUNT","CREATE MASKING POLICY","CREATE MATERIALIZED VIEW","CREATE NETWORK POLICY","CREATE NOTIFICATION INTEGRATION","CREATE PIPE","CREATE PROCEDURE","CREATE REPLICATION GROUP","CREATE RESOURCE MONITOR","CREATE ROLE","CREATE ROW ACCESS POLICY","CREATE SCHEMA","CREATE SECURITY INTEGRATION","CREATE SEQUENCE","CREATE SESSION POLICY","CREATE SHARE","CREATE STAGE","CREATE STORAGE INTEGRATION","CREATE STREAM","CREATE TAG","CREATE TASK","CREATE USER","CREATE WAREHOUSE","DELETE","DESCRIBE DATABASE","DESCRIBE EXTERNAL TABLE","DESCRIBE FILE FORMAT","DESCRIBE FUNCTION","DESCRIBE INTEGRATION","DESCRIBE MASKING POLICY","DESCRIBE MATERIALIZED VIEW","DESCRIBE NETWORK POLICY","DESCRIBE PIPE","DESCRIBE PROCEDURE","DESCRIBE RESULT","DESCRIBE ROW ACCESS POLICY","DESCRIBE SCHEMA","DESCRIBE SEQUENCE","DESCRIBE SESSION POLICY","DESCRIBE SHARE","DESCRIBE STAGE","DESCRIBE STREAM","DESCRIBE TABLE","DESCRIBE TASK","DESCRIBE TRANSACTION","DESCRIBE USER","DESCRIBE VIEW","DESCRIBE WAREHOUSE","DROP CONNECTION","DROP DATABASE","DROP EXTERNAL TABLE","DROP FAILOVER GROUP","DROP FILE FORMAT","DROP FUNCTION","DROP INTEGRATION","DROP MANAGED ACCOUNT","DROP MASKING POLICY","DROP MATERIALIZED VIEW","DROP NETWORK POLICY","DROP PIPE","DROP PROCEDURE","DROP REPLICATION GROUP","DROP RESOURCE MONITOR","DROP ROLE","DROP ROW ACCESS POLICY","DROP SCHEMA","DROP SEQUENCE","DROP SESSION POLICY","DROP SHARE","DROP STAGE","DROP STREAM","DROP TAG","DROP TASK","DROP USER","DROP VIEW","DROP WAREHOUSE","EXECUTE IMMEDIATE","EXECUTE TASK","EXPLAIN","GET","GRANT OWNERSHIP","GRANT ROLE","INSERT","LIST","MERGE","PUT","REMOVE","REVOKE ROLE","ROLLBACK","SHOW COLUMNS","SHOW CONNECTIONS","SHOW DATABASES","SHOW DATABASES IN FAILOVER GROUP","SHOW DATABASES IN REPLICATION GROUP","SHOW DELEGATED AUTHORIZATIONS","SHOW EXTERNAL FUNCTIONS","SHOW EXTERNAL TABLES","SHOW FAILOVER GROUPS","SHOW FILE FORMATS","SHOW FUNCTIONS","SHOW GLOBAL ACCOUNTS","SHOW GRANTS","SHOW INTEGRATIONS","SHOW LOCKS","SHOW MANAGED ACCOUNTS","SHOW MASKING POLICIES","SHOW MATERIALIZED VIEWS","SHOW NETWORK POLICIES","SHOW OBJECTS","SHOW ORGANIZATION ACCOUNTS","SHOW PARAMETERS","SHOW PIPES","SHOW PRIMARY KEYS","SHOW PROCEDURES","SHOW REGIONS","SHOW REPLICATION ACCOUNTS","SHOW REPLICATION DATABASES","SHOW REPLICATION GROUPS","SHOW RESOURCE MONITORS","SHOW ROLES","SHOW ROW ACCESS POLICIES","SHOW SCHEMAS","SHOW SEQUENCES","SHOW SESSION POLICIES","SHOW SHARES","SHOW SHARES IN FAILOVER GROUP","SHOW SHARES IN REPLICATION GROUP","SHOW STAGES","SHOW STREAMS","SHOW TABLES","SHOW TAGS","SHOW TASKS","SHOW TRANSACTIONS","SHOW USER FUNCTIONS","SHOW USERS","SHOW VARIABLES","SHOW VIEWS","SHOW WAREHOUSES","TRUNCATE MATERIALIZED VIEW","UNDROP DATABASE","UNDROP SCHEMA","UNDROP TABLE","UNDROP TAG","UNSET","USE DATABASE","USE ROLE","USE SCHEMA","USE SECONDARY ROLES","USE WAREHOUSE"]),xA=y(["UNION [ALL]","MINUS","EXCEPT","INTERSECT"]),YA=y(["[INNER] JOIN","[NATURAL] {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | NATURAL} JOIN"]),VA=y(["{ROWS | RANGE} BETWEEN","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]"]),vA=y([]),wA={name:"snowflake",tokenizerOptions:{reservedSelect:HA,reservedClauses:[...bA,...pr,..._E],reservedSetOperations:xA,reservedJoins:YA,reservedKeywordPhrases:VA,reservedDataTypePhrases:vA,reservedKeywords:GA,reservedDataTypes:FA,reservedFunctionNames:yA,stringTypes:["$$","''-qq-bs"],identTypes:['""-qq'],variableTypes:[{regex:"[$][1-9]\\d*"},{regex:"[$][_a-zA-Z][_a-zA-Z0-9$]*"}],extraParens:["[]"],identChars:{rest:"$"},lineCommentTypes:["--","//"],operators:["%","::","||","=>",":=","->"],propertyAccessOperators:[":"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...pr,..._E],tabularOnelineClauses:_E}},WA=Object.freeze(Object.defineProperty({__proto__:null,bigquery:oo,clickhouse:_o,db2:go,db2i:wo,duckdb:jo,hive:aa,mariadb:Ca,mysql:Ma,n1ql:qa,plsql:ni,postgresql:Oi,redshift:Pi,singlestoredb:gA,snowflake:wA,spark:Fi,sql:EA,sqlite:ki,tidb:xa,transactsql:DA,trino:SA},Symbol.toStringTag,{value:"Module"})),yt=E=>E[E.length-1],dr=E=>E.sort((t,r)=>r.length-t.length||t.localeCompare(r)),wt=E=>E.replace(/\s+/gu," "),LE=E=>/\n/.test(E),Et=E=>E.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),Pr=/\s+/uy,Dt=E=>new RegExp(`(?:${E})`,"uy"),XA=E=>E.split("").map(t=>/ /gu.test(t)?"\\s+":`[${t.toUpperCase()}${t.toLowerCase()}]`).join(""),KA=E=>E+"(?:-"+E+")*",kA=({prefixes:E,requirePrefix:t})=>`(?:${E.map(XA).join("|")}${t?"":"|"})`,$A=E=>new RegExp(`(?:${E.map(Et).join("|")}).*?(?=\r
|
|
27
27
|
|\r|
|
|
28
|
-
|$)`,"uy"),fr=(E,t=[])=>{const r=E==="open"?0:1,n=["()",...t].map(s=>s[r]);return Dt(n.map(Et).join("|"))},hr=E=>Dt(`${dr(E).map(Et).join("|")}`),qA=({rest:E,dashes:t})=>E||t?`(?![${E||""}${t?"-":""}])`:"",At=(E,t={})=>{if(E.length===0)return/^\b$/u;const r=qA(t),n=dr(E).map(Et).join("|").replace(/ /gu,"\\s+");return new RegExp(`(?:${n})${r}\\b`,"iuy")},DE=(E,t)=>{if(!E.length)return;const r=E.map(Et).join("|");return Dt(`(?:${r})(?:${t})`)},JA=()=>{const E={"<":">","[":"]","(":")","{":"}"},t="{left}(?:(?!{right}').)*?{right}",r=Object.entries(E).map(([A,
|
|
28
|
+
|$)`,"uy"),fr=(E,t=[])=>{const r=E==="open"?0:1,n=["()",...t].map(s=>s[r]);return Dt(n.map(Et).join("|"))},hr=E=>Dt(`${dr(E).map(Et).join("|")}`),qA=({rest:E,dashes:t})=>E||t?`(?![${E||""}${t?"-":""}])`:"",At=(E,t={})=>{if(E.length===0)return/^\b$/u;const r=qA(t),n=dr(E).map(Et).join("|").replace(/ /gu,"\\s+");return new RegExp(`(?:${n})${r}\\b`,"iuy")},DE=(E,t)=>{if(!E.length)return;const r=E.map(Et).join("|");return Dt(`(?:${r})(?:${t})`)},JA=()=>{const E={"<":">","[":"]","(":")","{":"}"},t="{left}(?:(?!{right}').)*?{right}",r=Object.entries(E).map(([A,C])=>t.replace(/{left}/g,Et(A)).replace(/{right}/g,Et(C))),n=Et(Object.keys(E).join(""));return`[Qq]'(?:${String.raw`(?<tag>[^\s${n}])(?:(?!\k<tag>').)*?\k<tag>`}|${r.join("|")})'`},Mr={"``":"(?:`[^`]*`)+","[]":String.raw`(?:\[[^\]]*\])(?:\][^\]]*\])*`,'""-qq':String.raw`(?:"[^"]*")+`,'""-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")`,'""-qq-bs':String.raw`(?:"[^"\\]*(?:\\.[^"\\]*)*")+`,'""-raw':String.raw`(?:"[^"]*")`,"''-qq":String.raw`(?:'[^']*')+`,"''-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')`,"''-qq-bs":String.raw`(?:'[^'\\]*(?:\\.[^'\\]*)*')+`,"''-raw":String.raw`(?:'[^']*')`,$$:String.raw`(?<tag>\$\w*\$)[\s\S]*?\k<tag>`,"'''..'''":String.raw`'''[^\\]*?(?:\\.[^\\]*?)*?'''`,'""".."""':String.raw`"""[^\\]*?(?:\\.[^\\]*?)*?"""`,"{}":String.raw`(?:\{[^\}]*\})`,"q''":JA()},Ur=E=>typeof E=="string"?Mr[E]:"regex"in E?E.regex:kA(E)+Mr[E.quote],QA=E=>Dt(E.map(t=>"regex"in t?t.regex:Ur(t)).join("|")),mr=E=>E.map(Ur).join("|"),Br=E=>Dt(mr(E)),ZA=(E={})=>Dt(gr(E)),gr=({first:E,rest:t,dashes:r,allowFirstCharNumber:n}={})=>{const s="\\p{Alphabetic}\\p{Mark}_",a="\\p{Decimal_Number}",A=Et(E??""),C=Et(t??""),I=n?`[${s}${a}${A}][${s}${a}${C}]*`:`[${s}${A}][${s}${a}${C}]*`;return r?KA(I):I};function yr(E,t){const r=E.slice(0,t).split(/\n/);return{line:r.length,col:r[r.length-1].length+1}}class jA{constructor(t,r){this.rules=t,this.dialectName=r,this.input="",this.index=0}tokenize(t){this.input=t,this.index=0;const r=[];let n;for(;this.index<this.input.length;){const s=this.getWhitespace();if(this.index<this.input.length){if(n=this.getNextToken(),!n)throw this.createParseError();r.push(Object.assign(Object.assign({},n),{precedingWhitespace:s}))}}return r}createParseError(){const t=this.input.slice(this.index,this.index+10),{line:r,col:n}=yr(this.input,this.index);return new Error(`Parse error: Unexpected "${t}" at line ${r} column ${n}.
|
|
29
29
|
${this.dialectInfo()}`)}dialectInfo(){return this.dialectName==="sql"?`This likely happens because you're using the default "sql" dialect.
|
|
30
|
-
If possible, please select a more specific dialect (like sqlite, postgresql, etc).`:`SQL dialect used: "${this.dialectName}".`}getWhitespace(){Pr.lastIndex=this.index;const t=Pr.exec(this.input);if(t)return this.index+=t[0].length,t[0]}getNextToken(){for(const t of this.rules){const r=this.match(t);if(r)return r}}match(t){t.regex.lastIndex=this.index;const r=t.regex.exec(this.input);if(r){const n=r[0],s={type:t.type,raw:n,text:t.text?t.text(n):n,start:this.index};return t.key&&(s.key=t.key(n)),this.index+=n.length,s}}}const Gr=/\/\*/uy,zA=/[\s\S]/uy,eR=/\*\//uy;class tR{constructor(){this.lastIndex=0}exec(t){let r="",n,s=0;if(n=this.matchSection(Gr,t))r+=n,s++;else return null;for(;s>0;)if(n=this.matchSection(Gr,t))r+=n,s++;else if(n=this.matchSection(eR,t))r+=n,s--;else if(n=this.matchSection(zA,t))r+=n;else return null;return[r]}matchSection(t,r){t.lastIndex=this.lastIndex;const n=t.exec(r);return n&&(this.lastIndex+=n[0].length),n?n[0]:null}}class ER{constructor(t,r){this.cfg=t,this.dialectName=r,this.rulesBeforeParams=this.buildRulesBeforeParams(t),this.rulesAfterParams=this.buildRulesAfterParams(t)}tokenize(t,r){const n=[...this.rulesBeforeParams,...this.buildParamRules(this.cfg,r),...this.rulesAfterParams],s=new jA(n,this.dialectName).tokenize(t);return this.cfg.postProcess?this.cfg.postProcess(s):s}buildRulesBeforeParams(t){var r,n,s;return this.validRules([{type
|
|
31
|
-
`&&(this.line+=1,this.lastLineBreak=this.index),{value:i}}},a.prototype.save=function(){return{line:this.line,col:this.index-this.lastLineBreak}},a.prototype.formatError=function(i,O){var
|
|
32
|
-
`).slice(Math.max(0,this.line-5),this.line),
|
|
33
|
-
`,this.index);
|
|
30
|
+
If possible, please select a more specific dialect (like sqlite, postgresql, etc).`:`SQL dialect used: "${this.dialectName}".`}getWhitespace(){Pr.lastIndex=this.index;const t=Pr.exec(this.input);if(t)return this.index+=t[0].length,t[0]}getNextToken(){for(const t of this.rules){const r=this.match(t);if(r)return r}}match(t){t.regex.lastIndex=this.index;const r=t.regex.exec(this.input);if(r){const n=r[0],s={type:t.type,raw:n,text:t.text?t.text(n):n,start:this.index};return t.key&&(s.key=t.key(n)),this.index+=n.length,s}}}const Gr=/\/\*/uy,zA=/[\s\S]/uy,eR=/\*\//uy;class tR{constructor(){this.lastIndex=0}exec(t){let r="",n,s=0;if(n=this.matchSection(Gr,t))r+=n,s++;else return null;for(;s>0;)if(n=this.matchSection(Gr,t))r+=n,s++;else if(n=this.matchSection(eR,t))r+=n,s--;else if(n=this.matchSection(zA,t))r+=n;else return null;return[r]}matchSection(t,r){t.lastIndex=this.lastIndex;const n=t.exec(r);return n&&(this.lastIndex+=n[0].length),n?n[0]:null}}class ER{constructor(t,r){this.cfg=t,this.dialectName=r,this.rulesBeforeParams=this.buildRulesBeforeParams(t),this.rulesAfterParams=this.buildRulesAfterParams(t)}tokenize(t,r){const n=[...this.rulesBeforeParams,...this.buildParamRules(this.cfg,r),...this.rulesAfterParams],s=new jA(n,this.dialectName).tokenize(t);return this.cfg.postProcess?this.cfg.postProcess(s):s}buildRulesBeforeParams(t){var r,n,s;return this.validRules([{type:$.DISABLE_COMMENT,regex:/(\/\* *sql-formatter-disable *\*\/[\s\S]*?(?:\/\* *sql-formatter-enable *\*\/|$))/uy},{type:$.BLOCK_COMMENT,regex:t.nestedBlockComments?new tR:/(\/\*[^]*?\*\/)/uy},{type:$.LINE_COMMENT,regex:$A((r=t.lineCommentTypes)!==null&&r!==void 0?r:["--"])},{type:$.QUOTED_IDENTIFIER,regex:Br(t.identTypes)},{type:$.NUMBER,regex:t.underscoresInNumbers?/(?:0x[0-9a-fA-F_]+|0b[01_]+|(?:-\s*)?(?:[0-9_]*\.[0-9_]+|[0-9_]+(?:\.[0-9_]*)?)(?:[eE][-+]?[0-9_]+(?:\.[0-9_]+)?)?)(?![\w\p{Alphabetic}])/uy:/(?:0x[0-9a-fA-F]+|0b[01]+|(?:-\s*)?(?:[0-9]*\.[0-9]+|[0-9]+(?:\.[0-9]*)?)(?:[eE][-+]?[0-9]+(?:\.[0-9]+)?)?)(?![\w\p{Alphabetic}])/uy},{type:$.RESERVED_KEYWORD_PHRASE,regex:At((n=t.reservedKeywordPhrases)!==null&&n!==void 0?n:[],t.identChars),text:xe},{type:$.RESERVED_DATA_TYPE_PHRASE,regex:At((s=t.reservedDataTypePhrases)!==null&&s!==void 0?s:[],t.identChars),text:xe},{type:$.CASE,regex:/CASE\b/iuy,text:xe},{type:$.END,regex:/END\b/iuy,text:xe},{type:$.BETWEEN,regex:/BETWEEN\b/iuy,text:xe},{type:$.LIMIT,regex:t.reservedClauses.includes("LIMIT")?/LIMIT\b/iuy:void 0,text:xe},{type:$.RESERVED_CLAUSE,regex:At(t.reservedClauses,t.identChars),text:xe},{type:$.RESERVED_SELECT,regex:At(t.reservedSelect,t.identChars),text:xe},{type:$.RESERVED_SET_OPERATION,regex:At(t.reservedSetOperations,t.identChars),text:xe},{type:$.WHEN,regex:/WHEN\b/iuy,text:xe},{type:$.ELSE,regex:/ELSE\b/iuy,text:xe},{type:$.THEN,regex:/THEN\b/iuy,text:xe},{type:$.RESERVED_JOIN,regex:At(t.reservedJoins,t.identChars),text:xe},{type:$.AND,regex:/AND\b/iuy,text:xe},{type:$.OR,regex:/OR\b/iuy,text:xe},{type:$.XOR,regex:t.supportsXor?/XOR\b/iuy:void 0,text:xe},...t.operatorKeyword?[{type:$.OPERATOR,regex:/OPERATOR *\([^)]+\)/iuy}]:[],{type:$.RESERVED_FUNCTION_NAME,regex:At(t.reservedFunctionNames,t.identChars),text:xe},{type:$.RESERVED_DATA_TYPE,regex:At(t.reservedDataTypes,t.identChars),text:xe},{type:$.RESERVED_KEYWORD,regex:At(t.reservedKeywords,t.identChars),text:xe}])}buildRulesAfterParams(t){var r,n;return this.validRules([{type:$.VARIABLE,regex:t.variableTypes?QA(t.variableTypes):void 0},{type:$.STRING,regex:Br(t.stringTypes)},{type:$.IDENTIFIER,regex:ZA(t.identChars)},{type:$.DELIMITER,regex:/[;]/uy},{type:$.COMMA,regex:/[,]/y},{type:$.OPEN_PAREN,regex:fr("open",t.extraParens)},{type:$.CLOSE_PAREN,regex:fr("close",t.extraParens)},{type:$.OPERATOR,regex:hr(["+","-","/",">","<","=","<>","<=",">=","!=",...(r=t.operators)!==null&&r!==void 0?r:[]])},{type:$.ASTERISK,regex:/[*]/uy},{type:$.PROPERTY_ACCESS_OPERATOR,regex:hr([".",...(n=t.propertyAccessOperators)!==null&&n!==void 0?n:[]])}])}buildParamRules(t,r){var n,s,a,A,C;const I={named:r?.named||((n=t.paramTypes)===null||n===void 0?void 0:n.named)||[],quoted:r?.quoted||((s=t.paramTypes)===null||s===void 0?void 0:s.quoted)||[],numbered:r?.numbered||((a=t.paramTypes)===null||a===void 0?void 0:a.numbered)||[],positional:typeof r?.positional=="boolean"?r.positional:(A=t.paramTypes)===null||A===void 0?void 0:A.positional,custom:r?.custom||((C=t.paramTypes)===null||C===void 0?void 0:C.custom)||[]};return this.validRules([{type:$.NAMED_PARAMETER,regex:DE(I.named,gr(t.paramChars||t.identChars)),key:i=>i.slice(1)},{type:$.QUOTED_PARAMETER,regex:DE(I.quoted,mr(t.identTypes)),key:i=>(({tokenKey:O,quoteChar:u})=>O.replace(new RegExp(Et("\\"+u),"gu"),u))({tokenKey:i.slice(2,-1),quoteChar:i.slice(-1)})},{type:$.NUMBERED_PARAMETER,regex:DE(I.numbered,"[0-9]+"),key:i=>i.slice(1)},{type:$.POSITIONAL_PARAMETER,regex:I.positional?/[?]/y:void 0},...I.custom.map(i=>{var O;return{type:$.CUSTOM_PARAMETER,regex:Dt(i.regex),key:(O=i.key)!==null&&O!==void 0?O:u=>u}})])}validRules(t){return t.filter(r=>!!r.regex)}}const xe=E=>wt(E.toUpperCase()),Fr=new Map,rR=E=>{let t=Fr.get(E);return t||(t=nR(E),Fr.set(E,t)),t},nR=E=>({tokenizer:new ER(E.tokenizerOptions,E.name),formatOptions:sR(E.formatOptions)}),sR=E=>{var t;return{alwaysDenseOperators:E.alwaysDenseOperators||[],onelineClauses:Object.fromEntries(E.onelineClauses.map(r=>[r,!0])),tabularOnelineClauses:Object.fromEntries(((t=E.tabularOnelineClauses)!==null&&t!==void 0?t:E.onelineClauses).map(r=>[r,!0]))}};function TR(E){return E.indentStyle==="tabularLeft"||E.indentStyle==="tabularRight"?" ".repeat(10):E.useTabs?" ":" ".repeat(E.tabWidth)}function ht(E){return E.indentStyle==="tabularLeft"||E.indentStyle==="tabularRight"}class oR{constructor(t){this.params=t,this.index=0}get({key:t,text:r}){return this.params?t?this.params[t]:this.params[this.index++]:r}getPositionalParameterIndex(){return this.index}setPositionalParameterIndex(t){this.index=t}}var Wt={exports:{}},aR=Wt.exports,Hr;function iR(){return Hr||(Hr=1,function(E){(function(t,r){E.exports?E.exports=r():t.nearley=r()})(aR,function(){function t(i,O,u){return this.id=++t.highestId,this.name=i,this.symbols=O,this.postprocess=u,this}t.highestId=0,t.prototype.toString=function(i){var O=typeof i>"u"?this.symbols.map(I).join(" "):this.symbols.slice(0,i).map(I).join(" ")+" ● "+this.symbols.slice(i).map(I).join(" ");return this.name+" → "+O};function r(i,O,u,d){this.rule=i,this.dot=O,this.reference=u,this.data=[],this.wantedBy=d,this.isComplete=this.dot===i.symbols.length}r.prototype.toString=function(){return"{"+this.rule.toString(this.dot)+"}, from: "+(this.reference||0)},r.prototype.nextState=function(i){var O=new r(this.rule,this.dot+1,this.reference,this.wantedBy);return O.left=this,O.right=i,O.isComplete&&(O.data=O.build(),O.right=void 0),O},r.prototype.build=function(){var i=[],O=this;do i.push(O.right.data),O=O.left;while(O.left);return i.reverse(),i},r.prototype.finish=function(){this.rule.postprocess&&(this.data=this.rule.postprocess(this.data,this.reference,A.fail))};function n(i,O){this.grammar=i,this.index=O,this.states=[],this.wants={},this.scannable=[],this.completed={}}n.prototype.process=function(i){for(var O=this.states,u=this.wants,d=this.completed,U=0;U<O.length;U++){var M=O[U];if(M.isComplete){if(M.finish(),M.data!==A.fail){for(var w=M.wantedBy,P=w.length;P--;){var J=w[P];this.complete(J,M)}if(M.reference===this.index){var Z=M.rule.name;(this.completed[Z]=this.completed[Z]||[]).push(M)}}}else{var Z=M.rule.symbols[M.dot];if(typeof Z!="string"){this.scannable.push(M);continue}if(u[Z]){if(u[Z].push(M),d.hasOwnProperty(Z))for(var z=d[Z],P=0;P<z.length;P++){var De=z[P];this.complete(M,De)}}else u[Z]=[M],this.predict(Z)}}},n.prototype.predict=function(i){for(var O=this.grammar.byName[i]||[],u=0;u<O.length;u++){var d=O[u],U=this.wants[i],M=new r(d,0,this.index,U);this.states.push(M)}},n.prototype.complete=function(i,O){var u=i.nextState(O);this.states.push(u)};function s(i,O){this.rules=i,this.start=O||this.rules[0].name;var u=this.byName={};this.rules.forEach(function(d){u.hasOwnProperty(d.name)||(u[d.name]=[]),u[d.name].push(d)})}s.fromCompiled=function(d,O){var u=d.Lexer;d.ParserStart&&(O=d.ParserStart,d=d.ParserRules);var d=d.map(function(M){return new t(M.name,M.symbols,M.postprocess)}),U=new s(d,O);return U.lexer=u,U};function a(){this.reset("")}a.prototype.reset=function(i,O){this.buffer=i,this.index=0,this.line=O?O.line:1,this.lastLineBreak=O?-O.col:0},a.prototype.next=function(){if(this.index<this.buffer.length){var i=this.buffer[this.index++];return i===`
|
|
31
|
+
`&&(this.line+=1,this.lastLineBreak=this.index),{value:i}}},a.prototype.save=function(){return{line:this.line,col:this.index-this.lastLineBreak}},a.prototype.formatError=function(i,O){var u=this.buffer;if(typeof u=="string"){var d=u.split(`
|
|
32
|
+
`).slice(Math.max(0,this.line-5),this.line),U=u.indexOf(`
|
|
33
|
+
`,this.index);U===-1&&(U=u.length);var M=this.index-this.lastLineBreak,w=String(this.line).length;return O+=" at line "+this.line+" col "+M+`:
|
|
34
34
|
|
|
35
|
-
`,O+=
|
|
35
|
+
`,O+=d.map(function(J,Z){return P(this.line-d.length+Z+1,w)+" "+J},this).join(`
|
|
36
36
|
`),O+=`
|
|
37
|
-
`+
|
|
38
|
-
`,O}else return O+" at index "+(this.index-1);function
|
|
39
|
-
`),this.displayStateStack(
|
|
40
|
-
`);var
|
|
41
|
-
`)},A.prototype.displayStateStack=function(i,O){for(var C,p=0,g=0;g<i.length;g++){var B=i[g],Y=B.rule.toString(B.dot);Y===C?p++:(p>0&&O.push(" ^ "+p+" more lines identical to this"),p=0,O.push(" "+Y)),C=Y}},A.prototype.getSymbolDisplay=function(i){return c(i)},A.prototype.buildFirstStateStack=function(i,O){if(O.indexOf(i)!==-1)return null;if(i.wantedBy.length===0)return[i];var C=i.wantedBy[0],p=[i].concat(O),g=this.buildFirstStateStack(C,p);return g===null?null:[i].concat(g)},A.prototype.save=function(){var i=this.table[this.current];return i.lexerState=this.lexerState,i},A.prototype.restore=function(i){var O=i.index;this.current=O,this.table[O]=i,this.table.splice(O+1),this.lexerState=i.lexerState,this.results=this.finish()},A.prototype.rewind=function(i){if(!this.options.keepHistory)throw new Error("set option `keepHistory` to enable rewinding");this.restore(this.table[i])},A.prototype.finish=function(){var i=[],O=this.grammar.start,C=this.table[this.table.length-1];return C.states.forEach(function(p){p.rule.name===O&&p.dot===p.rule.symbols.length&&p.reference===0&&p.data!==A.fail&&i.push(p)}),i.map(function(p){return p.data})};function c(i){var O=typeof i;if(O==="string")return i;if(O==="object"){if(i.literal)return JSON.stringify(i.literal);if(i instanceof RegExp)return"character matching "+i;if(i.type)return i.type+" token";if(i.test)return"token matching "+String(i.test);throw new Error("Unknown symbol type: "+i)}}function I(i){var O=typeof i;if(O==="string")return i;if(O==="object"){if(i.literal)return JSON.stringify(i.literal);if(i instanceof RegExp)return i.toString();if(i.type)return"%"+i.type;if(i.test)return"<"+String(i.test)+">";throw new Error("Unknown symbol type: "+i)}}return{Parser:A,Grammar:s,Rule:t}})}(Wt)),Wt.exports}var AR=iR();const RR=mE(AR);function SR(E){return E.map(NR).map(IR).map(lR).map(uR).map(CR)}const NR=(E,t,r)=>{if(Er(E.type)){const n=cR(r,t);if(n&&n.type===K.PROPERTY_ACCESS_OPERATOR)return Object.assign(Object.assign({},E),{type:K.IDENTIFIER,text:E.raw});const s=Mt(r,t);if(s&&s.type===K.PROPERTY_ACCESS_OPERATOR)return Object.assign(Object.assign({},E),{type:K.IDENTIFIER,text:E.raw})}return E},IR=(E,t,r)=>{if(E.type===K.RESERVED_FUNCTION_NAME){const n=Mt(r,t);if(!n||!br(n))return Object.assign(Object.assign({},E),{type:K.IDENTIFIER,text:E.raw})}return E},lR=(E,t,r)=>{if(E.type===K.RESERVED_DATA_TYPE){const n=Mt(r,t);if(n&&br(n))return Object.assign(Object.assign({},E),{type:K.RESERVED_PARAMETERIZED_DATA_TYPE})}return E},uR=(E,t,r)=>{if(E.type===K.IDENTIFIER){const n=Mt(r,t);if(n&&xr(n))return Object.assign(Object.assign({},E),{type:K.ARRAY_IDENTIFIER})}return E},CR=(E,t,r)=>{if(E.type===K.RESERVED_DATA_TYPE){const n=Mt(r,t);if(n&&xr(n))return Object.assign(Object.assign({},E),{type:K.ARRAY_KEYWORD})}return E},cR=(E,t)=>Mt(E,t,-1),Mt=(E,t,r=1)=>{let n=1;for(;E[t+n*r]&&_R(E[t+n*r]);)n++;return E[t+n*r]},br=E=>E.type===K.OPEN_PAREN&&E.text==="(",xr=E=>E.type===K.OPEN_PAREN&&E.text==="[",_R=E=>E.type===K.BLOCK_COMMENT||E.type===K.LINE_COMMENT;class Yr{constructor(t){this.tokenize=t,this.index=0,this.tokens=[],this.input=""}reset(t,r){this.input=t,this.index=0,this.tokens=this.tokenize(t)}next(){return this.tokens[this.index++]}save(){}formatError(t){const{line:r,col:n}=yr(this.input,t.start);return`Parse error at token: ${t.text} at line ${r} column ${n}`}has(t){return t in K}}var ue;(function(E){E.statement="statement",E.clause="clause",E.set_operation="set_operation",E.function_call="function_call",E.parameterized_data_type="parameterized_data_type",E.array_subscript="array_subscript",E.property_access="property_access",E.parenthesis="parenthesis",E.between_predicate="between_predicate",E.case_expression="case_expression",E.case_when="case_when",E.case_else="case_else",E.limit_clause="limit_clause",E.all_columns_asterisk="all_columns_asterisk",E.literal="literal",E.identifier="identifier",E.keyword="keyword",E.data_type="data_type",E.parameter="parameter",E.operator="operator",E.comma="comma",E.line_comment="line_comment",E.block_comment="block_comment",E.disable_comment="disable_comment"})(ue=ue||(ue={}));function pE(E){return E[0]}const Pe=new Yr(E=>[]),pt=([[E]])=>E,Ye=E=>({type:ue.keyword,tokenType:E.type,text:E.text,raw:E.raw}),Vr=E=>({type:ue.data_type,text:E.text,raw:E.raw}),Ve=(E,{leading:t,trailing:r})=>(t?.length&&(E=Object.assign(Object.assign({},E),{leadingComments:t})),r?.length&&(E=Object.assign(Object.assign({},E),{trailingComments:r})),E),LR=(E,{leading:t,trailing:r})=>{if(t?.length){const[n,...s]=E;E=[Ve(n,{leading:t}),...s]}if(r?.length){const n=E.slice(0,-1),s=E[E.length-1];E=[...n,Ve(s,{trailing:r})]}return E},DR={Lexer:Pe,ParserRules:[{name:"main$ebnf$1",symbols:[]},{name:"main$ebnf$1",symbols:["main$ebnf$1","statement"],postprocess:E=>E[0].concat([E[1]])},{name:"main",symbols:["main$ebnf$1"],postprocess:([E])=>{const t=E[E.length-1];return t&&!t.hasSemicolon?t.children.length>0?E:E.slice(0,-1):E}},{name:"statement$subexpression$1",symbols:[Pe.has("DELIMITER")?{type:"DELIMITER"}:DELIMITER]},{name:"statement$subexpression$1",symbols:[Pe.has("EOF")?{type:"EOF"}:EOF]},{name:"statement",symbols:["expressions_or_clauses","statement$subexpression$1"],postprocess:([E,[t]])=>({type:ue.statement,children:E,hasSemicolon:t.type===K.DELIMITER})},{name:"expressions_or_clauses$ebnf$1",symbols:[]},{name:"expressions_or_clauses$ebnf$1",symbols:["expressions_or_clauses$ebnf$1","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"expressions_or_clauses$ebnf$2",symbols:[]},{name:"expressions_or_clauses$ebnf$2",symbols:["expressions_or_clauses$ebnf$2","clause"],postprocess:E=>E[0].concat([E[1]])},{name:"expressions_or_clauses",symbols:["expressions_or_clauses$ebnf$1","expressions_or_clauses$ebnf$2"],postprocess:([E,t])=>[...E,...t]},{name:"clause$subexpression$1",symbols:["limit_clause"]},{name:"clause$subexpression$1",symbols:["select_clause"]},{name:"clause$subexpression$1",symbols:["other_clause"]},{name:"clause$subexpression$1",symbols:["set_operation"]},{name:"clause",symbols:["clause$subexpression$1"],postprocess:pt},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["free_form_sql"]},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1$ebnf$1","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"limit_clause$ebnf$1$subexpression$1",symbols:[Pe.has("COMMA")?{type:"COMMA"}:COMMA,"limit_clause$ebnf$1$subexpression$1$ebnf$1"]},{name:"limit_clause$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1"],postprocess:pE},{name:"limit_clause$ebnf$1",symbols:[],postprocess:()=>null},{name:"limit_clause",symbols:[Pe.has("LIMIT")?{type:"LIMIT"}:LIMIT,"_","expression_chain_","limit_clause$ebnf$1"],postprocess:([E,t,r,n])=>{if(n){const[s,a]=n;return{type:ue.limit_clause,limitKw:Ve(Ye(E),{trailing:t}),offset:r,count:a}}else return{type:ue.limit_clause,limitKw:Ve(Ye(E),{trailing:t}),count:r}}},{name:"select_clause$subexpression$1$ebnf$1",symbols:[]},{name:"select_clause$subexpression$1$ebnf$1",symbols:["select_clause$subexpression$1$ebnf$1","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"select_clause$subexpression$1",symbols:["all_columns_asterisk","select_clause$subexpression$1$ebnf$1"]},{name:"select_clause$subexpression$1$ebnf$2",symbols:[]},{name:"select_clause$subexpression$1$ebnf$2",symbols:["select_clause$subexpression$1$ebnf$2","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"select_clause$subexpression$1",symbols:["asteriskless_free_form_sql","select_clause$subexpression$1$ebnf$2"]},{name:"select_clause",symbols:[Pe.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT,"select_clause$subexpression$1"],postprocess:([E,[t,r]])=>({type:ue.clause,nameKw:Ye(E),children:[t,...r]})},{name:"select_clause",symbols:[Pe.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT],postprocess:([E])=>({type:ue.clause,nameKw:Ye(E),children:[]})},{name:"all_columns_asterisk",symbols:[Pe.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK],postprocess:()=>({type:ue.all_columns_asterisk})},{name:"other_clause$ebnf$1",symbols:[]},{name:"other_clause$ebnf$1",symbols:["other_clause$ebnf$1","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"other_clause",symbols:[Pe.has("RESERVED_CLAUSE")?{type:"RESERVED_CLAUSE"}:RESERVED_CLAUSE,"other_clause$ebnf$1"],postprocess:([E,t])=>({type:ue.clause,nameKw:Ye(E),children:t})},{name:"set_operation$ebnf$1",symbols:[]},{name:"set_operation$ebnf$1",symbols:["set_operation$ebnf$1","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"set_operation",symbols:[Pe.has("RESERVED_SET_OPERATION")?{type:"RESERVED_SET_OPERATION"}:RESERVED_SET_OPERATION,"set_operation$ebnf$1"],postprocess:([E,t])=>({type:ue.set_operation,nameKw:Ye(E),children:t})},{name:"expression_chain_$ebnf$1",symbols:["expression_with_comments_"]},{name:"expression_chain_$ebnf$1",symbols:["expression_chain_$ebnf$1","expression_with_comments_"],postprocess:E=>E[0].concat([E[1]])},{name:"expression_chain_",symbols:["expression_chain_$ebnf$1"],postprocess:pE},{name:"expression_chain$ebnf$1",symbols:[]},{name:"expression_chain$ebnf$1",symbols:["expression_chain$ebnf$1","_expression_with_comments"],postprocess:E=>E[0].concat([E[1]])},{name:"expression_chain",symbols:["expression","expression_chain$ebnf$1"],postprocess:([E,t])=>[E,...t]},{name:"andless_expression_chain$ebnf$1",symbols:[]},{name:"andless_expression_chain$ebnf$1",symbols:["andless_expression_chain$ebnf$1","_andless_expression_with_comments"],postprocess:E=>E[0].concat([E[1]])},{name:"andless_expression_chain",symbols:["andless_expression","andless_expression_chain$ebnf$1"],postprocess:([E,t])=>[E,...t]},{name:"expression_with_comments_",symbols:["expression","_"],postprocess:([E,t])=>Ve(E,{trailing:t})},{name:"_expression_with_comments",symbols:["_","expression"],postprocess:([E,t])=>Ve(t,{leading:E})},{name:"_andless_expression_with_comments",symbols:["_","andless_expression"],postprocess:([E,t])=>Ve(t,{leading:E})},{name:"free_form_sql$subexpression$1",symbols:["asteriskless_free_form_sql"]},{name:"free_form_sql$subexpression$1",symbols:["asterisk"]},{name:"free_form_sql",symbols:["free_form_sql$subexpression$1"],postprocess:pt},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["logic_operator"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comma"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comment"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["other_keyword"]},{name:"asteriskless_free_form_sql",symbols:["asteriskless_free_form_sql$subexpression$1"],postprocess:pt},{name:"expression$subexpression$1",symbols:["andless_expression"]},{name:"expression$subexpression$1",symbols:["logic_operator"]},{name:"expression",symbols:["expression$subexpression$1"],postprocess:pt},{name:"andless_expression$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"andless_expression$subexpression$1",symbols:["asterisk"]},{name:"andless_expression",symbols:["andless_expression$subexpression$1"],postprocess:pt},{name:"asteriskless_andless_expression$subexpression$1",symbols:["atomic_expression"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["between_predicate"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["case_expression"]},{name:"asteriskless_andless_expression",symbols:["asteriskless_andless_expression$subexpression$1"],postprocess:pt},{name:"atomic_expression$subexpression$1",symbols:["array_subscript"]},{name:"atomic_expression$subexpression$1",symbols:["function_call"]},{name:"atomic_expression$subexpression$1",symbols:["property_access"]},{name:"atomic_expression$subexpression$1",symbols:["parenthesis"]},{name:"atomic_expression$subexpression$1",symbols:["curly_braces"]},{name:"atomic_expression$subexpression$1",symbols:["square_brackets"]},{name:"atomic_expression$subexpression$1",symbols:["operator"]},{name:"atomic_expression$subexpression$1",symbols:["identifier"]},{name:"atomic_expression$subexpression$1",symbols:["parameter"]},{name:"atomic_expression$subexpression$1",symbols:["literal"]},{name:"atomic_expression$subexpression$1",symbols:["data_type"]},{name:"atomic_expression$subexpression$1",symbols:["keyword"]},{name:"atomic_expression",symbols:["atomic_expression$subexpression$1"],postprocess:pt},{name:"array_subscript",symbols:[Pe.has("ARRAY_IDENTIFIER")?{type:"ARRAY_IDENTIFIER"}:ARRAY_IDENTIFIER,"_","square_brackets"],postprocess:([E,t,r])=>({type:ue.array_subscript,array:Ve({type:ue.identifier,quoted:!1,text:E.text},{trailing:t}),parenthesis:r})},{name:"array_subscript",symbols:[Pe.has("ARRAY_KEYWORD")?{type:"ARRAY_KEYWORD"}:ARRAY_KEYWORD,"_","square_brackets"],postprocess:([E,t,r])=>({type:ue.array_subscript,array:Ve(Ye(E),{trailing:t}),parenthesis:r})},{name:"function_call",symbols:[Pe.has("RESERVED_FUNCTION_NAME")?{type:"RESERVED_FUNCTION_NAME"}:RESERVED_FUNCTION_NAME,"_","parenthesis"],postprocess:([E,t,r])=>({type:ue.function_call,nameKw:Ve(Ye(E),{trailing:t}),parenthesis:r})},{name:"parenthesis",symbols:[{literal:"("},"expressions_or_clauses",{literal:")"}],postprocess:([E,t,r])=>({type:ue.parenthesis,children:t,openParen:"(",closeParen:")"})},{name:"curly_braces$ebnf$1",symbols:[]},{name:"curly_braces$ebnf$1",symbols:["curly_braces$ebnf$1","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"curly_braces",symbols:[{literal:"{"},"curly_braces$ebnf$1",{literal:"}"}],postprocess:([E,t,r])=>({type:ue.parenthesis,children:t,openParen:"{",closeParen:"}"})},{name:"square_brackets$ebnf$1",symbols:[]},{name:"square_brackets$ebnf$1",symbols:["square_brackets$ebnf$1","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"square_brackets",symbols:[{literal:"["},"square_brackets$ebnf$1",{literal:"]"}],postprocess:([E,t,r])=>({type:ue.parenthesis,children:t,openParen:"[",closeParen:"]"})},{name:"property_access$subexpression$1",symbols:["identifier"]},{name:"property_access$subexpression$1",symbols:["array_subscript"]},{name:"property_access$subexpression$1",symbols:["all_columns_asterisk"]},{name:"property_access$subexpression$1",symbols:["parameter"]},{name:"property_access",symbols:["atomic_expression","_",Pe.has("PROPERTY_ACCESS_OPERATOR")?{type:"PROPERTY_ACCESS_OPERATOR"}:PROPERTY_ACCESS_OPERATOR,"_","property_access$subexpression$1"],postprocess:([E,t,r,n,[s]])=>({type:ue.property_access,object:Ve(E,{trailing:t}),operator:r.text,property:Ve(s,{leading:n})})},{name:"between_predicate",symbols:[Pe.has("BETWEEN")?{type:"BETWEEN"}:BETWEEN,"_","andless_expression_chain","_",Pe.has("AND")?{type:"AND"}:AND,"_","andless_expression"],postprocess:([E,t,r,n,s,a,A])=>({type:ue.between_predicate,betweenKw:Ye(E),expr1:LR(r,{leading:t,trailing:n}),andKw:Ye(s),expr2:[Ve(A,{leading:a})]})},{name:"case_expression$ebnf$1",symbols:["expression_chain_"],postprocess:pE},{name:"case_expression$ebnf$1",symbols:[],postprocess:()=>null},{name:"case_expression$ebnf$2",symbols:[]},{name:"case_expression$ebnf$2",symbols:["case_expression$ebnf$2","case_clause"],postprocess:E=>E[0].concat([E[1]])},{name:"case_expression",symbols:[Pe.has("CASE")?{type:"CASE"}:CASE,"_","case_expression$ebnf$1","case_expression$ebnf$2",Pe.has("END")?{type:"END"}:END],postprocess:([E,t,r,n,s])=>({type:ue.case_expression,caseKw:Ve(Ye(E),{trailing:t}),endKw:Ye(s),expr:r||[],clauses:n})},{name:"case_clause",symbols:[Pe.has("WHEN")?{type:"WHEN"}:WHEN,"_","expression_chain_",Pe.has("THEN")?{type:"THEN"}:THEN,"_","expression_chain_"],postprocess:([E,t,r,n,s,a])=>({type:ue.case_when,whenKw:Ve(Ye(E),{trailing:t}),thenKw:Ve(Ye(n),{trailing:s}),condition:r,result:a})},{name:"case_clause",symbols:[Pe.has("ELSE")?{type:"ELSE"}:ELSE,"_","expression_chain_"],postprocess:([E,t,r])=>({type:ue.case_else,elseKw:Ve(Ye(E),{trailing:t}),result:r})},{name:"comma$subexpression$1",symbols:[Pe.has("COMMA")?{type:"COMMA"}:COMMA]},{name:"comma",symbols:["comma$subexpression$1"],postprocess:([[E]])=>({type:ue.comma})},{name:"asterisk$subexpression$1",symbols:[Pe.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK]},{name:"asterisk",symbols:["asterisk$subexpression$1"],postprocess:([[E]])=>({type:ue.operator,text:E.text})},{name:"operator$subexpression$1",symbols:[Pe.has("OPERATOR")?{type:"OPERATOR"}:OPERATOR]},{name:"operator",symbols:["operator$subexpression$1"],postprocess:([[E]])=>({type:ue.operator,text:E.text})},{name:"identifier$subexpression$1",symbols:[Pe.has("IDENTIFIER")?{type:"IDENTIFIER"}:IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[Pe.has("QUOTED_IDENTIFIER")?{type:"QUOTED_IDENTIFIER"}:QUOTED_IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[Pe.has("VARIABLE")?{type:"VARIABLE"}:VARIABLE]},{name:"identifier",symbols:["identifier$subexpression$1"],postprocess:([[E]])=>({type:ue.identifier,quoted:E.type!=="IDENTIFIER",text:E.text})},{name:"parameter$subexpression$1",symbols:[Pe.has("NAMED_PARAMETER")?{type:"NAMED_PARAMETER"}:NAMED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Pe.has("QUOTED_PARAMETER")?{type:"QUOTED_PARAMETER"}:QUOTED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Pe.has("NUMBERED_PARAMETER")?{type:"NUMBERED_PARAMETER"}:NUMBERED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Pe.has("POSITIONAL_PARAMETER")?{type:"POSITIONAL_PARAMETER"}:POSITIONAL_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Pe.has("CUSTOM_PARAMETER")?{type:"CUSTOM_PARAMETER"}:CUSTOM_PARAMETER]},{name:"parameter",symbols:["parameter$subexpression$1"],postprocess:([[E]])=>({type:ue.parameter,key:E.key,text:E.text})},{name:"literal$subexpression$1",symbols:[Pe.has("NUMBER")?{type:"NUMBER"}:NUMBER]},{name:"literal$subexpression$1",symbols:[Pe.has("STRING")?{type:"STRING"}:STRING]},{name:"literal",symbols:["literal$subexpression$1"],postprocess:([[E]])=>({type:ue.literal,text:E.text})},{name:"keyword$subexpression$1",symbols:[Pe.has("RESERVED_KEYWORD")?{type:"RESERVED_KEYWORD"}:RESERVED_KEYWORD]},{name:"keyword$subexpression$1",symbols:[Pe.has("RESERVED_KEYWORD_PHRASE")?{type:"RESERVED_KEYWORD_PHRASE"}:RESERVED_KEYWORD_PHRASE]},{name:"keyword$subexpression$1",symbols:[Pe.has("RESERVED_JOIN")?{type:"RESERVED_JOIN"}:RESERVED_JOIN]},{name:"keyword",symbols:["keyword$subexpression$1"],postprocess:([[E]])=>Ye(E)},{name:"data_type$subexpression$1",symbols:[Pe.has("RESERVED_DATA_TYPE")?{type:"RESERVED_DATA_TYPE"}:RESERVED_DATA_TYPE]},{name:"data_type$subexpression$1",symbols:[Pe.has("RESERVED_DATA_TYPE_PHRASE")?{type:"RESERVED_DATA_TYPE_PHRASE"}:RESERVED_DATA_TYPE_PHRASE]},{name:"data_type",symbols:["data_type$subexpression$1"],postprocess:([[E]])=>Vr(E)},{name:"data_type",symbols:[Pe.has("RESERVED_PARAMETERIZED_DATA_TYPE")?{type:"RESERVED_PARAMETERIZED_DATA_TYPE"}:RESERVED_PARAMETERIZED_DATA_TYPE,"_","parenthesis"],postprocess:([E,t,r])=>({type:ue.parameterized_data_type,dataType:Ve(Vr(E),{trailing:t}),parenthesis:r})},{name:"logic_operator$subexpression$1",symbols:[Pe.has("AND")?{type:"AND"}:AND]},{name:"logic_operator$subexpression$1",symbols:[Pe.has("OR")?{type:"OR"}:OR]},{name:"logic_operator$subexpression$1",symbols:[Pe.has("XOR")?{type:"XOR"}:XOR]},{name:"logic_operator",symbols:["logic_operator$subexpression$1"],postprocess:([[E]])=>Ye(E)},{name:"other_keyword$subexpression$1",symbols:[Pe.has("WHEN")?{type:"WHEN"}:WHEN]},{name:"other_keyword$subexpression$1",symbols:[Pe.has("THEN")?{type:"THEN"}:THEN]},{name:"other_keyword$subexpression$1",symbols:[Pe.has("ELSE")?{type:"ELSE"}:ELSE]},{name:"other_keyword$subexpression$1",symbols:[Pe.has("END")?{type:"END"}:END]},{name:"other_keyword",symbols:["other_keyword$subexpression$1"],postprocess:([[E]])=>Ye(E)},{name:"_$ebnf$1",symbols:[]},{name:"_$ebnf$1",symbols:["_$ebnf$1","comment"],postprocess:E=>E[0].concat([E[1]])},{name:"_",symbols:["_$ebnf$1"],postprocess:([E])=>E},{name:"comment",symbols:[Pe.has("LINE_COMMENT")?{type:"LINE_COMMENT"}:LINE_COMMENT],postprocess:([E])=>({type:ue.line_comment,text:E.text,precedingWhitespace:E.precedingWhitespace})},{name:"comment",symbols:[Pe.has("BLOCK_COMMENT")?{type:"BLOCK_COMMENT"}:BLOCK_COMMENT],postprocess:([E])=>({type:ue.block_comment,text:E.text,precedingWhitespace:E.precedingWhitespace})},{name:"comment",symbols:[Pe.has("DISABLE_COMMENT")?{type:"DISABLE_COMMENT"}:DISABLE_COMMENT],postprocess:([E])=>({type:ue.disable_comment,text:E.text,precedingWhitespace:E.precedingWhitespace})}],ParserStart:"main"},{Parser:pR,Grammar:dR}=RR;function PR(E){let t={};const r=new Yr(s=>[...SR(E.tokenize(s,t)),tr(s.length)]),n=new pR(dR.fromCompiled(DR),{lexer:r});return{parse:(s,a)=>{t=a;const{results:A}=n.feed(s);if(A.length===1)return A[0];throw A.length===0?new Error("Parse error: Invalid SQL"):new Error(`Parse error: Ambiguous grammar
|
|
42
|
-
${JSON.stringify(A,void 0,2)}`)}}}var
|
|
43
|
-
`;case X.SINGLE_INDENT:return this.indentation.getSingleIndent();default:return t}}}const fR=E=>E===X.SPACE||E===X.SINGLE_INDENT,hR=E=>E===X.SPACE||E===X.SINGLE_INDENT||E===X.NEWLINE;function wr(E,t){if(t==="standard")return E;let r=[];return E.length>=10&&E.includes(" ")&&([E,...r]=E.split(" ")),t==="tabularLeft"?E=E.padEnd(9," "):E=E.padStart(9," "),E+["",...r].join(" ")}function Wr(E){return ZT(E)||E===K.RESERVED_CLAUSE||E===K.RESERVED_SELECT||E===K.RESERVED_SET_OPERATION||E===K.RESERVED_JOIN||E===K.LIMIT}const dE="top-level",MR="block-level";class Xr{constructor(t){this.indent=t,this.indentTypes=[]}getSingleIndent(){return this.indent}getLevel(){return this.indentTypes.length}increaseTopLevel(){this.indentTypes.push(dE)}increaseBlockLevel(){this.indentTypes.push(MR)}decreaseTopLevel(){this.indentTypes.length>0&&yt(this.indentTypes)===dE&&this.indentTypes.pop()}decreaseBlockLevel(){for(;this.indentTypes.length>0&&this.indentTypes.pop()===dE;);}}class UR extends vr{constructor(t){super(new Xr("")),this.expressionWidth=t,this.length=0,this.trailingSpace=!1}add(...t){if(t.forEach(r=>this.addToLength(r)),this.length>this.expressionWidth)throw new PE;super.add(...t)}addToLength(t){if(typeof t=="string")this.length+=t.length,this.trailingSpace=!1;else{if(t===X.MANDATORY_NEWLINE||t===X.NEWLINE)throw new PE;t===X.INDENT||t===X.SINGLE_INDENT||t===X.SPACE?this.trailingSpace||(this.length++,this.trailingSpace=!0):(t===X.NO_NEWLINE||t===X.NO_SPACE)&&this.trailingSpace&&(this.trailingSpace=!1,this.length--)}}}class PE extends Error{}class Xt{constructor({cfg:t,dialectCfg:r,params:n,layout:s,inline:a=!1}){this.inline=!1,this.nodes=[],this.index=-1,this.cfg=t,this.dialectCfg=r,this.inline=a,this.params=n,this.layout=s}format(t){for(this.nodes=t,this.index=0;this.index<this.nodes.length;this.index++)this.formatNode(this.nodes[this.index]);return this.layout}formatNode(t){this.formatComments(t.leadingComments),this.formatNodeWithoutComments(t),this.formatComments(t.trailingComments)}formatNodeWithoutComments(t){switch(t.type){case ue.function_call:return this.formatFunctionCall(t);case ue.parameterized_data_type:return this.formatParameterizedDataType(t);case ue.array_subscript:return this.formatArraySubscript(t);case ue.property_access:return this.formatPropertyAccess(t);case ue.parenthesis:return this.formatParenthesis(t);case ue.between_predicate:return this.formatBetweenPredicate(t);case ue.case_expression:return this.formatCaseExpression(t);case ue.case_when:return this.formatCaseWhen(t);case ue.case_else:return this.formatCaseElse(t);case ue.clause:return this.formatClause(t);case ue.set_operation:return this.formatSetOperation(t);case ue.limit_clause:return this.formatLimitClause(t);case ue.all_columns_asterisk:return this.formatAllColumnsAsterisk(t);case ue.literal:return this.formatLiteral(t);case ue.identifier:return this.formatIdentifier(t);case ue.parameter:return this.formatParameter(t);case ue.operator:return this.formatOperator(t);case ue.comma:return this.formatComma(t);case ue.line_comment:return this.formatLineComment(t);case ue.block_comment:return this.formatBlockComment(t);case ue.disable_comment:return this.formatBlockComment(t);case ue.data_type:return this.formatDataType(t);case ue.keyword:return this.formatKeywordNode(t)}}formatFunctionCall(t){this.withComments(t.nameKw,()=>{this.layout.add(this.showFunctionKw(t.nameKw))}),this.formatNode(t.parenthesis)}formatParameterizedDataType(t){this.withComments(t.dataType,()=>{this.layout.add(this.showDataType(t.dataType))}),this.formatNode(t.parenthesis)}formatArraySubscript(t){let r;switch(t.array.type){case ue.data_type:r=this.showDataType(t.array);break;case ue.keyword:r=this.showKw(t.array);break;default:r=this.showIdentifier(t.array);break}this.withComments(t.array,()=>{this.layout.add(r)}),this.formatNode(t.parenthesis)}formatPropertyAccess(t){this.formatNode(t.object),this.layout.add(X.NO_SPACE,t.operator),this.formatNode(t.property)}formatParenthesis(t){const r=this.formatInlineExpression(t.children);r?(this.layout.add(t.openParen),this.layout.add(...r.getLayoutItems()),this.layout.add(X.NO_SPACE,t.closeParen,X.SPACE)):(this.layout.add(t.openParen,X.NEWLINE),ht(this.cfg)?(this.layout.add(X.INDENT),this.layout=this.formatSubExpression(t.children)):(this.layout.indentation.increaseBlockLevel(),this.layout.add(X.INDENT),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseBlockLevel()),this.layout.add(X.NEWLINE,X.INDENT,t.closeParen,X.SPACE))}formatBetweenPredicate(t){this.layout.add(this.showKw(t.betweenKw),X.SPACE),this.layout=this.formatSubExpression(t.expr1),this.layout.add(X.NO_SPACE,X.SPACE,this.showNonTabularKw(t.andKw),X.SPACE),this.layout=this.formatSubExpression(t.expr2),this.layout.add(X.SPACE)}formatCaseExpression(t){this.formatNode(t.caseKw),this.layout.indentation.increaseBlockLevel(),this.layout=this.formatSubExpression(t.expr),this.layout=this.formatSubExpression(t.clauses),this.layout.indentation.decreaseBlockLevel(),this.layout.add(X.NEWLINE,X.INDENT),this.formatNode(t.endKw)}formatCaseWhen(t){this.layout.add(X.NEWLINE,X.INDENT),this.formatNode(t.whenKw),this.layout=this.formatSubExpression(t.condition),this.formatNode(t.thenKw),this.layout=this.formatSubExpression(t.result)}formatCaseElse(t){this.layout.add(X.NEWLINE,X.INDENT),this.formatNode(t.elseKw),this.layout=this.formatSubExpression(t.result)}formatClause(t){this.isOnelineClause(t)?this.formatClauseInOnelineStyle(t):ht(this.cfg)?this.formatClauseInTabularStyle(t):this.formatClauseInIndentedStyle(t)}isOnelineClause(t){return ht(this.cfg)?this.dialectCfg.tabularOnelineClauses[t.nameKw.text]:this.dialectCfg.onelineClauses[t.nameKw.text]}formatClauseInIndentedStyle(t){this.layout.add(X.NEWLINE,X.INDENT,this.showKw(t.nameKw),X.NEWLINE),this.layout.indentation.increaseTopLevel(),this.layout.add(X.INDENT),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatClauseInOnelineStyle(t){this.layout.add(X.NEWLINE,X.INDENT,this.showKw(t.nameKw),X.SPACE),this.layout=this.formatSubExpression(t.children)}formatClauseInTabularStyle(t){this.layout.add(X.NEWLINE,X.INDENT,this.showKw(t.nameKw),X.SPACE),this.layout.indentation.increaseTopLevel(),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatSetOperation(t){this.layout.add(X.NEWLINE,X.INDENT,this.showKw(t.nameKw),X.NEWLINE),this.layout.add(X.INDENT),this.layout=this.formatSubExpression(t.children)}formatLimitClause(t){this.withComments(t.limitKw,()=>{this.layout.add(X.NEWLINE,X.INDENT,this.showKw(t.limitKw))}),this.layout.indentation.increaseTopLevel(),ht(this.cfg)?this.layout.add(X.SPACE):this.layout.add(X.NEWLINE,X.INDENT),t.offset?(this.layout=this.formatSubExpression(t.offset),this.layout.add(X.NO_SPACE,",",X.SPACE),this.layout=this.formatSubExpression(t.count)):this.layout=this.formatSubExpression(t.count),this.layout.indentation.decreaseTopLevel()}formatAllColumnsAsterisk(t){this.layout.add("*",X.SPACE)}formatLiteral(t){this.layout.add(t.text,X.SPACE)}formatIdentifier(t){this.layout.add(this.showIdentifier(t),X.SPACE)}formatParameter(t){this.layout.add(this.params.get(t),X.SPACE)}formatOperator({text:t}){this.cfg.denseOperators||this.dialectCfg.alwaysDenseOperators.includes(t)?this.layout.add(X.NO_SPACE,t):t===":"?this.layout.add(X.NO_SPACE,t,X.SPACE):this.layout.add(t,X.SPACE)}formatComma(t){this.inline?this.layout.add(X.NO_SPACE,",",X.SPACE):this.layout.add(X.NO_SPACE,",",X.NEWLINE,X.INDENT)}withComments(t,r){this.formatComments(t.leadingComments),r(),this.formatComments(t.trailingComments)}formatComments(t){t&&t.forEach(r=>{r.type===ue.line_comment?this.formatLineComment(r):this.formatBlockComment(r)})}formatLineComment(t){LE(t.precedingWhitespace||"")?this.layout.add(X.NEWLINE,X.INDENT,t.text,X.MANDATORY_NEWLINE,X.INDENT):this.layout.getLayoutItems().length>0?this.layout.add(X.NO_NEWLINE,X.SPACE,t.text,X.MANDATORY_NEWLINE,X.INDENT):this.layout.add(t.text,X.MANDATORY_NEWLINE,X.INDENT)}formatBlockComment(t){t.type===ue.block_comment&&this.isMultilineBlockComment(t)?(this.splitBlockComment(t.text).forEach(r=>{this.layout.add(X.NEWLINE,X.INDENT,r)}),this.layout.add(X.NEWLINE,X.INDENT)):this.layout.add(t.text,X.SPACE)}isMultilineBlockComment(t){return LE(t.text)||LE(t.precedingWhitespace||"")}isDocComment(t){const r=t.split(/\n/);return/^\/\*\*?$/.test(r[0])&&r.slice(1,r.length-1).every(n=>/^\s*\*/.test(n))&&/^\s*\*\/$/.test(yt(r))}splitBlockComment(t){return this.isDocComment(t)?t.split(/\n/).map(r=>/^\s*\*/.test(r)?" "+r.replace(/^\s*/,""):r):t.split(/\n/).map(r=>r.replace(/^\s*/,""))}formatSubExpression(t){return new Xt({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:this.layout,inline:this.inline}).format(t)}formatInlineExpression(t){const r=this.params.getPositionalParameterIndex();try{return new Xt({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:new UR(this.cfg.expressionWidth),inline:!0}).format(t)}catch(n){if(n instanceof PE){this.params.setPositionalParameterIndex(r);return}else throw n}}formatKeywordNode(t){switch(t.tokenType){case K.RESERVED_JOIN:return this.formatJoin(t);case K.AND:case K.OR:case K.XOR:return this.formatLogicalOperator(t);default:return this.formatKeyword(t)}}formatJoin(t){ht(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(X.NEWLINE,X.INDENT,this.showKw(t),X.SPACE),this.layout.indentation.increaseTopLevel()):this.layout.add(X.NEWLINE,X.INDENT,this.showKw(t),X.SPACE)}formatKeyword(t){this.layout.add(this.showKw(t),X.SPACE)}formatLogicalOperator(t){this.cfg.logicalOperatorNewline==="before"?ht(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(X.NEWLINE,X.INDENT,this.showKw(t),X.SPACE),this.layout.indentation.increaseTopLevel()):this.layout.add(X.NEWLINE,X.INDENT,this.showKw(t),X.SPACE):this.layout.add(this.showKw(t),X.NEWLINE,X.INDENT)}formatDataType(t){this.layout.add(this.showDataType(t),X.SPACE)}showKw(t){return Wr(t.tokenType)?wr(this.showNonTabularKw(t),this.cfg.indentStyle):this.showNonTabularKw(t)}showNonTabularKw(t){switch(this.cfg.keywordCase){case"preserve":return wt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showFunctionKw(t){return Wr(t.tokenType)?wr(this.showNonTabularFunctionKw(t),this.cfg.indentStyle):this.showNonTabularFunctionKw(t)}showNonTabularFunctionKw(t){switch(this.cfg.functionCase){case"preserve":return wt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showIdentifier(t){if(t.quoted)return t.text;switch(this.cfg.identifierCase){case"preserve":return t.text;case"upper":return t.text.toUpperCase();case"lower":return t.text.toLowerCase()}}showDataType(t){switch(this.cfg.dataTypeCase){case"preserve":return wt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}}class mR{constructor(t,r){this.dialect=t,this.cfg=r,this.params=new oR(this.cfg.params)}format(t){const r=this.parse(t);return this.formatAst(r).trimEnd()}parse(t){return PR(this.dialect.tokenizer).parse(t,this.cfg.paramTypes||{})}formatAst(t){return t.map(r=>this.formatStatement(r)).join(`
|
|
44
|
-
`.repeat(this.cfg.linesBetweenQueries+1))}formatStatement(t){const r=new Xt({cfg:this.cfg,dialectCfg:this.dialect.formatOptions,params:this.params,layout:new vr(new Xr(TR(this.cfg)))}).format(t.children);return t.hasSemicolon&&(this.cfg.newlineBeforeSemicolon?r.add(
|
|
45
|
-
`);return`${
|
|
46
|
-
${
|
|
47
|
-
${
|
|
48
|
-
`);let
|
|
49
|
-
`+
|
|
50
|
-
$1ON `),XR=E=>{let t=0,r=!1,n="";for(let s=0;s<E.length;s++){const a=E[s],A=s>0?E[s-1]:"";if((a==="'"||a==='"')&&A!=="\\"){r?a===n&&(r=!1,n=""):(r=!0,n=a);continue}r||(a==="("&&t++,a===")"&&t--)}return t},KR=E=>{const t=[];let r=0,n=-1,s=!1,a="";for(let A=0;A<E.length;A++){const
|
|
37
|
+
`+P("",w+M)+`^
|
|
38
|
+
`,O}else return O+" at index "+(this.index-1);function P(J,Z){var z=String(J);return Array(Z-z.length+1).join(" ")+z}};function A(i,O,u){if(i instanceof s)var d=i,u=O;else var d=s.fromCompiled(i,O);this.grammar=d,this.options={keepHistory:!1,lexer:d.lexer||new a};for(var U in u||{})this.options[U]=u[U];this.lexer=this.options.lexer,this.lexerState=void 0;var M=new n(d,0);this.table=[M],M.wants[d.start]=[],M.predict(d.start),M.process(),this.current=0}A.fail={},A.prototype.feed=function(i){var O=this.lexer;O.reset(i,this.lexerState);for(var u;;){try{if(u=O.next(),!u)break}catch(L){var w=new n(this.grammar,this.current+1);this.table.push(w);var d=new Error(this.reportLexerError(L));throw d.offset=this.current,d.token=L.token,d}var U=this.table[this.current];this.options.keepHistory||delete this.table[this.current-1];var M=this.current+1,w=new n(this.grammar,M);this.table.push(w);for(var P=u.text!==void 0?u.text:u.value,J=O.constructor===a?u.value:u,Z=U.scannable,z=Z.length;z--;){var De=Z[z],Ce=De.rule.symbols[De.dot];if(Ce.test?Ce.test(J):Ce.type?Ce.type===u.type:Ce.literal===P){var X=De.nextState({data:J,token:u,isToken:!0,reference:M-1});w.states.push(X)}}if(w.process(),w.states.length===0){var d=new Error(this.reportError(u));throw d.offset=this.current,d.token=u,d}this.options.keepHistory&&(U.lexerState=O.save()),this.current++}return U&&(this.lexerState=O.save()),this.results=this.finish(),this},A.prototype.reportLexerError=function(i){var O,u,d=i.token;return d?(O="input "+JSON.stringify(d.text[0])+" (lexer error)",u=this.lexer.formatError(d,"Syntax error")):(O="input (lexer error)",u=i.message),this.reportErrorCommon(u,O)},A.prototype.reportError=function(i){var O=(i.type?i.type+" token: ":"")+JSON.stringify(i.value!==void 0?i.value:i),u=this.lexer.formatError(i,"Syntax error");return this.reportErrorCommon(u,O)},A.prototype.reportErrorCommon=function(i,O){var u=[];u.push(i);var d=this.table.length-2,U=this.table[d],M=U.states.filter(function(P){var J=P.rule.symbols[P.dot];return J&&typeof J!="string"});if(M.length===0)u.push("Unexpected "+O+`. I did not expect any more input. Here is the state of my parse table:
|
|
39
|
+
`),this.displayStateStack(U.states,u);else{u.push("Unexpected "+O+`. Instead, I was expecting to see one of the following:
|
|
40
|
+
`);var w=M.map(function(P){return this.buildFirstStateStack(P,[])||[P]},this);w.forEach(function(P){var J=P[0],Z=J.rule.symbols[J.dot],z=this.getSymbolDisplay(Z);u.push("A "+z+" based on:"),this.displayStateStack(P,u)},this)}return u.push(""),u.join(`
|
|
41
|
+
`)},A.prototype.displayStateStack=function(i,O){for(var u,d=0,U=0;U<i.length;U++){var M=i[U],w=M.rule.toString(M.dot);w===u?d++:(d>0&&O.push(" ^ "+d+" more lines identical to this"),d=0,O.push(" "+w)),u=w}},A.prototype.getSymbolDisplay=function(i){return C(i)},A.prototype.buildFirstStateStack=function(i,O){if(O.indexOf(i)!==-1)return null;if(i.wantedBy.length===0)return[i];var u=i.wantedBy[0],d=[i].concat(O),U=this.buildFirstStateStack(u,d);return U===null?null:[i].concat(U)},A.prototype.save=function(){var i=this.table[this.current];return i.lexerState=this.lexerState,i},A.prototype.restore=function(i){var O=i.index;this.current=O,this.table[O]=i,this.table.splice(O+1),this.lexerState=i.lexerState,this.results=this.finish()},A.prototype.rewind=function(i){if(!this.options.keepHistory)throw new Error("set option `keepHistory` to enable rewinding");this.restore(this.table[i])},A.prototype.finish=function(){var i=[],O=this.grammar.start,u=this.table[this.table.length-1];return u.states.forEach(function(d){d.rule.name===O&&d.dot===d.rule.symbols.length&&d.reference===0&&d.data!==A.fail&&i.push(d)}),i.map(function(d){return d.data})};function C(i){var O=typeof i;if(O==="string")return i;if(O==="object"){if(i.literal)return JSON.stringify(i.literal);if(i instanceof RegExp)return"character matching "+i;if(i.type)return i.type+" token";if(i.test)return"token matching "+String(i.test);throw new Error("Unknown symbol type: "+i)}}function I(i){var O=typeof i;if(O==="string")return i;if(O==="object"){if(i.literal)return JSON.stringify(i.literal);if(i instanceof RegExp)return i.toString();if(i.type)return"%"+i.type;if(i.test)return"<"+String(i.test)+">";throw new Error("Unknown symbol type: "+i)}}return{Parser:A,Grammar:s,Rule:t}})}(Wt)),Wt.exports}var AR=iR();const RR=mE(AR);function SR(E){return E.map(NR).map(IR).map(lR).map(uR).map(CR)}const NR=(E,t,r)=>{if(Er(E.type)){const n=cR(r,t);if(n&&n.type===$.PROPERTY_ACCESS_OPERATOR)return Object.assign(Object.assign({},E),{type:$.IDENTIFIER,text:E.raw});const s=Mt(r,t);if(s&&s.type===$.PROPERTY_ACCESS_OPERATOR)return Object.assign(Object.assign({},E),{type:$.IDENTIFIER,text:E.raw})}return E},IR=(E,t,r)=>{if(E.type===$.RESERVED_FUNCTION_NAME){const n=Mt(r,t);if(!n||!br(n))return Object.assign(Object.assign({},E),{type:$.IDENTIFIER,text:E.raw})}return E},lR=(E,t,r)=>{if(E.type===$.RESERVED_DATA_TYPE){const n=Mt(r,t);if(n&&br(n))return Object.assign(Object.assign({},E),{type:$.RESERVED_PARAMETERIZED_DATA_TYPE})}return E},uR=(E,t,r)=>{if(E.type===$.IDENTIFIER){const n=Mt(r,t);if(n&&xr(n))return Object.assign(Object.assign({},E),{type:$.ARRAY_IDENTIFIER})}return E},CR=(E,t,r)=>{if(E.type===$.RESERVED_DATA_TYPE){const n=Mt(r,t);if(n&&xr(n))return Object.assign(Object.assign({},E),{type:$.ARRAY_KEYWORD})}return E},cR=(E,t)=>Mt(E,t,-1),Mt=(E,t,r=1)=>{let n=1;for(;E[t+n*r]&&_R(E[t+n*r]);)n++;return E[t+n*r]},br=E=>E.type===$.OPEN_PAREN&&E.text==="(",xr=E=>E.type===$.OPEN_PAREN&&E.text==="[",_R=E=>E.type===$.BLOCK_COMMENT||E.type===$.LINE_COMMENT;class Yr{constructor(t){this.tokenize=t,this.index=0,this.tokens=[],this.input=""}reset(t,r){this.input=t,this.index=0,this.tokens=this.tokenize(t)}next(){return this.tokens[this.index++]}save(){}formatError(t){const{line:r,col:n}=yr(this.input,t.start);return`Parse error at token: ${t.text} at line ${r} column ${n}`}has(t){return t in $}}var Ie;(function(E){E.statement="statement",E.clause="clause",E.set_operation="set_operation",E.function_call="function_call",E.parameterized_data_type="parameterized_data_type",E.array_subscript="array_subscript",E.property_access="property_access",E.parenthesis="parenthesis",E.between_predicate="between_predicate",E.case_expression="case_expression",E.case_when="case_when",E.case_else="case_else",E.limit_clause="limit_clause",E.all_columns_asterisk="all_columns_asterisk",E.literal="literal",E.identifier="identifier",E.keyword="keyword",E.data_type="data_type",E.parameter="parameter",E.operator="operator",E.comma="comma",E.line_comment="line_comment",E.block_comment="block_comment",E.disable_comment="disable_comment"})(Ie=Ie||(Ie={}));function pE(E){return E[0]}const Pe=new Yr(E=>[]),pt=([[E]])=>E,Ye=E=>({type:Ie.keyword,tokenType:E.type,text:E.text,raw:E.raw}),Vr=E=>({type:Ie.data_type,text:E.text,raw:E.raw}),Ve=(E,{leading:t,trailing:r})=>(t?.length&&(E=Object.assign(Object.assign({},E),{leadingComments:t})),r?.length&&(E=Object.assign(Object.assign({},E),{trailingComments:r})),E),LR=(E,{leading:t,trailing:r})=>{if(t?.length){const[n,...s]=E;E=[Ve(n,{leading:t}),...s]}if(r?.length){const n=E.slice(0,-1),s=E[E.length-1];E=[...n,Ve(s,{trailing:r})]}return E},DR={Lexer:Pe,ParserRules:[{name:"main$ebnf$1",symbols:[]},{name:"main$ebnf$1",symbols:["main$ebnf$1","statement"],postprocess:E=>E[0].concat([E[1]])},{name:"main",symbols:["main$ebnf$1"],postprocess:([E])=>{const t=E[E.length-1];return t&&!t.hasSemicolon?t.children.length>0?E:E.slice(0,-1):E}},{name:"statement$subexpression$1",symbols:[Pe.has("DELIMITER")?{type:"DELIMITER"}:DELIMITER]},{name:"statement$subexpression$1",symbols:[Pe.has("EOF")?{type:"EOF"}:EOF]},{name:"statement",symbols:["expressions_or_clauses","statement$subexpression$1"],postprocess:([E,[t]])=>({type:Ie.statement,children:E,hasSemicolon:t.type===$.DELIMITER})},{name:"expressions_or_clauses$ebnf$1",symbols:[]},{name:"expressions_or_clauses$ebnf$1",symbols:["expressions_or_clauses$ebnf$1","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"expressions_or_clauses$ebnf$2",symbols:[]},{name:"expressions_or_clauses$ebnf$2",symbols:["expressions_or_clauses$ebnf$2","clause"],postprocess:E=>E[0].concat([E[1]])},{name:"expressions_or_clauses",symbols:["expressions_or_clauses$ebnf$1","expressions_or_clauses$ebnf$2"],postprocess:([E,t])=>[...E,...t]},{name:"clause$subexpression$1",symbols:["limit_clause"]},{name:"clause$subexpression$1",symbols:["select_clause"]},{name:"clause$subexpression$1",symbols:["other_clause"]},{name:"clause$subexpression$1",symbols:["set_operation"]},{name:"clause",symbols:["clause$subexpression$1"],postprocess:pt},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["free_form_sql"]},{name:"limit_clause$ebnf$1$subexpression$1$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1$ebnf$1","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"limit_clause$ebnf$1$subexpression$1",symbols:[Pe.has("COMMA")?{type:"COMMA"}:COMMA,"limit_clause$ebnf$1$subexpression$1$ebnf$1"]},{name:"limit_clause$ebnf$1",symbols:["limit_clause$ebnf$1$subexpression$1"],postprocess:pE},{name:"limit_clause$ebnf$1",symbols:[],postprocess:()=>null},{name:"limit_clause",symbols:[Pe.has("LIMIT")?{type:"LIMIT"}:LIMIT,"_","expression_chain_","limit_clause$ebnf$1"],postprocess:([E,t,r,n])=>{if(n){const[s,a]=n;return{type:Ie.limit_clause,limitKw:Ve(Ye(E),{trailing:t}),offset:r,count:a}}else return{type:Ie.limit_clause,limitKw:Ve(Ye(E),{trailing:t}),count:r}}},{name:"select_clause$subexpression$1$ebnf$1",symbols:[]},{name:"select_clause$subexpression$1$ebnf$1",symbols:["select_clause$subexpression$1$ebnf$1","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"select_clause$subexpression$1",symbols:["all_columns_asterisk","select_clause$subexpression$1$ebnf$1"]},{name:"select_clause$subexpression$1$ebnf$2",symbols:[]},{name:"select_clause$subexpression$1$ebnf$2",symbols:["select_clause$subexpression$1$ebnf$2","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"select_clause$subexpression$1",symbols:["asteriskless_free_form_sql","select_clause$subexpression$1$ebnf$2"]},{name:"select_clause",symbols:[Pe.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT,"select_clause$subexpression$1"],postprocess:([E,[t,r]])=>({type:Ie.clause,nameKw:Ye(E),children:[t,...r]})},{name:"select_clause",symbols:[Pe.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT],postprocess:([E])=>({type:Ie.clause,nameKw:Ye(E),children:[]})},{name:"all_columns_asterisk",symbols:[Pe.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK],postprocess:()=>({type:Ie.all_columns_asterisk})},{name:"other_clause$ebnf$1",symbols:[]},{name:"other_clause$ebnf$1",symbols:["other_clause$ebnf$1","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"other_clause",symbols:[Pe.has("RESERVED_CLAUSE")?{type:"RESERVED_CLAUSE"}:RESERVED_CLAUSE,"other_clause$ebnf$1"],postprocess:([E,t])=>({type:Ie.clause,nameKw:Ye(E),children:t})},{name:"set_operation$ebnf$1",symbols:[]},{name:"set_operation$ebnf$1",symbols:["set_operation$ebnf$1","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"set_operation",symbols:[Pe.has("RESERVED_SET_OPERATION")?{type:"RESERVED_SET_OPERATION"}:RESERVED_SET_OPERATION,"set_operation$ebnf$1"],postprocess:([E,t])=>({type:Ie.set_operation,nameKw:Ye(E),children:t})},{name:"expression_chain_$ebnf$1",symbols:["expression_with_comments_"]},{name:"expression_chain_$ebnf$1",symbols:["expression_chain_$ebnf$1","expression_with_comments_"],postprocess:E=>E[0].concat([E[1]])},{name:"expression_chain_",symbols:["expression_chain_$ebnf$1"],postprocess:pE},{name:"expression_chain$ebnf$1",symbols:[]},{name:"expression_chain$ebnf$1",symbols:["expression_chain$ebnf$1","_expression_with_comments"],postprocess:E=>E[0].concat([E[1]])},{name:"expression_chain",symbols:["expression","expression_chain$ebnf$1"],postprocess:([E,t])=>[E,...t]},{name:"andless_expression_chain$ebnf$1",symbols:[]},{name:"andless_expression_chain$ebnf$1",symbols:["andless_expression_chain$ebnf$1","_andless_expression_with_comments"],postprocess:E=>E[0].concat([E[1]])},{name:"andless_expression_chain",symbols:["andless_expression","andless_expression_chain$ebnf$1"],postprocess:([E,t])=>[E,...t]},{name:"expression_with_comments_",symbols:["expression","_"],postprocess:([E,t])=>Ve(E,{trailing:t})},{name:"_expression_with_comments",symbols:["_","expression"],postprocess:([E,t])=>Ve(t,{leading:E})},{name:"_andless_expression_with_comments",symbols:["_","andless_expression"],postprocess:([E,t])=>Ve(t,{leading:E})},{name:"free_form_sql$subexpression$1",symbols:["asteriskless_free_form_sql"]},{name:"free_form_sql$subexpression$1",symbols:["asterisk"]},{name:"free_form_sql",symbols:["free_form_sql$subexpression$1"],postprocess:pt},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["logic_operator"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comma"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["comment"]},{name:"asteriskless_free_form_sql$subexpression$1",symbols:["other_keyword"]},{name:"asteriskless_free_form_sql",symbols:["asteriskless_free_form_sql$subexpression$1"],postprocess:pt},{name:"expression$subexpression$1",symbols:["andless_expression"]},{name:"expression$subexpression$1",symbols:["logic_operator"]},{name:"expression",symbols:["expression$subexpression$1"],postprocess:pt},{name:"andless_expression$subexpression$1",symbols:["asteriskless_andless_expression"]},{name:"andless_expression$subexpression$1",symbols:["asterisk"]},{name:"andless_expression",symbols:["andless_expression$subexpression$1"],postprocess:pt},{name:"asteriskless_andless_expression$subexpression$1",symbols:["atomic_expression"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["between_predicate"]},{name:"asteriskless_andless_expression$subexpression$1",symbols:["case_expression"]},{name:"asteriskless_andless_expression",symbols:["asteriskless_andless_expression$subexpression$1"],postprocess:pt},{name:"atomic_expression$subexpression$1",symbols:["array_subscript"]},{name:"atomic_expression$subexpression$1",symbols:["function_call"]},{name:"atomic_expression$subexpression$1",symbols:["property_access"]},{name:"atomic_expression$subexpression$1",symbols:["parenthesis"]},{name:"atomic_expression$subexpression$1",symbols:["curly_braces"]},{name:"atomic_expression$subexpression$1",symbols:["square_brackets"]},{name:"atomic_expression$subexpression$1",symbols:["operator"]},{name:"atomic_expression$subexpression$1",symbols:["identifier"]},{name:"atomic_expression$subexpression$1",symbols:["parameter"]},{name:"atomic_expression$subexpression$1",symbols:["literal"]},{name:"atomic_expression$subexpression$1",symbols:["data_type"]},{name:"atomic_expression$subexpression$1",symbols:["keyword"]},{name:"atomic_expression",symbols:["atomic_expression$subexpression$1"],postprocess:pt},{name:"array_subscript",symbols:[Pe.has("ARRAY_IDENTIFIER")?{type:"ARRAY_IDENTIFIER"}:ARRAY_IDENTIFIER,"_","square_brackets"],postprocess:([E,t,r])=>({type:Ie.array_subscript,array:Ve({type:Ie.identifier,quoted:!1,text:E.text},{trailing:t}),parenthesis:r})},{name:"array_subscript",symbols:[Pe.has("ARRAY_KEYWORD")?{type:"ARRAY_KEYWORD"}:ARRAY_KEYWORD,"_","square_brackets"],postprocess:([E,t,r])=>({type:Ie.array_subscript,array:Ve(Ye(E),{trailing:t}),parenthesis:r})},{name:"function_call",symbols:[Pe.has("RESERVED_FUNCTION_NAME")?{type:"RESERVED_FUNCTION_NAME"}:RESERVED_FUNCTION_NAME,"_","parenthesis"],postprocess:([E,t,r])=>({type:Ie.function_call,nameKw:Ve(Ye(E),{trailing:t}),parenthesis:r})},{name:"parenthesis",symbols:[{literal:"("},"expressions_or_clauses",{literal:")"}],postprocess:([E,t,r])=>({type:Ie.parenthesis,children:t,openParen:"(",closeParen:")"})},{name:"curly_braces$ebnf$1",symbols:[]},{name:"curly_braces$ebnf$1",symbols:["curly_braces$ebnf$1","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"curly_braces",symbols:[{literal:"{"},"curly_braces$ebnf$1",{literal:"}"}],postprocess:([E,t,r])=>({type:Ie.parenthesis,children:t,openParen:"{",closeParen:"}"})},{name:"square_brackets$ebnf$1",symbols:[]},{name:"square_brackets$ebnf$1",symbols:["square_brackets$ebnf$1","free_form_sql"],postprocess:E=>E[0].concat([E[1]])},{name:"square_brackets",symbols:[{literal:"["},"square_brackets$ebnf$1",{literal:"]"}],postprocess:([E,t,r])=>({type:Ie.parenthesis,children:t,openParen:"[",closeParen:"]"})},{name:"property_access$subexpression$1",symbols:["identifier"]},{name:"property_access$subexpression$1",symbols:["array_subscript"]},{name:"property_access$subexpression$1",symbols:["all_columns_asterisk"]},{name:"property_access$subexpression$1",symbols:["parameter"]},{name:"property_access",symbols:["atomic_expression","_",Pe.has("PROPERTY_ACCESS_OPERATOR")?{type:"PROPERTY_ACCESS_OPERATOR"}:PROPERTY_ACCESS_OPERATOR,"_","property_access$subexpression$1"],postprocess:([E,t,r,n,[s]])=>({type:Ie.property_access,object:Ve(E,{trailing:t}),operator:r.text,property:Ve(s,{leading:n})})},{name:"between_predicate",symbols:[Pe.has("BETWEEN")?{type:"BETWEEN"}:BETWEEN,"_","andless_expression_chain","_",Pe.has("AND")?{type:"AND"}:AND,"_","andless_expression"],postprocess:([E,t,r,n,s,a,A])=>({type:Ie.between_predicate,betweenKw:Ye(E),expr1:LR(r,{leading:t,trailing:n}),andKw:Ye(s),expr2:[Ve(A,{leading:a})]})},{name:"case_expression$ebnf$1",symbols:["expression_chain_"],postprocess:pE},{name:"case_expression$ebnf$1",symbols:[],postprocess:()=>null},{name:"case_expression$ebnf$2",symbols:[]},{name:"case_expression$ebnf$2",symbols:["case_expression$ebnf$2","case_clause"],postprocess:E=>E[0].concat([E[1]])},{name:"case_expression",symbols:[Pe.has("CASE")?{type:"CASE"}:CASE,"_","case_expression$ebnf$1","case_expression$ebnf$2",Pe.has("END")?{type:"END"}:END],postprocess:([E,t,r,n,s])=>({type:Ie.case_expression,caseKw:Ve(Ye(E),{trailing:t}),endKw:Ye(s),expr:r||[],clauses:n})},{name:"case_clause",symbols:[Pe.has("WHEN")?{type:"WHEN"}:WHEN,"_","expression_chain_",Pe.has("THEN")?{type:"THEN"}:THEN,"_","expression_chain_"],postprocess:([E,t,r,n,s,a])=>({type:Ie.case_when,whenKw:Ve(Ye(E),{trailing:t}),thenKw:Ve(Ye(n),{trailing:s}),condition:r,result:a})},{name:"case_clause",symbols:[Pe.has("ELSE")?{type:"ELSE"}:ELSE,"_","expression_chain_"],postprocess:([E,t,r])=>({type:Ie.case_else,elseKw:Ve(Ye(E),{trailing:t}),result:r})},{name:"comma$subexpression$1",symbols:[Pe.has("COMMA")?{type:"COMMA"}:COMMA]},{name:"comma",symbols:["comma$subexpression$1"],postprocess:([[E]])=>({type:Ie.comma})},{name:"asterisk$subexpression$1",symbols:[Pe.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK]},{name:"asterisk",symbols:["asterisk$subexpression$1"],postprocess:([[E]])=>({type:Ie.operator,text:E.text})},{name:"operator$subexpression$1",symbols:[Pe.has("OPERATOR")?{type:"OPERATOR"}:OPERATOR]},{name:"operator",symbols:["operator$subexpression$1"],postprocess:([[E]])=>({type:Ie.operator,text:E.text})},{name:"identifier$subexpression$1",symbols:[Pe.has("IDENTIFIER")?{type:"IDENTIFIER"}:IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[Pe.has("QUOTED_IDENTIFIER")?{type:"QUOTED_IDENTIFIER"}:QUOTED_IDENTIFIER]},{name:"identifier$subexpression$1",symbols:[Pe.has("VARIABLE")?{type:"VARIABLE"}:VARIABLE]},{name:"identifier",symbols:["identifier$subexpression$1"],postprocess:([[E]])=>({type:Ie.identifier,quoted:E.type!=="IDENTIFIER",text:E.text})},{name:"parameter$subexpression$1",symbols:[Pe.has("NAMED_PARAMETER")?{type:"NAMED_PARAMETER"}:NAMED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Pe.has("QUOTED_PARAMETER")?{type:"QUOTED_PARAMETER"}:QUOTED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Pe.has("NUMBERED_PARAMETER")?{type:"NUMBERED_PARAMETER"}:NUMBERED_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Pe.has("POSITIONAL_PARAMETER")?{type:"POSITIONAL_PARAMETER"}:POSITIONAL_PARAMETER]},{name:"parameter$subexpression$1",symbols:[Pe.has("CUSTOM_PARAMETER")?{type:"CUSTOM_PARAMETER"}:CUSTOM_PARAMETER]},{name:"parameter",symbols:["parameter$subexpression$1"],postprocess:([[E]])=>({type:Ie.parameter,key:E.key,text:E.text})},{name:"literal$subexpression$1",symbols:[Pe.has("NUMBER")?{type:"NUMBER"}:NUMBER]},{name:"literal$subexpression$1",symbols:[Pe.has("STRING")?{type:"STRING"}:STRING]},{name:"literal",symbols:["literal$subexpression$1"],postprocess:([[E]])=>({type:Ie.literal,text:E.text})},{name:"keyword$subexpression$1",symbols:[Pe.has("RESERVED_KEYWORD")?{type:"RESERVED_KEYWORD"}:RESERVED_KEYWORD]},{name:"keyword$subexpression$1",symbols:[Pe.has("RESERVED_KEYWORD_PHRASE")?{type:"RESERVED_KEYWORD_PHRASE"}:RESERVED_KEYWORD_PHRASE]},{name:"keyword$subexpression$1",symbols:[Pe.has("RESERVED_JOIN")?{type:"RESERVED_JOIN"}:RESERVED_JOIN]},{name:"keyword",symbols:["keyword$subexpression$1"],postprocess:([[E]])=>Ye(E)},{name:"data_type$subexpression$1",symbols:[Pe.has("RESERVED_DATA_TYPE")?{type:"RESERVED_DATA_TYPE"}:RESERVED_DATA_TYPE]},{name:"data_type$subexpression$1",symbols:[Pe.has("RESERVED_DATA_TYPE_PHRASE")?{type:"RESERVED_DATA_TYPE_PHRASE"}:RESERVED_DATA_TYPE_PHRASE]},{name:"data_type",symbols:["data_type$subexpression$1"],postprocess:([[E]])=>Vr(E)},{name:"data_type",symbols:[Pe.has("RESERVED_PARAMETERIZED_DATA_TYPE")?{type:"RESERVED_PARAMETERIZED_DATA_TYPE"}:RESERVED_PARAMETERIZED_DATA_TYPE,"_","parenthesis"],postprocess:([E,t,r])=>({type:Ie.parameterized_data_type,dataType:Ve(Vr(E),{trailing:t}),parenthesis:r})},{name:"logic_operator$subexpression$1",symbols:[Pe.has("AND")?{type:"AND"}:AND]},{name:"logic_operator$subexpression$1",symbols:[Pe.has("OR")?{type:"OR"}:OR]},{name:"logic_operator$subexpression$1",symbols:[Pe.has("XOR")?{type:"XOR"}:XOR]},{name:"logic_operator",symbols:["logic_operator$subexpression$1"],postprocess:([[E]])=>Ye(E)},{name:"other_keyword$subexpression$1",symbols:[Pe.has("WHEN")?{type:"WHEN"}:WHEN]},{name:"other_keyword$subexpression$1",symbols:[Pe.has("THEN")?{type:"THEN"}:THEN]},{name:"other_keyword$subexpression$1",symbols:[Pe.has("ELSE")?{type:"ELSE"}:ELSE]},{name:"other_keyword$subexpression$1",symbols:[Pe.has("END")?{type:"END"}:END]},{name:"other_keyword",symbols:["other_keyword$subexpression$1"],postprocess:([[E]])=>Ye(E)},{name:"_$ebnf$1",symbols:[]},{name:"_$ebnf$1",symbols:["_$ebnf$1","comment"],postprocess:E=>E[0].concat([E[1]])},{name:"_",symbols:["_$ebnf$1"],postprocess:([E])=>E},{name:"comment",symbols:[Pe.has("LINE_COMMENT")?{type:"LINE_COMMENT"}:LINE_COMMENT],postprocess:([E])=>({type:Ie.line_comment,text:E.text,precedingWhitespace:E.precedingWhitespace})},{name:"comment",symbols:[Pe.has("BLOCK_COMMENT")?{type:"BLOCK_COMMENT"}:BLOCK_COMMENT],postprocess:([E])=>({type:Ie.block_comment,text:E.text,precedingWhitespace:E.precedingWhitespace})},{name:"comment",symbols:[Pe.has("DISABLE_COMMENT")?{type:"DISABLE_COMMENT"}:DISABLE_COMMENT],postprocess:([E])=>({type:Ie.disable_comment,text:E.text,precedingWhitespace:E.precedingWhitespace})}],ParserStart:"main"},{Parser:pR,Grammar:dR}=RR;function PR(E){let t={};const r=new Yr(s=>[...SR(E.tokenize(s,t)),tr(s.length)]),n=new pR(dR.fromCompiled(DR),{lexer:r});return{parse:(s,a)=>{t=a;const{results:A}=n.feed(s);if(A.length===1)return A[0];throw A.length===0?new Error("Parse error: Invalid SQL"):new Error(`Parse error: Ambiguous grammar
|
|
42
|
+
${JSON.stringify(A,void 0,2)}`)}}}var K;(function(E){E[E.SPACE=0]="SPACE",E[E.NO_SPACE=1]="NO_SPACE",E[E.NO_NEWLINE=2]="NO_NEWLINE",E[E.NEWLINE=3]="NEWLINE",E[E.MANDATORY_NEWLINE=4]="MANDATORY_NEWLINE",E[E.INDENT=5]="INDENT",E[E.SINGLE_INDENT=6]="SINGLE_INDENT"})(K=K||(K={}));class vr{constructor(t){this.indentation=t,this.items=[]}add(...t){for(const r of t)switch(r){case K.SPACE:this.items.push(K.SPACE);break;case K.NO_SPACE:this.trimHorizontalWhitespace();break;case K.NO_NEWLINE:this.trimWhitespace();break;case K.NEWLINE:this.trimHorizontalWhitespace(),this.addNewline(K.NEWLINE);break;case K.MANDATORY_NEWLINE:this.trimHorizontalWhitespace(),this.addNewline(K.MANDATORY_NEWLINE);break;case K.INDENT:this.addIndentation();break;case K.SINGLE_INDENT:this.items.push(K.SINGLE_INDENT);break;default:this.items.push(r)}}trimHorizontalWhitespace(){for(;fR(yt(this.items));)this.items.pop()}trimWhitespace(){for(;hR(yt(this.items));)this.items.pop()}addNewline(t){if(this.items.length>0)switch(yt(this.items)){case K.NEWLINE:this.items.pop(),this.items.push(t);break;case K.MANDATORY_NEWLINE:break;default:this.items.push(t);break}}addIndentation(){for(let t=0;t<this.indentation.getLevel();t++)this.items.push(K.SINGLE_INDENT)}toString(){return this.items.map(t=>this.itemToString(t)).join("")}getLayoutItems(){return this.items}itemToString(t){switch(t){case K.SPACE:return" ";case K.NEWLINE:case K.MANDATORY_NEWLINE:return`
|
|
43
|
+
`;case K.SINGLE_INDENT:return this.indentation.getSingleIndent();default:return t}}}const fR=E=>E===K.SPACE||E===K.SINGLE_INDENT,hR=E=>E===K.SPACE||E===K.SINGLE_INDENT||E===K.NEWLINE;function wr(E,t){if(t==="standard")return E;let r=[];return E.length>=10&&E.includes(" ")&&([E,...r]=E.split(" ")),t==="tabularLeft"?E=E.padEnd(9," "):E=E.padStart(9," "),E+["",...r].join(" ")}function Wr(E){return ZT(E)||E===$.RESERVED_CLAUSE||E===$.RESERVED_SELECT||E===$.RESERVED_SET_OPERATION||E===$.RESERVED_JOIN||E===$.LIMIT}const dE="top-level",MR="block-level";class Xr{constructor(t){this.indent=t,this.indentTypes=[]}getSingleIndent(){return this.indent}getLevel(){return this.indentTypes.length}increaseTopLevel(){this.indentTypes.push(dE)}increaseBlockLevel(){this.indentTypes.push(MR)}decreaseTopLevel(){this.indentTypes.length>0&&yt(this.indentTypes)===dE&&this.indentTypes.pop()}decreaseBlockLevel(){for(;this.indentTypes.length>0&&this.indentTypes.pop()===dE;);}}class UR extends vr{constructor(t){super(new Xr("")),this.expressionWidth=t,this.length=0,this.trailingSpace=!1}add(...t){if(t.forEach(r=>this.addToLength(r)),this.length>this.expressionWidth)throw new PE;super.add(...t)}addToLength(t){if(typeof t=="string")this.length+=t.length,this.trailingSpace=!1;else{if(t===K.MANDATORY_NEWLINE||t===K.NEWLINE)throw new PE;t===K.INDENT||t===K.SINGLE_INDENT||t===K.SPACE?this.trailingSpace||(this.length++,this.trailingSpace=!0):(t===K.NO_NEWLINE||t===K.NO_SPACE)&&this.trailingSpace&&(this.trailingSpace=!1,this.length--)}}}class PE extends Error{}class Xt{constructor({cfg:t,dialectCfg:r,params:n,layout:s,inline:a=!1}){this.inline=!1,this.nodes=[],this.index=-1,this.cfg=t,this.dialectCfg=r,this.inline=a,this.params=n,this.layout=s}format(t){for(this.nodes=t,this.index=0;this.index<this.nodes.length;this.index++)this.formatNode(this.nodes[this.index]);return this.layout}formatNode(t){this.formatComments(t.leadingComments),this.formatNodeWithoutComments(t),this.formatComments(t.trailingComments)}formatNodeWithoutComments(t){switch(t.type){case Ie.function_call:return this.formatFunctionCall(t);case Ie.parameterized_data_type:return this.formatParameterizedDataType(t);case Ie.array_subscript:return this.formatArraySubscript(t);case Ie.property_access:return this.formatPropertyAccess(t);case Ie.parenthesis:return this.formatParenthesis(t);case Ie.between_predicate:return this.formatBetweenPredicate(t);case Ie.case_expression:return this.formatCaseExpression(t);case Ie.case_when:return this.formatCaseWhen(t);case Ie.case_else:return this.formatCaseElse(t);case Ie.clause:return this.formatClause(t);case Ie.set_operation:return this.formatSetOperation(t);case Ie.limit_clause:return this.formatLimitClause(t);case Ie.all_columns_asterisk:return this.formatAllColumnsAsterisk(t);case Ie.literal:return this.formatLiteral(t);case Ie.identifier:return this.formatIdentifier(t);case Ie.parameter:return this.formatParameter(t);case Ie.operator:return this.formatOperator(t);case Ie.comma:return this.formatComma(t);case Ie.line_comment:return this.formatLineComment(t);case Ie.block_comment:return this.formatBlockComment(t);case Ie.disable_comment:return this.formatBlockComment(t);case Ie.data_type:return this.formatDataType(t);case Ie.keyword:return this.formatKeywordNode(t)}}formatFunctionCall(t){this.withComments(t.nameKw,()=>{this.layout.add(this.showFunctionKw(t.nameKw))}),this.formatNode(t.parenthesis)}formatParameterizedDataType(t){this.withComments(t.dataType,()=>{this.layout.add(this.showDataType(t.dataType))}),this.formatNode(t.parenthesis)}formatArraySubscript(t){let r;switch(t.array.type){case Ie.data_type:r=this.showDataType(t.array);break;case Ie.keyword:r=this.showKw(t.array);break;default:r=this.showIdentifier(t.array);break}this.withComments(t.array,()=>{this.layout.add(r)}),this.formatNode(t.parenthesis)}formatPropertyAccess(t){this.formatNode(t.object),this.layout.add(K.NO_SPACE,t.operator),this.formatNode(t.property)}formatParenthesis(t){const r=this.formatInlineExpression(t.children);r?(this.layout.add(t.openParen),this.layout.add(...r.getLayoutItems()),this.layout.add(K.NO_SPACE,t.closeParen,K.SPACE)):(this.layout.add(t.openParen,K.NEWLINE),ht(this.cfg)?(this.layout.add(K.INDENT),this.layout=this.formatSubExpression(t.children)):(this.layout.indentation.increaseBlockLevel(),this.layout.add(K.INDENT),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseBlockLevel()),this.layout.add(K.NEWLINE,K.INDENT,t.closeParen,K.SPACE))}formatBetweenPredicate(t){this.layout.add(this.showKw(t.betweenKw),K.SPACE),this.layout=this.formatSubExpression(t.expr1),this.layout.add(K.NO_SPACE,K.SPACE,this.showNonTabularKw(t.andKw),K.SPACE),this.layout=this.formatSubExpression(t.expr2),this.layout.add(K.SPACE)}formatCaseExpression(t){this.formatNode(t.caseKw),this.layout.indentation.increaseBlockLevel(),this.layout=this.formatSubExpression(t.expr),this.layout=this.formatSubExpression(t.clauses),this.layout.indentation.decreaseBlockLevel(),this.layout.add(K.NEWLINE,K.INDENT),this.formatNode(t.endKw)}formatCaseWhen(t){this.layout.add(K.NEWLINE,K.INDENT),this.formatNode(t.whenKw),this.layout=this.formatSubExpression(t.condition),this.formatNode(t.thenKw),this.layout=this.formatSubExpression(t.result)}formatCaseElse(t){this.layout.add(K.NEWLINE,K.INDENT),this.formatNode(t.elseKw),this.layout=this.formatSubExpression(t.result)}formatClause(t){this.isOnelineClause(t)?this.formatClauseInOnelineStyle(t):ht(this.cfg)?this.formatClauseInTabularStyle(t):this.formatClauseInIndentedStyle(t)}isOnelineClause(t){return ht(this.cfg)?this.dialectCfg.tabularOnelineClauses[t.nameKw.text]:this.dialectCfg.onelineClauses[t.nameKw.text]}formatClauseInIndentedStyle(t){this.layout.add(K.NEWLINE,K.INDENT,this.showKw(t.nameKw),K.NEWLINE),this.layout.indentation.increaseTopLevel(),this.layout.add(K.INDENT),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatClauseInOnelineStyle(t){this.layout.add(K.NEWLINE,K.INDENT,this.showKw(t.nameKw),K.SPACE),this.layout=this.formatSubExpression(t.children)}formatClauseInTabularStyle(t){this.layout.add(K.NEWLINE,K.INDENT,this.showKw(t.nameKw),K.SPACE),this.layout.indentation.increaseTopLevel(),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatSetOperation(t){this.layout.add(K.NEWLINE,K.INDENT,this.showKw(t.nameKw),K.NEWLINE),this.layout.add(K.INDENT),this.layout=this.formatSubExpression(t.children)}formatLimitClause(t){this.withComments(t.limitKw,()=>{this.layout.add(K.NEWLINE,K.INDENT,this.showKw(t.limitKw))}),this.layout.indentation.increaseTopLevel(),ht(this.cfg)?this.layout.add(K.SPACE):this.layout.add(K.NEWLINE,K.INDENT),t.offset?(this.layout=this.formatSubExpression(t.offset),this.layout.add(K.NO_SPACE,",",K.SPACE),this.layout=this.formatSubExpression(t.count)):this.layout=this.formatSubExpression(t.count),this.layout.indentation.decreaseTopLevel()}formatAllColumnsAsterisk(t){this.layout.add("*",K.SPACE)}formatLiteral(t){this.layout.add(t.text,K.SPACE)}formatIdentifier(t){this.layout.add(this.showIdentifier(t),K.SPACE)}formatParameter(t){this.layout.add(this.params.get(t),K.SPACE)}formatOperator({text:t}){this.cfg.denseOperators||this.dialectCfg.alwaysDenseOperators.includes(t)?this.layout.add(K.NO_SPACE,t):t===":"?this.layout.add(K.NO_SPACE,t,K.SPACE):this.layout.add(t,K.SPACE)}formatComma(t){this.inline?this.layout.add(K.NO_SPACE,",",K.SPACE):this.layout.add(K.NO_SPACE,",",K.NEWLINE,K.INDENT)}withComments(t,r){this.formatComments(t.leadingComments),r(),this.formatComments(t.trailingComments)}formatComments(t){t&&t.forEach(r=>{r.type===Ie.line_comment?this.formatLineComment(r):this.formatBlockComment(r)})}formatLineComment(t){LE(t.precedingWhitespace||"")?this.layout.add(K.NEWLINE,K.INDENT,t.text,K.MANDATORY_NEWLINE,K.INDENT):this.layout.getLayoutItems().length>0?this.layout.add(K.NO_NEWLINE,K.SPACE,t.text,K.MANDATORY_NEWLINE,K.INDENT):this.layout.add(t.text,K.MANDATORY_NEWLINE,K.INDENT)}formatBlockComment(t){t.type===Ie.block_comment&&this.isMultilineBlockComment(t)?(this.splitBlockComment(t.text).forEach(r=>{this.layout.add(K.NEWLINE,K.INDENT,r)}),this.layout.add(K.NEWLINE,K.INDENT)):this.layout.add(t.text,K.SPACE)}isMultilineBlockComment(t){return LE(t.text)||LE(t.precedingWhitespace||"")}isDocComment(t){const r=t.split(/\n/);return/^\/\*\*?$/.test(r[0])&&r.slice(1,r.length-1).every(n=>/^\s*\*/.test(n))&&/^\s*\*\/$/.test(yt(r))}splitBlockComment(t){return this.isDocComment(t)?t.split(/\n/).map(r=>/^\s*\*/.test(r)?" "+r.replace(/^\s*/,""):r):t.split(/\n/).map(r=>r.replace(/^\s*/,""))}formatSubExpression(t){return new Xt({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:this.layout,inline:this.inline}).format(t)}formatInlineExpression(t){const r=this.params.getPositionalParameterIndex();try{return new Xt({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:new UR(this.cfg.expressionWidth),inline:!0}).format(t)}catch(n){if(n instanceof PE){this.params.setPositionalParameterIndex(r);return}else throw n}}formatKeywordNode(t){switch(t.tokenType){case $.RESERVED_JOIN:return this.formatJoin(t);case $.AND:case $.OR:case $.XOR:return this.formatLogicalOperator(t);default:return this.formatKeyword(t)}}formatJoin(t){ht(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(K.NEWLINE,K.INDENT,this.showKw(t),K.SPACE),this.layout.indentation.increaseTopLevel()):this.layout.add(K.NEWLINE,K.INDENT,this.showKw(t),K.SPACE)}formatKeyword(t){this.layout.add(this.showKw(t),K.SPACE)}formatLogicalOperator(t){this.cfg.logicalOperatorNewline==="before"?ht(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(K.NEWLINE,K.INDENT,this.showKw(t),K.SPACE),this.layout.indentation.increaseTopLevel()):this.layout.add(K.NEWLINE,K.INDENT,this.showKw(t),K.SPACE):this.layout.add(this.showKw(t),K.NEWLINE,K.INDENT)}formatDataType(t){this.layout.add(this.showDataType(t),K.SPACE)}showKw(t){return Wr(t.tokenType)?wr(this.showNonTabularKw(t),this.cfg.indentStyle):this.showNonTabularKw(t)}showNonTabularKw(t){switch(this.cfg.keywordCase){case"preserve":return wt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showFunctionKw(t){return Wr(t.tokenType)?wr(this.showNonTabularFunctionKw(t),this.cfg.indentStyle):this.showNonTabularFunctionKw(t)}showNonTabularFunctionKw(t){switch(this.cfg.functionCase){case"preserve":return wt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showIdentifier(t){if(t.quoted)return t.text;switch(this.cfg.identifierCase){case"preserve":return t.text;case"upper":return t.text.toUpperCase();case"lower":return t.text.toLowerCase()}}showDataType(t){switch(this.cfg.dataTypeCase){case"preserve":return wt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}}class mR{constructor(t,r){this.dialect=t,this.cfg=r,this.params=new oR(this.cfg.params)}format(t){const r=this.parse(t);return this.formatAst(r).trimEnd()}parse(t){return PR(this.dialect.tokenizer).parse(t,this.cfg.paramTypes||{})}formatAst(t){return t.map(r=>this.formatStatement(r)).join(`
|
|
44
|
+
`.repeat(this.cfg.linesBetweenQueries+1))}formatStatement(t){const r=new Xt({cfg:this.cfg,dialectCfg:this.dialect.formatOptions,params:this.params,layout:new vr(new Xr(TR(this.cfg)))}).format(t.children);return t.hasSemicolon&&(this.cfg.newlineBeforeSemicolon?r.add(K.NEWLINE,";"):r.add(K.NO_NEWLINE,";")),r.toString()}}class Kt extends Error{}function BR(E){const t=["multilineLists","newlineBeforeOpenParen","newlineBeforeCloseParen","aliasAs","commaPosition","tabulateAlias"];for(const r of t)if(r in E)throw new Kt(`${r} config is no more supported.`);if(E.expressionWidth<=0)throw new Kt(`expressionWidth config must be positive number. Received ${E.expressionWidth} instead.`);if(E.params&&!gR(E.params)&&console.warn('WARNING: All "params" option values should be strings.'),E.paramTypes&&!yR(E.paramTypes))throw new Kt("Empty regex given in custom paramTypes. That would result in matching infinite amount of parameters.");return E}function gR(E){return(E instanceof Array?E:Object.values(E)).every(r=>typeof r=="string")}function yR(E){return E.custom&&Array.isArray(E.custom)?E.custom.every(t=>t.regex!==""):!0}var GR=function(E,t){var r={};for(var n in E)Object.prototype.hasOwnProperty.call(E,n)&&t.indexOf(n)<0&&(r[n]=E[n]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(E);s<n.length;s++)t.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(E,n[s])&&(r[n[s]]=E[n[s]]);return r};const Kr={bigquery:"bigquery",clickhouse:"clickhouse",db2:"db2",db2i:"db2i",duckdb:"duckdb",hive:"hive",mariadb:"mariadb",mysql:"mysql",n1ql:"n1ql",plsql:"plsql",postgresql:"postgresql",redshift:"redshift",spark:"spark",sqlite:"sqlite",sql:"sql",tidb:"tidb",trino:"trino",transactsql:"transactsql",tsql:"transactsql",singlestoredb:"singlestoredb",snowflake:"snowflake"},FR=Object.keys(Kr),HR={tabWidth:2,useTabs:!1,keywordCase:"preserve",identifierCase:"preserve",dataTypeCase:"preserve",functionCase:"preserve",indentStyle:"standard",logicalOperatorNewline:"before",expressionWidth:50,linesBetweenQueries:1,denseOperators:!1,newlineBeforeSemicolon:!1},kr=(E,t={})=>{if(typeof t.language=="string"&&!FR.includes(t.language))throw new Kt(`Unsupported SQL dialect: ${t.language}`);const r=Kr[t.language||"sql"];return bR(E,Object.assign(Object.assign({},t),{dialect:WA[r]}))},bR=(E,t)=>{var{dialect:r}=t,n=GR(t,["dialect"]);if(typeof E!="string")throw new Error("Invalid query argument. Expected string, instead got "+typeof E);const s=BR(Object.assign(Object.assign({},HR),n));return new mR(rR(r),s).format(E)},$r=["SELECT","FROM","WHERE","JOIN","INNER","LEFT","RIGHT","FULL","OUTER","ON","GROUP","BY","HAVING","ORDER","LIMIT","OFFSET","INSERT","INTO","VALUES","UPDATE","SET","DELETE","CREATE","ALTER","DROP","TABLE","DATABASE","INDEX","VIEW","AND","OR","NOT","IN","BETWEEN","LIKE","IS","NULL","AS","DISTINCT","UNION","ALL","EXISTS","CASE","WHEN","THEN","ELSE","END"],xR=["WITH","SELECT","FROM","WHERE","GROUP BY","HAVING","ORDER BY","LIMIT","INSERT INTO","UPDATE","SET","DELETE FROM","CREATE","ALTER","DROP","INNER JOIN","LEFT JOIN","RIGHT JOIN","FULL JOIN","CROSS JOIN","OUTER JOIN","JOIN","UNION ALL","UNION","INTERSECT","EXCEPT"],YR=E=>{try{if(!E||!E.trim())return{valid:!1,error:"SQL string is empty"};const t=E.toUpperCase().trim();if(!$r.some(A=>new RegExp(`\\b${A}\\b`).test(t)))return{valid:!1,error:"No valid SQL keywords found"};let n=0,s=!1,a="";for(let A=0;A<E.length;A++){const C=E[A],I=A>0?E[A-1]:"";if((C==="'"||C==='"')&&I!=="\\"&&(s?C===a&&(s=!1,a=""):(s=!0,a=C)),!s&&(C==="("&&n++,C===")"&&n--,n<0))return{valid:!1,error:"Mismatched parentheses: unexpected closing parenthesis"}}if(n!==0)return{valid:!1,error:`Mismatched parentheses: ${n} unclosed opening parenthesis`};try{return kr(E,{language:"sql"}),{valid:!0}}catch(A){return{valid:!1,error:A instanceof Error?A.message:"SQL syntax error"}}}catch(t){return{valid:!1,error:t instanceof Error?t.message:"Unknown validation error"}}},VR=(E,t)=>{const r=E.match(/\bVALUES\s*/i);if(!r||r.index===void 0)return E;const n=E.slice(0,r.index+r[0].length),s=E.slice(r.index+r[0].length),a=[];let A=0,C="",I=!1,i="",O=0;for(;O<s.length;){const P=s[O],J=O>0?s[O-1]:"";if((P==="'"||P==='"')&&J!=="\\"&&(I?P===i&&(I=!1):(I=!0,i=P)),I)A>0&&(C+=P);else if(P==="(")A===0?C=P:C+=P,A++;else if(P===")")C+=P,A--,A===0&&C.trim()&&(a.push(C.trim()),C="");else{if(P===";"&&A===0)break;A>0&&(C+=P)}O++}if(a.length===0)return E;const u=" ".repeat(t),d=a.map(P=>{const J=P.slice(1,-1),Z=[];let z="",De=0,Ce=!1,X="";for(let k=0;k<J.length;k++){const g=J[k],x=k>0?J[k-1]:"";if((g==="'"||g==='"')&&x!=="\\"&&(Ce?g===X&&(Ce=!1):(Ce=!0,X=g)),!Ce&&(g==="("&&De++,g===")"&&De--,g===","&&De===0)){Z.push(z.trim()),z="";continue}z+=g}z.trim()&&Z.push(z.trim());const L=Z.map((k,g)=>{const x=g<Z.length-1?",":"";return`${u}${u}${k}${x}`}).join(`
|
|
45
|
+
`);return`${u}(
|
|
46
|
+
${L}
|
|
47
|
+
${u})`}),U=d.map((P,J)=>{const Z=J<d.length-1?",":";";return P+Z}).join(`
|
|
48
|
+
`);let M=O;M<s.length&&s[M]===";"&&M++;const w=s.slice(M);return n.trimEnd()+`
|
|
49
|
+
`+U+w},fE=(E,t)=>{try{const r=t?.dialect||"sql",n=t?.tabWidth||2,s=t?.keywordCase||"upper",a=t?.useTabs||!1,A=t?.linesBetweenQueries||1,I={sql:"sql",mysql:"mysql",postgresql:"postgresql",sqlite:"sqlite",plsql:"plsql",tsql:"tsql"}[r]||"sql";let i=kr(E,{language:I,tabWidth:n,keywordCase:s,useTabs:a,linesBetweenQueries:A,indentStyle:"standard"});return/\bINSERT\s+INTO\b/i.test(i)&&/\bVALUES\b/i.test(i)&&(i=VR(i,n)),i}catch(r){return console.error("SQL formatting error:",r),E}},vR=E=>{try{const t=[];let r=E.replace(/(["'])(?:(?=(\\?))\2.)*?\1/g,n=>(t.push(n),`__STR_${t.length-1}__`));return r=r.replace(/--[^\n]*/g,"").replace(/\/\*[\s\S]*?\*\//g,""),r=r.replace(/\s+/g," ").trim(),t.forEach((n,s)=>{r=r.replace(`__STR_${s}__`,n)}),r}catch(t){return console.error("SQL compression error:",t),E}},wR=(E,t)=>{const r=[],n=E.match(/^(.*?\bVALUES\b)/is);if(!n)return[];const s=n[1].trim();r.push({type:"VALUES",content:s,raw:s,collapsible:!1,path:`clause-${t}`});let A=E.slice(n[1].length).trim(),C=0,I=0,i="",O=!1,u="";for(let d=0;d<A.length;d++){const U=A[d],M=d>0?A[d-1]:"";if((U==="'"||U==='"')&&M!=="\\"&&(O?U===u&&(O=!1):(O=!0,u=U)),O)I>0&&(i+=U);else if(U==="("&&I===0)I++,i=U;else if(U==="(")I++,i+=U;else if(U===")"){if(i+=U,I--,I===0){let w=d+1,P="";for(;w<A.length;){const Z=A[w];if(Z===","||Z===";"){P=Z;break}else if(!/\s/.test(Z))break;w++}const J=i.trim();J&&(r.push({type:"VALUE_TUPLE",content:J+P,raw:J+P,collapsible:!0,path:`clause-${t}-value-${C}`}),C++),i="",P&&(d=w)}}else I>0&&(i+=U)}return r},WR=(E,t)=>/\n\s*ON\b/i.test(t)?t:t.replace(/^(\s*)((?:INNER|LEFT|RIGHT|FULL|CROSS|OUTER)?\s*JOIN\b[^\n]*?)\s+ON\b\s*/gim,`$1$2
|
|
50
|
+
$1ON `),XR=E=>{let t=0,r=!1,n="";for(let s=0;s<E.length;s++){const a=E[s],A=s>0?E[s-1]:"";if((a==="'"||a==='"')&&A!=="\\"){r?a===n&&(r=!1,n=""):(r=!0,n=a);continue}r||(a==="("&&t++,a===")"&&t--)}return t},KR=E=>{const t=[];let r=0,n=-1,s=!1,a="";for(let A=0;A<E.length;A++){const C=E[A],I=A>0?E[A-1]:"";if((C==="'"||C==='"')&&I!=="\\"){s?C===a&&(s=!1,a=""):(s=!0,a=C);continue}s||(C==="("?(r===0&&(n=A),r++):C===")"&&(r--,r===0&&n>=0&&(t.push({open:n,close:A}),n=-1)))}return t},kR=E=>{const t=E.trim();return t?/^(SELECT|WITH)\b/i.test(t)?!0:/\n\s*(SELECT|FROM|WHERE|JOIN|UNION|INTERSECT|EXCEPT)\b/i.test(E):!1},$R=E=>{const t=E.content.split(`
|
|
51
51
|
`);let r=-1;for(let i=0;i<t.length;i++)if(t[i].trim()){r=i;break}if(r<0)return;const n=t.slice(r+1).join(`
|
|
52
|
-
`);if(!n)return;const a=KR(n).filter(i=>kR(n.slice(i.open+1,i.close)));if(a.length===0)return;const A=[];let
|
|
53
|
-
`,i.close-1)+1,
|
|
54
|
-
`);let s=null,a=[],A=[],
|
|
55
|
-
`);if(O=WR(s.type,O),s.content=O,s.raw=O,s.type==="INSERT INTO"&&/\bVALUES\b/i.test(O)){const
|
|
52
|
+
`);if(!n)return;const a=KR(n).filter(i=>kR(n.slice(i.open+1,i.close)));if(a.length===0)return;const A=[];let C=0;const I=E.path||"clause";a.forEach((i,O)=>{i.open+1>C&&A.push({kind:"text",text:n.slice(C,i.open+1)});const u=n.lastIndexOf(`
|
|
53
|
+
`,i.close-1)+1,d=u>i.open,U=d?u-1:i.close,M=n.slice(i.open+1,U),w=qr(M,`${I}-sub${O}-`);for(const P of w)A.push({kind:"clause",clause:P});C=d?u:i.close}),C<n.length&&A.push({kind:"text",text:n.slice(C)}),E.body=A},qr=(E,t)=>{const r=[],n=E.split(`
|
|
54
|
+
`);let s=null,a=[],A=[],C=0;const I=[...xR].sort((O,u)=>u.length-O.length),i=()=>{if(!s||a.length===0)return;let O=a.join(`
|
|
55
|
+
`);if(O=WR(s.type,O),s.content=O,s.raw=O,s.type==="INSERT INTO"&&/\bVALUES\b/i.test(O)){const u=O.match(/^(.*?\bINSERT\s+INTO\s+[^(]+\s*\([^)]+\))/is);if(u){const d={type:"INSERT INTO",content:u[1].trim(),raw:u[1].trim(),collapsible:!0,path:`${t}clause-${r.length}`};r.push(d);const U=O.slice(u[1].length).trim(),M=r.length,w=wR(U,M);for(let P=0;P<w.length;P++)w[P].path=`${t}clause-${M+P}`;r.push(...w);return}}$R(s),r.push(s)};for(const O of n){const u=O.trim();if(!u){s&&a.push(O);continue}if(u.startsWith("--")||u.startsWith("/*")){s?a.push(O):A.push(O);continue}let U=!1,M="UNKNOWN";if(C===0){for(const w of I)if(new RegExp(`^${w}\\b`,"i").test(u)){U=!0,M=w.toUpperCase();break}}U?(i(),A.length>0&&(r.push({type:"UNKNOWN",content:A.join(`
|
|
56
56
|
`),raw:A.join(`
|
|
57
|
-
`),collapsible:!1,path:`${t}clause-${r.length}`}),A=[]),a=[O],s={type:
|
|
57
|
+
`),collapsible:!1,path:`${t}clause-${r.length}`}),A=[]),a=[O],s={type:M,content:"",raw:"",collapsible:!0,path:`${t}clause-${r.length}`}):s?a.push(O):(a=[...A,O],A=[],s={type:"UNKNOWN",content:"",raw:"",collapsible:!1,path:`${t}clause-${r.length}`}),C=Math.max(0,C+XR(O))}return i(),A.length>0&&r.push({type:"UNKNOWN",content:A.join(`
|
|
58
58
|
`),raw:A.join(`
|
|
59
|
-
`),collapsible:!1,path:`${t}clause-${r.length}`}),r},qR=E=>{try{const t=fE(E,{keywordCase:"upper"});return{clauses:qr(t,""),raw:E}}catch{return{clauses:[{type:"UNKNOWN",content:E,raw:E,collapsible:!1,path:"clause-0"}],raw:E}}},Jr=E=>{const t=[];let r=E;const n=["COUNT","SUM","AVG","MAX","MIN","UPPER","LOWER","SUBSTRING","CONCAT","LENGTH","TRIM","NOW","DATE","YEAR","MONTH","DAY","COALESCE","CAST","CONVERT","ROUND","ABS","FLOOR","CEIL"],s=["=","!=","<>","<",">","<=",">=","+","-","*","/","%","||"],a=["(",")",",",";","."];for(;r.length>0;){let A=!1;const
|
|
60
|
-
`);for(const
|
|
61
|
-
`);if(
|
|
62
|
-
`)}),I=T.computed(()=>r.clause.body&&r.clause.body.length>0?!0:!!
|
|
63
|
-
`)}const
|
|
64
|
-
`)}const
|
|
59
|
+
`),collapsible:!1,path:`${t}clause-${r.length}`}),r},qR=E=>{try{const t=fE(E,{keywordCase:"upper"});return{clauses:qr(t,""),raw:E}}catch{return{clauses:[{type:"UNKNOWN",content:E,raw:E,collapsible:!1,path:"clause-0"}],raw:E}}},Jr=E=>{const t=[];let r=E;const n=["COUNT","SUM","AVG","MAX","MIN","UPPER","LOWER","SUBSTRING","CONCAT","LENGTH","TRIM","NOW","DATE","YEAR","MONTH","DAY","COALESCE","CAST","CONVERT","ROUND","ABS","FLOOR","CEIL"],s=["=","!=","<>","<",">","<=",">=","+","-","*","/","%","||"],a=["(",")",",",";","."];for(;r.length>0;){let A=!1;const C=r.match(/^(\s+)/);if(C){t.push({type:"whitespace",value:C[1]}),r=r.slice(C[1].length);continue}const I=r.match(/^(--[^\n]*)/);if(I){t.push({type:"comment",value:I[1]}),r=r.slice(I[1].length);continue}const i=r.match(/^(\/\*[\s\S]*?\*\/)/);if(i){t.push({type:"comment",value:i[1]}),r=r.slice(i[1].length);continue}const O=r.match(/^(["'])(?:(?=(\\?))\2.)*?\1/);if(O){t.push({type:"string",value:O[0]}),r=r.slice(O[0].length);continue}const u=r.match(/^(\d+\.?\d*|\.\d+)/);if(u){t.push({type:"number",value:u[1]}),r=r.slice(u[1].length);continue}for(const U of s)if(r.startsWith(U)){t.push({type:"operator",value:U}),r=r.slice(U.length),A=!0;break}if(A)continue;for(const U of a)if(r.startsWith(U)){t.push({type:"punctuation",value:U}),r=r.slice(U.length),A=!0;break}if(A)continue;const d=r.match(/^([a-zA-Z_][a-zA-Z0-9_]*)/);if(d){const U=d[1],M=U.toUpperCase();$r.includes(M)?t.push({type:"keyword",value:U}):n.includes(M)?t.push({type:"function",value:U}):t.push({type:"identifier",value:U}),r=r.slice(U.length);continue}t.push({type:"punctuation",value:r[0]}),r=r.slice(1)}return t},JR={class:"sql-clause-node"},QR=["title"],ZR={class:"sql-clause-node__code"},jR=["innerHTML"],zR={key:0,class:"sql-clause-node__body"},eS=["title"],tS=["innerHTML"],ES=["title"],rS=["innerHTML"],nS=Pt(T.defineComponent({__name:"SqlClauseNode",props:{clause:{},expandedClauses:{},theme:{}},emits:["toggle"],setup(E,{emit:t}){const r=E,n=t,s=T.computed(()=>r.clause.path||""),a=T.computed(()=>r.expandedClauses.has(s.value)),A=T.computed(()=>{const M=r.clause.content.split(`
|
|
60
|
+
`);for(const w of M)if(w.trim())return w;return""}),C=T.computed(()=>{const M=r.clause.content.split(`
|
|
61
|
+
`);if(M.length<=1)return"";let w=0;for(let P=0;P<M.length;P++)if(M[P].trim()){w=P;break}return M.slice(w+1).join(`
|
|
62
|
+
`)}),I=T.computed(()=>r.clause.body&&r.clause.body.length>0?!0:!!C.value),i=M=>{const w=Jr(M),P=r.theme.colors;return w.map(J=>{let Z=P.text;switch(J.type){case"keyword":Z=P.sqlKeyword;break;case"function":Z=P.sqlFunction;break;case"string":Z=P.sqlString;break;case"number":Z=P.sqlNumber;break;case"comment":Z=P.sqlComment;break;case"operator":Z=P.sqlOperator;break;case"identifier":Z=P.sqlIdentifier;break;case"punctuation":Z=P.sqlPunctuation;break;case"whitespace":return J.value.replace(/ /g," ").replace(/\n/g,`
|
|
63
|
+
`)}const z=J.value.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'");return`<span style="color: ${Z}">${z}</span>`}).join("")},O=T.computed(()=>{const M=r.clause.body;if(!M||M.length===0)return null;let w="",P=!1;for(const k of M)if(k.kind==="text"){const g=k.text.indexOf("(");if(g>=0){w+=k.text.slice(0,g),P=!0;break}w+=k.text}else return null;if(!P)return null;let J="";for(let k=M.length-1;k>=0;k--){const g=M[k];if(g.kind==="text"){const x=g.text.lastIndexOf(")");if(x>=0){J=g.text.slice(x+1)+J;break}J=g.text+J}else break}const Z=w.replace(/\s+/g," ").trim(),z=J.replace(/\s+/g," ").trim(),De=A.value,Ce=(De.match(/^\s*/)||[""])[0],L=[De.trimStart()];return Z&&L.push(Z),L.push("(...)"),z&&L.push(z),`${Ce}${L.join(" ")}`}),u=T.computed(()=>{if(r.clause.collapsible&&!a.value&&I.value){const M=O.value;if(M)return i(M);const w=i(A.value),P=r.theme.colors.textSecondary;return`${w}<span style="color: ${P}; opacity: 0.6; font-style: italic; margin-left: 4px;"> ...</span>`}return i(A.value)}),d=()=>{r.clause.collapsible&&n("toggle",s.value)},U=M=>{if(!r.clause.collapsible)return;const w=M.target;if(!w)return;const P=(w.textContent||"").trim();(P==="("||P===")")&&n("toggle",s.value)};return(M,w)=>{const P=T.resolveComponent("SqlClauseNode",!0);return T.openBlock(),T.createElementBlock("div",JR,[T.createElementVNode("div",{class:T.normalizeClass(["sql-clause-node__header",{"sql-clause-node__header--collapsible":M.clause.collapsible}]),title:M.clause.collapsible?a.value?"Click to collapse":"Click to expand":"",onClick:d},[T.createElementVNode("pre",ZR,[T.createElementVNode("code",{innerHTML:u.value},null,8,jR)])],10,QR),a.value&&I.value?(T.openBlock(),T.createElementBlock("div",zR,[M.clause.body&&M.clause.body.length>0?(T.openBlock(!0),T.createElementBlock(T.Fragment,{key:0},T.renderList(M.clause.body,(J,Z)=>(T.openBlock(),T.createElementBlock(T.Fragment,{key:Z},[J.kind==="text"?(T.openBlock(),T.createElementBlock("pre",{key:0,class:T.normalizeClass(["sql-clause-node__code sql-clause-node__text-segment",{"sql-clause-node__text-segment--clickable":M.clause.collapsible}]),title:M.clause.collapsible?"Click ( or ) to collapse":"",onClick:w[0]||(w[0]=z=>U(z))},[T.createElementVNode("code",{innerHTML:i(J.text)},null,8,tS)],10,eS)):(T.openBlock(),T.createBlock(P,{key:1,clause:J.clause,"expanded-clauses":M.expandedClauses,theme:M.theme,onToggle:w[1]||(w[1]=z=>M.$emit("toggle",z))},null,8,["clause","expanded-clauses","theme"]))],64))),128)):(T.openBlock(),T.createElementBlock("pre",{key:1,class:T.normalizeClass(["sql-clause-node__code sql-clause-node__rest",{"sql-clause-node__rest--clickable":M.clause.collapsible}]),title:M.clause.collapsible?"Click ( or ) to collapse":"",onClick:w[2]||(w[2]=J=>U(J))},[T.createElementVNode("code",{innerHTML:i(C.value)},null,8,rS)],10,ES))])):T.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-8b9383dc"]]),sS={class:"sql-format__content"},TS={key:0,class:"sql-format__error"},oS={key:1,class:"sql-format__viewer"},aS={key:0,class:"sql-format__clauses"},iS={key:1,class:"sql-format__code"},AS=["innerHTML"],RS=Pt(T.defineComponent({__name:"index",props:{modelValue:{default:""},readonly:{type:Boolean,default:!1},theme:{default:"github-light"},dialect:{default:"sql"},tabWidth:{default:2}},emits:["update:modelValue","copy-success","copy-error","expand-all","collapse-all","compress","format"],setup(E,{expose:t,emit:r}){T.useCssVars(k=>({"45d5acb0":d.value.colors.background,"4623e62f":d.value.colors.text,f365b9d8:d.value.colors.errorBackground,"7d8b5146":d.value.colors.error}));const n=k=>{const g=[],x=ne=>{for(const ee of ne)if(ee.path&&g.push(ee.path),ee.body)for(const Q of ee.body)Q.kind==="clause"&&x([Q.clause])};return x(k),g},s=E,a=r,A=T.ref(""),C=T.ref(s.dialect),I=T.ref([]),i=T.ref(new Set),O=T.ref(""),u=T.computed(()=>A.value===""),d=T.computed(()=>wT(s.theme)),U=k=>{if(!k||!k.trim()){A.value="",I.value=[],i.value.clear();return}try{const g=YR(k);if(!g.valid){A.value=g.error||"Invalid SQL",I.value=[],O.value="";return}const x=qR(k);I.value=x.clauses,O.value=fE(k,{dialect:C.value,tabWidth:s.tabWidth}),i.value=new Set(n(x.clauses)),A.value=""}catch(g){A.value=g instanceof Error?g.message:"Unknown parse error",I.value=[],O.value=""}},M=k=>{const g=Jr(k),x=d.value.colors;return g.map(ne=>{let ee=x.text;switch(ne.type){case"keyword":ee=x.sqlKeyword;break;case"function":ee=x.sqlFunction;break;case"string":ee=x.sqlString;break;case"number":ee=x.sqlNumber;break;case"comment":ee=x.sqlComment;break;case"operator":ee=x.sqlOperator;break;case"identifier":ee=x.sqlIdentifier;break;case"punctuation":ee=x.sqlPunctuation;break;case"whitespace":return ne.value.replace(/ /g," ").replace(/\n/g,`
|
|
64
|
+
`)}const Q=ne.value.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'");return`<span style="color: ${ee}">${Q}</span>`}).join("")},w=k=>{i.value.has(k)?i.value.delete(k):i.value.add(k),i.value=new Set(i.value)},P=()=>{i.value=new Set(n(I.value)),a("expand-all")},J=()=>{i.value=new Set,a("collapse-all")},Z=()=>O.value||s.modelValue,z=async()=>{if(u.value)try{const k=Z();await navigator.clipboard.writeText(k),a("copy-success",k)}catch(k){const g=k instanceof Error?k:new Error("Failed to copy");a("copy-error",g)}},De=()=>{if(u.value)try{const k=fE(s.modelValue,{dialect:C.value,tabWidth:s.tabWidth});a("update:modelValue",k),a("format",k)}catch(k){console.error("Format error:",k)}},Ce=()=>{if(u.value)try{const k=vR(s.modelValue);a("update:modelValue",k),a("compress",k)}catch(k){console.error("Compress error:",k)}},X=()=>null,L=()=>A.value;return T.watch(()=>s.modelValue,k=>{U(k)},{immediate:!0}),T.watch(()=>s.dialect,k=>{C.value=k}),t({copySql:z,formatSource:De,compressSource:Ce,expandAll:P,collapseAll:J,toggleExpand:w,isValidSql:()=>u.value,getParsedSql:X,getParseError:L,getValue:Z}),(k,g)=>(T.openBlock(),T.createElementBlock("div",{class:T.normalizeClass(["sql-format",`sql-format--${d.value.name}`])},[T.createElementVNode("div",sS,[u.value?(T.openBlock(),T.createElementBlock("div",oS,[I.value.length>0?(T.openBlock(),T.createElementBlock("div",aS,[(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(I.value,x=>(T.openBlock(),T.createBlock(nS,{key:x.path,clause:x,"expanded-clauses":i.value,theme:d.value,onToggle:w},null,8,["clause","expanded-clauses","theme"]))),128))])):(T.openBlock(),T.createElementBlock("pre",iS,[T.createElementVNode("code",{innerHTML:M(s.modelValue)},null,8,AS)]))])):(T.openBlock(),T.createElementBlock("div",TS,[g[0]||(g[0]=T.createElementVNode("h4",null,"SQL Parse Error:",-1)),T.createElementVNode("pre",null,T.toDisplayString(A.value),1)]))])],2))}}),[["__scopeId","data-v-8445135b"]]),SS=[UE],NS={install:E=>{SS.forEach(t=>{const r=t.name||t.__name||"UnknownComponent";E.component(r,t)})}};rt.JsonFormat=UE,rt.SqlFormat=RS,rt.XmlFormat=vT,rt.default=NS,Object.defineProperties(rt,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|