lone-format 0.16.0 → 0.16.1
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-C958jkzh.js +853 -0
- package/dist/components/JsonFormat/index.js +1 -1
- package/dist/components/JsonFormat/protectedNumber.d.ts +10 -0
- package/dist/lone-format.css +1 -1
- package/dist/lone-format.js +1 -1
- package/dist/lone-format.umd.cjs +45 -45
- package/package.json +1 -1
- package/dist/_chunks/index-BqjA0ynE.js +0 -837
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
|
|
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 tn=new zr;Object.assign(V,{hooks:tn,plugins:new en(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(),En=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(V).filter(E=>!En.includes(E)&&ot[E]===void 0).forEach(E=>{ot[E]=V[E]}),ot.Jsep=V;const rn="ConditionalExpression";var nn={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:rn,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(nn);const ME=47,sn=92;var Tn={name:"regex",init(E){E.hooks.add("gobble-token",function(r){if(this.code===ME){const n=++this.index;let s=!1;for(;this.index<this.expr.length;){if(this.code===ME&&!s){const a=this.expr.slice(n,this.index);let A="";for(;++this.index<this.expr.length;){const N=this.code;if(N>=97&&N<=122||N>=65&&N<=90||N>=48&&N<=57)A+=this.char;else break}let C;try{C=new RegExp(a,A)}catch(N){this.throwError(N.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===sn?2:1}this.throwError("Unclosed Regex")}})}};const $t=43,dt={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|=","||=","&&=","??="]),updateOperators:[$t,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===$t?"++":"--",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===$t?"++":"--",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(Tn,dt),ot.addUnaryOp("typeof"),ot.addLiteral("null",null),ot.addLiteral("undefined",void 0);const on=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)&&on.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 an{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 qt(E,t){return t=t.slice(),t.unshift(E),t}class An 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 An(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 N=Ge.toPathArray(E);N[0]==="$"&&N.length>1&&N.shift(),this._hasParentSelector=null;const i=this._trace(N,t,["$"],s,a,r).filter(function(u){return u&&!u.isParentSelector});return i.length?!C&&i.length===1&&!i[0].hasArrExpr?this._getPreferredOutput(i[0]):i.reduce((u,l)=>{const d=this._getPreferredOutput(l);return A&&Array.isArray(d)?u=u.concat(d):u.push(d),u},[]):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 N;if(!E.length)return N={path:r,value:t,parent:n,parentProperty:s,hasArrExpr:A},this._handleCallback(N,a,"value"),N;const i=E[0],u=E.slice(1),l=[];function d(M){Array.isArray(M)?M.forEach(U=>{l.push(U)}):l.push(M)}if((typeof i!="string"||C)&&t&&Object.hasOwn(t,i))d(this._trace(u,t[i],St(r,i),t,i,a,A));else if(i==="*")this._walk(t,M=>{d(this._trace(u,t[M],St(r,M),t,M,a,!0,!0))});else if(i==="..")d(this._trace(u,t,r,n,s,a,A)),this._walk(t,M=>{typeof t[M]=="object"&&d(this._trace(E.slice(),t[M],St(r,M),t,M,a,!0))});else{if(i==="^")return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:u,isParentSelector:!0};if(i==="~")return N={path:St(r,i),value:s,parent:n,parentProperty:null},this._handleCallback(N,a,"property"),N;if(i==="$")d(this._trace(u,t,r,null,null,a,A));else if(/^(-?\d*):(-?\d*):?(\d*)$/u.test(i))d(this._slice(i,u,t,r,n,s,a));else if(i.indexOf("?(")===0){if(this.currEval===!1)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");const M=i.replace(/^\?\((.*?)\)$/u,"$1"),U=/@.?([^?]*)[['](\??\(.*?\))(?!.\)\])[\]']/gu.exec(M);U?this._walk(t,w=>{const P=[U[2]],J=U[1]?t[w][U[1]]:t[w];this._trace(P,J,r,n,s,a,!0).length>0&&d(this._trace(u,t[w],St(r,w),t,w,a,!0))}):this._walk(t,w=>{this._eval(M,t[w],w,r,n,s)&&d(this._trace(u,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(qt(this._eval(i,t,r.at(-1),r.slice(0,-1),n,s),u),t,r,n,s,a,A))}else if(i[0]==="@"){let M=!1;const U=i.slice(1,-2);switch(U){case"scalar":(!t||!["object","function"].includes(typeof t))&&(M=!0);break;case"boolean":case"string":case"undefined":case"function":typeof t===U&&(M=!0);break;case"integer":Number.isFinite(t)&&!(t%1)&&(M=!0);break;case"number":Number.isFinite(t)&&(M=!0);break;case"nonFinite":typeof t=="number"&&!Number.isFinite(t)&&(M=!0);break;case"object":t&&typeof t===U&&(M=!0);break;case"array":Array.isArray(t)&&(M=!0);break;case"other":M=this.currOtherTypeCallback(t,r,n,s);break;case"null":t===null&&(M=!0);break;default:throw new TypeError("Unknown value type "+U)}if(M)return N={path:r,value:t,parent:n,parentProperty:s},this._handleCallback(N,a,"value"),N}else if(i[0]==="`"&&t&&Object.hasOwn(t,i.slice(1))){const M=i.slice(1);d(this._trace(u,t[M],St(r,M),t,M,a,A,!0))}else if(i.includes(",")){const M=i.split(",");for(const U of M)d(this._trace(qt(U,u),t,r,n,s,a,!0))}else!C&&t&&Object.hasOwn(t,i)&&d(this._trace(u,t[i],St(r,i),t,i,a,A,!0))}if(this._hasParentSelector)for(let M=0;M<l.length;M++){const U=l[M];if(U&&U.isParentSelector){const w=this._trace(U.expr,t,U.path,n,s,a,A);if(Array.isArray(w)){l[M]=w[0];const P=w.length;for(let J=1;J<P;J++)M++,l.splice(M,0,w[J])}else l[M]=w}}return l},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,N=E.split(":"),i=N[2]&&Number.parseInt(N[2])||1;let u=N[0]&&Number.parseInt(N[0])||0,l=N[1]&&Number.parseInt(N[1])||C;u=u<0?Math.max(0,u+C):Math.min(C,u),l=l<0?Math.max(0,l+C):Math.min(C,l);const d=[];for(let M=u;M<l;M+=i)this._trace(qt(M,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 N=E.replaceAll("@parentProperty","_$_parentProperty").replaceAll("@parent","_$_parent").replaceAll("@property","_$_property").replaceAll("@root","_$_root").replaceAll(/@([.\s)[])/gu,"_$_v$1");if(A&&(N=N.replaceAll("@path","_$_path")),this.currEval==="safe"||this.currEval===!0||this.currEval===void 0)Ge.cache[C]=new this.safeVm.Script(N);else if(this.currEval==="native")Ge.cache[C]=new this.vm.Script(N);else if(typeof this.currEval=="function"&&this.currEval.prototype&&Object.hasOwn(this.currEval.prototype,"runInNewContext")){const i=this.currEval;Ge.cache[C]=new i(N)}else if(typeof this.currEval=="function")Ge.cache[C]={runInNewContext:i=>this.currEval(N,i)};else throw new TypeError(`Unknown "eval" property "${this.currEval}"`)}try{return Ge.cache[C].runInNewContext(this.currSandbox)}catch(N){if(this.ignoreEvalErrors)return!1;throw new Error("jsonPath: "+N.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:an};const Rn=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 Sn{constructor(t){this.code=t}runInNewContext(t){let r=this.code;const n=Object.keys(t),s=[];Rn(n,s,i=>typeof t[i]=="function");const a=n.map(i=>t[i]);r=s.reduce((i,u)=>{let l=t[u].toString();return/function/u.test(l)||(l="function "+l),"var "+u+"="+l+";"+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(";"),N=C!==-1?r.slice(0,C+1)+" return "+r.slice(C+1):" return "+r;return new Function(...n,N)(...a)}}Ge.prototype.vm={Script:Sn};const Nn={class:"json-node"},In={key:0,class:"json-node__container"},un={class:"json-node__line"},On=["contenteditable","onKeydown"],ln={key:1,class:"json-node__colon"},Cn=["title"],cn=["title"],_n={key:4,class:"json-node__comma"},Ln={key:0,class:"json-node__children"},Dn={class:"json-node__children-content"},pn={class:"json-node__line json-node__closing-bracket"},dn={class:"json-node__bracket"},Pn={key:0,class:"json-node__comma"},hn={key:1,class:"json-node__primitive"},Mn=["contenteditable","onKeydown"],Un={key:1,class:"json-node__colon"},mn=["title"],Bn=["contenteditable","onKeydown"],gn={key:0,class:"json-node__comma"},yn=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(""),N=T.ref("string"),i=T.ref(null),u=T.ref(null),l=Y=>Y!==null&&typeof Y=="object"&&!Array.isArray(Y)&&"__protected_number__"in Y&&Object.keys(Y).length===1,d=Y=>l(Y)?Y.__protected_number__:"",M=T.computed(()=>l(r.value)?!1:r.value!==null&&typeof r.value=="object"),U=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(()=>U.value?"[":"{"),z=T.computed(()=>U.value?"]":"}"),De=T.computed(()=>{if(!r.value)return"";const j=Object.keys(r.value).length;return U.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"||l(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):l(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=()=>{M.value||(a.value=!0,r.value===null?N.value="null":l(r.value)?N.value="protected-number":typeof r.value=="string"?N.value="string":typeof r.value=="number"?N.value="number":typeof r.value=="boolean"&&(N.value="boolean"),l(r.value)?C.value=d(r.value):typeof r.value=="string"?C.value=r.value:C.value=String(r.value),T.nextTick(()=>{if(u.value){u.value.focus();const Y=document.createRange();Y.selectNodeContents(u.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)},ue=()=>{if(a.value)try{let Y;const j=u.value?.innerText.trim()||"";if(N.value==="string")j==="null"?Y=null:j==="true"||j==="false"?Y=j==="true":Y=j;else if(N.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 Oe=Number(j);!Number.isSafeInteger(Oe)||j.length>15?Y={__protected_number__:j}:Y=Oe}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,l(r.value)?C.value=d(r.value):typeof r.value=="string"?C.value=r.value:C.value=String(r.value)};return(Y,j)=>{const Oe=T.resolveComponent("JsonNode",!0);return T.openBlock(),T.createElementBlock("div",Nn,[M.value?(T.openBlock(),T.createElementBlock("div",In,[T.createElementVNode("div",un,[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,On)):T.createCommentVNode("",!0),Y.keyName?(T.openBlock(),T.createElementBlock("span",ln,": ")):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,Cn),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,cn)),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",_n,",")):T.createCommentVNode("",!0)]),P.value?(T.openBlock(),T.createElementBlock("div",Ln,[T.createElementVNode("div",Dn,[(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(Oe,{value:Ue,"key-name":U.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",pn,[T.createElementVNode("span",dn,T.toDisplayString(z.value),1),Y.isLast?T.createCommentVNode("",!0):(T.openBlock(),T.createElementBlock("span",Pn,","))])])):T.createCommentVNode("",!0)])):(T.openBlock(),T.createElementBlock("div",hn,[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,Mn)):T.createCommentVNode("",!0),Y.keyName?(T.openBlock(),T.createElementBlock("span",Un,": ")):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(ue,["prevent"]),["enter"]),T.withKeys(pe,["escape"])],onBlur:ue,ref_key:"valueRef",ref:u},T.toDisplayString(a.value?C.value:X.value),41,Bn),Y.isLast?T.createCommentVNode("",!0):(T.openBlock(),T.createElementBlock("span",gn,","))],42,mn)]))])}}}),Pt=(E,t)=>{const r=E.__vccOpts||E;for(const[n,s]of t)r[n]=s;return r},Gn=Pt(yn,[["__scopeId","data-v-1472a8af"]]),UE={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"}},Fn={"github-light":UE,"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"}},"min-dark":{name:"min-dark",colors:{background:"#111111",surfaceBackground:"#1a1a1a",border:"#2a2a2a",text:"#e5e5e5",textSecondary:"#a3a3a3",buttonBackground:"#1f1f1f",buttonBackgroundHover:"#2a2a2a",buttonBorder:"#333333",buttonText:"#e5e5e5",buttonPrimary:"#3b82f6",buttonPrimaryHover:"#2563eb",success:"#22c55e",successBackground:"#052e16",error:"#f87171",errorBackground:"#450a0a",syntaxString:"#4ade80",syntaxNumber:"#60a5fa",syntaxBoolean:"#c084fc",syntaxNull:"#9ca3af",syntaxKey:"#f3f4f6",syntaxBracket:"#d1d5db",hoverBackground:"#1f1f1f",selectionBackground:"rgba(96, 165, 250, 0.25)",collapsedBackground:"#1e293b",collapsedBackgroundHover:"#334155",collapsedText:"#60a5fa",indentLine:"#374151"}},"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 Hn(E="github-light"){return Fn[E]||UE}const bn={class:"json-format__content"},xn={key:0,class:"json-format__error"},Yn={key:1,class:"json-format__error"},Vn={key:2,class:"json-format__viewer"},mE=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),N=T.ref(null),i=T.ref(""),u=T.ref(!1),l=T.computed(()=>A.value===""),d=T.computed(()=>Hn(n.theme)),M=p=>{if(p==null)return p;if(Array.isArray(p))return p.map(h=>M(h));if(typeof p=="object"){const h={},m=Object.keys(p).sort();for(const B of m)h[B]=M(p[B]);return h}return p},U=T.computed(()=>{const p=N.value!==null?N.value:a.value;return!p||!u.value?p:M(p)}),w=T.computed(()=>i.value?null:U.value),P=p=>{if(!p.trim()){a.value=null,A.value="",N.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="",N.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 le=H[Le];if(Ee)Re?Re=!1:le==="\\"?Re=!0:le==='"'&&(Ee=!1),te+=le,Le++;else if(le==='"')Ee=!0,te+=le,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+=le,Le++}}return te})(h),a.value=JSON.parse(h),A.value="",N.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,N.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("[*]")?N.value=h[0]:N.value=h;else if(p.type==="js"){const{proxyData:m,indexMap:B}=Z(a.value),H=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 nn{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 sn{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 x{static get version(){return"1.4.0"}static toString(){return"JavaScript Expression Parser (JSEP) v"+x.version}static addUnaryOp(t){return x.max_unop_len=Math.max(t.length,x.max_unop_len),x.unary_ops[t]=1,x}static addBinaryOp(t,r,n){return x.max_binop_len=Math.max(t.length,x.max_binop_len),x.binary_ops[t]=r,n?x.right_associative.add(t):x.right_associative.delete(t),x}static addIdentifierChar(t){return x.additional_identifier_chars.add(t),x}static addLiteral(t,r){return x.literals[t]=r,x}static removeUnaryOp(t){return delete x.unary_ops[t],t.length===x.max_unop_len&&(x.max_unop_len=x.getMaxKeyLen(x.unary_ops)),x}static removeAllUnaryOps(){return x.unary_ops={},x.max_unop_len=0,x}static removeIdentifierChar(t){return x.additional_identifier_chars.delete(t),x}static removeBinaryOp(t){return delete x.binary_ops[t],t.length===x.max_binop_len&&(x.max_binop_len=x.getMaxKeyLen(x.binary_ops)),x.right_associative.delete(t),x}static removeAllBinaryOps(){return x.binary_ops={},x.max_binop_len=0,x}static removeLiteral(t){return delete x.literals[t],x}static removeAllLiterals(){return x.literals={},x}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 x(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 x.binary_ops[t]||0}static isIdentifierStart(t){return t>=65&&t<=90||t>=97&&t<=122||t>=128&&!x.binary_ops[String.fromCharCode(t)]||x.additional_identifier_chars.has(String.fromCharCode(t))}static isIdentifierPart(t){return x.isIdentifierStart(t)||x.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(x.hooks[t]){const n={context:this,node:r};return x.hooks.run(t,n),n.node}return r}searchHook(t){if(x.hooks[t]){const r={context:this};return x.hooks[t].find(function(n){return n.call(r.context,r),r.node}),r.node}}gobbleSpaces(){let t=this.code;for(;t===x.SPACE_CODE||t===x.TAB_CODE||t===x.LF_CODE||t===x.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:x.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===x.SEMCOL_CODE||n===x.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,x.max_binop_len),r=t.length;for(;r>0;){if(x.binary_ops.hasOwnProperty(t)&&(!x.isIdentifierStart(this.code)||this.index+t.length<this.expr.length&&!x.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,N,i;if(A=this.gobbleToken(),!A||(r=this.gobbleBinaryOp(),!r))return A;for(a={value:r,prec:x.binaryPrecedence(r),right_a:x.right_associative.has(r)},C=this.gobbleToken(),C||this.throwError("Expected expression after "+r),s=[A,a,C];r=this.gobbleBinaryOp();){if(n=x.binaryPrecedence(r),n===0){this.index-=r.length;break}a={value:r,prec:n,right_a:x.right_associative.has(r)},i=r;const u=l=>a.right_a&&l.right_a?n>l.prec:n<=l.prec;for(;s.length>2&&u(s[s.length-2]);)C=s.pop(),r=s.pop().value,A=s.pop(),t={type:x.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(N=s.length-1,t=s[N];N>1;)t={type:x.BINARY_EXP,operator:s[N-1].value,left:s[N-2],right:t},N-=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,x.isDecimalDigit(t)||t===x.PERIOD_CODE)return this.gobbleNumericLiteral();if(t===x.SQUOTE_CODE||t===x.DQUOTE_CODE)s=this.gobbleStringLiteral();else if(t===x.OBRACK_CODE)s=this.gobbleArray();else{for(r=this.expr.substr(this.index,x.max_unop_len),n=r.length;n>0;){if(x.unary_ops.hasOwnProperty(r)&&(!x.isIdentifierStart(this.code)||this.index+r.length<this.expr.length&&!x.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:x.UNARY_EXP,operator:r,argument:a,prefix:!0})}r=r.substr(0,--n)}x.isIdentifierStart(t)?(s=this.gobbleIdentifier(),x.literals.hasOwnProperty(s.name)?s={type:x.LITERAL,value:x.literals[s.name],raw:s.name}:s.name===x.this_str&&(s={type:x.THIS_EXP})):t===x.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===x.PERIOD_CODE||r===x.OBRACK_CODE||r===x.OPAREN_CODE||r===x.QUMARK_CODE;){let n;if(r===x.QUMARK_CODE){if(this.expr.charCodeAt(this.index+1)!==x.PERIOD_CODE)break;n=!0,this.index+=2,this.gobbleSpaces(),r=this.code}this.index++,r===x.OBRACK_CODE?(t={type:x.MEMBER_EXP,computed:!0,object:t,property:this.gobbleExpression()},t.property||this.throwError('Unexpected "'+this.char+'"'),this.gobbleSpaces(),r=this.code,r!==x.CBRACK_CODE&&this.throwError("Unclosed ["),this.index++):r===x.OPAREN_CODE?t={type:x.CALL_EXP,arguments:this.gobbleArguments(x.CPAREN_CODE),callee:t}:(r===x.PERIOD_CODE||n)&&(n&&this.index--,this.gobbleSpaces(),t={type:x.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(;x.isDecimalDigit(this.code);)t+=this.expr.charAt(this.index++);if(this.code===x.PERIOD_CODE)for(t+=this.expr.charAt(this.index++);x.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++));x.isDecimalDigit(this.code);)t+=this.expr.charAt(this.index++);x.isDecimalDigit(this.expr.charCodeAt(this.index-1))||this.throwError("Expected exponent ("+t+this.char+")")}return n=this.code,x.isIdentifierStart(n)?this.throwError("Variable names cannot start with a number ("+t+this.char+")"):(n===x.PERIOD_CODE||t.length===1&&t.charCodeAt(0)===x.PERIOD_CODE)&&this.throwError("Unexpected period"),{type:x.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: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 Tn=new nn;Object.assign(x,{hooks:Tn,plugins:new sn(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 at=E=>new x(E).parse(),on=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(x).filter(E=>!on.includes(E)&&at[E]===void 0).forEach(E=>{at[E]=x[E]}),at.Jsep=x;const an="ConditionalExpression";var An={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:an,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 :")}})}};at.plugins.register(An);const gE=47,Rn=92;var Sn={name:"regex",init(E){E.hooks.add("gobble-token",function(r){if(this.code===gE){const n=++this.index;let s=!1;for(;this.index<this.expr.length;){if(this.code===gE&&!s){const a=this.expr.slice(n,this.index);let A="";for(;++this.index<this.expr.length;){const N=this.code;if(N>=97&&N<=122||N>=65&&N<=90||N>=48&&N<=57)A+=this.char;else break}let C;try{C=new RegExp(a,A)}catch(N){this.throwError(N.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===Rn?2:1}this.throwError("Unclosed Regex")}})}};const Jt=43,Pt={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|=","||=","&&=","??="]),updateOperators:[Jt,45],assignmentPrecedence:.9,init(E){const t=[E.IDENTIFIER,E.MEMBER_EXP];Pt.assignmentOperators.forEach(n=>E.addBinaryOp(n,Pt.assignmentPrecedence,!0)),E.hooks.add("gobble-token",function(s){const a=this.code;Pt.updateOperators.some(A=>A===a&&A===this.expr.charCodeAt(this.index+1))&&(this.index+=2,s.node={type:"UpdateExpression",operator:a===Jt?"++":"--",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;Pt.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===Jt?"++":"--",argument:s.node,prefix:!1})}}),E.hooks.add("after-expression",function(s){s.node&&r(s.node)});function r(n){Pt.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)})}}};at.plugins.register(Sn,Pt),at.addUnaryOp("typeof"),at.addLiteral("null",null),at.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 In{constructor(t){this.code=t,this.ast=at(this.code)}runInNewContext(t){const r=Object.assign(Object.create(null),t);return Fe.evalAst(this.ast,r)}}function Nt(E,t){return E=E.slice(),E.push(t),E}function Qt(E,t){return t=t.slice(),t.unshift(E),t}class un 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 un(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 N=Ge.toPathArray(E);N[0]==="$"&&N.length>1&&N.shift(),this._hasParentSelector=null;const i=this._trace(N,t,["$"],s,a,r).filter(function(u){return u&&!u.isParentSelector});return i.length?!C&&i.length===1&&!i[0].hasArrExpr?this._getPreferredOutput(i[0]):i.reduce((u,l)=>{const d=this._getPreferredOutput(l);return A&&Array.isArray(d)?u=u.concat(d):u.push(d),u},[]):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 N;if(!E.length)return N={path:r,value:t,parent:n,parentProperty:s,hasArrExpr:A},this._handleCallback(N,a,"value"),N;const i=E[0],u=E.slice(1),l=[];function d(M){Array.isArray(M)?M.forEach(m=>{l.push(m)}):l.push(M)}if((typeof i!="string"||C)&&t&&Object.hasOwn(t,i))d(this._trace(u,t[i],Nt(r,i),t,i,a,A));else if(i==="*")this._walk(t,M=>{d(this._trace(u,t[M],Nt(r,M),t,M,a,!0,!0))});else if(i==="..")d(this._trace(u,t,r,n,s,a,A)),this._walk(t,M=>{typeof t[M]=="object"&&d(this._trace(E.slice(),t[M],Nt(r,M),t,M,a,!0))});else{if(i==="^")return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:u,isParentSelector:!0};if(i==="~")return N={path:Nt(r,i),value:s,parent:n,parentProperty:null},this._handleCallback(N,a,"property"),N;if(i==="$")d(this._trace(u,t,r,null,null,a,A));else if(/^(-?\d*):(-?\d*):?(\d*)$/u.test(i))d(this._slice(i,u,t,r,n,s,a));else if(i.indexOf("?(")===0){if(this.currEval===!1)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");const M=i.replace(/^\?\((.*?)\)$/u,"$1"),m=/@.?([^?]*)[['](\??\(.*?\))(?!.\)\])[\]']/gu.exec(M);m?this._walk(t,v=>{const f=[m[2]],k=m[1]?t[v][m[1]]:t[v];this._trace(f,k,r,n,s,a,!0).length>0&&d(this._trace(u,t[v],Nt(r,v),t,v,a,!0))}):this._walk(t,v=>{this._eval(M,t[v],v,r,n,s)&&d(this._trace(u,t[v],Nt(r,v),t,v,a,!0))})}else if(i[0]==="("){if(this.currEval===!1)throw new Error("Eval [(expr)] prevented in JSONPath expression.");d(this._trace(Qt(this._eval(i,t,r.at(-1),r.slice(0,-1),n,s),u),t,r,n,s,a,A))}else if(i[0]==="@"){let M=!1;const m=i.slice(1,-2);switch(m){case"scalar":(!t||!["object","function"].includes(typeof t))&&(M=!0);break;case"boolean":case"string":case"undefined":case"function":typeof t===m&&(M=!0);break;case"integer":Number.isFinite(t)&&!(t%1)&&(M=!0);break;case"number":Number.isFinite(t)&&(M=!0);break;case"nonFinite":typeof t=="number"&&!Number.isFinite(t)&&(M=!0);break;case"object":t&&typeof t===m&&(M=!0);break;case"array":Array.isArray(t)&&(M=!0);break;case"other":M=this.currOtherTypeCallback(t,r,n,s);break;case"null":t===null&&(M=!0);break;default:throw new TypeError("Unknown value type "+m)}if(M)return N={path:r,value:t,parent:n,parentProperty:s},this._handleCallback(N,a,"value"),N}else if(i[0]==="`"&&t&&Object.hasOwn(t,i.slice(1))){const M=i.slice(1);d(this._trace(u,t[M],Nt(r,M),t,M,a,A,!0))}else if(i.includes(",")){const M=i.split(",");for(const m of M)d(this._trace(Qt(m,u),t,r,n,s,a,!0))}else!C&&t&&Object.hasOwn(t,i)&&d(this._trace(u,t[i],Nt(r,i),t,i,a,A,!0))}if(this._hasParentSelector)for(let M=0;M<l.length;M++){const m=l[M];if(m&&m.isParentSelector){const v=this._trace(m.expr,t,m.path,n,s,a,A);if(Array.isArray(v)){l[M]=v[0];const f=v.length;for(let k=1;k<f;k++)M++,l.splice(M,0,v[k])}else l[M]=v}}return l},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,N=E.split(":"),i=N[2]&&Number.parseInt(N[2])||1;let u=N[0]&&Number.parseInt(N[0])||0,l=N[1]&&Number.parseInt(N[1])||C;u=u<0?Math.max(0,u+C):Math.min(C,u),l=l<0?Math.max(0,l+C):Math.min(C,l);const d=[];for(let M=u;M<l;M+=i)this._trace(Qt(M,t),r,n,s,a,A,!0).forEach(v=>{d.push(v)});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 N=E.replaceAll("@parentProperty","_$_parentProperty").replaceAll("@parent","_$_parent").replaceAll("@property","_$_property").replaceAll("@root","_$_root").replaceAll(/@([.\s)[])/gu,"_$_v$1");if(A&&(N=N.replaceAll("@path","_$_path")),this.currEval==="safe"||this.currEval===!0||this.currEval===void 0)Ge.cache[C]=new this.safeVm.Script(N);else if(this.currEval==="native")Ge.cache[C]=new this.vm.Script(N);else if(typeof this.currEval=="function"&&this.currEval.prototype&&Object.hasOwn(this.currEval.prototype,"runInNewContext")){const i=this.currEval;Ge.cache[C]=new i(N)}else if(typeof this.currEval=="function")Ge.cache[C]={runInNewContext:i=>this.currEval(N,i)};else throw new TypeError(`Unknown "eval" property "${this.currEval}"`)}try{return Ge.cache[C].runInNewContext(this.currSandbox)}catch(N){if(this.ignoreEvalErrors)return!1;throw new Error("jsonPath: "+N.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:In};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 ln{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,u)=>{let l=t[u].toString();return/function/u.test(l)||(l="function "+l),"var "+u+"="+l+";"+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(";"),N=C!==-1?r.slice(0,C+1)+" return "+r.slice(C+1):" return "+r;return new Function(...n,N)(...a)}}Ge.prototype.vm={Script:ln};const Zt="__protected_number__",yE=Symbol("JsonFormatProtectedNumber"),jt=E=>{const t={[Zt]:E};return Object.defineProperty(t,yE,{value:!0,enumerable:!1}),t},nt=E=>E!==null&&typeof E=="object"&&!Array.isArray(E)&&E[yE]===!0&&Zt in E&&Object.keys(E).length===1,ft=E=>nt(E)?E[Zt]:"",Cn={class:"json-node"},cn={key:0,class:"json-node__container"},_n={class:"json-node__line"},Ln=["contenteditable","onKeydown"],Dn={key:1,class:"json-node__colon"},pn=["title"],dn=["title"],Pn={key:4,class:"json-node__comma"},hn={key:0,class:"json-node__children"},Mn={class:"json-node__children-content"},Un={class:"json-node__line json-node__closing-bracket"},mn={class:"json-node__bracket"},Bn={key:0,class:"json-node__comma"},gn={key:1,class:"json-node__primitive"},yn=["contenteditable","onKeydown"],Gn={key:1,class:"json-node__colon"},Fn=["title"],Hn=["contenteditable","onKeydown"],bn={key:0,class:"json-node__comma"},xn=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(W=>({"4f4db4bc":W.level,"186d1fa5":W.theme.colors.syntaxKey,"8d641e1a":W.theme.colors.hoverBackground,"10ce1aee":W.theme.colors.syntaxBracket,"4ad6c066":W.theme.colors.collapsedText,"659f9064":W.theme.colors.collapsedBackground,"2f0b520e":W.theme.colors.collapsedBackgroundHover,dd63ddea:W.theme.colors.syntaxString,ee5ce77a:W.theme.colors.syntaxNumber,"0c78da6e":W.theme.colors.syntaxBoolean,"158f25fe":W.theme.colors.syntaxNull,e5bff3b6:W.theme.colors.background,"51d4ce7a":W.theme.colors.selectionBackground,"0dd4e092":W.theme.colors.indentLine}));const r=E,n=t,s=T.ref(!1),a=T.ref(!1),A=T.ref(""),C=T.ref(""),N=T.ref("string"),i=T.ref(null),u=T.ref(null),l=T.computed(()=>nt(r.value)?!1:r.value!==null&&typeof r.value=="object"),d=T.computed(()=>Array.isArray(r.value)),M=T.computed(()=>r.path?r.path:r.keyName?r.keyName:"root"),m=T.computed(()=>r.expanded.has(M.value)),v=T.computed(()=>r.keyName),f=T.computed(()=>d.value?"[":"{"),k=T.computed(()=>d.value?"]":"}"),Z=T.computed(()=>{if(!r.value)return"";const re=Object.keys(r.value).length;return d.value?re>0?` ${re} items `:" ":re>0?` ${re} keys `:" "}),ee=T.computed(()=>{const W=typeof r.value;return r.value===null?"json-node__value--null":W==="boolean"?"json-node__value--boolean":W==="number"||nt(r.value)?"json-node__value--number":W==="string"?"json-node__value--string":""}),pe=T.computed(()=>r.value===null?"null":typeof r.value=="boolean"||typeof r.value=="number"?String(r.value):nt(r.value)?ft(r.value):typeof r.value=="string"?`"${r.value}"`:String(r.value)),Le=T.computed(()=>"Double-click to edit"),V=W=>r.level===0?W:M.value?`${M.value}.${W}`:W,L=W=>{const re=Object.keys(r.value);return re.indexOf(W)===re.length-1},X=()=>{n("toggle-expand",M.value)},B=()=>{r.level!==0&&(s.value=!0,A.value=r.keyName,T.nextTick(()=>{if(i.value){i.value.focus();const W=document.createRange();W.selectNodeContents(i.value);const re=window.getSelection();re?.removeAllRanges(),re?.addRange(W)}}))},H=()=>{l.value||(a.value=!0,r.value===null?N.value="null":nt(r.value)?N.value="protected-number":typeof r.value=="string"?N.value="string":typeof r.value=="number"?N.value="number":typeof r.value=="boolean"&&(N.value="boolean"),nt(r.value)?C.value=ft(r.value):typeof r.value=="string"?C.value=r.value:C.value=String(r.value),T.nextTick(()=>{if(u.value){u.value.focus();const W=document.createRange();W.selectNodeContents(u.value);const re=window.getSelection();re?.removeAllRanges(),re?.addRange(W)}}))},ne=()=>{if(r.level===0||!s.value)return;const W=i.value?.innerText.trim()||"";if(!W){Q();return}if(W===r.keyName){s.value=!1;return}s.value=!1,n("update:key",M.value,W)},te=()=>{if(a.value)try{let W;const re=u.value?.innerText.trim()||"";if(N.value==="string")re==="null"?W=null:re==="true"||re==="false"?W=re==="true":W=re;else if(N.value==="protected-number")W=jt(re);else if(re==="null")W=null;else if(re==="true"||re==="false")W=re==="true";else if(!isNaN(Number(re))&&re!==""){const Se=Number(re);!Number.isSafeInteger(Se)||re.length>15?W=jt(re):W=Se}else W=re;n("update:value",M.value,W),a.value=!1}catch(W){console.error("Failed to parse value:",W),a.value=!1}},Q=()=>{s.value=!1,A.value=r.keyName},ce=()=>{a.value=!1,nt(r.value)?C.value=ft(r.value):typeof r.value=="string"?C.value=r.value:C.value=String(r.value)};return(W,re)=>{const Se=T.resolveComponent("JsonNode",!0);return T.openBlock(),T.createElementBlock("div",Cn,[l.value?(T.openBlock(),T.createElementBlock("div",cn,[T.createElementVNode("div",_n,[W.keyName?(T.openBlock(),T.createElementBlock("span",{key:0,class:"json-node__key",contenteditable:s.value,onDblclick:B,onKeydown:[T.withKeys(T.withModifiers(ne,["prevent"]),["enter"]),T.withKeys(Q,["escape"])],onBlur:ne,ref_key:"keyRef",ref:i,title:"Double-click to edit key"},T.toDisplayString(s.value?A.value:`"${v.value}"`),41,Ln)):T.createCommentVNode("",!0),W.keyName?(T.openBlock(),T.createElementBlock("span",Dn,": ")):T.createCommentVNode("",!0),T.createElementVNode("span",{class:"json-node__bracket json-node__bracket--clickable",onClick:X,title:m.value?"Click to collapse":"Click to expand"},T.toDisplayString(f.value),9,pn),m.value?T.createCommentVNode("",!0):(T.openBlock(),T.createElementBlock("span",{key:2,class:"json-node__collapsed-info",onClick:X,title:`Click to expand ${Z.value.trim()}`},T.toDisplayString(Z.value),9,dn)),m.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(k.value),1)),!m.value&&!W.isLast?(T.openBlock(),T.createElementBlock("span",Pn,",")):T.createCommentVNode("",!0)]),m.value?(T.openBlock(),T.createElementBlock("div",hn,[T.createElementVNode("div",Mn,[(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(W.value,(ue,le)=>(T.openBlock(),T.createElementBlock("div",{key:le,class:"json-node__child"},[T.createVNode(Se,{value:ue,"key-name":d.value?"":String(le),level:W.level+1,path:V(String(le)),expanded:W.expanded,theme:W.theme,"onUpdate:value":re[0]||(re[0]=(he,Te)=>W.$emit("update:value",he,Te)),onToggleExpand:re[1]||(re[1]=he=>W.$emit("toggle-expand",he)),onCopy:re[2]||(re[2]=he=>W.$emit("copy",he)),"onUpdate:key":re[3]||(re[3]=(he,Te)=>W.$emit("update:key",he,Te)),"is-last":L(String(le))},null,8,["value","key-name","level","path","expanded","theme","is-last"])]))),128))]),T.createElementVNode("div",Un,[T.createElementVNode("span",mn,T.toDisplayString(k.value),1),W.isLast?T.createCommentVNode("",!0):(T.openBlock(),T.createElementBlock("span",Bn,","))])])):T.createCommentVNode("",!0)])):(T.openBlock(),T.createElementBlock("div",gn,[W.keyName?(T.openBlock(),T.createElementBlock("span",{key:0,class:"json-node__key",contenteditable:s.value,onDblclick:B,onKeydown:[T.withKeys(T.withModifiers(ne,["prevent"]),["enter"]),T.withKeys(Q,["escape"])],onBlur:ne,ref_key:"keyRef",ref:i,title:"Double-click to edit key"},T.toDisplayString(s.value?A.value:`"${v.value}"`),41,yn)):T.createCommentVNode("",!0),W.keyName?(T.openBlock(),T.createElementBlock("span",Gn,": ")):T.createCommentVNode("",!0),T.createElementVNode("span",{class:T.normalizeClass(["json-node__value-wrapper",ee.value]),onDblclick:H,title:Le.value},[T.createElementVNode("span",{class:"json-node__value",contenteditable:a.value,onKeydown:[T.withKeys(T.withModifiers(te,["prevent"]),["enter"]),T.withKeys(ce,["escape"])],onBlur:te,ref_key:"valueRef",ref:u},T.toDisplayString(a.value?C.value:pe.value),41,Hn),W.isLast?T.createCommentVNode("",!0):(T.openBlock(),T.createElementBlock("span",bn,","))],42,Fn)]))])}}}),ht=(E,t)=>{const r=E.__vccOpts||E;for(const[n,s]of t)r[n]=s;return r},Yn=ht(xn,[["__scopeId","data-v-a58815b6"]]),GE={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"}},Vn={"github-light":GE,"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"}},"min-dark":{name:"min-dark",colors:{background:"#111111",surfaceBackground:"#1a1a1a",border:"#2a2a2a",text:"#e5e5e5",textSecondary:"#a3a3a3",buttonBackground:"#1f1f1f",buttonBackgroundHover:"#2a2a2a",buttonBorder:"#333333",buttonText:"#e5e5e5",buttonPrimary:"#3b82f6",buttonPrimaryHover:"#2563eb",success:"#22c55e",successBackground:"#052e16",error:"#f87171",errorBackground:"#450a0a",syntaxString:"#4ade80",syntaxNumber:"#60a5fa",syntaxBoolean:"#c084fc",syntaxNull:"#9ca3af",syntaxKey:"#f3f4f6",syntaxBracket:"#d1d5db",hoverBackground:"#1f1f1f",selectionBackground:"rgba(96, 165, 250, 0.25)",collapsedBackground:"#1e293b",collapsedBackgroundHover:"#334155",collapsedText:"#60a5fa",indentLine:"#374151"}},"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 vn(E="github-light"){return Vn[E]||GE}const wn={class:"json-format__content"},Wn={key:0,class:"json-format__error"},Xn={key:1,class:"json-format__error"},Kn={key:2,class:"json-format__viewer"},FE=ht(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=>({"326003a4":M.value.colors.background,b9b0f7ba:M.value.colors.text,"7e091c5c":M.value.colors.error,"412704a0":M.value.colors.errorBackground}));const n=E,s=r,a=T.ref(null),A=T.ref(""),C=T.ref(new Set),N=T.ref(null),i=T.ref(""),u=T.ref(!1),l=(p,P)=>{if(p===null||typeof p!="object")return p;if(Array.isArray(p))return p.map(U=>l(U,P));if(Object.prototype.hasOwnProperty.call(p,P)&&Object.keys(p).length===1&&typeof p[P]=="string")return jt(p[P]);for(const U of Object.keys(p))p[U]=l(p[U],P);return p},d=T.computed(()=>A.value===""),M=T.computed(()=>vn(n.theme)),m=p=>{if(p==null)return p;if(Array.isArray(p))return p.map(P=>m(P));if(typeof p=="object"){const P={},U=Object.keys(p).sort();for(const g of U)P[g]=m(p[g]);return P}return p},v=T.computed(()=>{const p=N.value!==null?N.value:a.value;return!p||!u.value?p:m(p)}),f=T.computed(()=>i.value?null:v.value),k=p=>{if(!p.trim()){a.value=null,A.value="",N.value=null,i.value="";return}try{let P=p;const U=`__json_format_protected_number_${Date.now()}_${Math.random().toString(36).slice(2)}__`,g=/(:\s*|,\s*|\[\s*)-?\d{16,}/.test(P),$=/(:\s*|,\s*|\[\s*)-?\d+\.\d*0+\s*[,}\]\s]*/.test(P);if(!g&&!$)try{a.value=JSON.parse(P),A.value="",N.value=null,i.value="",T.nextTick(()=>{f.value!==null&&Q()});return}catch{}P=(j=>{let ie="",Ne=!1,_e=!1,b=0;for(;b<j.length;){const fe=j[b];if(Ne)_e?_e=!1:fe==="\\"?_e=!0:fe==='"'&&(Ne=!1),ie+=fe,b++;else if(fe==='"')Ne=!0,ie+=fe,b++;else{const c=j.slice(b);let z=c.match(/^([:,\[\s]*)(-?\d{16,})(\s*[,\}\]\s]|$)/);if(z){ie+=z[1]+'{"'+U+'":"'+z[2]+'"}'+z[3],b+=z[0].length;continue}if(z=c.match(/^([:,\[\s]*)(-?\d+\.\d*0+)(\s*[,\}\]\s]|$)/),z){ie+=z[1]+'{"'+U+'":"'+z[2]+'"}'+z[3],b+=z[0].length;continue}ie+=fe,b++}}return ie})(P),a.value=l(JSON.parse(P),U),A.value="",N.value=null,i.value="",T.nextTick(()=>{f.value!==null&&Q()})}catch(P){A.value=P instanceof Error?P.message:"Unknown parsing error",a.value=null,N.value=null,i.value=""}},Z=p=>{if(!p||!p.expression.trim()){V();return}if(!a.value){i.value="No valid JSON data to filter";return}try{let P;if(p.type==="jsonpath")P=Ge({path:p.expression,json:a.value}),P.length===1&&p.expression.includes("$[")===!1&&!p.expression.endsWith("[*]")?N.value=P[0]:N.value=P;else if(p.type==="js"){const{proxyData:U,indexMap:g}=ee(a.value),q=new Function("$",`
|
|
3
3
|
try {
|
|
4
4
|
return ${p.expression};
|
|
5
5
|
} catch (error) {
|
|
6
6
|
throw new Error('JavaScript expression error: ' + error.message);
|
|
7
7
|
}
|
|
8
|
-
`)(m);h=z(a.value,H,B),N.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",N.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 le=`${te}[${Le}]`,v=B(Re,le);return m.set(v,le),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=()=>{N.value=null,i.value=""},X=()=>{u.value=!0},L=()=>{u.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")},ue=async()=>{if(l.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(l.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=Oe(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)}},Oe=(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:ue,compressSource:ce,expandAll:ee,collapseAll:Q,toggleExpand:ne,updateValue:g,updateKey:j,filter:J,clearFilter:Ce,sortKeys:X,clearSortKeys:L,isSorted:()=>u.value,isValidJson:()=>l.value,getParsedJson:()=>a.value,getFilteredJson:()=>N.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",bn,[l.value?i.value?(T.openBlock(),T.createElementBlock("div",Yn,[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",Vn,[T.createVNode(Gn,{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",xn,[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 BE(E){return E&&E.__esModule&&Object.prototype.hasOwnProperty.call(E,"default")?E.default:E}var Jt={},gE;function vn(){return gE||(gE=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,I=e.length,D=function(f,oe){return function(){return oe.apply(this,f.concat(o.call(arguments)))}},O=function(){var f=o.call(arguments);return f.length<I?D(f,O):e.apply(this,o.apply(arguments,[0,I]))};return O}var N=function(e,o){for(var I=0;I<o.length;I+=1)e(o[I],I,o)},i=function(e,o,I){var D=o;return N(function(O,f){D=e(D,O,f)},I),D},u=function(e,o){var I=new Array(o.length);return N(function(D,O){I[O]=e(D)},o),I},l=function(e,o){var I=[];return N(function(D,O){e(D,O)&&I.push(D)},o),I},d=function(e,o){for(var I=0;I<e.length;I+=1)if(e[I]===o)return!0;return!1};function M(e){return function(){return e}}function U(e){return e.toString()}var w=function(e,o){return o.join(e)},P=function(e,o,I){return e+I+o},J=Array.prototype.concat,Z=function(e,o){var I=new ie;I.addArray(e);var D=I.toArray();return o?D.reverse():D},z=32767;function De(e){for(var o=[],I=0;I<e.length;I+=z){var D=e.slice(I,I+z);o=J.apply(o,D)}return o}function Ce(e,o){for(var I=Object(e),D=1;D<arguments.length;D++){var O=arguments[D];if(O!=null)for(var f in O)Object.prototype.hasOwnProperty.call(O,f)&&(I[f]=O[f])}return I}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 ue(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 Oe(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 le(!0,[])},this.reduceActions[44]=function(e){return e[1].absolute=!0,e[1]},this.reduceActions[46]=function(e){return new le(!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=[],I=[],D=e+"\0",O=0,f=D.charAt(O++);;){for(;f==" "||f==" "||f=="\r"||f==`
|
|
9
|
-
`;)f=D.charAt(O++);if(f=="\0"||O>=D.length)break;if(f=="("){o.push(L.LEFTPARENTHESIS),I.push(f),f=D.charAt(O++);continue}if(f==")"){o.push(L.RIGHTPARENTHESIS),I.push(f),f=D.charAt(O++);continue}if(f=="["){o.push(L.LEFTBRACKET),I.push(f),f=D.charAt(O++);continue}if(f=="]"){o.push(L.RIGHTBRACKET),I.push(f),f=D.charAt(O++);continue}if(f=="@"){o.push(L.AT),I.push(f),f=D.charAt(O++);continue}if(f==","){o.push(L.COMMA),I.push(f),f=D.charAt(O++);continue}if(f=="|"){o.push(L.BAR),I.push(f),f=D.charAt(O++);continue}if(f=="+"){o.push(L.PLUS),I.push(f),f=D.charAt(O++);continue}if(f=="-"){o.push(L.MINUS),I.push(f),f=D.charAt(O++);continue}if(f=="="){o.push(L.EQUALS),I.push(f),f=D.charAt(O++);continue}if(f=="$"){o.push(L.DOLLAR),I.push(f),f=D.charAt(O++);continue}if(f=="."){if(f=D.charAt(O++),f=="."){o.push(L.DOUBLEDOT),I.push(".."),f=D.charAt(O++);continue}if(f>="0"&&f<="9"){var oe="."+f;for(f=D.charAt(O++);f>="0"&&f<="9";)oe+=f,f=D.charAt(O++);o.push(L.NUMBER),I.push(oe);continue}o.push(L.DOT),I.push(".");continue}if(f=="'"||f=='"'){for(var me=f,Be="";O<D.length&&(f=D.charAt(O))!==me;)Be+=f,O+=1;if(f!==me)throw qe.fromMessage("Unterminated string literal: "+me+Be);O+=1,o.push(L.LITERAL),I.push(Be),f=D.charAt(O++);continue}if(f>="0"&&f<="9"){var oe=f;for(f=D.charAt(O++);f>="0"&&f<="9";)oe+=f,f=D.charAt(O++);if(f=="."&&D.charAt(O)>="0"&&D.charAt(O)<="9")for(oe+=f,oe+=D.charAt(O++),f=D.charAt(O++);f>="0"&&f<="9";)oe+=f,f=D.charAt(O++);o.push(L.NUMBER),I.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),I.push(f),f=D.charAt(O++);continue}}o.push(L.ASTERISKNAMETEST),I.push(f),f=D.charAt(O++);continue}if(f==":"&&D.charAt(O)==":"){o.push(L.DOUBLECOLON),I.push("::"),O++,f=D.charAt(O++);continue}if(f=="/"){if(f=D.charAt(O++),f=="/"){o.push(L.DOUBLESLASH),I.push("//"),f=D.charAt(O++);continue}o.push(L.SLASH),I.push("/");continue}if(f=="!"&&D.charAt(O)=="="){o.push(L.NOTEQUAL),I.push("!="),O++,f=D.charAt(O++);continue}if(f=="<"){if(D.charAt(O)=="="){o.push(L.LESSTHANOREQUAL),I.push("<="),O++,f=D.charAt(O++);continue}o.push(L.LESSTHAN),I.push("<"),f=D.charAt(O++);continue}if(f==">"){if(D.charAt(O)=="="){o.push(L.GREATERTHANOREQUAL),I.push(">="),O++,f=D.charAt(O++);continue}o.push(L.GREATERTHAN),I.push(">"),f=D.charAt(O++);continue}if(f=="_"||Se.isLetter(f.charCodeAt(0))){var Ae=f;for(f=D.charAt(O++);Se.isNCNameChar(f.charCodeAt(0));)Ae+=f,f=D.charAt(O++);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),I.push(Ae);continue}if(Ae=="or"){o.push(L.OR),I.push(Ae);continue}if(Ae=="mod"){o.push(L.MOD),I.push(Ae);continue}if(Ae=="div"){o.push(L.DIV),I.push(Ae);continue}}}if(f==":"){if(D.charAt(O)=="*"){o.push(L.NCNAMECOLONASTERISK),I.push(Ae+":*"),O++,f=D.charAt(O++);continue}if(D.charAt(O)=="_"||Se.isLetter(D.charCodeAt(O))){for(Ae+=":",f=D.charAt(O++);Se.isNCNameChar(f.charCodeAt(0));)Ae+=f,f=D.charAt(O++);if(f=="("){o.push(L.FUNCTIONNAME),I.push(Ae);continue}o.push(L.QNAME),I.push(Ae);continue}if(D.charAt(O)==":"){o.push(L.AXISNAME),I.push(Ae);continue}}if(f=="("){if(Ae=="comment"||Ae=="text"||Ae=="node"){o.push(L.NODETYPE),I.push(Ae);continue}if(Ae=="processing-instruction"){D.charAt(O)==")"?o.push(L.NODETYPE):o.push(L.PROCESSINGINSTRUCTIONWITHLITERAL),I.push(Ae);continue}o.push(L.FUNCTIONNAME),I.push(Ae);continue}o.push(L.QNAME),I.push(Ae);continue}throw new Error("Unexpected character "+f)}return o.push(1),I.push("[EOF]"),[o,I]},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,I,D=this.tokenize(Be);if(D!=null){o=D[0],I=D[1];var O=0,f=[],oe=[],me=[],Be,ae,Ae;for(f.push(0),oe.push(1),me.push("_S"),ae=o[O],Ae=I[O++];;)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[O],Ae=I[O++];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,I){o in e||(e[o]=I)}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},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.toString=function(){return"("+this.lhs.toString()+" or "+this.rhs.toString()+")"},ue.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()+")"},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).greaterthan(this.rhs.evaluate(e))},Oe.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 u(U,[this.lhs,this.rhs]).join(" | ")},b.prototype=new x,b.prototype.constructor=b,b.superclass=x.prototype;function b(e,o,I){arguments.length>0&&this.init(e,o,I)}b.prototype.init=function(e,o,I){b.superclass.init.call(this),this.filter=e,this.filterPredicates=o,this.locationPath=I};function H(e){for(;e&&e.parentNode;)e=e.parentNode;return e}var te=function(e,o,I,D){if(e.length===0)return I;var O=o.extend({});return i(function(f,oe){return O.contextSize=f.length,l(function(me,Be){return O.contextNode=me,O.contextPosition=Be+1,b.predicateMatches(oe,O)},f)},Z(I,D),e)};b.getRoot=function(e,o){var I=o[0];if(I&&I.nodeType===X.DOCUMENT_NODE)return I;if(e.virtualRoot)return e.virtualRoot;if(!I)throw new Error("Context node not found when determining document root.");var D=I.ownerDocument;if(D)return D;for(var O=I;O.parentNode!=null;)O=O.parentNode;return O};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,I){if(!I)throw new Error("Context node not found when evaluating XPath step: "+e);var D=[];switch(o.contextNode=I,e.axis){case v.ANCESTOR:if(o.contextNode===o.virtualRoot)break;var O;for(o.contextNode.nodeType==X.ATTRIBUTE_NODE?O=b.getOwnerElement(o.contextNode):O=o.contextNode.parentNode;O!=null&&(e.nodeTest.matches(O,o)&&D.push(O),O!==o.virtualRoot);)O=O.parentNode;break;case v.ANCESTORORSELF:for(var O=o.contextNode;O!=null&&(e.nodeTest.matches(O,o)&&D.push(O),O!==o.virtualRoot);O=O.nodeType==X.ATTRIBUTE_NODE?b.getOwnerElement(O):O.parentNode);break;case v.ATTRIBUTE:var f=o.contextNode.attributes;if(f!=null)for(var oe=0;oe<f.length;oe++){var O=f.item(oe);e.nodeTest.matches(O,o)&&D.push(O)}break;case v.CHILD:for(var O=o.contextNode.firstChild;O!=null;O=O.nextSibling)e.nodeTest.matches(O,o)&&D.push(O);break;case v.DESCENDANT:for(var Ae=[o.contextNode.firstChild];Ae.length>0;)for(var O=Ae.pop();O!=null;)e.nodeTest.matches(O,o)&&D.push(O),O.firstChild!=null?(Ae.push(O.nextSibling),O=O.firstChild):O=O.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 O=Ae.pop();O!=null;)e.nodeTest.matches(O,o)&&D.push(O),O.firstChild!=null?(Ae.push(O.nextSibling),O=O.firstChild):O=O.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 O=o.contextNode.parentNode;O!=null&&O.nodeType!=X.DOCUMENT_NODE&&O!==o.virtualRoot;O=O.parentNode)Ae.unshift(O.nextSibling);do for(var O=Ae.pop();O!=null;)e.nodeTest.matches(O,o)&&D.push(O),O.firstChild!=null?(Ae.push(O.nextSibling),O=O.firstChild):O=O.nextSibling;while(Ae.length>0);break;case v.FOLLOWINGSIBLING:if(o.contextNode===o.virtualRoot)break;for(var O=o.contextNode.nextSibling;O!=null;O=O.nextSibling)e.nodeTest.matches(O,o)&&D.push(O);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 O=o.contextNode;O!=null&&O.nodeType==X.ELEMENT_NODE;O=O.parentNode)for(var oe=0;oe<O.attributes.length;oe++){var Be=O.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 I=me[ae];e.nodeTest.matches(I,o)&&D.push(I)}}break;case v.PARENT:O=null,o.contextNode!==o.virtualRoot&&(o.contextNode.nodeType==X.ATTRIBUTE_NODE?O=b.getOwnerElement(o.contextNode):O=o.contextNode.parentNode),O!=null&&e.nodeTest.matches(O,o)&&D.push(O);break;case v.PRECEDING:var Ae;o.virtualRoot!=null?Ae=[o.virtualRoot]:Ae=[H(o.contextNode)];e:for(;Ae.length>0;)for(var O=Ae.pop();O!=null;){if(O==o.contextNode)break e;e.nodeTest.matches(O,o)&&D.unshift(O),O.firstChild!=null?(Ae.push(O.nextSibling),O=O.firstChild):O=O.nextSibling}break;case v.PRECEDINGSIBLING:if(o.contextNode===o.virtualRoot)break;for(var O=o.contextNode.previousSibling;O!=null;O=O.previousSibling)e.nodeTest.matches(O,o)&&D.push(O);break;case v.SELF:e.nodeTest.matches(o.contextNode,o)&&D.push(o.contextNode);break}return D};function Re(e,o,I){return te(e.predicates,o,b.applyStep(e,o,I),d(fe,e.axis))}function Le(e,o,I){return De(u(Re.bind(null,I,e),o))}b.applySteps=function(e,o,I){return i(Le.bind(null,o),I,e)},b.prototype.applyFilter=function(e,o){if(!this.filter)return{nodes:[e.contextNode]};var I=this.filter.evaluate(e);if(!Se.instance_of(I,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:I}}return{nodes:te(this.filterPredicates||[],o,I.toUnsortedArray(),!1)}},b.applyLocationPath=function(e,o,I){if(!e)return I;var D=e.absolute?[b.getRoot(o,I)]:I;return b.applySteps(e.steps,o,D)},b.prototype.evaluate=function(e){var o=Ce(new Ze,e),I=this.applyFilter(e,o);if("nonNodes"in I)return I.nonNodes;var D=new ie;return D.addArray(b.applyLocationPath(this.locationPath,o,I.nodes)),D},b.predicateMatches=function(e,o){var I=e.evaluate(o);return Se.instance_of(I,W)?o.contextPosition===I.numberValue():I.booleanValue()},b.predicateString=function(e){return P("[","]",e.toString())},b.predicatesString=function(e){return w("",u(b.predicateString,e))},b.prototype.toString=function(){if(this.filter!=null){var e=U(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?"":"/")+U(this.locationPath):e}return U(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,I=o.getElementsByTagName("*"),D=0;D<I.length;D++)for(var O=I.item(D),f=O.attributes,oe=0;oe<f.length;oe++){var me=f.item(oe);if(me===e)return O}return null},le.prototype=new Object,le.prototype.constructor=le,le.superclass=Object.prototype;function le(e,o){arguments.length>0&&this.init(e,o)}le.prototype.init=function(e,o){this.absolute=e,this.steps=o},le.prototype.toString=function(){return(this.absolute?"/":"")+u(U,this.steps).join("/")},v.prototype=new Object,v.prototype.constructor=v,v.superclass=Object.prototype;function v(e,o,I){arguments.length>0&&this.init(e,o,I)}v.prototype.init=function(e,o,I){this.axis=e,this.nodeTest=o,this.predicates=I},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,I){var D=I||function(){};return D.prototype=new c(e),D.prototype.constructor=D,Ce(D.prototype,o),D},c.makeNodeTypeTest=function(e,o,I){return new(c.makeNodeTestType(e,{matches:c.isNodeType(o),toString:M(I)}))},c.hasPrefix=function(e){return e.prefix||(e.nodeName||e.tagName).indexOf(":")!==-1},c.isElementOrAttribute=c.isNodeType([1,2]),c.nameSpaceMatches=function(e,o,I){var D=I.namespaceURI||"";if(!e)return!D||o.allowAnyNamespaceForNoPrefix&&!c.hasPrefix(I);var O=o.namespaceResolver.getNamespace(e,o.expressionContextNode);if(O==null)throw new Error("Cannot resolve QName "+e);return O===D},c.localNameMatches=function(e,o,I){var D=I.localName||I.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 I=o.split(":");this.name=o,this.prefix=I.length>1?I[0]:null,this.localName=I[I.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 I=e.variableResolver.getVariable(o[1],o[0]);if(!I)throw qe.fromMessage("Undeclared variable: "+this.toString());return I},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 I=[e].concat(this.arguments);return o.apply(e.functionResolver.thisArg,I)};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-"),I=o[0].replace(".",""),D=Number(o[1]),O=0;O<D-1;O+=1)I="0"+I;return"0."+I}function Qe(e){for(var o=e.split("e"),I=o[0].replace(".",""),D=Number(o[1]),O=D+1-I.length,f=0;f<O;f+=1)I+="0";return I}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 I=this.left.left==null?0:this.left.left.depth,D=this.left.right==null?0:this.left.right.depth;I<D&&this.left.rotateRR(),this.rotateLL()}else if(e+1<o){var O=this.right.right==null?0:this.right.right.depth,f=this.right.left==null?0:this.right.left.depth;f>O&&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 I=e.compareDocumentPosition(o);return I&1||I&10?1:I&20?-1:0}for(var D=0,O=0,f=e;f!=null;f=f.parentNode||f.ownerElement)D++;for(var oe=o;oe!=null;oe=oe.parentNode||oe.ownerElement)O++;if(D>O){for(;D>O;)e=e.parentNode||e.ownerElement,D--;if(e===o)return 1}else if(O>D){for(;O>D;)o=o.parentNode||o.ownerElement,O--;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 Ot=Ke[tt];if(Ot===He)return-1;if(Ot===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),I=!1;return o==-1?this.left==null?(this.left=new we(e),I=!0):(I=this.left.add(e),I&&this.balance()):o==1&&(this.right==null?(this.right=new we(e),I=!0):(I=this.right.add(e),I&&this.balance())),I&&this.getDepthFromChildren(),I},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="",I=e.firstChild;I!=null;I=I.nextSibling){var D=I.nodeType;(D===1||D===3||D===4||D===9||D===11)&&(o+=this.stringForNode(I))}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;N(function(I){o.add(I)},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 I=this.toUnsortedArray(),D=0;D<I.length;D++){var O=I[D],f=new F(this.stringForNode(O)),oe=o(f,e);if(oe.booleanValue())return oe}return new Ne(!1)},ie.prototype.compareWithNumber=function(e,o){for(var I=this.toUnsortedArray(),D=0;D<I.length;D++){var O=I[D],f=new W(this.stringForNode(O)),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 I=this.toUnsortedArray(),D=function(me,Be){return o(Be,me)},O=0;O<I.length;O++){var f=new F(this.stringForNode(I[O])),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,I,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=I,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,I){this.variableResolver=e??new et,this.namespaceResolver=o??new je,this.functionResolver=I??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,I){this.functions["{"+e+"}"+o]=I},Xe.getFunctionFromContext=function(e,o){var I=Se.resolveQName(e,o.namespaceResolver,o.contextNode,!1);if(I[0]===null)throw new Error("Cannot resolve QName "+name);return o.functionResolver.getFunction(I[1],I[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 I=o.attributes,D=0;D<I.length;D++){var O=I.item(D),f=O.name||O.nodeName;if(f==="xmlns"&&e===""||f==="xmlns:"+e)return String(O.value||O.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 I=o.split(/[\x0d\x0a\x09\x20]+/),D=new ie,O=e.contextNode.nodeType==X.DOCUMENT_NODE?e.contextNode:e.contextNode.ownerDocument,f=0;f<I.length;f++){var oe;O.getElementById?oe=O.getElementById(I[f]):oe=Se.getElementById(O,I[f]),oe!=null&&D.add(oe)}return D},_e.localName=function(e,o){var I;if(arguments.length==1)I=e.contextNode;else if(arguments.length==2)I=o.evaluate(e).first();else throw new Error("Function local-name expects (node-set?)");return I==null?new F(""):new F(I.localName||I.baseName||I.target||I.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="",I=1;I<arguments.length;I++)o+=arguments[I].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(),I=arguments[2].evaluate(e).stringValue();return new Ne(o.substring(0,I.length)==I)},_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(),I=arguments[2].evaluate(e).stringValue();return new Ne(o.indexOf(I)!==-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(),I=arguments[2].evaluate(e).stringValue();return new F(o.substring(0,o.indexOf(I)))},_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(),I=arguments[2].evaluate(e).stringValue();if(I.length==0)return new F(o);var D=o.indexOf(I);return D==-1?new F(""):new F(o.substring(D+I.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(),I=Math.round(arguments[2].evaluate(e).numberValue())-1,D=arguments.length==4?I+Math.round(arguments[3].evaluate(e).numberValue()):void 0;return new F(o.substring(I,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 I=0,D=o.length-1;Se.isSpace(o.charCodeAt(D));)D--;for(var O="";I<=D&&Se.isSpace(o.charCodeAt(I));)I++;for(;I<=D;)if(Se.isSpace(o.charCodeAt(I)))for(O+=" ";I<=D&&Se.isSpace(o.charCodeAt(I));)I++;else O+=o.charAt(I),I++;return new F(O)},_e.translate=function(e,o,I,D){if(arguments.length!=4)throw new Error("Function translate expects (string, string, string)");var O=o.evaluate(e).stringValue(),f=I.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("",u(function(ae){return ae in me?me[ae]:ae},O));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,I=e.contextNode;I!=null&&I.nodeType!=X.DOCUMENT_NODE;I=I.parentNode){var D=I.getAttributeNS(k.XML_NAMESPACE_URI,"lang");if(D!=null){o=String(D);break}}if(o==null)return Ne.false_;var O=arguments[1].evaluate(e).stringValue();return new Ne(o.substring(0,O.length)==O&&(o.length==O.length||o.charAt(O.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 I=0,D=0;D<o.length;D++)I+=new W(ie.prototype.stringForNode(o[D])).numberValue();return new W(I)},_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,I,D){var O=Se.splitQName(e);return O[0]!=null?O[0]=o.getNamespace(O[0],I):D?(O[0]=o.getNamespace("",I),O[0]==null&&(O[0]="")):O[0]="",O},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 I=o.nodeValue,D=o;for(o=o.nextSibling;o!=null&&(o.nodeType==X.TEXT_NODE||o.nodeType==X.CDATA_SECTION_NODE);){I+=o.nodeValue;var O=o;o=o.nextSibling,O.parentNode.removeChild(O)}if(D.nodeType==X.CDATA_SECTION_NODE){var f=D.parentNode;if(D.nextSibling==null)f.removeChild(D),f.appendChild(f.ownerDocument.createTextNode(I));else{var oe=D.nextSibling;f.removeChild(D),f.insertBefore(f.ownerDocument.createTextNode(I),oe)}}else D.nodeValue=I;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 I=e.firstChild;I!=null;I=I.nextSibling){var D=Se.getElementById(I,o);if(D!=null)return D}return null};var qe=function(){function e(I,D){var O=D?": "+D.toString():"";switch(I){case o.INVALID_EXPRESSION_ERR:return"Invalid expression"+O;case o.TYPE_ERR:return"Type error"+O}return null}function o(I,D,O){var f=Error.call(this,e(I,D)||O);return f.code=I,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(I,D){return new o(null,D,I)},o.INVALID_EXPRESSION_ERR=51,o.TYPE_ERR=52,o}();We.prototype={},We.prototype.constructor=We,We.superclass=Object.prototype;function We(e,o,I){this.xpath=I.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,I){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(I,D){try{return new We(I,D,o)}catch(O){throw new qe(qe.INVALID_EXPRESSION_ERR,O)}},e.createNSResolver=function(I){return new st(I)},e.evaluate=function(I,D,O,f,oe){if(f<0||f>9)throw{code:0,toString:function(){return"Request type not supported"}};return e.createExpression(I,O,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,I=new Xe,D=new et;function O(se){return{getNamespace:function(ye,Je){var lt=se(ye,Je);return lt||o.getNamespace(ye,Je)}}}function f(se){return O(se.getNamespace.bind(se))}function oe(se){return O(function(ye){return se[ye]})}function me(se){return se&&typeof se.getNamespace=="function"?f(se):typeof se=="function"?O(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(LS){return LS.evaluate(ye)}),lt=se.apply(this,[].concat(ye,Je));return Be(lt)}}function Ae(se){return{getFunction:function(ye,Je){var lt=se(ye,Je);return lt?ae(lt):I.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):I}function Tt(se){return{getVariable:function(ye,Je){var lt=se(ye,Je);return Be(lt)}}}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 Ot(se,ye,Je){se in Je&&(ye[se]=Je[se])}function lS(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,Ot("allowAnyNamespaceForNoPrefix",ye,se),Ot("isHtml",ye,se)):ye.namespaceResolver=o,ye}function CS(se,ye){var Je=lS(ye);return se.evaluate(Je)}var cS={evaluate:function(se){return CS(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 _S(se){var ye=e.parse(se);return Object.create(cS,{expression:{value:ye}})}r.parse=_S}(),Ce(r,{XPath:k,XPathParser:L,XPathResult:Me,Step:v,PathExpr:b,NodeTest:c,LocationPath:le,OrOperation:ue,AndOperation:ce,BarOperation:B,EqualsOperation:pe,NotEqualOperation:Y,LessThanOperation:j,GreaterThanOperation:Oe,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,I){return r.selectWithResolver(e,o,null,I)},r.useNamespaces=function(e){var o={mappings:e||{},lookupNamespaceURI:function(I){return this.mappings[I]}};return function(I,D,O){return r.selectWithResolver(I,D,o,O)}},r.selectWithResolver=function(e,o,I,D){var O=new We(e,I,new L),f=Me.ANY_TYPE,oe=O.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)}(Jt)),Jt}var wn=vn();const Wn=BE(wn);var Ut={},at={},Ct={},yE;function Ht(){if(yE)return Ct;yE=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 N=0;N<a.length;N++)if(Object.prototype.hasOwnProperty.call(a,N)){var i=a[N];if(A.call(void 0,i,N,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 GE;function FE(){if(GE)return at;GE=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 N(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,N(_,G),R.prototype=_=G}_.constructor!=R&&(typeof R!="function"&&console.error("unknown Class:"+R),_.constructor=R)}var u={},l=u.ELEMENT_NODE=1,d=u.ATTRIBUTE_NODE=2,M=u.TEXT_NODE=3,U=u.CDATA_SECTION_NODE=4,w=u.ENTITY_REFERENCE_NODE=5,P=u.ENTITY_NODE=6,J=u.PROCESSING_INSTRUCTION_NODE=7,Z=u.COMMENT_NODE=8,z=u.DOCUMENT_NODE=9,De=u.DOCUMENT_TYPE_NODE=10,Ce=u.DOCUMENT_FRAGMENT_NODE=11,X=u.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,N(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 ue(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];N(_,R),R._inc=S}}ue.prototype.item=function(R){return ce(this),this[R]||null},i(ue,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 Oe(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 Oe(this._ownerElement,this,S),S},removeNamedItemNS:function(R,S){var _=this.getNamedItemNS(R,S);return Oe(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==M&&R.nodeType==M?(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()+";"}N(u,Te),N(u,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 le(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&&!le(R,_))throw new ee(g,"Element in fragment can not be inserted before doctype")}if(Re(S)&&!le(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 I=t(G,Re);if(_&&G.indexOf(I)<G.indexOf(_))throw new ee(g,"Doctype can only be inserted before an element");if(!_&&I)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(O){return Ee(O)&&O!==_}))throw new ee(g,"Only one doctype is allowed");var I=t(G,Re);if(_&&G.indexOf(I)<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 I=S.lastChild}else o=I=S;var D=_?_.previousSibling:R.lastChild;o.previousSibling=D,I.nextSibling=_,D?D.nextSibling=o:R.firstChild=o,_==null?R.lastChild=I:_.previousSibling=I;do{o.parentNode=R;var O=R.ownerDocument||R;de(o,O)}while(o!==I&&(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===l&&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===l&&(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==l&&_.getAttribute("id")==R)return S=_,!0}),S},getElementsByClassName:function(R){var S=A(R);return new ue(this,function(_){var G=[];return S.length>0&&q(_.documentElement,function(e){if(e!==_&&e.nodeType===l){var o=e.getAttribute("class");if(o){var I=R===o;if(!I){var D=A(o);I=S.every(C(D))}I&&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:l,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 ue(this,function(S){var _=[];return q(S,function(G){G!==S&&G.nodeType==l&&(R==="*"||G.tagName==R)&&_.push(G)}),_})},getElementsByTagNameNS:function(R,S){return new ue(this,function(_){var G=[];return q(_,function(e){e!==_&&e.nodeType===l&&(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:M,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:U},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 I=[{namespace:o,prefix:null}]}return We(this,_,R,S,I),_.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 I=_[o];if(I.prefix===G)return I.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 l:var o=R.attributes,I=o.length,He=R.firstChild,D=R.tagName;_=r.isHTML(R.namespaceURI)||_;var O=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&&(O=Be.prefix+":"+D);break}}}S.push("<",O);for(var ae=0;ae<I;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<I;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===O&&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("</",O,">")}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 M:return S.push(R.data.replace(/[<&>]/g,he));case U: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 Ot=R.internalSubset;Ot&&S.push(" [",Ot,"]"),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 l: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 l:var I=S.attributes,D=G.attributes=new pe,O=I.length;D._ownerElement=G;for(var f=0;f<O;f++)G.setAttributeNode(st(R,I.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 l: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(ue.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 l: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={},Qt={},HE;function Xn(){return HE||(HE=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}(Qt)),Qt}var bt={},bE;function Kn(){if(bE)return bt;bE=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,N=4,i=5,u=6,l=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 M(){}M.prototype={parse:function(g,x,ne){var ee=this.domBuilder;ee.startDocument(),De(x,x={}),U(g,x,ne,ee,this.errorHandler),ee.endDocument()}};function U(g,x,ne,ee,Q){function ue(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)==="#"?ue(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>=Oe&&(W=Ue.exec(g));)j=W.index,Oe=j+W[0].length,Te.lineNumber++;Te.columnNumber=F-j+1}for(var j=0,Oe=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 le=new L,v=he[he.length-1].currentNSMap,fe=P(g,h,le,v,ce,Q),c=le.length;if(!le.closed&&z(g,fe,le.tagName,q)&&(le.closed=!0,ne.nbsp||Q.warning("unclosed xml attribute")),Te&&c){for(var re=w(Te,{}),ge=0;ge<c;ge++){var de=le[ge];Y(de.offset),de.locator=w(Te,{})}ee.locator=re,J(le,ee,v)&&he.push(le),ee.locator=Te}else J(le,ee,v)&&he.push(le);E.isHTML(le.uri)&&!le.closed?fe=Z(g,fe,le.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,ue){function ce(Te,he,q){ne.attributeNames.hasOwnProperty(Te)&&ue.fatalError("Attribute "+Te+" redefined"),ne.addValue(Te,he.replace(/[\t\n\r]/g," ").replace(/&#?\w+;/g,Q),q)}for(var pe,Y,j=++x,Oe=s;;){var Ue=g.charAt(j);switch(Ue){case"=":if(Oe===a)pe=g.slice(x,j),Oe=C;else if(Oe===A)Oe=C;else throw new Error("attribute equal must after attrName");break;case"'":case'"':if(Oe===C||Oe===a)if(Oe===a&&(ue.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),Oe=i;else throw new Error("attribute value no end '"+Ue+"' match");else if(Oe==N)Y=g.slice(x,j),ce(pe,Y,x),ue.warning('attribute "'+pe+'" missed start quot('+Ue+")!!"),x=j+1,Oe=i;else throw new Error('attribute value must after "="');break;case"/":switch(Oe){case s:ne.setTagName(g.slice(x,j));case i:case u:case l:Oe=l,ne.closed=!0;case N:case a:break;case A:ne.closed=!0;break;default:throw new Error("attribute invalid close char('/')")}break;case"":return ue.error("unexpected end of input"),Oe==s&&ne.setTagName(g.slice(x,j)),j;case">":switch(Oe){case s:ne.setTagName(g.slice(x,j));case i:case u:case l:break;case N:case a:Y=g.slice(x,j),Y.slice(-1)==="/"&&(ne.closed=!0,Y=Y.slice(0,-1));case A:Oe===A&&(Y=pe),Oe==N?(ue.warning('attribute "'+Y+'" missed quot(")!'),ce(pe,Y,x)):((!E.isHTML(ee[""])||!Y.match(/^(?:disabled|checked|selected)$/i))&&ue.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(Oe){case s:ne.setTagName(g.slice(x,j)),Oe=u;break;case a:pe=g.slice(x,j),Oe=A;break;case N:var Y=g.slice(x,j);ue.warning('attribute "'+Y+'" missed quot(")!!'),ce(pe,Y,x);case i:Oe=u;break}else switch(Oe){case A:ne.tagName,(!E.isHTML(ee[""])||!pe.match(/^(?:disabled|checked|selected)$/i))&&ue.warning('attribute "'+pe+'" missed value!! "'+pe+'" instead2!!'),ce(pe,pe,x),x=j,Oe=a;break;case i:ue.warning('attribute space is required"'+pe+'"!!');case u:Oe=a,x=j;break;case C:Oe=N,x=j;break;case l: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 ue=g[Ue],ce=ue.qName,pe=ue.value,Te=ce.indexOf(":");if(Te>0)var Y=ue.prefix=ce.slice(0,Te),j=ce.slice(Te+1),Oe=Y==="xmlns"&&j;else j=ce,Y=null,Oe=ce==="xmlns"&&"";ue.localName=j,Oe!==!1&&(Q==null&&(Q={},De(ne,ne={})),ne[Oe]=Q[Oe]=pe,ue.uri=E.XMLNS,x.startPrefixMapping(Oe,pe))}for(var Ue=g.length;Ue--;){ue=g[Ue];var Y=ue.prefix;Y&&(Y==="xml"&&(ue.uri=E.XML),Y!=="xmlns"&&(ue.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 ue=g.indexOf("</"+ne+">",x),ce=g.substring(x+1,ue);if(/[&<]/.test(ce))return/^script$/i.test(ne)?(Q.characters(ce,0,ce.length),ue):(ce=ce.replace(/&#?\w+;/g,ee),Q.characters(ce,0,ce.length),ue)}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 ue=g.indexOf("-->",x+4);return ue>x?(ne.comment(g,x+4,ue-x-4),ue+3):(ee.error("Unclosed comment"),-1)}else return-1;default:if(g.substr(x+3,6)=="CDATA["){var ue=g.indexOf("]]>",x+9);return ne.startCDATA(),ne.characters(g,x+9,ue-x-9),ne.endCDATA(),ue+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,Oe=!1;pe>3&&(/^public$/i.test(ce[2][0])?(j=ce[3][0],Oe=pe>4&&ce[4][0]):/^system$/i.test(ce[2][0])&&(Oe=ce[3][0]));var Ue=ce[pe-1];return ne.startDTD(Y,j,Oe),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=M,bt.ParseError=d,bt}var xE;function kn(){if(xE)return mt;xE=1;var E=Ht(),t=FE(),r=Xn(),n=Kn(),s=t.DOMImplementation,a=E.NAMESPACE,A=n.ParseError,C=n.XMLReader;function N(P){return P.replace(/\r[\n\u0085]/g,`
|
|
8
|
+
`)(U);P=pe(a.value,q,g),N.value=P}else throw new Error(`Unsupported filter type: ${p.type}`);i.value="",T.nextTick(()=>{Q()})}catch(P){i.value=P instanceof Error?P.message:"Filter execution error",N.value=null}},ee=(p,P="root")=>{const U=new Map,g=(q,j)=>{if(q==null)return q;if(nt(q)){const ie=parseFloat(ft(q));return U.set(ie,j),ie}if(Array.isArray(q)){const ie=q.map((Ne,_e)=>{const b=`${j}[${_e}]`,fe=g(Ne,b);return U.set(fe,b),fe});return U.set(ie,j),ie}if(typeof q=="object"){const ie={};for(const Ne in q)if(Object.prototype.hasOwnProperty.call(q,Ne)){const _e=j==="root"?Ne:`${j}.${Ne}`;ie[Ne]=g(q[Ne],_e)}return U.set(ie,j),ie}return q};return{proxyData:g(p,P),indexMap:U}},pe=(p,P,U)=>{if(P===null||typeof P!="object")return P;if(Array.isArray(P))return P.map(q=>{const j=U.get(q);if(j){const ie=Le(p,j);if(ie!==void 0)return ie}return pe(p,q,U)});const g=U.get(P);if(g){const q=Le(p,g);if(q!==void 0)return q}const $={};for(const q in P)Object.prototype.hasOwnProperty.call(P,q)&&($[q]=pe(p,P[q],U));return $},Le=(p,P)=>{if(P==="root")return p;const U=[];let g=P.replace(/^root\.?/,"");const $=/([^\[\].]+)|\[(\d+)\]/g;let q;for(;(q=$.exec(g))!==null;)q[1]?U.push(q[1]):q[2]!==void 0&&U.push(parseInt(q[2]));let j=p;for(const ie of U){if(j==null)return;j=j[ie]}return j},V=()=>{N.value=null,i.value=""},L=()=>{u.value=!0},X=()=>{u.value=!1};T.watch(()=>n.modelValue,p=>{k(p)},{immediate:!0});const B=(p,P,U)=>{const g=j=>{if(j===null||typeof j!="object")return j;if(nt(j))return`__PROTECTED_NUMBER_${ft(j)}_PROTECTED_NUMBER__`;if(Array.isArray(j))return j.map(Ne=>g(Ne));const ie={};for(const[Ne,_e]of Object.entries(j))ie[Ne]=g(_e);return ie},$=g(p);return JSON.stringify($,P,U).replace(/"__PROTECTED_NUMBER_(.+?)_PROTECTED_NUMBER__"/g,"$1")},H=(p,P)=>{if(!n.readonly)try{const U=ne(a.value,p,P),g=B(U,null,2);s("update:modelValue",g)}catch(U){console.error("Failed to update JSON:",U)}},ne=(p,P,U)=>{if(!P||P==="root")return U;const g=P.split("."),$=Te(p,g.slice(0,-1));let q=$;for(let ie=0;ie<g.length-1;ie++){const Ne=g[ie];Ne!=="root"&&(Array.isArray(q)?q=q[parseInt(Ne)]:q=q[Ne])}const j=g[g.length-1];return j==="root"?U:(Array.isArray(q)?q[parseInt(j)]=U:q[j]=U,$)},te=p=>{C.value.has(p)?C.value.delete(p):C.value.add(p)},Q=()=>{const p=new Set,P=(U,g="")=>{U!==null&&typeof U=="object"&&(p.add(g||"root"),Array.isArray(U)?U.forEach(($,q)=>{const j=g?`${g}.${q}`:`${q}`;P($,j)}):Object.keys(U).forEach($=>{const q=g?`${g}.${$}`:$;P(U[$],q)}))};P(f.value),C.value=p,s("expand-all")},ce=()=>{C.value=new Set,s("collapse-all")},W=async()=>{if(d.value)try{const p=f.value,P=B(p,null,2);await navigator.clipboard.writeText(P),s("copy-success",P)}catch(p){console.error("Failed to copy JSON:",p),s("copy-error",p instanceof Error?p:new Error("Failed to copy JSON"))}},re=()=>{if(d.value)try{const p=f.value,P=B(p);s("update:modelValue",P),s("compress",P)}catch(p){console.error("Failed to compress JSON:",p)}},Se=p=>{if(nt(p))return ft(p);if(typeof p=="string")return`"${p}"`;const P=JSON.stringify(p);return P===void 0?"undefined":P},ue=async p=>{try{await navigator.clipboard.writeText(Se(p))}catch(P){console.error("Failed to copy value:",P)}},le=(p,P)=>{if(!n.readonly)try{const U=he(a.value,p,P),g=B(U,null,2);s("update:modelValue",g),Ee(p,P)}catch(U){console.error("Failed to rename key:",U)}},he=(p,P,U)=>{if(!P||P==="root")return p;const g=P.split("."),$=Te(p,g.slice(0,-1));if(g.length===1){const ie=g[0];return $&&typeof $=="object"&&!Array.isArray($)?ge($,ie,U):$}let q=$;for(let ie=0;ie<g.length-1;ie++){const Ne=g[ie];Array.isArray(q)?q=q[parseInt(Ne)]:q=q[Ne]}const j=g[g.length-1];if(!Array.isArray(q)&&q&&typeof q=="object"){const ie=ge(q,j,U),Ne=g.slice(0,-1);Ne.length>0&&J($,Ne,ie)}return $},Te=(p,P)=>{if(P.length===0)return p;if(Array.isArray(p)){const U=[...p],g=P[0],$=parseInt(g);return P.length===1||(U[$]=Te(p[$],P.slice(1))),U}else if(p&&typeof p=="object"){const U={...p},g=P[0];return P.length===1||(U[g]=Te(p[g],P.slice(1))),U}return p},ge=(p,P,U)=>{if(!p||typeof p!="object"||Array.isArray(p))return p;const g=Object.keys(p),$={};for(const q of g)q===P?$[U]=p[q]:$[q]=p[q];return $},J=(p,P,U)=>{let g=p;for(let q=0;q<P.length-1;q++){const j=P[q];Array.isArray(g)?g=g[parseInt(j)]:g=g[j]}const $=P[P.length-1];Array.isArray(g)?g[parseInt($)]=U:g[$]=U},Ee=(p,P)=>{const U=new Set;C.value.forEach(g=>{if(g===p){const $=p.split(".");$[$.length-1]=P,U.add($.join("."))}else if(g.startsWith(p+".")){const $=p.split(".");$[$.length-1]=P;const q=$.join("."),j=g.substring(p.length);U.add(q+j)}else U.add(g)}),C.value=U};return t({copyJson:W,compressSource:re,expandAll:Q,collapseAll:ce,toggleExpand:te,updateValue:H,updateKey:le,filter:Z,clearFilter:V,sortKeys:L,clearSortKeys:X,isSorted:()=>u.value,isValidJson:()=>d.value,getParsedJson:()=>a.value,getFilteredJson:()=>N.value,getExpandedNodes:()=>C.value,getParseError:()=>A.value,getFilterError:()=>i.value,parseJson:p=>k(p),copyValue:p=>ue(p),getValue:p=>Se(p)}),(p,P)=>(T.openBlock(),T.createElementBlock("div",{class:T.normalizeClass(["json-format",`json-format--${M.value.name}`])},[T.createElementVNode("div",wn,[d.value?i.value?(T.openBlock(),T.createElementBlock("div",Xn,[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",Kn,[T.createVNode(Yn,{value:f.value,"key-name":"",level:0,expanded:C.value,"is-last":!0,theme:M.value,"onUpdate:value":H,onToggleExpand:te,onCopy:ue,"onUpdate:key":le},null,8,["value","expanded","theme"])])):(T.openBlock(),T.createElementBlock("div",Wn,[P[0]||(P[0]=T.createElementVNode("h4",null,"JSON Parse Error:",-1)),T.createElementVNode("pre",null,T.toDisplayString(A.value),1)]))])],2))}}),[["__scopeId","data-v-404434be"]]);function HE(E){return E&&E.__esModule&&Object.prototype.hasOwnProperty.call(E,"default")?E.default:E}var zt={},bE;function kn(){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,I=e.length,D=function(h,oe){return function(){return oe.apply(this,h.concat(o.call(arguments)))}},O=function(){var h=o.call(arguments);return h.length<I?D(h,O):e.apply(this,o.apply(arguments,[0,I]))};return O}var N=function(e,o){for(var I=0;I<o.length;I+=1)e(o[I],I,o)},i=function(e,o,I){var D=o;return N(function(O,h){D=e(D,O,h)},I),D},u=function(e,o){var I=new Array(o.length);return N(function(D,O){I[O]=e(D)},o),I},l=function(e,o){var I=[];return N(function(D,O){e(D,O)&&I.push(D)},o),I},d=function(e,o){for(var I=0;I<e.length;I+=1)if(e[I]===o)return!0;return!1};function M(e){return function(){return e}}function m(e){return e.toString()}var v=function(e,o){return o.join(e)},f=function(e,o,I){return e+I+o},k=Array.prototype.concat,Z=function(e,o){var I=new Ae;I.addArray(e);var D=I.toArray();return o?D.reverse():D},ee=32767;function pe(e){for(var o=[],I=0;I<e.length;I+=ee){var D=e.slice(I,I+ee);o=k.apply(o,D)}return o}function Le(e,o){for(var I=Object(e),D=1;D<arguments.length;D++){var O=arguments[D];if(O!=null)for(var h in O)Object.prototype.hasOwnProperty.call(O,h)&&(I[h]=O[h])}return I}var V={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 ce(e[0],e[2])},this.reduceActions[5]=function(e){return new W(e[0],e[2])},this.reduceActions[7]=function(e){return new re(e[0],e[2])},this.reduceActions[8]=function(e){return new Se(e[0],e[2])},this.reduceActions[10]=function(e){return new ue(e[0],e[2])},this.reduceActions[11]=function(e){return new le(e[0],e[2])},this.reduceActions[12]=function(e){return new he(e[0],e[2])},this.reduceActions[13]=function(e){return new Te(e[0],e[2])},this.reduceActions[15]=function(e){return new ge(e[0],e[2])},this.reduceActions[16]=function(e){return new J(e[0],e[2])},this.reduceActions[18]=function(e){return new Ee(e[0],e[2])},this.reduceActions[19]=function(e){return new p(e[0],e[2])},this.reduceActions[20]=function(e){return new P(e[0],e[2])},this.reduceActions[22]=function(e){return new te(e[1])},this.reduceActions[24]=function(e){return new U(e[0],e[2])},this.reduceActions[25]=function(e){return new g(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 b(b.DESCENDANTORSELF,c.nodeTest,[])),e[0]},this.reduceActions[29]=function(e){return new g(e[0],[],void 0)},this.reduceActions[30]=function(e){return Ie.instance_of(e[0],g)?(e[0].filterPredicates==null&&(e[0].filterPredicates=[]),e[0].filterPredicates.push(e[1]),e[0]):new g(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 Y(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 _e(!0,[])},this.reduceActions[44]=function(e){return e[1].absolute=!0,e[1]},this.reduceActions[46]=function(e){return new _e(!1,[e[0]])},this.reduceActions[47]=function(e){return e[0].steps.push(e[2]),e[0]},this.reduceActions[49]=function(e){return new b(e[0],e[1],[])},this.reduceActions[50]=function(e){return new b(b.CHILD,e[0],[])},this.reduceActions[51]=function(e){return new b(e[0],e[1],e[2])},this.reduceActions[52]=function(e){return new b(b.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"?b.ANCESTOR:e[0]=="ancestor-or-self"?b.ANCESTORORSELF:e[0]=="attribute"?b.ATTRIBUTE:e[0]=="child"?b.CHILD:e[0]=="descendant"?b.DESCENDANT:e[0]=="descendant-or-self"?b.DESCENDANTORSELF:e[0]=="following"?b.FOLLOWING:e[0]=="following-sibling"?b.FOLLOWINGSIBLING:e[0]=="namespace"?b.NAMESPACE:e[0]=="parent"?b.PARENT:e[0]=="preceding"?b.PRECEDING:e[0]=="preceding-sibling"?b.PRECEDINGSIBLING:e[0]=="self"?b.SELF:-1},this.reduceActions[57]=function(e){return b.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 b(b.DESCENDANTORSELF,c.nodeTest,[])),e[1]},this.reduceActions[64]=function(e){return e[0].steps.push(new b(b.DESCENDANTORSELF,c.nodeTest,[])),e[0].steps.push(e[2]),e[0]},this.reduceActions[65]=function(e){return new b(b.SELF,c.nodeTest,[])},this.reduceActions[66]=function(e){return new b(b.PARENT,c.nodeTest,[])},this.reduceActions[67]=function(e){return new z(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=[],I=[],D=e+"\0",O=0,h=D.charAt(O++);;){for(;h==" "||h==" "||h=="\r"||h==`
|
|
9
|
+
`;)h=D.charAt(O++);if(h=="\0"||O>=D.length)break;if(h=="("){o.push(L.LEFTPARENTHESIS),I.push(h),h=D.charAt(O++);continue}if(h==")"){o.push(L.RIGHTPARENTHESIS),I.push(h),h=D.charAt(O++);continue}if(h=="["){o.push(L.LEFTBRACKET),I.push(h),h=D.charAt(O++);continue}if(h=="]"){o.push(L.RIGHTBRACKET),I.push(h),h=D.charAt(O++);continue}if(h=="@"){o.push(L.AT),I.push(h),h=D.charAt(O++);continue}if(h==","){o.push(L.COMMA),I.push(h),h=D.charAt(O++);continue}if(h=="|"){o.push(L.BAR),I.push(h),h=D.charAt(O++);continue}if(h=="+"){o.push(L.PLUS),I.push(h),h=D.charAt(O++);continue}if(h=="-"){o.push(L.MINUS),I.push(h),h=D.charAt(O++);continue}if(h=="="){o.push(L.EQUALS),I.push(h),h=D.charAt(O++);continue}if(h=="$"){o.push(L.DOLLAR),I.push(h),h=D.charAt(O++);continue}if(h=="."){if(h=D.charAt(O++),h=="."){o.push(L.DOUBLEDOT),I.push(".."),h=D.charAt(O++);continue}if(h>="0"&&h<="9"){var oe="."+h;for(h=D.charAt(O++);h>="0"&&h<="9";)oe+=h,h=D.charAt(O++);o.push(L.NUMBER),I.push(oe);continue}o.push(L.DOT),I.push(".");continue}if(h=="'"||h=='"'){for(var Ue=h,me="";O<D.length&&(h=D.charAt(O))!==Ue;)me+=h,O+=1;if(h!==Ue)throw qe.fromMessage("Unterminated string literal: "+Ue+me);O+=1,o.push(L.LITERAL),I.push(me),h=D.charAt(O++);continue}if(h>="0"&&h<="9"){var oe=h;for(h=D.charAt(O++);h>="0"&&h<="9";)oe+=h,h=D.charAt(O++);if(h=="."&&D.charAt(O)>="0"&&D.charAt(O)<="9")for(oe+=h,oe+=D.charAt(O++),h=D.charAt(O++);h>="0"&&h<="9";)oe+=h,h=D.charAt(O++);o.push(L.NUMBER),I.push(oe);continue}if(h=="*"){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),I.push(h),h=D.charAt(O++);continue}}o.push(L.ASTERISKNAMETEST),I.push(h),h=D.charAt(O++);continue}if(h==":"&&D.charAt(O)==":"){o.push(L.DOUBLECOLON),I.push("::"),O++,h=D.charAt(O++);continue}if(h=="/"){if(h=D.charAt(O++),h=="/"){o.push(L.DOUBLESLASH),I.push("//"),h=D.charAt(O++);continue}o.push(L.SLASH),I.push("/");continue}if(h=="!"&&D.charAt(O)=="="){o.push(L.NOTEQUAL),I.push("!="),O++,h=D.charAt(O++);continue}if(h=="<"){if(D.charAt(O)=="="){o.push(L.LESSTHANOREQUAL),I.push("<="),O++,h=D.charAt(O++);continue}o.push(L.LESSTHAN),I.push("<"),h=D.charAt(O++);continue}if(h==">"){if(D.charAt(O)=="="){o.push(L.GREATERTHANOREQUAL),I.push(">="),O++,h=D.charAt(O++);continue}o.push(L.GREATERTHAN),I.push(">"),h=D.charAt(O++);continue}if(h=="_"||Ie.isLetter(h.charCodeAt(0))){var Re=h;for(h=D.charAt(O++);Ie.isNCNameChar(h.charCodeAt(0));)Re+=h,h=D.charAt(O++);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(Re=="and"){o.push(L.AND),I.push(Re);continue}if(Re=="or"){o.push(L.OR),I.push(Re);continue}if(Re=="mod"){o.push(L.MOD),I.push(Re);continue}if(Re=="div"){o.push(L.DIV),I.push(Re);continue}}}if(h==":"){if(D.charAt(O)=="*"){o.push(L.NCNAMECOLONASTERISK),I.push(Re+":*"),O++,h=D.charAt(O++);continue}if(D.charAt(O)=="_"||Ie.isLetter(D.charCodeAt(O))){for(Re+=":",h=D.charAt(O++);Ie.isNCNameChar(h.charCodeAt(0));)Re+=h,h=D.charAt(O++);if(h=="("){o.push(L.FUNCTIONNAME),I.push(Re);continue}o.push(L.QNAME),I.push(Re);continue}if(D.charAt(O)==":"){o.push(L.AXISNAME),I.push(Re);continue}}if(h=="("){if(Re=="comment"||Re=="text"||Re=="node"){o.push(L.NODETYPE),I.push(Re);continue}if(Re=="processing-instruction"){D.charAt(O)==")"?o.push(L.NODETYPE):o.push(L.PROCESSINGINSTRUCTIONWITHLITERAL),I.push(Re);continue}o.push(L.FUNCTIONNAME),I.push(Re);continue}o.push(L.QNAME),I.push(Re);continue}throw new Error("Unexpected character "+h)}return o.push(1),I.push("[EOF]"),[o,I]},L.SHIFT="s",L.REDUCE="r",L.ACCEPT="a",L.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,I,D=this.tokenize(me);if(D!=null){o=D[0],I=D[1];var O=0,h=[],oe=[],Ue=[],me,ae,Re;for(h.push(0),oe.push(1),Ue.push("_S"),ae=o[O],Re=I[O++];;)switch(me=h[h.length-1],L.actionTable[me].charAt(ae-1)){case L.SHIFT:oe.push(-ae),Ue.push(Re),h.push(L.actionTableNumber[me].charCodeAt(ae-1)-32),ae=o[O],Re=I[O++];break;case L.REDUCE:for(var Ke=L.productions[L.actionTableNumber[me].charCodeAt(ae-1)-32][1],ze=[],He=0;He<Ke;He++)oe.pop(),ze.unshift(Ue.pop()),h.pop();var ot=h[h.length-1];oe.push(L.productions[L.actionTableNumber[me].charCodeAt(ae-1)-32][0]),this.reduceActions[L.actionTableNumber[me].charCodeAt(ae-1)-32]==null?Ue.push(ze[0]):Ue.push(this.reduceActions[L.actionTableNumber[me].charCodeAt(ae-1)-32](ze)),h.push(L.gotoTable[ot].charCodeAt(L.productions[L.actionTableNumber[me].charCodeAt(ae-1)-32][0]-2)-33);break;case L.ACCEPT:return new X(Ue.pop());default:throw new Error("XPath parse error")}}},X.prototype=new Object,X.prototype.constructor=X,X.superclass=Object.prototype;function X(e){this.expression=e}X.prototype.toString=function(){return this.expression.toString()};function B(e,o,I){o in e||(e[o]=I)}X.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&&(B(e,"caseInsensitive",!0),B(e,"allowAnyNamespaceForNoPrefix",!0)),B(e,"caseInsensitive",!1),this.expression.evaluate(e)},X.XML_NAMESPACE_URI="http://www.w3.org/XML/1998/namespace",X.XMLNS_NAMESPACE_URI="http://www.w3.org/2000/xmlns/",H.prototype=new Object,H.prototype.constructor=H,H.superclass=Object.prototype;function H(){}H.prototype.init=function(){},H.prototype.toString=function(){return"<Expression>"},H.prototype.evaluate=function(e){throw new Error("Could not evaluate expression.")},ne.prototype=new H,ne.prototype.constructor=ne,ne.superclass=H.prototype;function ne(e){arguments.length>0&&this.init(e)}ne.prototype.init=function(e){this.rhs=e},te.prototype=new ne,te.prototype.constructor=te,te.superclass=ne.prototype;function te(e){arguments.length>0&&this.init(e)}te.prototype.init=function(e){te.superclass.init.call(this,e)},te.prototype.evaluate=function(e){return this.rhs.evaluate(e).number().negate()},te.prototype.toString=function(){return"-"+this.rhs.toString()},Q.prototype=new H,Q.prototype.constructor=Q,Q.superclass=H.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()},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.toString=function(){return"("+this.lhs.toString()+" and "+this.rhs.toString()+")"},W.prototype.evaluate=function(e){var o=this.lhs.evaluate(e).bool();return o.booleanValue()?this.rhs.evaluate(e).bool():o},re.prototype=new Q,re.prototype.constructor=re,re.superclass=Q.prototype;function re(e,o){arguments.length>0&&this.init(e,o)}re.prototype.init=function(e,o){re.superclass.init.call(this,e,o)},re.prototype.toString=function(){return"("+this.lhs.toString()+" = "+this.rhs.toString()+")"},re.prototype.evaluate=function(e){return this.lhs.evaluate(e).equals(this.rhs.evaluate(e))},Se.prototype=new Q,Se.prototype.constructor=Se,Se.superclass=Q.prototype;function Se(e,o){arguments.length>0&&this.init(e,o)}Se.prototype.init=function(e,o){Se.superclass.init.call(this,e,o)},Se.prototype.toString=function(){return"("+this.lhs.toString()+" != "+this.rhs.toString()+")"},Se.prototype.evaluate=function(e){return this.lhs.evaluate(e).notequal(this.rhs.evaluate(e))},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).lessthan(this.rhs.evaluate(e))},ue.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()+")"},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).lessthanorequal(this.rhs.evaluate(e))},he.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()+")"},ge.prototype=new Q,ge.prototype.constructor=ge,ge.superclass=Q.prototype;function ge(e,o){arguments.length>0&&this.init(e,o)}ge.prototype.init=function(e,o){ge.superclass.init.call(this,e,o)},ge.prototype.evaluate=function(e){return this.lhs.evaluate(e).number().plus(this.rhs.evaluate(e).number())},ge.prototype.toString=function(){return"("+this.lhs.toString()+" + "+this.rhs.toString()+")"},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).number().minus(this.rhs.evaluate(e).number())},J.prototype.toString=function(){return"("+this.lhs.toString()+" - "+this.rhs.toString()+")"},Ee.prototype=new Q,Ee.prototype.constructor=Ee,Ee.superclass=Q.prototype;function Ee(e,o){arguments.length>0&&this.init(e,o)}Ee.prototype.init=function(e,o){Ee.superclass.init.call(this,e,o)},Ee.prototype.evaluate=function(e){return this.lhs.evaluate(e).number().multiply(this.rhs.evaluate(e).number())},Ee.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().div(this.rhs.evaluate(e).number())},p.prototype.toString=function(){return"("+this.lhs.toString()+" div "+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().mod(this.rhs.evaluate(e).number())},P.prototype.toString=function(){return"("+this.lhs.toString()+" mod "+this.rhs.toString()+")"},U.prototype=new Q,U.prototype.constructor=U,U.superclass=Q.prototype;function U(e,o){arguments.length>0&&this.init(e,o)}U.prototype.init=function(e,o){U.superclass.init.call(this,e,o)},U.prototype.evaluate=function(e){return this.lhs.evaluate(e).nodeset().union(this.rhs.evaluate(e).nodeset())},U.prototype.toString=function(){return u(m,[this.lhs,this.rhs]).join(" | ")},g.prototype=new H,g.prototype.constructor=g,g.superclass=H.prototype;function g(e,o,I){arguments.length>0&&this.init(e,o,I)}g.prototype.init=function(e,o,I){g.superclass.init.call(this),this.filter=e,this.filterPredicates=o,this.locationPath=I};function $(e){for(;e&&e.parentNode;)e=e.parentNode;return e}var q=function(e,o,I,D){if(e.length===0)return I;var O=o.extend({});return i(function(h,oe){return O.contextSize=h.length,l(function(Ue,me){return O.contextNode=Ue,O.contextPosition=me+1,g.predicateMatches(oe,O)},h)},Z(I,D),e)};g.getRoot=function(e,o){var I=o[0];if(I&&I.nodeType===V.DOCUMENT_NODE)return I;if(e.virtualRoot)return e.virtualRoot;if(!I)throw new Error("Context node not found when determining document root.");var D=I.ownerDocument;if(D)return D;for(var O=I;O.parentNode!=null;)O=O.parentNode;return O};var j=function(e){var o=String(e.name);return o==="xmlns"?"":o.substring(0,6)==="xmlns:"?o.substring(6,o.length):null};g.applyStep=function(e,o,I){if(!I)throw new Error("Context node not found when evaluating XPath step: "+e);var D=[];switch(o.contextNode=I,e.axis){case b.ANCESTOR:if(o.contextNode===o.virtualRoot)break;var O;for(o.contextNode.nodeType==V.ATTRIBUTE_NODE?O=g.getOwnerElement(o.contextNode):O=o.contextNode.parentNode;O!=null&&(e.nodeTest.matches(O,o)&&D.push(O),O!==o.virtualRoot);)O=O.parentNode;break;case b.ANCESTORORSELF:for(var O=o.contextNode;O!=null&&(e.nodeTest.matches(O,o)&&D.push(O),O!==o.virtualRoot);O=O.nodeType==V.ATTRIBUTE_NODE?g.getOwnerElement(O):O.parentNode);break;case b.ATTRIBUTE:var h=o.contextNode.attributes;if(h!=null)for(var oe=0;oe<h.length;oe++){var O=h.item(oe);e.nodeTest.matches(O,o)&&D.push(O)}break;case b.CHILD:for(var O=o.contextNode.firstChild;O!=null;O=O.nextSibling)e.nodeTest.matches(O,o)&&D.push(O);break;case b.DESCENDANT:for(var Re=[o.contextNode.firstChild];Re.length>0;)for(var O=Re.pop();O!=null;)e.nodeTest.matches(O,o)&&D.push(O),O.firstChild!=null?(Re.push(O.nextSibling),O=O.firstChild):O=O.nextSibling;break;case b.DESCENDANTORSELF:e.nodeTest.matches(o.contextNode,o)&&D.push(o.contextNode);for(var Re=[o.contextNode.firstChild];Re.length>0;)for(var O=Re.pop();O!=null;)e.nodeTest.matches(O,o)&&D.push(O),O.firstChild!=null?(Re.push(O.nextSibling),O=O.firstChild):O=O.nextSibling;break;case b.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 O=o.contextNode.parentNode;O!=null&&O.nodeType!=V.DOCUMENT_NODE&&O!==o.virtualRoot;O=O.parentNode)Re.unshift(O.nextSibling);do for(var O=Re.pop();O!=null;)e.nodeTest.matches(O,o)&&D.push(O),O.firstChild!=null?(Re.push(O.nextSibling),O=O.firstChild):O=O.nextSibling;while(Re.length>0);break;case b.FOLLOWINGSIBLING:if(o.contextNode===o.virtualRoot)break;for(var O=o.contextNode.nextSibling;O!=null;O=O.nextSibling)e.nodeTest.matches(O,o)&&D.push(O);break;case b.NAMESPACE:var Ue={};if(o.contextNode.nodeType==V.ELEMENT_NODE){Ue.xml=new st("xml",null,X.XML_NAMESPACE_URI,o.contextNode);for(var O=o.contextNode;O!=null&&O.nodeType==V.ELEMENT_NODE;O=O.parentNode)for(var oe=0;oe<O.attributes.length;oe++){var me=O.attributes.item(oe),ae=j(me);ae!=null&&Ue[ae]==null&&(Ue[ae]=new st(ae,me,me.value,o.contextNode))}for(var ae in Ue){var I=Ue[ae];e.nodeTest.matches(I,o)&&D.push(I)}}break;case b.PARENT:O=null,o.contextNode!==o.virtualRoot&&(o.contextNode.nodeType==V.ATTRIBUTE_NODE?O=g.getOwnerElement(o.contextNode):O=o.contextNode.parentNode),O!=null&&e.nodeTest.matches(O,o)&&D.push(O);break;case b.PRECEDING:var Re;o.virtualRoot!=null?Re=[o.virtualRoot]:Re=[$(o.contextNode)];e:for(;Re.length>0;)for(var O=Re.pop();O!=null;){if(O==o.contextNode)break e;e.nodeTest.matches(O,o)&&D.unshift(O),O.firstChild!=null?(Re.push(O.nextSibling),O=O.firstChild):O=O.nextSibling}break;case b.PRECEDINGSIBLING:if(o.contextNode===o.virtualRoot)break;for(var O=o.contextNode.previousSibling;O!=null;O=O.previousSibling)e.nodeTest.matches(O,o)&&D.push(O);break;case b.SELF:e.nodeTest.matches(o.contextNode,o)&&D.push(o.contextNode);break}return D};function ie(e,o,I){return q(e.predicates,o,g.applyStep(e,o,I),d(fe,e.axis))}function Ne(e,o,I){return pe(u(ie.bind(null,I,e),o))}g.applySteps=function(e,o,I){return i(Ne.bind(null,o),I,e)},g.prototype.applyFilter=function(e,o){if(!this.filter)return{nodes:[e.contextNode]};var I=this.filter.evaluate(e);if(!Ie.instance_of(I,Ae)){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:I}}return{nodes:q(this.filterPredicates||[],o,I.toUnsortedArray(),!1)}},g.applyLocationPath=function(e,o,I){if(!e)return I;var D=e.absolute?[g.getRoot(o,I)]:I;return g.applySteps(e.steps,o,D)},g.prototype.evaluate=function(e){var o=Le(new Ze,e),I=this.applyFilter(e,o);if("nonNodes"in I)return I.nonNodes;var D=new Ae;return D.addArray(g.applyLocationPath(this.locationPath,o,I.nodes)),D},g.predicateMatches=function(e,o){var I=e.evaluate(o);return Ie.instance_of(I,Y)?o.contextPosition===I.numberValue():I.booleanValue()},g.predicateString=function(e){return f("[","]",e.toString())},g.predicatesString=function(e){return v("",u(g.predicateString,e))},g.prototype.toString=function(){if(this.filter!=null){var e=m(this.filter);return Ie.instance_of(this.filter,F)?f("'","'",e):this.filterPredicates!=null&&this.filterPredicates.length?f("(",")",e)+g.predicatesString(this.filterPredicates):this.locationPath!=null?e+(this.locationPath.absolute?"":"/")+m(this.locationPath):e}return m(this.locationPath)},g.getOwnerElement=function(e){if(e.ownerElement)return e.ownerElement;try{if(e.selectSingleNode)return e.selectSingleNode("..")}catch{}for(var o=e.nodeType==V.DOCUMENT_NODE?e:e.ownerDocument,I=o.getElementsByTagName("*"),D=0;D<I.length;D++)for(var O=I.item(D),h=O.attributes,oe=0;oe<h.length;oe++){var Ue=h.item(oe);if(Ue===e)return O}return null},_e.prototype=new Object,_e.prototype.constructor=_e,_e.superclass=Object.prototype;function _e(e,o){arguments.length>0&&this.init(e,o)}_e.prototype.init=function(e,o){this.absolute=e,this.steps=o},_e.prototype.toString=function(){return(this.absolute?"/":"")+u(m,this.steps).join("/")},b.prototype=new Object,b.prototype.constructor=b,b.superclass=Object.prototype;function b(e,o,I){arguments.length>0&&this.init(e,o,I)}b.prototype.init=function(e,o,I){this.axis=e,this.nodeTest=o,this.predicates=I},b.prototype.toString=function(){return b.STEPNAMES[this.axis]+"::"+this.nodeTest.toString()+g.predicatesString(this.predicates)},b.ANCESTOR=0,b.ANCESTORORSELF=1,b.ATTRIBUTE=2,b.CHILD=3,b.DESCENDANT=4,b.DESCENDANTORSELF=5,b.FOLLOWING=6,b.FOLLOWINGSIBLING=7,b.NAMESPACE=8,b.PARENT=9,b.PRECEDING=10,b.PRECEDINGSIBLING=11,b.SELF=12,b.STEPNAMES=i(function(e,o){return e[o[0]]=o[1],e},{},[[b.ANCESTOR,"ancestor"],[b.ANCESTORORSELF,"ancestor-or-self"],[b.ATTRIBUTE,"attribute"],[b.CHILD,"child"],[b.DESCENDANT,"descendant"],[b.DESCENDANTORSELF,"descendant-or-self"],[b.FOLLOWING,"following"],[b.FOLLOWINGSIBLING,"following-sibling"],[b.NAMESPACE,"namespace"],[b.PARENT,"parent"],[b.PRECEDING,"preceding"],[b.PRECEDINGSIBLING,"preceding-sibling"],[b.SELF,"self"]]);var fe=[b.ANCESTOR,b.ANCESTORORSELF,b.PARENT,b.PRECEDING,b.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,I){var D=I||function(){};return D.prototype=new c(e),D.prototype.constructor=D,Le(D.prototype,o),D},c.makeNodeTypeTest=function(e,o,I){return new(c.makeNodeTestType(e,{matches:c.isNodeType(o),toString:M(I)}))},c.hasPrefix=function(e){return e.prefix||(e.nodeName||e.tagName).indexOf(":")!==-1},c.isElementOrAttribute=c.isNodeType([1,2]),c.nameSpaceMatches=function(e,o,I){var D=I.namespaceURI||"";if(!e)return!D||o.allowAnyNamespaceForNoPrefix&&!c.hasPrefix(I);var O=o.namespaceResolver.getNamespace(e,o.expressionContextNode);if(O==null)throw new Error("Cannot resolve QName "+e);return O===D},c.localNameMatches=function(e,o,I){var D=I.localName||I.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([V.ELEMENT_NODE,V.ATTRIBUTE_NODE,V.NAMESPACE_NODE])(e)&&c.nameSpaceMatches(this.prefix,o,e)&&c.localNameMatches(this.localName,o,e)},toString:function(){return this.name}},function(o){var I=o.split(":");this.name=o,this.prefix=I.length>1?I[0]:null,this.localName=I[I.length>1?1:0]}),c.PITest=c.makeNodeTestType(c.PI,{matches:function(e,o){return c.isNodeType([V.PROCESSING_INSTRUCTION_NODE])(e)&&(e.target||e.nodeName)===this.name},toString:function(){return f('processing-instruction("','")',this.name)}},function(e){this.name=e}),c.nameTestAny=c.makeNodeTypeTest(c.NAMETESTANY,[V.ELEMENT_NODE,V.ATTRIBUTE_NODE,V.NAMESPACE_NODE],"*"),c.textTest=c.makeNodeTypeTest(c.TEXT,[V.TEXT_NODE,V.CDATA_SECTION_NODE],"text()"),c.commentTest=c.makeNodeTypeTest(c.COMMENT,[V.COMMENT_NODE],"comment()"),c.nodeTest=c.makeNodeTypeTest(c.NODE,[V.ELEMENT_NODE,V.ATTRIBUTE_NODE,V.TEXT_NODE,V.CDATA_SECTION_NODE,V.PROCESSING_INSTRUCTION_NODE,V.COMMENT_NODE,V.DOCUMENT_NODE],"node()"),c.anyPiTest=c.makeNodeTypeTest(c.PI,[V.PROCESSING_INSTRUCTION_NODE],"processing-instruction()"),z.prototype=new H,z.prototype.constructor=z,z.superclass=H.prototype;function z(e){arguments.length>0&&this.init(e)}z.prototype.init=function(e){this.variable=e},z.prototype.toString=function(){return"$"+this.variable},z.prototype.evaluate=function(e){var o=Ie.resolveQName(this.variable,e.namespaceResolver,e.contextNode,!1);if(o[0]==null)throw new Error("Cannot resolve QName "+fn);var I=e.variableResolver.getVariable(o[1],o[0]);if(!I)throw qe.fromMessage("Undeclared variable: "+this.toString());return I},Be.prototype=new H,Be.prototype.constructor=Be,Be.superclass=H.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 I=[e].concat(this.arguments);return o.apply(e.functionResolver.thisArg,I)};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 H,F.prototype.constructor=F,F.superclass=H.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 Y(this.str)},F.prototype.bool=function(){return new Oe(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 Ie.instance_of(e,Oe)?this.bool().equals(e):Ie.instance_of(e,Y)?this.number().equals(e):Ie.instance_of(e,Ae)?e.compareWithString(this,de.equals):new Oe(this.str==e.str)},F.prototype.notequal=function(e){return Ie.instance_of(e,Oe)?this.bool().notequal(e):Ie.instance_of(e,Y)?this.number().notequal(e):Ie.instance_of(e,Ae)?e.compareWithString(this,de.notequal):new Oe(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)},Y.prototype=new H,Y.prototype.constructor=Y,Y.superclass=H.prototype;function Y(e){arguments.length>0&&this.init(e)}Y.prototype.init=function(e){this.num=typeof e=="string"?this.parse(e):Number(e)},Y.prototype.numberFormat=/^\s*-?[0-9]*\.?[0-9]+\s*$/,Y.prototype.parse=function(e){return this.numberFormat.test(e)?parseFloat(e):Number.NaN};function ve(e){for(var o=e.split("e-"),I=o[0].replace(".",""),D=Number(o[1]),O=0;O<D-1;O+=1)I="0"+I;return"0."+I}function Qe(e){for(var o=e.split("e"),I=o[0].replace(".",""),D=Number(o[1]),O=D+1-I.length,h=0;h<O;h+=1)I+="0";return I}Y.prototype.toString=function(){var e=this.num.toString();return e.indexOf("e-")!==-1?ve(e):e.indexOf("e")!==-1?Qe(e):e},Y.prototype.evaluate=function(e){return this},Y.prototype.string=function(){return new F(this.toString())},Y.prototype.number=function(){return this},Y.prototype.bool=function(){return new Oe(this.num)},Y.prototype.nodeset=function(){throw new Error("Cannot convert number to nodeset")},Y.prototype.stringValue=function(){return this.string().stringValue()},Y.prototype.numberValue=function(){return this.num},Y.prototype.booleanValue=function(){return this.bool().booleanValue()},Y.prototype.negate=function(){return new Y(-this.num)},Y.prototype.equals=function(e){return Ie.instance_of(e,Oe)?this.bool().equals(e):Ie.instance_of(e,F)?this.equals(e.number()):Ie.instance_of(e,Ae)?e.compareWithNumber(this,de.equals):new Oe(this.num==e.num)},Y.prototype.notequal=function(e){return Ie.instance_of(e,Oe)?this.bool().notequal(e):Ie.instance_of(e,F)?this.notequal(e.number()):Ie.instance_of(e,Ae)?e.compareWithNumber(this,de.notequal):new Oe(this.num!=e.num)},Y.prototype.lessthan=function(e){return Ie.instance_of(e,Ae)?e.compareWithNumber(this,de.greaterthan):Ie.instance_of(e,Oe)||Ie.instance_of(e,F)?this.lessthan(e.number()):new Oe(this.num<e.num)},Y.prototype.greaterthan=function(e){return Ie.instance_of(e,Ae)?e.compareWithNumber(this,de.lessthan):Ie.instance_of(e,Oe)||Ie.instance_of(e,F)?this.greaterthan(e.number()):new Oe(this.num>e.num)},Y.prototype.lessthanorequal=function(e){return Ie.instance_of(e,Ae)?e.compareWithNumber(this,de.greaterthanorequal):Ie.instance_of(e,Oe)||Ie.instance_of(e,F)?this.lessthanorequal(e.number()):new Oe(this.num<=e.num)},Y.prototype.greaterthanorequal=function(e){return Ie.instance_of(e,Ae)?e.compareWithNumber(this,de.lessthanorequal):Ie.instance_of(e,Oe)||Ie.instance_of(e,F)?this.greaterthanorequal(e.number()):new Oe(this.num>=e.num)},Y.prototype.plus=function(e){return new Y(this.num+e.num)},Y.prototype.minus=function(e){return new Y(this.num-e.num)},Y.prototype.multiply=function(e){return new Y(this.num*e.num)},Y.prototype.div=function(e){return new Y(this.num/e.num)},Y.prototype.mod=function(e){return new Y(this.num%e.num)},Oe.prototype=new H,Oe.prototype.constructor=Oe,Oe.superclass=H.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 F(this.b)},Oe.prototype.number=function(){return new Y(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 Ie.instance_of(e,F)||Ie.instance_of(e,Y)?this.equals(e.bool()):Ie.instance_of(e,Ae)?e.compareWithBoolean(this,de.equals):new Oe(this.b==e.b)},Oe.prototype.notequal=function(e){return Ie.instance_of(e,F)||Ie.instance_of(e,Y)?this.notequal(e.bool()):Ie.instance_of(e,Ae)?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 I=this.left.left==null?0:this.left.left.depth,D=this.left.right==null?0:this.left.right.depth;I<D&&this.left.rotateRR(),this.rotateLL()}else if(e+1<o){var O=this.right.right==null?0:this.right.right.depth,h=this.right.left==null?0:this.right.left.depth;h>O&&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 Ht(e,o){if(e===o)return 0;if(e.compareDocumentPosition){var I=e.compareDocumentPosition(o);return I&1||I&10?1:I&20?-1:0}for(var D=0,O=0,h=e;h!=null;h=h.parentNode||h.ownerElement)D++;for(var oe=o;oe!=null;oe=oe.parentNode||oe.ownerElement)O++;if(D>O){for(;D>O;)e=e.parentNode||e.ownerElement,D--;if(e===o)return 1}else if(O>D){for(;O>D;)o=o.parentNode||o.ownerElement,O--;if(e===o)return-1}for(var Ue=e.parentNode||e.ownerElement,me=o.parentNode||o.ownerElement;Ue!==me;)e=Ue,o=me,Ue=e.parentNode||e.ownerElement,me=o.parentNode||o.ownerElement;var ae=bt(e),Re=bt(o);if(ae&&!Re)return-1;if(!ae&&Re)return 1;if(e.isXPathNamespace){if(e.nodeValue===X.XML_NAMESPACE_URI||!o.isXPathNamespace)return-1;if(o.nodeValue===X.XML_NAMESPACE_URI)return 1}else if(o.isXPathNamespace)return 1;if(Ue)for(var Ke=ae?Ue.attributes:Ue.childNodes,ze=Ke.length,He=e.baseNode||e,ot=o.baseNode||o,tt=0;tt<ze;tt+=1){var lt=Ke[tt];if(lt===He)return-1;if(lt===ot)return 1}throw new Error("Unexpected: could not determine node order")}we.prototype.add=function(e){if(e===this.node)return!1;var o=Ht(e,this.node),I=!1;return o==-1?this.left==null?(this.left=new we(e),I=!0):(I=this.left.add(e),I&&this.balance()):o==1&&(this.right==null?(this.right=new we(e),I=!0):(I=this.right.add(e),I&&this.balance())),I&&this.getDepthFromChildren(),I},Ae.prototype=new H,Ae.prototype.constructor=Ae,Ae.superclass=H.prototype;function Ae(){this.init()}Ae.prototype.init=function(){this.tree=null,this.nodes=[],this.size=0},Ae.prototype.toString=function(){var e=this.first();return e==null?"":this.stringForNode(e)},Ae.prototype.evaluate=function(e){return this},Ae.prototype.string=function(){return new F(this.toString())},Ae.prototype.stringValue=function(){return this.toString()},Ae.prototype.number=function(){return new Y(this.string())},Ae.prototype.numberValue=function(){return Number(this.string())},Ae.prototype.bool=function(){return new Oe(this.booleanValue())},Ae.prototype.booleanValue=function(){return!!this.size},Ae.prototype.nodeset=function(){return this},Ae.prototype.stringForNode=function(e){return e.nodeType==V.DOCUMENT_NODE||e.nodeType==V.ELEMENT_NODE||e.nodeType===V.DOCUMENT_FRAGMENT_NODE?this.stringForContainerNode(e):e.nodeType===V.ATTRIBUTE_NODE?e.value||e.nodeValue:e.isNamespaceNode?e.namespace:e.nodeValue},Ae.prototype.stringForContainerNode=function(e){for(var o="",I=e.firstChild;I!=null;I=I.nextSibling){var D=I.nodeType;(D===1||D===3||D===4||D===9||D===11)&&(o+=this.stringForNode(I))}return o},Ae.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},Ae.prototype.first=function(){var e=this.buildTree();if(e==null)return null;for(;e.left!=null;)e=e.left;return e.node},Ae.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},Ae.prototype.addArray=function(e){var o=this;N(function(I){o.add(I)},e)},Ae.prototype.toArray=function(){var e=[];return this.toArrayRec(this.buildTree(),e),e},Ae.prototype.toArrayRec=function(e,o){e!=null&&(this.toArrayRec(e.left,o),o.push(e.node),this.toArrayRec(e.right,o))},Ae.prototype.toUnsortedArray=function(){return this.nodes.slice()},Ae.prototype.compareWithString=function(e,o){for(var I=this.toUnsortedArray(),D=0;D<I.length;D++){var O=I[D],h=new F(this.stringForNode(O)),oe=o(h,e);if(oe.booleanValue())return oe}return new Oe(!1)},Ae.prototype.compareWithNumber=function(e,o){for(var I=this.toUnsortedArray(),D=0;D<I.length;D++){var O=I[D],h=new Y(this.stringForNode(O)),oe=o(h,e);if(oe.booleanValue())return oe}return new Oe(!1)},Ae.prototype.compareWithBoolean=function(e,o){return o(this.bool(),e)},Ae.prototype.compareWithNodeSet=function(e,o){for(var I=this.toUnsortedArray(),D=function(Ue,me){return o(me,Ue)},O=0;O<I.length;O++){var h=new F(this.stringForNode(I[O])),oe=e.compareWithString(h,D);if(oe.booleanValue())return oe}return new Oe(!1)},Ae.compareWith=C(function(e,o){return Ie.instance_of(o,F)?this.compareWithString(o,e):Ie.instance_of(o,Y)?this.compareWithNumber(o,e):Ie.instance_of(o,Oe)?this.compareWithBoolean(o,e):this.compareWithNodeSet(o,e)}),Ae.prototype.equals=Ae.compareWith(de.equals),Ae.prototype.notequal=Ae.compareWith(de.notequal),Ae.prototype.lessthan=Ae.compareWith(de.lessthan),Ae.prototype.greaterthan=Ae.compareWith(de.greaterthan),Ae.prototype.lessthanorequal=Ae.compareWith(de.lessthanorequal),Ae.prototype.greaterthanorequal=Ae.compareWith(de.greaterthanorequal),Ae.prototype.union=function(e){var o=new Ae;return o.addArray(this.toUnsortedArray()),o.addArray(e.toUnsortedArray()),o},st.prototype=new Object,st.prototype.constructor=st,st.superclass=Object.prototype;function st(e,o,I,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=I,this.ownerElement=D,this.nodeType=V.NAMESPACE_NODE}st.prototype.toString=function(){return'{ "'+this.prefix+'", "'+this.namespaceURI+'" }'},Ze.prototype=new Object,Ze.prototype.constructor=Ze,Ze.superclass=Object.prototype;function Ze(e,o,I){this.variableResolver=e??new et,this.namespaceResolver=o??new je,this.functionResolver=I??new Xe}Ze.prototype.extend=function(e){return Le(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??De,this.functions=new Object,this.addStandardFunctions()}Xe.prototype.addStandardFunctions=function(){this.functions["{}last"]=De.last,this.functions["{}position"]=De.position,this.functions["{}count"]=De.count,this.functions["{}id"]=De.id,this.functions["{}local-name"]=De.localName,this.functions["{}namespace-uri"]=De.namespaceURI,this.functions["{}name"]=De.name,this.functions["{}string"]=De.string,this.functions["{}concat"]=De.concat,this.functions["{}starts-with"]=De.startsWith,this.functions["{}contains"]=De.contains,this.functions["{}substring-before"]=De.substringBefore,this.functions["{}substring-after"]=De.substringAfter,this.functions["{}substring"]=De.substring,this.functions["{}string-length"]=De.stringLength,this.functions["{}normalize-space"]=De.normalizeSpace,this.functions["{}translate"]=De.translate,this.functions["{}boolean"]=De.boolean_,this.functions["{}not"]=De.not,this.functions["{}true"]=De.true_,this.functions["{}false"]=De.false_,this.functions["{}lang"]=De.lang,this.functions["{}number"]=De.number,this.functions["{}sum"]=De.sum,this.functions["{}floor"]=De.floor,this.functions["{}ceiling"]=De.ceiling,this.functions["{}round"]=De.round},Xe.prototype.addFunction=function(e,o,I){this.functions["{"+e+"}"+o]=I},Xe.getFunctionFromContext=function(e,o){var I=Ie.resolveQName(e,o.namespaceResolver,o.contextNode,!1);if(I[0]===null)throw new Error("Cannot resolve QName "+name);return o.functionResolver.getFunction(I[1],I[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 X.XML_NAMESPACE_URI;if(e=="xmlns")return X.XMLNS_NAMESPACE_URI;for(o.nodeType==V.DOCUMENT_NODE?o=o.documentElement:o.nodeType==V.ATTRIBUTE_NODE?o=g.getOwnerElement(o):o.nodeType!=V.ELEMENT_NODE&&(o=o.parentNode);o!=null&&o.nodeType==V.ELEMENT_NODE;){for(var I=o.attributes,D=0;D<I.length;D++){var O=I.item(D),h=O.name||O.nodeName;if(h==="xmlns"&&e===""||h==="xmlns:"+e)return String(O.value||O.nodeValue)}o=o.parentNode}return null};var De=new Object;De.last=function(e){if(arguments.length!=1)throw new Error("Function last expects ()");return new Y(e.contextSize)},De.position=function(e){if(arguments.length!=1)throw new Error("Function position expects ()");return new Y(e.contextPosition)},De.count=function(){var e=arguments[0],o;if(arguments.length!=2||!Ie.instance_of(o=arguments[1].evaluate(e),Ae))throw new Error("Function count expects (node-set)");return new Y(o.size)},De.id=function(){var e=arguments[0],o;if(arguments.length!=2)throw new Error("Function id expects (object)");o=arguments[1].evaluate(e),Ie.instance_of(o,Ae)?o=o.toArray().join(" "):o=o.stringValue();for(var I=o.split(/[\x0d\x0a\x09\x20]+/),D=new Ae,O=e.contextNode.nodeType==V.DOCUMENT_NODE?e.contextNode:e.contextNode.ownerDocument,h=0;h<I.length;h++){var oe;O.getElementById?oe=O.getElementById(I[h]):oe=Ie.getElementById(O,I[h]),oe!=null&&D.add(oe)}return D},De.localName=function(e,o){var I;if(arguments.length==1)I=e.contextNode;else if(arguments.length==2)I=o.evaluate(e).first();else throw new Error("Function local-name expects (node-set?)");return I==null?new F(""):new F(I.localName||I.baseName||I.target||I.nodeName||"")},De.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||"")},De.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==V.ELEMENT_NODE?new F(o.nodeName):o.nodeType==V.ATTRIBUTE_NODE?new F(o.name||o.nodeName):o.nodeType===V.PROCESSING_INSTRUCTION_NODE?new F(o.target||o.nodeName):o.localName==null?new F(""):new F(o.localName)},De.string=function(){var e=arguments[0];if(arguments.length==1)return new F(Ae.prototype.stringForNode(e.contextNode));if(arguments.length==2)return arguments[1].evaluate(e).string();throw new Error("Function string expects (object?)")},De.concat=function(e){if(arguments.length<3)throw new Error("Function concat expects (string, string[, string]*)");for(var o="",I=1;I<arguments.length;I++)o+=arguments[I].evaluate(e).stringValue();return new F(o)},De.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(),I=arguments[2].evaluate(e).stringValue();return new Oe(o.substring(0,I.length)==I)},De.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(),I=arguments[2].evaluate(e).stringValue();return new Oe(o.indexOf(I)!==-1)},De.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(),I=arguments[2].evaluate(e).stringValue();return new F(o.substring(0,o.indexOf(I)))},De.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(),I=arguments[2].evaluate(e).stringValue();if(I.length==0)return new F(o);var D=o.indexOf(I);return D==-1?new F(""):new F(o.substring(D+I.length))},De.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(),I=Math.round(arguments[2].evaluate(e).numberValue())-1,D=arguments.length==4?I+Math.round(arguments[3].evaluate(e).numberValue()):void 0;return new F(o.substring(I,D))},De.stringLength=function(){var e=arguments[0],o;if(arguments.length==1)o=Ae.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 Y(o.length)},De.normalizeSpace=function(){var e=arguments[0],o;if(arguments.length==1)o=Ae.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 I=0,D=o.length-1;Ie.isSpace(o.charCodeAt(D));)D--;for(var O="";I<=D&&Ie.isSpace(o.charCodeAt(I));)I++;for(;I<=D;)if(Ie.isSpace(o.charCodeAt(I)))for(O+=" ";I<=D&&Ie.isSpace(o.charCodeAt(I));)I++;else O+=o.charAt(I),I++;return new F(O)},De.translate=function(e,o,I,D){if(arguments.length!=4)throw new Error("Function translate expects (string, string, string)");var O=o.evaluate(e).stringValue(),h=I.evaluate(e).stringValue(),oe=D.evaluate(e).stringValue(),Ue=i(function(ae,Re,Ke){return Re in ae||(ae[Re]=Ke>oe.length?"":oe[Ke]),ae},{},h),me=v("",u(function(ae){return ae in Ue?Ue[ae]:ae},O));return new F(me)},De.boolean_=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function boolean expects (object)");return arguments[1].evaluate(e).bool()},De.not=function(e,o){if(arguments.length!=2)throw new Error("Function not expects (object)");return o.evaluate(e).bool().not()},De.true_=function(){if(arguments.length!=1)throw new Error("Function true expects ()");return Oe.true_},De.false_=function(){if(arguments.length!=1)throw new Error("Function false expects ()");return Oe.false_},De.lang=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function lang expects (string)");for(var o,I=e.contextNode;I!=null&&I.nodeType!=V.DOCUMENT_NODE;I=I.parentNode){var D=I.getAttributeNS(X.XML_NAMESPACE_URI,"lang");if(D!=null){o=String(D);break}}if(o==null)return Oe.false_;var O=arguments[1].evaluate(e).stringValue();return new Oe(o.substring(0,O.length)==O&&(o.length==O.length||o.charAt(O.length)=="-"))},De.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 Y(Ae.prototype.stringForNode(e.contextNode)):arguments[1].evaluate(e).number()},De.sum=function(){var e=arguments[0],o;if(arguments.length!=2||!Ie.instance_of(o=arguments[1].evaluate(e),Ae))throw new Error("Function sum expects (node-set)");o=o.toUnsortedArray();for(var I=0,D=0;D<o.length;D++)I+=new Y(Ae.prototype.stringForNode(o[D])).numberValue();return new Y(I)},De.floor=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function floor expects (number)");return new Y(Math.floor(arguments[1].evaluate(e).numberValue()))},De.ceiling=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function ceiling expects (number)");return new Y(Math.ceil(arguments[1].evaluate(e).numberValue()))},De.round=function(){var e=arguments[0];if(arguments.length!=2)throw new Error("Function round expects (number)");return new Y(Math.round(arguments[1].evaluate(e).numberValue()))};var Ie=new Object,bt=function(e){return e&&(e.nodeType===V.ATTRIBUTE_NODE||e.ownerElement||e.isXPathNamespace)};Ie.splitQName=function(e){var o=e.indexOf(":");return o==-1?[null,e]:[e.substring(0,o),e.substring(o+1)]},Ie.resolveQName=function(e,o,I,D){var O=Ie.splitQName(e);return O[0]!=null?O[0]=o.getNamespace(O[0],I):D?(O[0]=o.getNamespace("",I),O[0]==null&&(O[0]="")):O[0]="",O},Ie.isSpace=function(e){return e==9||e==13||e==10||e==32},Ie.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},Ie.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||Ie.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},Ie.coalesceText=function(e){for(var o=e.firstChild;o!=null;o=o.nextSibling)if(o.nodeType==V.TEXT_NODE||o.nodeType==V.CDATA_SECTION_NODE){var I=o.nodeValue,D=o;for(o=o.nextSibling;o!=null&&(o.nodeType==V.TEXT_NODE||o.nodeType==V.CDATA_SECTION_NODE);){I+=o.nodeValue;var O=o;o=o.nextSibling,O.parentNode.removeChild(O)}if(D.nodeType==V.CDATA_SECTION_NODE){var h=D.parentNode;if(D.nextSibling==null)h.removeChild(D),h.appendChild(h.ownerDocument.createTextNode(I));else{var oe=D.nextSibling;h.removeChild(D),h.insertBefore(h.ownerDocument.createTextNode(I),oe)}}else D.nodeValue=I;if(o==null)break}else o.nodeType==V.ELEMENT_NODE&&Ie.coalesceText(o)},Ie.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},Ie.getElementById=function(e,o){if(e.nodeType==V.ELEMENT_NODE&&(e.getAttribute("id")==o||e.getAttributeNS(null,"id")==o))return e;for(var I=e.firstChild;I!=null;I=I.nextSibling){var D=Ie.getElementById(I,o);if(D!=null)return D}return null};var qe=function(){function e(I,D){var O=D?": "+D.toString():"";switch(I){case o.INVALID_EXPRESSION_ERR:return"Invalid expression"+O;case o.TYPE_ERR:return"Type error"+O}return null}function o(I,D,O){var h=Error.call(this,e(I,D)||O);return h.code=I,h.exception=D,h}return o.prototype=Object.create(Error.prototype),o.prototype.constructor=o,o.superclass=Error,o.prototype.toString=function(){return this.message},o.fromMessage=function(I,D){return new o(null,D,I)},o.INVALID_EXPRESSION_ERR=51,o.TYPE_ERR=52,o}();We.prototype={},We.prototype.constructor=We,We.superclass=Object.prototype;function We(e,o,I){this.xpath=I.parse(e),this.context=new Ze,this.context.namespaceResolver=new St(o)}We.getOwnerDocument=function(e){return e.nodeType===V.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,I){this.context.expressionContextNode=e,this.context.caseInsensitive=We.detectHtmlDom(e);var D=this.xpath.evaluate(this.context);return new Me(D,o)},St.prototype={},St.prototype.constructor=St,St.superclass=Object.prototype;function St(e){this.xpathNSResolver=e}St.prototype.getNamespace=function(e,o){return this.xpathNSResolver==null?null:this.xpathNSResolver.lookupNamespaceURI(e)},Tt.prototype={},Tt.prototype.constructor=Tt,Tt.superclass=Object.prototype;function Tt(e){this.node=e,this.namespaceResolver=new je}Tt.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===Y?o=Me.NUMBER_TYPE:e.constructor===Oe?o=Me.BOOLEAN_TYPE:e.constructor===Ae&&(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===Ae){this.singleNodeValue=e.first();return}break;case Me.UNORDERED_NODE_ITERATOR_TYPE:case Me.ORDERED_NODE_ITERATOR_TYPE:if(e.constructor===Ae){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===Ae){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(I,D){try{return new We(I,D,o)}catch(O){throw new qe(qe.INVALID_EXPRESSION_ERR,O)}},e.createNSResolver=function(I){return new Tt(I)},e.evaluate=function(I,D,O,h,oe){if(h<0||h>9)throw{code:0,toString:function(){return"Request type not supported"}};return e.createExpression(I,O,o).evaluate(D,h,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,I=new Xe,D=new et;function O(se){return{getNamespace:function(ye,Je){var Ct=se(ye,Je);return Ct||o.getNamespace(ye,Je)}}}function h(se){return O(se.getNamespace.bind(se))}function oe(se){return O(function(ye){return se[ye]})}function Ue(se){return se&&typeof se.getNamespace=="function"?h(se):typeof se=="function"?O(se):typeof se=="object"?oe(se):o}function me(se){if(se===null||typeof se>"u"||se instanceof F||se instanceof Oe||se instanceof Y||se instanceof Ae)return se;switch(typeof se){case"string":return new F(se);case"boolean":return new Oe(se);case"number":return new Y(se)}var ye=new Ae;return ye.addArray([].concat(se)),ye}function ae(se){return function(ye){var Je=Array.prototype.slice.call(arguments,1).map(function(fS){return fS.evaluate(ye)}),Ct=se.apply(this,[].concat(ye,Je));return me(Ct)}}function Re(se){return{getFunction:function(ye,Je){var Ct=se(ye,Je);return Ct?ae(Ct):I.getFunction(ye,Je)}}}function Ke(se){return Re(se.getFunction.bind(se))}function ze(se){return Re(function(ye){return se[ye]})}function He(se){return se&&typeof se.getFunction=="function"?Ke(se):typeof se=="function"?Re(se):typeof se=="object"?ze(se):I}function ot(se){return{getVariable:function(ye,Je){var Ct=se(ye,Je);return me(Ct)}}}function tt(se){if(se){if(typeof se.getVariable=="function")return ot(se.getVariable.bind(se));if(typeof se=="function")return ot(se);if(typeof se=="object")return ot(function(ye){return se[ye]})}return D}function lt(se,ye,Je){se in Je&&(ye[se]=Je[se])}function DS(se){var ye=new Ze;return se?(ye.namespaceResolver=Ue(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 pS(se,ye){var Je=DS(ye);return se.evaluate(Je)}var dS={evaluate:function(se){return pS(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 PS(se){var ye=e.parse(se);return Object.create(dS,{expression:{value:ye}})}r.parse=PS}(),Le(r,{XPath:X,XPathParser:L,XPathResult:Me,Step:b,PathExpr:g,NodeTest:c,LocationPath:_e,OrOperation:ce,AndOperation:W,BarOperation:U,EqualsOperation:re,NotEqualOperation:Se,LessThanOperation:ue,GreaterThanOperation:le,LessThanOrEqualOperation:he,GreaterThanOrEqualOperation:Te,PlusOperation:ge,MinusOperation:J,MultiplyOperation:Ee,DivOperation:p,ModOperation:P,UnaryMinusOperation:te,FunctionCall:Be,VariableReference:z,XPathContext:Ze,XNodeSet:Ae,XBoolean:Oe,XString:F,XNumber:Y,NamespaceResolver:je,FunctionResolver:Xe,VariableResolver:et,Utilities:Ie}),r.select=function(e,o,I){return r.selectWithResolver(e,o,null,I)},r.useNamespaces=function(e){var o={mappings:e||{},lookupNamespaceURI:function(I){return this.mappings[I]}};return function(I,D,O){return r.selectWithResolver(I,D,o,O)}},r.selectWithResolver=function(e,o,I,D){var O=new We(e,I,new L),h=Me.ANY_TYPE,oe=O.evaluate(o,h,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}};Le(r,{isNodeLike:A,isArrayOfNodes:_,isElement:G(V.ELEMENT_NODE),isAttribute:G(V.ATTRIBUTE_NODE),isTextNode:G(V.TEXT_NODE),isCDATASection:G(V.CDATA_SECTION_NODE),isProcessingInstruction:G(V.PROCESSING_INSTRUCTION_NODE),isComment:G(V.COMMENT_NODE),isDocumentNode:G(V.DOCUMENT_NODE),isDocumentTypeNode:G(V.DOCUMENT_TYPE_NODE),isDocumentFragment:G(V.DOCUMENT_FRAGMENT_NODE)})})(t)}(zt)),zt}var $n=kn();const qn=HE($n);var Bt={},it={},ct={},xE;function xt(){if(xE)return ct;xE=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 N=0;N<a.length;N++)if(Object.prototype.hasOwnProperty.call(a,N)){var i=a[N];if(A.call(void 0,i,N,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 VE(){if(YE)return it;YE=1;var E=xt(),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 N(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,N(_,G),R.prototype=_=G}_.constructor!=R&&(typeof R!="function"&&console.error("unknown Class:"+R),_.constructor=R)}var u={},l=u.ELEMENT_NODE=1,d=u.ATTRIBUTE_NODE=2,M=u.TEXT_NODE=3,m=u.CDATA_SECTION_NODE=4,v=u.ENTITY_REFERENCE_NODE=5,f=u.ENTITY_NODE=6,k=u.PROCESSING_INSTRUCTION_NODE=7,Z=u.COMMENT_NODE=8,ee=u.DOCUMENT_NODE=9,pe=u.DOCUMENT_TYPE_NODE=10,Le=u.DOCUMENT_FRAGMENT_NODE=11,V=u.NOTATION_NODE=12,L={},X={};L.INDEX_SIZE_ERR=(X[1]="Index size error",1),L.DOMSTRING_SIZE_ERR=(X[2]="DOMString size error",2);var B=L.HIERARCHY_REQUEST_ERR=(X[3]="Hierarchy request error",3);L.WRONG_DOCUMENT_ERR=(X[4]="Wrong document",4),L.INVALID_CHARACTER_ERR=(X[5]="Invalid character",5),L.NO_DATA_ALLOWED_ERR=(X[6]="No data allowed",6),L.NO_MODIFICATION_ALLOWED_ERR=(X[7]="No modification allowed",7);var H=L.NOT_FOUND_ERR=(X[8]="Not found",8);L.NOT_SUPPORTED_ERR=(X[9]="Not supported",9);var ne=L.INUSE_ATTRIBUTE_ERR=(X[10]="Attribute in use",10);L.INVALID_STATE_ERR=(X[11]="Invalid state",11),L.SYNTAX_ERR=(X[12]="Syntax error",12),L.INVALID_MODIFICATION_ERR=(X[13]="Invalid modification",13),L.NAMESPACE_ERR=(X[14]="Invalid namespace",14),L.INVALID_ACCESS_ERR=(X[15]="Invalid access",15);function te(R,S){if(S instanceof Error)var _=S;else _=this,Error.call(this,X[R]),this.message=X[R],Error.captureStackTrace&&Error.captureStackTrace(this,te);return _.code=R,S&&(this.message=this.message+": "+S),_}te.prototype=Error.prototype,N(L,te);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 ce(R,S){this._node=R,this._refresh=S,W(this)}function W(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];N(_,R),R._inc=S}}ce.prototype.item=function(R){return W(this),this[R]||null},i(ce,Q);function re(){}function Se(R,S){for(var _=R.length;_--;)if(R[_]===S)return _}function ue(R,S,_,G){if(G?S[Se(S,G)]=_:S[S.length++]=_,R){_.ownerElement=R;var e=R.ownerDocument;e&&(G&&P(e,R,G),p(e,R,_))}}function le(R,S,_){var G=Se(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&&(P(o,R,_),_.ownerElement=null)}}else throw new te(H,new Error(R.tagName+"@"+_))}re.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 te(ne);var _=this.getNamedItem(R.nodeName);return ue(this._ownerElement,this,R,_),_},setNamedItemNS:function(R){var S=R.ownerElement,_;if(S&&S!=this._ownerElement)throw new te(ne);return _=this.getNamedItemNS(R.namespaceURI,R.localName),ue(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 he(){}he.prototype={hasFeature:function(R,S){return!0},createDocument:function(R,S,_){var G=new Ee;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 Ae;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 Be(this,R,S)},replaceChild:function(R,S){Be(this,R,S,z),S&&this.removeChild(S)},removeChild:function(R){return g(this,R)},appendChild:function(R){return this.insertBefore(R,null)},hasChildNodes:function(){return this.firstChild!=null},cloneNode:function(R){return Tt(this.ownerDocument||this,this,R)},normalize:function(){for(var R=this.firstChild;R;){var S=R.nextSibling;S&&S.nodeType==M&&R.nodeType==M?(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 ge(R){return R=="<"&&"<"||R==">"&&">"||R=="&"&&"&"||R=='"'&&"""||"&#"+R.charCodeAt()+";"}N(u,Te),N(u,Te.prototype);function J(R,S){if(S(R))return!0;if(R=R.firstChild)do if(J(R,S))return!0;while(R=R.nextSibling)}function Ee(){this.ownerDocument=this}function p(R,S,_){R&&R._inc++;var G=_.namespaceURI;G===r.XMLNS&&(S._nsMap[_.prefix?_.localName:""]=_.value)}function P(R,S,_,G){R&&R._inc++;var e=_.namespaceURI;e===r.XMLNS&&delete S._nsMap[_.prefix?_.localName:""]}function U(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 g(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,U(R.ownerDocument,R),S}function $(R){return R&&(R.nodeType===Te.DOCUMENT_NODE||R.nodeType===Te.DOCUMENT_FRAGMENT_NODE||R.nodeType===Te.ELEMENT_NODE)}function q(R){return R&&(ie(R)||Ne(R)||j(R)||R.nodeType===Te.DOCUMENT_FRAGMENT_NODE||R.nodeType===Te.COMMENT_NODE||R.nodeType===Te.PROCESSING_INSTRUCTION_NODE)}function j(R){return R&&R.nodeType===Te.DOCUMENT_TYPE_NODE}function ie(R){return R&&R.nodeType===Te.ELEMENT_NODE}function Ne(R){return R&&R.nodeType===Te.TEXT_NODE}function _e(R,S){var _=R.childNodes||[];if(t(_,ie)||j(S))return!1;var G=t(_,j);return!(S&&G&&_.indexOf(G)>_.indexOf(S))}function b(R,S){var _=R.childNodes||[];function G(o){return ie(o)&&o!==S}if(t(_,G))return!1;var e=t(_,j);return!(S&&e&&_.indexOf(e)>_.indexOf(S))}function fe(R,S,_){if(!$(R))throw new te(B,"Unexpected parent node type "+R.nodeType);if(_&&_.parentNode!==R)throw new te(H,"child not in parent");if(!q(S)||j(S)&&R.nodeType!==Te.DOCUMENT_NODE)throw new te(B,"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(ie);if(o.length>1||t(e,Ne))throw new te(B,"More than one element or text in fragment");if(o.length===1&&!_e(R,_))throw new te(B,"Element in fragment can not be inserted before doctype")}if(ie(S)&&!_e(R,_))throw new te(B,"Only one element can be added and only after doctype");if(j(S)){if(t(G,j))throw new te(B,"Only one doctype is allowed");var I=t(G,ie);if(_&&G.indexOf(I)<G.indexOf(_))throw new te(B,"Doctype can only be inserted before an element");if(!_&&I)throw new te(B,"Doctype can not be appended since element is present")}}function z(R,S,_){var G=R.childNodes||[],e=S.childNodes||[];if(S.nodeType===Te.DOCUMENT_FRAGMENT_NODE){var o=e.filter(ie);if(o.length>1||t(e,Ne))throw new te(B,"More than one element or text in fragment");if(o.length===1&&!b(R,_))throw new te(B,"Element in fragment can not be inserted before doctype")}if(ie(S)&&!b(R,_))throw new te(B,"Only one element can be added and only after doctype");if(j(S)){if(t(G,function(O){return j(O)&&O!==_}))throw new te(B,"Only one doctype is allowed");var I=t(G,ie);if(_&&G.indexOf(I)<G.indexOf(_))throw new te(B,"Doctype can only be inserted before an element")}}function Be(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===Le){var o=S.firstChild;if(o==null)return S;var I=S.lastChild}else o=I=S;var D=_?_.previousSibling:R.lastChild;o.previousSibling=D,I.nextSibling=_,D?D.nextSibling=o:R.firstChild=o,_==null?R.lastChild=I:_.previousSibling=I;do{o.parentNode=R;var O=R.ownerDocument||R;de(o,O)}while(o!==I&&(o=o.nextSibling));return U(R.ownerDocument||R,R),S.nodeType==Le&&(S.firstChild=S.lastChild=null),S}function de(R,S){if(R.ownerDocument!==S){if(R.ownerDocument=S,R.nodeType===l&&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,U(R.ownerDocument,R,S);var _=R.ownerDocument||R;return de(S,_),S}Ee.prototype={nodeName:"#document",nodeType:ee,doctype:null,documentElement:null,_inc:1,insertBefore:function(R,S){if(R.nodeType==Le){for(var _=R.firstChild;_;){var G=_.nextSibling;this.insertBefore(_,S),_=G}return R}return Be(this,R,S),de(R,this),this.documentElement===null&&R.nodeType===l&&(this.documentElement=R),R},removeChild:function(R){return this.documentElement==R&&(this.documentElement=null),g(this,R)},replaceChild:function(R,S){Be(this,R,S,z),de(R,this),S&&this.removeChild(S),ie(R)&&(this.documentElement=R)},importNode:function(R,S){return St(this,R,S)},getElementById:function(R){var S=null;return J(this.documentElement,function(_){if(_.nodeType==l&&_.getAttribute("id")==R)return S=_,!0}),S},getElementsByClassName:function(R){var S=A(R);return new ce(this,function(_){var G=[];return S.length>0&&J(_.documentElement,function(e){if(e!==_&&e.nodeType===l){var o=e.getAttribute("class");if(o){var I=R===o;if(!I){var D=A(o);I=S.every(C(D))}I&&G.push(e)}}}),G})},createElement:function(R){var S=new Y;S.ownerDocument=this,S.nodeName=R,S.tagName=R,S.localName=R,S.childNodes=new Q;var _=S.attributes=new re;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 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 Ht;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 Y,G=S.split(":"),e=_.attributes=new re;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(Ee,Te);function Y(){this._nsMap={}}Y.prototype={nodeType:l,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===Le?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 ce(this,function(S){var _=[];return J(S,function(G){G!==S&&G.nodeType==l&&(R==="*"||G.tagName==R)&&_.push(G)}),_})},getElementsByTagNameNS:function(R,S){return new ce(this,function(_){var G=[];return J(_,function(e){e!==_&&e.nodeType===l&&(R==="*"||e.namespaceURI===R)&&(S==="*"||e.localName==S)&&G.push(e)}),G})}},Ee.prototype.getElementsByTagName=Y.prototype.getElementsByTagName,Ee.prototype.getElementsByTagNameNS=Y.prototype.getElementsByTagNameNS,i(Y,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(X[B])},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 Oe(){}Oe.prototype={nodeName:"#text",nodeType:M,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(Oe,Qe);function we(){}we.prototype={nodeName:"#comment",nodeType:Z},i(we,Qe);function Ht(){}Ht.prototype={nodeName:"#cdata-section",nodeType:m},i(Ht,Qe);function Ae(){}Ae.prototype.nodeType=pe,i(Ae,Te);function st(){}st.prototype.nodeType=V,i(st,Te);function Ze(){}Ze.prototype.nodeType=f,i(Ze,Te);function et(){}et.prototype.nodeType=v,i(et,Te);function Xe(){}Xe.prototype.nodeName="#document-fragment",Xe.prototype.nodeType=Le,i(Xe,Te);function je(){}je.prototype.nodeType=k,i(je,Te);function De(){}De.prototype.serializeToString=function(R,S,_){return Ie.call(R,S,_)},Te.prototype.toString=Ie;function Ie(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 I=[{namespace:o,prefix:null}]}return We(this,_,R,S,I),_.join("")}function bt(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 I=_[o];if(I.prefix===G)return I.namespace!==e}return!0}function qe(R,S,_){R.push(" ",S,'="',_.replace(/[<>&"\t\n\r]/g,ge),'"')}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 l:var o=R.attributes,I=o.length,He=R.firstChild,D=R.tagName;_=r.isHTML(R.namespaceURI)||_;var O=D;if(!_&&!R.prefix&&R.namespaceURI){for(var h,oe=0;oe<o.length;oe++)if(o.item(oe).name==="xmlns"){h=o.item(oe).value;break}if(!h)for(var Ue=e.length-1;Ue>=0;Ue--){var me=e[Ue];if(me.prefix===""&&me.namespace===R.namespaceURI){h=me.namespace;break}}if(h!==R.namespaceURI)for(var Ue=e.length-1;Ue>=0;Ue--){var me=e[Ue];if(me.namespace===R.namespaceURI){me.prefix&&(O=me.prefix+":"+D);break}}}S.push("<",O);for(var ae=0;ae<I;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<I;ae++){var Re=o.item(ae);if(bt(Re,_,e)){var Ke=Re.prefix||"",ze=Re.namespaceURI;qe(S,Ke?"xmlns:"+Ke:"xmlns",ze),e.push({prefix:Ke,namespace:ze})}We(Re,S,_,G,e)}if(D===O&&bt(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("</",O,">")}else S.push("/>");return;case ee:case Le: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 M:return S.push(R.data.replace(/[<&>]/g,ge));case m:return S.push("<![CDATA[",R.data,"]]>");case Z:return S.push("<!--",R.data,"-->");case pe:var ot=R.publicId,tt=R.systemId;if(S.push("<!DOCTYPE ",R.name),ot)S.push(" PUBLIC ",ot),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 v:return S.push("&",R.nodeName,";");default:S.push("??",R.nodeName)}}function St(R,S,_){var G;switch(S.nodeType){case l:G=S.cloneNode(!1),G.ownerDocument=R;case Le: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(St(R,e,_)),e=e.nextSibling;return G}function Tt(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 l:var I=S.attributes,D=G.attributes=new re,O=I.length;D._ownerElement=G;for(var h=0;h<O;h++)G.setAttributeNode(Tt(R,I.item(h),!0));break;case d:_=!0}if(_)for(var oe=S.firstChild;oe;)G.appendChild(Tt(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 l:case Le: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(ce.prototype,"length",{get:function(){return W(this),this.$$length}}),Object.defineProperty(Te.prototype,"textContent",{get:function(){return R(this)},set:function(S){switch(this.nodeType){case l:case Le: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 it.DocumentType=Ae,it.DOMException=te,it.DOMImplementation=he,it.Element=Y,it.Node=Te,it.NodeList=Q,it.XMLSerializer=De,it}var gt={},eE={},vE;function Jn(){return vE||(vE=1,function(E){var t=xt().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}(eE)),eE}var Yt={},wE;function Qn(){if(wE)return Yt;wE=1;var E=xt().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,N=4,i=5,u=6,l=7;function d(B,H){this.message=B,this.locator=H,Error.captureStackTrace&&Error.captureStackTrace(this,d)}d.prototype=new Error,d.prototype.name=d.name;function M(){}M.prototype={parse:function(B,H,ne){var te=this.domBuilder;te.startDocument(),pe(H,H={}),m(B,H,ne,te,this.errorHandler),te.endDocument()}};function m(B,H,ne,te,Q){function ce(F){if(F>65535){F-=65536;var Y=55296+(F>>10),ve=56320+(F&1023);return String.fromCharCode(Y,ve)}else return String.fromCharCode(F)}function W(F){var Y=F.slice(1,-1);return Object.hasOwnProperty.call(ne,Y)?ne[Y]:Y.charAt(0)==="#"?ce(parseInt(Y.substr(1).replace("x","0x"))):(Q.error("entity not found:"+F),F)}function re(F){if(F>Ee){var Y=B.substring(Ee,F).replace(/&#?\w+;/g,W);Te&&Se(Ee),te.characters(Y,0,F-Ee),Ee=F}}function Se(F,Y){for(;F>=le&&(Y=he.exec(B));)ue=Y.index,le=ue+Y[0].length,Te.lineNumber++;Te.columnNumber=F-ue+1}for(var ue=0,le=0,he=/.*(?:\r\n?|\n)|.*$/g,Te=te.locator,ge=[{currentNSMap:H}],J={},Ee=0;;){try{var p=B.indexOf("<",Ee);if(p<0){if(!B.substr(Ee).match(/^\s*$/)){var P=te.doc,U=P.createTextNode(B.substr(Ee));P.appendChild(U),te.currentElement=U}return}switch(p>Ee&&re(p),B.charAt(p+1)){case"/":var fe=B.indexOf(">",p+3),g=B.substring(p+2,fe).replace(/[ \t\n\r]+$/g,""),$=ge.pop();fe<0?(g=B.substring(p+2).replace(/[\s<].*/,""),Q.error("end tag name: "+g+" is not complete:"+$.tagName),fe=p+1+g.length):g.match(/\s</)&&(g=g.replace(/[\s<].*/,""),Q.error("end tag name: "+g+" maybe not complete"),fe=p+1+g.length);var q=$.localNSMap,j=$.tagName==g,ie=j||$.tagName&&$.tagName.toLowerCase()==g.toLowerCase();if(ie){if(te.endElement($.uri,$.localName,g),q)for(var Ne in q)Object.prototype.hasOwnProperty.call(q,Ne)&&te.endPrefixMapping(Ne);j||Q.fatalError("end tag name: "+g+" is not match the current start tagName:"+$.tagName)}else ge.push($);fe++;break;case"?":Te&&Se(p),fe=V(B,p,te);break;case"!":Te&&Se(p),fe=Le(B,p,te,Q);break;default:Te&&Se(p);var _e=new L,b=ge[ge.length-1].currentNSMap,fe=f(B,p,_e,b,W,Q),c=_e.length;if(!_e.closed&&ee(B,fe,_e.tagName,J)&&(_e.closed=!0,ne.nbsp||Q.warning("unclosed xml attribute")),Te&&c){for(var z=v(Te,{}),Be=0;Be<c;Be++){var de=_e[Be];Se(de.offset),de.locator=v(Te,{})}te.locator=z,k(_e,te,b)&&ge.push(_e),te.locator=Te}else k(_e,te,b)&&ge.push(_e);E.isHTML(_e.uri)&&!_e.closed?fe=Z(B,fe,_e.tagName,W,te):fe++}}catch(F){if(F instanceof d)throw F;Q.error("element parse error: "+F),fe=-1}fe>Ee?Ee=fe:re(Math.max(p,Ee)+1)}}function v(B,H){return H.lineNumber=B.lineNumber,H.columnNumber=B.columnNumber,H}function f(B,H,ne,te,Q,ce){function W(Te,ge,J){ne.attributeNames.hasOwnProperty(Te)&&ce.fatalError("Attribute "+Te+" redefined"),ne.addValue(Te,ge.replace(/[\t\n\r]/g," ").replace(/&#?\w+;/g,Q),J)}for(var re,Se,ue=++H,le=s;;){var he=B.charAt(ue);switch(he){case"=":if(le===a)re=B.slice(H,ue),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&&(ce.warning('attribute value must after "="'),re=B.slice(H,ue)),H=ue+1,ue=B.indexOf(he,H),ue>0)Se=B.slice(H,ue),W(re,Se,H-1),le=i;else throw new Error("attribute value no end '"+he+"' match");else if(le==N)Se=B.slice(H,ue),W(re,Se,H),ce.warning('attribute "'+re+'" missed start quot('+he+")!!"),H=ue+1,le=i;else throw new Error('attribute value must after "="');break;case"/":switch(le){case s:ne.setTagName(B.slice(H,ue));case i:case u:case l:le=l,ne.closed=!0;case N:case a:break;case A:ne.closed=!0;break;default:throw new Error("attribute invalid close char('/')")}break;case"":return ce.error("unexpected end of input"),le==s&&ne.setTagName(B.slice(H,ue)),ue;case">":switch(le){case s:ne.setTagName(B.slice(H,ue));case i:case u:case l:break;case N:case a:Se=B.slice(H,ue),Se.slice(-1)==="/"&&(ne.closed=!0,Se=Se.slice(0,-1));case A:le===A&&(Se=re),le==N?(ce.warning('attribute "'+Se+'" missed quot(")!'),W(re,Se,H)):((!E.isHTML(te[""])||!Se.match(/^(?:disabled|checked|selected)$/i))&&ce.warning('attribute "'+Se+'" missed value!! "'+Se+'" instead!!'),W(Se,Se,H));break;case C:throw new Error("attribute value missed!!")}return ue;case"":he=" ";default:if(he<=" ")switch(le){case s:ne.setTagName(B.slice(H,ue)),le=u;break;case a:re=B.slice(H,ue),le=A;break;case N:var Se=B.slice(H,ue);ce.warning('attribute "'+Se+'" missed quot(")!!'),W(re,Se,H);case i:le=u;break}else switch(le){case A:ne.tagName,(!E.isHTML(te[""])||!re.match(/^(?:disabled|checked|selected)$/i))&&ce.warning('attribute "'+re+'" missed value!! "'+re+'" instead2!!'),W(re,re,H),H=ue,le=a;break;case i:ce.warning('attribute space is required"'+re+'"!!');case u:le=a,H=ue;break;case C:le=N,H=ue;break;case l:throw new Error("elements closed character '/' and '>' must be connected to")}}ue++}}function k(B,H,ne){for(var te=B.tagName,Q=null,he=B.length;he--;){var ce=B[he],W=ce.qName,re=ce.value,Te=W.indexOf(":");if(Te>0)var Se=ce.prefix=W.slice(0,Te),ue=W.slice(Te+1),le=Se==="xmlns"&&ue;else ue=W,Se=null,le=W==="xmlns"&&"";ce.localName=ue,le!==!1&&(Q==null&&(Q={},pe(ne,ne={})),ne[le]=Q[le]=re,ce.uri=E.XMLNS,H.startPrefixMapping(le,re))}for(var he=B.length;he--;){ce=B[he];var Se=ce.prefix;Se&&(Se==="xml"&&(ce.uri=E.XML),Se!=="xmlns"&&(ce.uri=ne[Se||""]))}var Te=te.indexOf(":");Te>0?(Se=B.prefix=te.slice(0,Te),ue=B.localName=te.slice(Te+1)):(Se=null,ue=B.localName=te);var ge=B.uri=ne[Se||""];if(H.startElement(ge,ue,te,B),B.closed){if(H.endElement(ge,ue,te),Q)for(Se in Q)Object.prototype.hasOwnProperty.call(Q,Se)&&H.endPrefixMapping(Se)}else return B.currentNSMap=ne,B.localNSMap=Q,!0}function Z(B,H,ne,te,Q){if(/^(?:script|textarea)$/i.test(ne)){var ce=B.indexOf("</"+ne+">",H),W=B.substring(H+1,ce);if(/[&<]/.test(W))return/^script$/i.test(ne)?(Q.characters(W,0,W.length),ce):(W=W.replace(/&#?\w+;/g,te),Q.characters(W,0,W.length),ce)}return H+1}function ee(B,H,ne,te){var Q=te[ne];return Q==null&&(Q=B.lastIndexOf("</"+ne+">"),Q<H&&(Q=B.lastIndexOf("</"+ne)),te[ne]=Q),Q<H}function pe(B,H){for(var ne in B)Object.prototype.hasOwnProperty.call(B,ne)&&(H[ne]=B[ne])}function Le(B,H,ne,te){var Q=B.charAt(H+2);switch(Q){case"-":if(B.charAt(H+3)==="-"){var ce=B.indexOf("-->",H+4);return ce>H?(ne.comment(B,H+4,ce-H-4),ce+3):(te.error("Unclosed comment"),-1)}else return-1;default:if(B.substr(H+3,6)=="CDATA["){var ce=B.indexOf("]]>",H+9);return ne.startCDATA(),ne.characters(B,H+9,ce-H-9),ne.endCDATA(),ce+3}var W=X(B,H),re=W.length;if(re>1&&/!doctype/i.test(W[0][0])){var Se=W[1][0],ue=!1,le=!1;re>3&&(/^public$/i.test(W[2][0])?(ue=W[3][0],le=re>4&&W[4][0]):/^system$/i.test(W[2][0])&&(le=W[3][0]));var he=W[re-1];return ne.startDTD(Se,ue,le),ne.endDTD(),he.index+he[0].length}}return-1}function V(B,H,ne){var te=B.indexOf("?>",H);if(te){var Q=B.substring(H,te).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/);return Q?(Q[0].length,ne.processingInstruction(Q[1],Q[2]),te+2):-1}return-1}function L(){this.attributeNames={}}L.prototype={setTagName:function(B){if(!n.test(B))throw new Error("invalid tagName:"+B);this.tagName=B},addValue:function(B,H,ne){if(!n.test(B))throw new Error("invalid attribute:"+B);this.attributeNames[B]=this.length,this[this.length++]={qName:B,value:H,offset:ne}},length:0,getLocalName:function(B){return this[B].localName},getLocator:function(B){return this[B].locator},getQName:function(B){return this[B].qName},getURI:function(B){return this[B].uri},getValue:function(B){return this[B].value}};function X(B,H){var ne,te=[],Q=/'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g;for(Q.lastIndex=H,Q.exec(B);ne=Q.exec(B);)if(te.push(ne),ne[1])return te}return Yt.XMLReader=M,Yt.ParseError=d,Yt}var WE;function Zn(){if(WE)return gt;WE=1;var E=xt(),t=VE(),r=Jn(),n=Qn(),s=t.DOMImplementation,a=E.NAMESPACE,A=n.ParseError,C=n.XMLReader;function N(f){return f.replace(/\r[\n\u0085]/g,`
|
|
11
11
|
`).replace(/[\r\u0085\u2028]/g,`
|
|
12
|
-
`)}function i(
|
|
13
|
-
@`+(P.systemId||"")+"#[line:"+P.lineNumber+",col:"+P.columnNumber+"]"}function U(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){l.prototype[P]=function(){return null}});function w(P,J){P.currentElement?P.currentElement.appendChild(J):P.doc.appendChild(J)}return mt.__DOMHandler=l,mt.normalizeLineEndings=N,mt.DOMParser=i,mt}var YE;function $n(){if(YE)return Ut;YE=1;var E=FE();return Ut.DOMImplementation=E.DOMImplementation,Ut.XMLSerializer=E.XMLSerializer,Ut.DOMParser=kn().DOMParser,Ut}var VE=$n();const qn={key:0,class:"xml-node__comment"},Jn={key:1,class:"xml-node__cdata"},Qn={key:2,class:"xml-node__element"},Zn={key:0,class:"xml-node__line"},jn=["contenteditable","onKeydown"],zn=["contenteditable","onDblclick","onKeydown"],es=["contenteditable","onDblclick","onKeydown"],ts=["contenteditable","onKeydown"],Es={key:1,class:"xml-node__line"},rs=["contenteditable","onKeydown"],ns=["contenteditable","onDblclick","onKeydown"],ss=["contenteditable","onDblclick","onKeydown"],Ts=["contenteditable","onKeydown"],os={key:2,class:"xml-node__line"},as=["contenteditable","onKeydown"],is=["contenteditable","onDblclick","onKeydown"],As=["contenteditable","onDblclick","onKeydown"],Rs={key:3,class:"xml-node__line"},Ss=["contenteditable","onKeydown"],Ns=["contenteditable","onDblclick","onKeydown"],Is=["contenteditable","onDblclick","onKeydown"],us={key:4},Os={key:0,class:"xml-node__line"},ls=["contenteditable","onKeydown"],Cs=["contenteditable","onDblclick","onKeydown"],cs=["contenteditable","onDblclick","onKeydown"],_s=["title"],Ls={class:"xml-node__line"},Ds=["title"],ps=["contenteditable","onKeydown"],ds={key:1},Ps=["contenteditable","onKeydown"],fs=["contenteditable","onDblclick","onKeydown"],hs=["contenteditable","onDblclick","onKeydown"],Ms=["title"],Us={key:0,class:"xml-node__children"},ms={key:0,class:"xml-node__text"},Bs=["contenteditable","onKeydown"],gs={key:1,class:"xml-node__line"},ys=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),N=T.ref(!1),i=T.ref(""),u=T.ref(""),l=T.ref(""),d=T.ref(""),M=T.ref(""),U=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(":")))),ue=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)},Oe=(c,re)=>`${De.value}-child-${re}`,Ue=()=>`${De.value}.${z.value}`,Te=()=>{s.value=!0,i.value=z.value,T.nextTick(()=>{if(U.value){U.value.focus();const c=document.createRange();c.selectNodeContents(U.value);const re=window.getSelection();re?.removeAllRanges(),re?.addRange(c)}})},he=c=>{a.value=c,u.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,l.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=U.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&&(u.value=a.value,a.value=null)},Ee=()=>{A.value&&(l.value=L.value[A.value]||"",A.value=null)},Re=()=>{C.value=!1,d.value=ne.value},Le=()=>{N.value=!0,M.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)}})},le=()=>{if(!N.value)return;const c=Z.value?.innerText||"";if(c===x.value){N.value=!1;return}N.value=!1,n("update:cdataContent",De.value,c)},v=()=>{N.value=!1,M.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",qn,[T.createElementVNode("span",{style:T.normalizeStyle({color:c.theme.colors.xmlComment})}," <!-- "+T.toDisplayString(ee.value)+" --> ",5)])):X.value==="cdata"?(T.openBlock(),T.createElementBlock("div",Jn,[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",Qn,[g.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:U,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?u.value:F),45,zn),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?l.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__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:N.value,onDblclick:Le,onKeydown:[T.withKeys(T.withModifiers(le,["prevent"]),["enter"]),T.withKeys(v,["escape"])],onBlur:le,ref_key:"cdataContentRef",ref:Z,title:"Double-click to edit CDATA content"},T.toDisplayString(N.value?M.value:x.value),45,ts),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",Es,[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:U,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:z.value),45,rs),(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?u.value:F),45,ns),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?l.value:de),45,ss),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,Ts),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",os,[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:U,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:z.value),45,as),(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?u.value:F),45,is),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?l.value:de),45,As),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",Rs,[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:U,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?u.value:F),45,Ns),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?l.value:de),45,Is),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",us,[!Ce.value&&Q.value?(T.openBlock(),T.createElementBlock("div",Os,[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:U,title:"Double-click or right-click to edit tag name"},T.toDisplayString(s.value?i.value:z.value),45,ls)]),(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?u.value:F),45,Cs),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?l.value:de),45,cs),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 ${ue.value} tag${ue.value>1?"s":""}`},T.toDisplayString(ue.value)+" tag"+T.toDisplayString(ue.value>1?"s":""),9,_s),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",Ls,[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:U,title:"Double-click or right-click to edit tag name"},T.toDisplayString(s.value?i.value:z.value),45,ps)],8,Ds)):(T.openBlock(),T.createElementBlock("span",ds,[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:U,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:z.value),45,Ps)])),(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?u.value:F),45,fs),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?l.value:de),45,hs),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,Ms)):(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",Us,[k.value.length===0&&ne.value.trim()?(T.openBlock(),T.createElementBlock("div",ms,[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,Bs)])):T.createCommentVNode("",!0),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(k.value,(de,F)=>(T.openBlock(),T.createBlock(ge,{key:Oe(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",gs,[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"}},"min-dark":{name:"min-dark",colors:{background:"#111111",surfaceBackground:"#1a1a1a",border:"#2a2a2a",text:"#e5e5e5",textSecondary:"#a3a3a3",buttonBackground:"#1f1f1f",buttonBackgroundHover:"#2a2a2a",buttonBorder:"#333333",buttonText:"#e5e5e5",buttonPrimary:"#3b82f6",buttonPrimaryHover:"#2563eb",success:"#22c55e",successBackground:"#052e16",error:"#f87171",errorBackground:"#450a0a",xmlTag:"#4ade80",xmlAttribute:"#60a5fa",xmlAttributeValue:"#93c5fd",xmlText:"#e5e5e5",xmlComment:"#9ca3af",xmlCdata:"#c084fc",xmlDeclaration:"#f59e0b",xmlBracket:"#9ca3af",xmlEquals:"#9ca3af",xmlQuote:"#60a5fa",collapsedBackground:"#1e293b",collapsedBackgroundHover:"#334155",collapsedText:"#60a5fa",indentLine:"#374151"}},"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"}}},Gs=E=>vE[E]||vE["github-light"],wE=":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",Fs=wE+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040",Hs="["+wE+"]["+Fs+"]*",bs=new RegExp("^"+Hs+"$");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=bs.exec(E);return!(t===null||typeof t>"u")};function xs(E){return typeof E<"u"}const Ys={allowBooleanAttributes:!1,unpairedTags:[]};function XE(E,t){t=Object.assign({},Ys,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=$E(E,a);continue}else{let C=!1;E[a]==="/"&&(C=!0,a++);let N="";for(;a<E.length&&E[a]!==">"&&E[a]!==" "&&E[a]!==" "&&E[a]!==`
|
|
14
|
-
`&&E[a]!=="\r";a++)N+=E[a];if(N=N.trim(),N[N.length-1]==="/"&&(N=N.substring(0,N.length-1),a--)
|
|
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 $E(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 Vs='"',vs="'";function ws(E,t){let r="",n="",s=!1;for(;t<E.length;t++){if(E[t]===Vs||E[t]===vs)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 Ws=new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`,"g");function qE(E,t){const r=WE(E,Ws),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(!ks(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 Xs(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 Ks(E,t){if(t++,E[t]===";")return-1;if(E[t]==="#")return t++,Xs(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 ks(E){return xt(E)}function $s(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 qs={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},Js=function(E){return Object.assign({},qs,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 Qs{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 N,i;[N,i,r]=this.readEntityExp(t,r+1,this.suppressValidationErr),i.indexOf("&")===-1&&(n[N]={regx:RegExp(`&${N};`,"g"),val:i})}else if(a&&_t(t,"!ELEMENT",r)){r+=8;const{index:N}=this.readElementExp(t,r+1);r=N}else if(a&&_t(t,"!ATTLIST",r))r+=8;else if(a&&_t(t,"!NOTATION",r)){r+=9;const{index:N}=this.readNotationExp(t,r+1,this.suppressValidationErr);r=N}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 N="";for(;r<t.length&&t[r]!=="|"&&t[r]!==")";)N+=t[r],r++;if(N=N.trim(),!gt(N))throw new Error(`Invalid notation name: "${N}"`);C.push(N),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 Zs=/^[-+]?0x[a-fA-F0-9]+$/,js=/^([\-\+])?(0*)([0-9]*(\.[0-9]*)?)$/,zs={hex:!0,leadingZeros:!0,decimalPoint:".",eNotation:!0};function eT(E,t={}){if(t=Object.assign({},zs,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&&Zs.test(r))return nT(r,16);if(r.search(/.+[eE].+/)!==-1)return ET(E,r,t);{const n=js.exec(r);if(n){const s=n[1]||"",a=n[2];let A=rT(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 N=Number(r),i=String(N);if(N===0)return N;if(i.search(/[eE]/)!==-1)return t.eNotation?N:E;if(r.indexOf(".")!==-1)return i==="0"||i===A||i===`${s}${A}`?N:E;let u=a?A:r;return a?u===i||s+u===i?N:E:u===i||u===s+i?N:E}}else return E}}const tT=/^([-+])?(0*)(\d*(\.\d*)?[eE][-\+]?\d+)$/;function ET(E,t,r){if(!r.eNotation)return E;const n=t.match(tT);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 rT(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 nT(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 JE(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 sT{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=TT,this.parseXml=RT,this.parseTextData=oT,this.resolveNameSpace=aT,this.buildAttributesMap=AT,this.isItStopNode=uT,this.replaceEntitiesValue=NT,this.readStopNodeData=lT,this.saveTextToParentTag=IT,this.addChild=ST,this.ignoreAttributesFn=JE(this.options.ignoreAttributes)}}function TT(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 oT(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?jt(E,this.options.parseTagValue,this.options.numberParseOptions):E.trim()===E?jt(E,this.options.parseTagValue,this.options.numberParseOptions):E}}function aT(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 iT=new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`,"gm");function AT(E,t,r){if(this.options.ignoreAttributes!==!0&&typeof E=="string"){const n=WE(E,iT),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 N=n[A][4],i=this.options.attributeNamePrefix+C;if(C.length)if(this.options.transformAttributeName&&(i=this.options.transformAttributeName(i)),i==="__proto__"&&(i="#__proto__"),N!==void 0){this.options.trimValues&&(N=N.trim()),N=this.replaceEntitiesValue(N);const u=this.options.attributeValueProcessor(C,N,t);u==null?a[i]=N:typeof u!=typeof N||u!==N?a[i]=u:a[i]=jt(N,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 RT=function(E){E=E.replace(/\r\n?/g,`
|
|
16
|
-
`);const t=new
|
|
17
|
-
`;function
|
|
12
|
+
`)}function i(f){this.options=f||{locator:{}}}i.prototype.parseFromString=function(f,k){var Z=this.options,ee=new C,pe=Z.domBuilder||new l,Le=Z.errorHandler,V=Z.locator,L=Z.xmlns||{},X=/\/x?html?$/.test(k),B=X?r.HTML_ENTITIES:r.XML_ENTITIES;V&&pe.setDocumentLocator(V),ee.errorHandler=u(Le,pe,V),ee.domBuilder=Z.domBuilder||pe,X&&(L[""]=a.HTML),L.xml=L.xml||a.XML;var H=Z.normalizeLineEndings||N;return f&&typeof f=="string"?ee.parse(H(f),L,B):ee.errorHandler.error("invalid doc source"),pe.doc};function u(f,k,Z){if(!f){if(k instanceof l)return k;f=k}var ee={},pe=f instanceof Function;Z=Z||{};function Le(V){var L=f[V];!L&&pe&&(L=f.length==2?function(X){f(V,X)}:f),ee[V]=L&&function(X){L("[xmldom "+V+"] "+X+M(Z))}||function(){}}return Le("warning"),Le("error"),Le("fatalError"),ee}function l(){this.cdata=!1}function d(f,k){k.lineNumber=f.lineNumber,k.columnNumber=f.columnNumber}l.prototype={startDocument:function(){this.doc=new s().createDocument(null,null,null),this.locator&&(this.doc.documentURI=this.locator.systemId)},startElement:function(f,k,Z,ee){var pe=this.doc,Le=pe.createElementNS(f,Z||k),V=ee.length;v(this,Le),this.currentElement=Le,this.locator&&d(this.locator,Le);for(var L=0;L<V;L++){var f=ee.getURI(L),X=ee.getValue(L),Z=ee.getQName(L),B=pe.createAttributeNS(f,Z);this.locator&&d(ee.getLocator(L),B),B.value=B.nodeValue=X,Le.setAttributeNode(B)}},endElement:function(f,k,Z){var ee=this.currentElement;ee.tagName,this.currentElement=ee.parentNode},startPrefixMapping:function(f,k){},endPrefixMapping:function(f){},processingInstruction:function(f,k){var Z=this.doc.createProcessingInstruction(f,k);this.locator&&d(this.locator,Z),v(this,Z)},ignorableWhitespace:function(f,k,Z){},characters:function(f,k,Z){if(f=m.apply(this,arguments),f){if(this.cdata)var ee=this.doc.createCDATASection(f);else var ee=this.doc.createTextNode(f);this.currentElement?this.currentElement.appendChild(ee):/^\s*$/.test(f)&&this.doc.appendChild(ee),this.locator&&d(this.locator,ee)}},skippedEntity:function(f){},endDocument:function(){this.doc.normalize()},setDocumentLocator:function(f){(this.locator=f)&&(f.lineNumber=0)},comment:function(f,k,Z){f=m.apply(this,arguments);var ee=this.doc.createComment(f);this.locator&&d(this.locator,ee),v(this,ee)},startCDATA:function(){this.cdata=!0},endCDATA:function(){this.cdata=!1},startDTD:function(f,k,Z){var ee=this.doc.implementation;if(ee&&ee.createDocumentType){var pe=ee.createDocumentType(f,k,Z);this.locator&&d(this.locator,pe),v(this,pe),this.doc.doctype=pe}},warning:function(f){console.warn("[xmldom warning] "+f,M(this.locator))},error:function(f){console.error("[xmldom error] "+f,M(this.locator))},fatalError:function(f){throw new A(f,this.locator)}};function M(f){if(f)return`
|
|
13
|
+
@`+(f.systemId||"")+"#[line:"+f.lineNumber+",col:"+f.columnNumber+"]"}function m(f,k,Z){return typeof f=="string"?f.substr(k,Z):f.length>=k+Z||k?new java.lang.String(f,k,Z)+"":f}"endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g,function(f){l.prototype[f]=function(){return null}});function v(f,k){f.currentElement?f.currentElement.appendChild(k):f.doc.appendChild(k)}return gt.__DOMHandler=l,gt.normalizeLineEndings=N,gt.DOMParser=i,gt}var XE;function jn(){if(XE)return Bt;XE=1;var E=VE();return Bt.DOMImplementation=E.DOMImplementation,Bt.XMLSerializer=E.XMLSerializer,Bt.DOMParser=Zn().DOMParser,Bt}var KE=jn();const zn={key:0,class:"xml-node__comment"},es={key:1,class:"xml-node__cdata"},ts={key:2,class:"xml-node__element"},Es={key:0,class:"xml-node__line"},rs=["contenteditable","onKeydown"],ns=["contenteditable","onDblclick","onKeydown"],ss=["contenteditable","onDblclick","onKeydown"],Ts=["contenteditable","onKeydown"],os={key:1,class:"xml-node__line"},as=["contenteditable","onKeydown"],is=["contenteditable","onDblclick","onKeydown"],As=["contenteditable","onDblclick","onKeydown"],Rs=["contenteditable","onKeydown"],Ss={key:2,class:"xml-node__line"},Ns=["contenteditable","onKeydown"],Is=["contenteditable","onDblclick","onKeydown"],us=["contenteditable","onDblclick","onKeydown"],Os={key:3,class:"xml-node__line"},ls=["contenteditable","onKeydown"],Cs=["contenteditable","onDblclick","onKeydown"],cs=["contenteditable","onDblclick","onKeydown"],_s={key:4},Ls={key:0,class:"xml-node__line"},Ds=["contenteditable","onKeydown"],ps=["contenteditable","onDblclick","onKeydown"],ds=["contenteditable","onDblclick","onKeydown"],Ps=["title"],fs={class:"xml-node__line"},hs=["title"],Ms=["contenteditable","onKeydown"],Us={key:1},ms=["contenteditable","onKeydown"],Bs=["contenteditable","onDblclick","onKeydown"],gs=["contenteditable","onDblclick","onKeydown"],ys=["title"],Gs={key:0,class:"xml-node__children"},Fs={key:0,class:"xml-node__text"},Hs=["contenteditable","onKeydown"],bs={key:1,class:"xml-node__line"},xs=ht(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),N=T.ref(!1),i=T.ref(""),u=T.ref(""),l=T.ref(""),d=T.ref(""),M=T.ref(""),m=T.ref(null),v=T.ref(null),f=T.ref(null),k=T.ref(null),Z=T.ref(null),ee=T.computed(()=>Object.keys(r.node).find(z=>!z.startsWith(":")&&!z.startsWith("#"))||""),pe=T.computed(()=>ee.value?r.parentPath?`${r.parentPath}.${ee.value}[${r.index}]`:`${ee.value}[${r.index}]`:""),Le=T.computed(()=>r.expanded.has(pe.value)),V=T.computed(()=>r.node["#comment"]?"comment":r.node.__cdata?"cdata":ee.value?"element":"unknown"),L=T.computed(()=>{const c=r.node[":@"]||{},z={};return Object.keys(c).forEach(Be=>{Be.startsWith("@_")&&(z[Be.substring(2)]=c[Be])}),z}),X=T.computed(()=>{if(V.value!=="element"||!ee.value)return[];const c=r.node[ee.value];return Array.isArray(c)?c:[]}),B=T.computed(()=>X.value.some(c=>c.__cdata)),H=T.computed(()=>{if(!B.value)return"";const c=X.value.find(z=>z.__cdata);if(c&&Array.isArray(c.__cdata)){const z=c.__cdata;if(z.length>0&&z[0]["#text"])return z[0]["#text"]}return""}),ne=T.computed(()=>{if(V.value!=="element"||!ee.value||B.value)return"";const c=r.node[ee.value];if(!Array.isArray(c))return"";const z=c.find(Be=>Be["#text"]);return z?z["#text"]:""}),te=T.computed(()=>{if(V.value!=="comment")return"";const c=r.node["#comment"];return Array.isArray(c)&&c.length>0&&c[0]["#text"]||""}),Q=T.computed(()=>X.value.some(c=>Object.keys(c).some(Be=>!Be.startsWith("#")&&!Be.startsWith(":")))),ce=T.computed(()=>Q.value?X.value.filter(c=>Object.keys(c).some(Be=>!Be.startsWith("#")&&!Be.startsWith(":"))).length:0),W=T.computed(()=>V.value==="element"&&!Q.value&&ne.value!==""),re=T.computed(()=>V.value==="element"&&!Q.value&&ne.value===""),Se=T.computed(()=>re.value?r.node[":selfClosing"]===!0:!1),ue=()=>{Q.value&&n("toggle-expand",pe.value)},le=(c,z)=>`${pe.value}-child-${z}`,he=()=>`${pe.value}.${ee.value}`,Te=()=>{s.value=!0,i.value=ee.value,T.nextTick(()=>{if(m.value){m.value.focus();const c=document.createRange();c.selectNodeContents(m.value);const z=window.getSelection();z?.removeAllRanges(),z?.addRange(c)}})},ge=c=>{a.value=c,u.value=c,T.nextTick(()=>{if(v.value){v.value.focus();const z=document.createRange();z.selectNodeContents(v.value);const Be=window.getSelection();Be?.removeAllRanges(),Be?.addRange(z)}})},J=c=>{A.value=c,l.value=L.value[c]||"",T.nextTick(()=>{if(f.value){f.value.focus();const z=document.createRange();z.selectNodeContents(f.value);const Be=window.getSelection();Be?.removeAllRanges(),Be?.addRange(z)}})},Ee=()=>{C.value=!0,d.value=ne.value,T.nextTick(()=>{if(k.value){k.value.focus();const c=document.createRange();c.selectNodeContents(k.value);const z=window.getSelection();z?.removeAllRanges(),z?.addRange(c)}})},p=()=>{if(!s.value)return;const c=m.value?.innerText.trim()||"";if(!c||c===ee.value){s.value=!1;return}s.value=!1,n("update:tagName",pe.value,ee.value,c)},P=()=>{if(!a.value)return;const c=a.value,z=v.value?.innerText.trim()||"";if(!z||z===c){a.value=null;return}a.value=null,n("update:attributeName",pe.value,c,z)},U=()=>{if(!A.value)return;const c=A.value,z=f.value?.innerText.trim()||"";A.value=null,n("update:attributeValue",pe.value,c,z)},g=()=>{if(!C.value)return;const c=k.value?.innerText||"";if(c===ne.value){C.value=!1;return}C.value=!1,n("update:textContent",pe.value,c)},$=()=>{s.value=!1,i.value=ee.value},q=()=>{a.value&&(u.value=a.value,a.value=null)},j=()=>{A.value&&(l.value=L.value[A.value]||"",A.value=null)},ie=()=>{C.value=!1,d.value=ne.value},Ne=()=>{N.value=!0,M.value=H.value,T.nextTick(()=>{if(Z.value){Z.value.focus();const c=document.createRange();c.selectNodeContents(Z.value);const z=window.getSelection();z?.removeAllRanges(),z?.addRange(c)}})},_e=()=>{if(!N.value)return;const c=Z.value?.innerText||"";if(c===H.value){N.value=!1;return}N.value=!1,n("update:cdataContent",pe.value,c)},b=()=>{N.value=!1,M.value=H.value},fe=c=>{Q.value&&(c.preventDefault(),Te())};return(c,z)=>{const Be=T.resolveComponent("XmlNode",!0);return T.openBlock(),T.createElementBlock("div",{class:"xml-node",style:T.normalizeStyle({paddingLeft:c.level>0?"16px":"0"})},[V.value==="comment"?(T.openBlock(),T.createElementBlock("div",zn,[T.createElementVNode("span",{style:T.normalizeStyle({color:c.theme.colors.xmlComment})}," <!-- "+T.toDisplayString(te.value)+" --> ",5)])):V.value==="cdata"?(T.openBlock(),T.createElementBlock("div",es,[T.createElementVNode("span",{style:T.normalizeStyle({color:c.theme.colors.xmlCdata})}," <![CDATA["+T.toDisplayString(c.node.__cdata)+"]]> ",5)])):V.value==="element"?(T.openBlock(),T.createElementBlock("div",ts,[B.value?(T.openBlock(),T.createElementBlock("div",Es,[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(p,["prevent"]),["enter"]),T.withKeys($,["escape"])],onBlur:p,ref_key:"tagNameRef",ref:m,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:ee.value),45,rs),(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:Y=>ge(F),onKeydown:[T.withKeys(T.withModifiers(P,["prevent"]),["enter"]),T.withKeys(q,["escape"])],onBlur:P,ref_for:!0,ref:Y=>{a.value===F&&(v.value=Y)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===F?u.value:F),45,ns),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:Y=>J(F),onKeydown:[T.withKeys(T.withModifiers(U,["prevent"]),["enter"]),T.withKeys(j,["escape"])],onBlur:U,ref_for:!0,ref:Y=>{A.value===F&&(f.value=Y)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===F?l.value:de),45,ss),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:N.value,onDblclick:Ne,onKeydown:[T.withKeys(T.withModifiers(_e,["prevent"]),["enter"]),T.withKeys(b,["escape"])],onBlur:_e,ref_key:"cdataContentRef",ref:Z,title:"Double-click to edit CDATA content"},T.toDisplayString(N.value?M.value:H.value),45,Ts),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:ee.value),5),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},">",4)])):W.value?(T.openBlock(),T.createElementBlock("div",os,[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(p,["prevent"]),["enter"]),T.withKeys($,["escape"])],onBlur:p,ref_key:"tagNameRef",ref:m,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:ee.value),45,as),(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:Y=>ge(F),onKeydown:[T.withKeys(T.withModifiers(P,["prevent"]),["enter"]),T.withKeys(q,["escape"])],onBlur:P,ref_for:!0,ref:Y=>{a.value===F&&(v.value=Y)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===F?u.value:F),45,is),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:Y=>J(F),onKeydown:[T.withKeys(T.withModifiers(U,["prevent"]),["enter"]),T.withKeys(j,["escape"])],onBlur:U,ref_for:!0,ref:Y=>{A.value===F&&(f.value=Y)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===F?l.value:de),45,As),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:Ee,onKeydown:[T.withKeys(T.withModifiers(g,["prevent"]),["enter"]),T.withKeys(ie,["escape"])],onBlur:g,ref_key:"textContentRef",ref:k,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:ee.value),5),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},">",4)])):re.value&&Se.value?(T.openBlock(),T.createElementBlock("div",Ss,[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(p,["prevent"]),["enter"]),T.withKeys($,["escape"])],onBlur:p,ref_key:"tagNameRef",ref:m,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:ee.value),45,Ns),(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:Y=>ge(F),onKeydown:[T.withKeys(T.withModifiers(P,["prevent"]),["enter"]),T.withKeys(q,["escape"])],onBlur:P,ref_for:!0,ref:Y=>{a.value===F&&(v.value=Y)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===F?u.value:F),45,Is),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:Y=>J(F),onKeydown:[T.withKeys(T.withModifiers(U,["prevent"]),["enter"]),T.withKeys(j,["escape"])],onBlur:U,ref_for:!0,ref:Y=>{A.value===F&&(f.value=Y)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===F?l.value:de),45,us),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)])):re.value?(T.openBlock(),T.createElementBlock("div",Os,[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(p,["prevent"]),["enter"]),T.withKeys($,["escape"])],onBlur:p,ref_key:"tagNameRef",ref:m,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:ee.value),45,ls),(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:Y=>ge(F),onKeydown:[T.withKeys(T.withModifiers(P,["prevent"]),["enter"]),T.withKeys(q,["escape"])],onBlur:P,ref_for:!0,ref:Y=>{a.value===F&&(v.value=Y)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===F?u.value:F),45,Cs),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:Y=>J(F),onKeydown:[T.withKeys(T.withModifiers(U,["prevent"]),["enter"]),T.withKeys(j,["escape"])],onBlur:U,ref_for:!0,ref:Y=>{A.value===F&&(f.value=Y)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===F?l.value:de),45,cs),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:ee.value),5),T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},">",4)])):(T.openBlock(),T.createElementBlock("div",_s,[!Le.value&&Q.value?(T.openBlock(),T.createElementBlock("div",Ls,[T.createElementVNode("span",{class:"xml-node__clickable-part",onClick:z[0]||(z[0]=de=>ue()),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(p,["prevent"]),["enter"]),T.withKeys($,["escape"])],onBlur:p,ref_key:"tagNameRef",ref:m,title:"Double-click or right-click to edit tag name"},T.toDisplayString(s.value?i.value:ee.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:Y=>ge(F),onKeydown:[T.withKeys(T.withModifiers(P,["prevent"]),["enter"]),T.withKeys(q,["escape"])],onBlur:P,ref_for:!0,ref:Y=>{a.value===F&&(v.value=Y)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===F?u.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:Y=>J(F),onKeydown:[T.withKeys(T.withModifiers(U,["prevent"]),["enter"]),T.withKeys(j,["escape"])],onBlur:U,ref_for:!0,ref:Y=>{A.value===F&&(f.value=Y)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===F?l.value:de),45,ds),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:z[1]||(z[1]=de=>ue()),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:z[2]||(z[2]=de=>ue()),title:`Click to expand ${ce.value} tag${ce.value>1?"s":""}`},T.toDisplayString(ce.value)+" tag"+T.toDisplayString(ce.value>1?"s":""),9,Ps),T.createElementVNode("span",{class:"xml-node__clickable-part",onClick:z[3]||(z[3]=de=>ue()),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:ee.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",fs,[Q.value?(T.openBlock(),T.createElementBlock("span",{key:0,class:"xml-node__clickable-part",onClick:z[4]||(z[4]=de=>ue()),title:Le.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(p,["prevent"]),["enter"]),T.withKeys($,["escape"])],onBlur:p,ref_key:"tagNameRef",ref:m,title:"Double-click or right-click to edit tag name"},T.toDisplayString(s.value?i.value:ee.value),45,Ms)],8,hs)):(T.openBlock(),T.createElementBlock("span",Us,[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(p,["prevent"]),["enter"]),T.withKeys($,["escape"])],onBlur:p,ref_key:"tagNameRef",ref:m,title:"Double-click to edit tag name"},T.toDisplayString(s.value?i.value:ee.value),45,ms)])),(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:Y=>ge(F),onKeydown:[T.withKeys(T.withModifiers(P,["prevent"]),["enter"]),T.withKeys(q,["escape"])],onBlur:P,ref_for:!0,ref:Y=>{a.value===F&&(v.value=Y)},title:"Double-click to edit attribute name"},T.toDisplayString(a.value===F?u.value:F),45,Bs),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:Y=>J(F),onKeydown:[T.withKeys(T.withModifiers(U,["prevent"]),["enter"]),T.withKeys(j,["escape"])],onBlur:U,ref_for:!0,ref:Y=>{A.value===F&&(f.value=Y)},title:"Double-click to edit attribute value"},T.toDisplayString(A.value===F?l.value:de),45,gs),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:z[5]||(z[5]=de=>ue()),title:Le.value?"Click to collapse":"Click to expand"},[T.createElementVNode("span",{class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},">",4)],8,ys)):(T.openBlock(),T.createElementBlock("span",{key:3,class:"xml-node__bracket",style:T.normalizeStyle({color:c.theme.colors.xmlBracket})},T.toDisplayString(Q.value?">":"/>"),5))]),Le.value&&Q.value?(T.openBlock(),T.createElementBlock("div",Gs,[X.value.length===0&&ne.value.trim()?(T.openBlock(),T.createElementBlock("div",Fs,[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:Ee,onKeydown:[T.withKeys(T.withModifiers(g,["prevent"]),["enter"]),T.withKeys(ie,["escape"])],onBlur:g,ref_key:"textContentRef",ref:k,title:"Double-click to edit text content"},T.toDisplayString(C.value?d.value:ne.value),45,Hs)])):T.createCommentVNode("",!0),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(X.value,(de,F)=>(T.openBlock(),T.createBlock(Be,{key:le(de,F),node:de,index:F,level:c.level+1,"parent-path":he(),expanded:c.expanded,theme:c.theme,selfClosingTags:c.selfClosingTags,onToggleExpand:z[6]||(z[6]=Y=>c.$emit("toggle-expand",Y)),onCopy:z[7]||(z[7]=Y=>c.$emit("copy",Y)),"onUpdate:tagName":z[8]||(z[8]=(Y,ve,Qe)=>c.$emit("update:tagName",Y,ve,Qe)),"onUpdate:attributeName":z[9]||(z[9]=(Y,ve,Qe)=>c.$emit("update:attributeName",Y,ve,Qe)),"onUpdate:attributeValue":z[10]||(z[10]=(Y,ve,Qe)=>c.$emit("update:attributeValue",Y,ve,Qe)),"onUpdate:textContent":z[11]||(z[11]=(Y,ve)=>c.$emit("update:textContent",Y,ve)),"onUpdate:cdataContent":z[12]||(z[12]=(Y,ve)=>c.$emit("update:cdataContent",Y,ve))},null,8,["node","index","level","parent-path","expanded","theme","selfClosingTags"]))),128))])):T.createCommentVNode("",!0),Le.value&&Q.value?(T.openBlock(),T.createElementBlock("div",bs,[T.createElementVNode("span",{class:"xml-node__clickable-part",onClick:z[13]||(z[13]=de=>ue()),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:ee.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"]]),kE={"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"}},"min-dark":{name:"min-dark",colors:{background:"#111111",surfaceBackground:"#1a1a1a",border:"#2a2a2a",text:"#e5e5e5",textSecondary:"#a3a3a3",buttonBackground:"#1f1f1f",buttonBackgroundHover:"#2a2a2a",buttonBorder:"#333333",buttonText:"#e5e5e5",buttonPrimary:"#3b82f6",buttonPrimaryHover:"#2563eb",success:"#22c55e",successBackground:"#052e16",error:"#f87171",errorBackground:"#450a0a",xmlTag:"#4ade80",xmlAttribute:"#60a5fa",xmlAttributeValue:"#93c5fd",xmlText:"#e5e5e5",xmlComment:"#9ca3af",xmlCdata:"#c084fc",xmlDeclaration:"#f59e0b",xmlBracket:"#9ca3af",xmlEquals:"#9ca3af",xmlQuote:"#60a5fa",collapsedBackground:"#1e293b",collapsedBackgroundHover:"#334155",collapsedText:"#60a5fa",indentLine:"#374151"}},"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"}}},Ys=E=>kE[E]||kE["github-light"],$E=":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",Vs=$E+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040",vs="["+$E+"]["+Vs+"]*",ws=new RegExp("^"+vs+"$");function qE(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 Vt=function(E){const t=ws.exec(E);return!(t===null||typeof t>"u")};function Ws(E){return typeof E<"u"}const Xs={allowBooleanAttributes:!1,unpairedTags:[]};function JE(E,t){t=Object.assign({},Xs,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=ZE(E,a),a.err)return a}else if(E[a]==="<"){let A=a;if(a++,E[a]==="!"){a=jE(E,a);continue}else{let C=!1;E[a]==="/"&&(C=!0,a++);let N="";for(;a<E.length&&E[a]!==">"&&E[a]!==" "&&E[a]!==" "&&E[a]!==`
|
|
14
|
+
`&&E[a]!=="\r";a++)N+=E[a];if(N=N.trim(),N[N.length-1]==="/"&&(N=N.substring(0,N.length-1),a--),!js(N)){let l;return N.trim().length===0?l="Invalid space after '<'.":l="Tag '"+N+"' is an invalid name.",be("InvalidTag",l,ke(E,a))}const i=$s(E,a);if(i===!1)return be("InvalidAttr","Attributes for '"+N+"' have open quote.",ke(E,a));let u=i.value;if(a=i.index,u[u.length-1]==="/"){const l=a-u.length;u=u.substring(0,u.length-1);const d=zE(u,t);if(d===!0)n=!0;else return be(d.err.code,d.err.msg,ke(E,l+d.err.line))}else if(C)if(i.tagClosed){if(u.trim().length>0)return be("InvalidTag","Closing tag '"+N+"' can't have attributes or invalid starting.",ke(E,A));if(r.length===0)return be("InvalidTag","Closing tag '"+N+"' has not been opened.",ke(E,A));{const l=r.pop();if(N!==l.tagName){let d=ke(E,l.tagStartPos);return be("InvalidTag","Expected closing tag '"+l.tagName+"' (opened in line "+d.line+", col "+d.col+") instead of closing tag '"+N+"'.",ke(E,A))}r.length==0&&(s=!0)}}else return be("InvalidTag","Closing tag '"+N+"' doesn't have proper closing.",ke(E,a));else{const l=zE(u,t);if(l!==!0)return be(l.err.code,l.err.msg,ke(E,a-u.length+l.err.line));if(s===!0)return be("InvalidXml","Multiple possible root nodes found.",ke(E,a));t.unpairedTags.indexOf(N)!==-1||r.push({tagName:N,tagStartPos:A}),n=!0}for(a++;a<E.length;a++)if(E[a]==="<")if(E[a+1]==="!"){a++,a=jE(E,a);continue}else if(E[a+1]==="?"){if(a=ZE(E,++a),a.err)return a}else break;else if(E[a]==="&"){const l=Qs(E,a);if(l==-1)return be("InvalidChar","char '&' is not expected.",ke(E,a));a=l}else if(s===!0&&!QE(E[a]))return be("InvalidXml","Extra text at the end",ke(E,a));E[a]==="<"&&a--}}else{if(QE(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 QE(E){return E===" "||E===" "||E===`
|
|
15
|
+
`||E==="\r"}function ZE(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 jE(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 Ks='"',ks="'";function $s(E,t){let r="",n="",s=!1;for(;t<E.length;t++){if(E[t]===Ks||E[t]===ks)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 qs=new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`,"g");function zE(E,t){const r=qE(E,qs),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.",yt(r[s]));if(r[s][3]!==void 0&&r[s][4]===void 0)return be("InvalidAttr","Attribute '"+r[s][2]+"' is without value.",yt(r[s]));if(r[s][3]===void 0&&!t.allowBooleanAttributes)return be("InvalidAttr","boolean attribute '"+r[s][2]+"' is not allowed.",yt(r[s]));const a=r[s][2];if(!Zs(a))return be("InvalidAttr","Attribute '"+a+"' is an invalid name.",yt(r[s]));if(!n.hasOwnProperty(a))n[a]=1;else return be("InvalidAttr","Attribute '"+a+"' is repeated.",yt(r[s]))}return!0}function Js(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 Qs(E,t){if(t++,E[t]===";")return-1;if(E[t]==="#")return t++,Js(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 Zs(E){return Vt(E)}function js(E){return Vt(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 yt(E){return E.startIndex+E[1].length}const zs={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},eT=function(E){return Object.assign({},zs,E)};let vt;typeof Symbol!="function"?vt="@@xmlMetadata":vt=Symbol("XML Node Metadata");class _t{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][vt]={startIndex:r})}static getMetaDataSymbol(){return vt}}class tT{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&&Lt(t,"!ENTITY",r)){r+=7;let N,i;[N,i,r]=this.readEntityExp(t,r+1,this.suppressValidationErr),i.indexOf("&")===-1&&(n[N]={regx:RegExp(`&${N};`,"g"),val:i})}else if(a&&Lt(t,"!ELEMENT",r)){r+=8;const{index:N}=this.readElementExp(t,r+1);r=N}else if(a&&Lt(t,"!ATTLIST",r))r+=8;else if(a&&Lt(t,"!NOTATION",r)){r+=9;const{index:N}=this.readNotationExp(t,r+1,this.suppressValidationErr);r=N}else if(Lt(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&&Gt(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&&!Vt(n))throw new Error(`Invalid element name: "${n}"`);r=$e(t,r);let s="";if(t[r]==="E"&&Lt(t,"MPTY",r))r+=4;else if(t[r]==="A"&&Lt(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 N="";for(;r<t.length&&t[r]!=="|"&&t[r]!==")";)N+=t[r],r++;if(N=N.trim(),!Gt(N))throw new Error(`Invalid notation name: "${N}"`);C.push(N),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 Lt(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(Vt(E))return E;throw new Error(`Invalid entity name ${E}`)}const ET=/^[-+]?0x[a-fA-F0-9]+$/,rT=/^([\-\+])?(0*)([0-9]*(\.[0-9]*)?)$/,nT={hex:!0,leadingZeros:!0,decimalPoint:".",eNotation:!0};function sT(E,t={}){if(t=Object.assign({},nT,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&&ET.test(r))return iT(r,16);if(r.search(/.+[eE].+/)!==-1)return oT(E,r,t);{const n=rT.exec(r);if(n){const s=n[1]||"",a=n[2];let A=aT(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 N=Number(r),i=String(N);if(N===0)return N;if(i.search(/[eE]/)!==-1)return t.eNotation?N:E;if(r.indexOf(".")!==-1)return i==="0"||i===A||i===`${s}${A}`?N:E;let u=a?A:r;return a?u===i||s+u===i?N:E:u===i||u===s+i?N:E}}else return E}}const TT=/^([-+])?(0*)(\d*(\.\d*)?[eE][-\+]?\d+)$/;function oT(E,t,r){if(!r.eNotation)return E;const n=t.match(TT);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 aT(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 iT(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 er(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 AT{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=OT,this.parseTextData=ST,this.resolveNameSpace=NT,this.buildAttributesMap=uT,this.isItStopNode=_T,this.replaceEntitiesValue=CT,this.readStopNodeData=DT,this.saveTextToParentTag=cT,this.addChild=lT,this.ignoreAttributesFn=er(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 ST(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?EE(E,this.options.parseTagValue,this.options.numberParseOptions):E.trim()===E?EE(E,this.options.parseTagValue,this.options.numberParseOptions):E}}function NT(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 IT=new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`,"gm");function uT(E,t,r){if(this.options.ignoreAttributes!==!0&&typeof E=="string"){const n=qE(E,IT),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 N=n[A][4],i=this.options.attributeNamePrefix+C;if(C.length)if(this.options.transformAttributeName&&(i=this.options.transformAttributeName(i)),i==="__proto__"&&(i="#__proto__"),N!==void 0){this.options.trimValues&&(N=N.trim()),N=this.replaceEntitiesValue(N);const u=this.options.attributeValueProcessor(C,N,t);u==null?a[i]=N:typeof u!=typeof N||u!==N?a[i]=u:a[i]=EE(N,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 OT=function(E){E=E.replace(/\r\n?/g,`
|
|
16
|
+
`);const t=new _t("!xml");let r=t,n="",s="";const a=new tT(this.options.processEntities);for(let A=0;A<E.length;A++)if(E[A]==="<")if(E[A+1]==="/"){const N=Dt(E,">",A,"Closing Tag is not closed.");let i=E.substring(A+2,N).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 u=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 l=0;u&&this.options.unpairedTags.indexOf(u)!==-1?(l=s.lastIndexOf(".",s.lastIndexOf(".")-1),this.tagsNodeStack.pop()):l=s.lastIndexOf("."),s=s.substring(0,l),r=this.tagsNodeStack.pop(),n="",A=N}else if(E[A+1]==="?"){let N=tE(E,A,!1,"?>");if(!N)throw new Error("Pi Tag is not closed.");if(n=this.saveTextToParentTag(n,r,s),!(this.options.ignoreDeclaration&&N.tagName==="?xml"||this.options.ignorePiTags)){const i=new _t(N.tagName);i.add(this.options.textNodeName,""),N.tagName!==N.tagExp&&N.attrExpPresent&&(i[":@"]=this.buildAttributesMap(N.tagExp,s,N.tagName)),this.addChild(r,i,s,A)}A=N.closeIndex+1}else if(E.substr(A+1,3)==="!--"){const N=Dt(E,"-->",A+4,"Comment is not closed.");if(this.options.commentPropName){const i=E.substring(A+4,N-2);n=this.saveTextToParentTag(n,r,s),r.add(this.options.commentPropName,[{[this.options.textNodeName]:i}])}A=N}else if(E.substr(A+1,2)==="!D"){const N=a.readDocType(E,A);this.docTypeEntities=N.entities,A=N.i}else if(E.substr(A+1,2)==="!["){const N=Dt(E,"]]>",A,"CDATA is not closed.")-2,i=E.substring(A+9,N);n=this.saveTextToParentTag(n,r,s);let u=this.parseTextData(i,r.tagname,s,!0,!1,!0,!0);u==null&&(u=""),this.options.cdataPropName?r.add(this.options.cdataPropName,[{[this.options.textNodeName]:i}]):r.add(this.options.textNodeName,u),A=N+2}else{let N=tE(E,A,this.options.removeNSPrefix),i=N.tagName;const u=N.rawTagName;let l=N.tagExp,d=N.attrExpPresent,M=N.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 v=A;if(this.isItStopNode(this.options.stopNodes,s,i)){let f="";if(l.length>0&&l.lastIndexOf("/")===l.length-1)i[i.length-1]==="/"?(i=i.substr(0,i.length-1),s=s.substr(0,s.length-1),l=i):l=l.substr(0,l.length-1),A=N.closeIndex;else if(this.options.unpairedTags.indexOf(i)!==-1)A=N.closeIndex;else{const Z=this.readStopNodeData(E,u,M+1);if(!Z)throw new Error(`Unexpected end of ${u}`);A=Z.i,f=Z.tagContent}const k=new _t(i);i!==l&&d&&(k[":@"]=this.buildAttributesMap(l,s,i)),f&&(f=this.parseTextData(f,i,s,!0,d,!0,!0)),s=s.substr(0,s.lastIndexOf(".")),k.add(this.options.textNodeName,f),this.addChild(r,k,s,v)}else{if(l.length>0&&l.lastIndexOf("/")===l.length-1){i[i.length-1]==="/"?(i=i.substr(0,i.length-1),s=s.substr(0,s.length-1),l=i):l=l.substr(0,l.length-1),this.options.transformTagName&&(i=this.options.transformTagName(i));const f=new _t(i);i!==l&&d&&(f[":@"]=this.buildAttributesMap(l,s,i)),this.addChild(r,f,s,v),s=s.substr(0,s.lastIndexOf("."))}else{const f=new _t(i);this.tagsNodeStack.push(r),i!==l&&d&&(f[":@"]=this.buildAttributesMap(l,s,i)),this.addChild(r,f,s,v),r=f}n="",A=M}}else n+=E[A];return t.child};function lT(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 CT=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 cT(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 _T(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 LT(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 Dt(E,t,r,n){const s=E.indexOf(t,r);if(s===-1)throw new Error(n);return s+t.length-1}function tE(E,t,r,n=">"){const s=LT(E,t+1,n);if(!s)return;let a=s.data;const A=s.index,C=a.search(/\s/);let N=a,i=!0;C!==-1&&(N=a.substring(0,C),a=a.substring(C+1).trimStart());const u=N;if(r){const l=N.indexOf(":");l!==-1&&(N=N.substr(l+1),i=N!==s.data.substr(l+1))}return{tagName:N,tagExp:a,closeIndex:A,attrExpPresent:i,rawTagName:u}}function DT(E,t,r){const n=r;let s=1;for(;r<E.length;r++)if(E[r]==="<")if(E[r+1]==="/"){const a=Dt(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=Dt(E,"?>",r+1,"StopNode is not closed.");else if(E.substr(r+1,3)==="!--")r=Dt(E,"-->",r+3,"StopNode is not closed.");else if(E.substr(r+1,2)==="![")r=Dt(E,"]]>",r,"StopNode is not closed.")-2;else{const a=tE(E,r,">");a&&((a&&a.tagName)===t&&a.tagExp[a.tagExp.length-1]!=="/"&&s++,r=a.closeIndex)}}function EE(E,t,r){if(t&&typeof E=="string"){const n=E.trim();return n==="true"?!0:n==="false"?!1:sT(E,r)}else return Ws(E)?E:""}const rE=_t.getMetaDataSymbol();function pT(E,t){return tr(E,t)}function tr(E,t,r){let n;const s={};for(let a=0;a<E.length;a++){const A=E[a],C=dT(A);let N="";if(r===void 0?N=C:N=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=tr(A[C],t,N);const u=fT(i,t);A[rE]!==void 0&&(i[rE]=A[rE]),A[":@"]?PT(i,A[":@"],N,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,N,u)?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 dT(E){const t=Object.keys(E);for(let r=0;r<t.length;r++){const n=t[r];if(n!==":@")return n}}function PT(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 fT(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 hT{constructor(t){this.externalEntities={},this.options=eT(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=JE(t,r);if(a!==!0)throw Error(`${a.err.msg}:${a.err.line}:${a.err.col}`)}const n=new AT(this.options);n.addExternalEntities(this.externalEntities);const s=n.parseXml(t);return this.options.preserveOrder||s===void 0?s:pT(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 _t.getMetaDataSymbol()}}const MT=`
|
|
17
|
+
`;function UT(E,t){let r="";return t.format&&t.indentBy.length>0&&(r=MT),Er(E,t,"",r)}function Er(E,t,r,n){let s="",a=!1;for(let A=0;A<E.length;A++){const C=E[A],N=mT(C);if(N===void 0)continue;let i="";if(r.length===0?i=N:i=`${r}.${N}`,N===t.textNodeName){let m=C[N];BT(i,t)||(m=t.tagValueProcessor(N,m),m=nr(m,t)),a&&(s+=n),s+=m,a=!1;continue}else if(N===t.cdataPropName){a&&(s+=n),s+=`<![CDATA[${C[N][0][t.textNodeName]}]]>`,a=!1;continue}else if(N===t.commentPropName){s+=n+`<!--${C[N][0][t.textNodeName]}-->`,a=!0;continue}else if(N[0]==="?"){const m=rr(C[":@"],t),v=N==="?xml"?"":n;let f=C[N][0][t.textNodeName];f=f.length!==0?" "+f:"",s+=v+`<${N}${f}${m}?>`,a=!0;continue}let u=n;u!==""&&(u+=t.indentBy);const l=rr(C[":@"],t),d=n+`<${N}${l}`,M=Er(C[N],t,i,u);t.unpairedTags.indexOf(N)!==-1?t.suppressUnpairedNode?s+=d+">":s+=d+"/>":(!M||M.length===0)&&t.suppressEmptyNode?s+=d+"/>":M&&M.endsWith(">")?s+=d+`>${M}${n}</${N}>`:(s+=d+">",M&&n!==""&&(M.includes("/>")||M.includes("</"))?s+=n+t.indentBy+M+n:s+=M,s+=`</${N}>`),a=!0}return s}function mT(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 rr(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=nr(s,t),s===!0&&t.suppressBooleanAttributes?r+=` ${n.substr(t.attributeNamePrefix.length)}`:r+=` ${n.substr(t.attributeNamePrefix.length)}="${s}"`}return r}function BT(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 nr(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 gT={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 It(E){this.options=Object.assign({},gT,E),this.options.ignoreAttributes===!0||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.ignoreAttributesFn=er(this.options.ignoreAttributes),this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=FT),this.processTextOrObjNode=yT,this.options.format?(this.indentate=GT,this.tagEndChar=`>
|
|
18
18
|
`,this.newLine=`
|
|
19
|
-
`):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}
|
|
20
|
-
`+n),n}catch(r){throw new Error(`XML 构建失败: ${r instanceof Error?r.message:"Unknown error"}`)}},
|
|
21
|
-
`||E[i]==="\r");)i--;const u=E[i]==="/";t.has(s)||t.set(s,[]),t.get(s).push(u),r=a+1;break}a++}if(a>=E.length)break;continue}}r++}return t},
|
|
22
|
-
`:"";let C=t.selfClosingTags,N=t.selfClosingOccurrences,i=t.selfClosingCounters;n===0&&t.originalXml&&(N=
|
|
23
|
-
`,
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
`)}),b+="</result>"):b=B.serializeToString(m),N.value=eE(b),i.value="",T.nextTick(()=>{L()})}catch(p){i.value=p instanceof Error?p.message:"Filter execution error",N.value=null}},Q=()=>{N.value=null,i.value="",T.nextTick(()=>{L()})},ue=()=>{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 le=B[Le];if(le[p]){const v=le[p];delete le[p],le[h]=v,l.value.has(p)&&(l.value.delete(p),l.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:u.value||void 0});s("update:modelValue",b)}catch(m){console.error("Failed to update tag name:",m)}},Oe=(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:u.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:u.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 le=m[Le];if(B=Object.keys(le).find(v=>!v.startsWith(":")&&!v.startsWith("#"))||"",B&&Array.isArray(le[B])){const v=le[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:u.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],le=Object.keys(Le).find(v=>!v.startsWith(":")&&!v.startsWith("#"));if(le&&Array.isArray(Le[le])){const v=Le[le],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:u.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:ue,clearSort:ce,isSorted:()=>d.value,isValidXml:()=>M.value,getParsedXml:()=>a.value,getFilteredXml:()=>N.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",VT,[M.value?i.value?(T.openBlock(),T.createElementBlock("div",wT,[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",WT,[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(ys,{key:m,node:h.node,index:h.originalIndex,level:0,expanded:C.value,theme:J.value,selfClosingTags:l.value,onToggleExpand:X,onCopy:Y,"onUpdate:tagName":j,"onUpdate:attributeName":Oe,"onUpdate:attributeValue":Ue,"onUpdate:textContent":Te,"onUpdate:cdataContent":he},null,8,["node","index","expanded","theme","selfClosingTags"]))),128))])):(T.openBlock(),T.createElementBlock("div",vT,[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"]]),tr={"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"}},"min-dark":{name:"min-dark",colors:{background:"#111111",surfaceBackground:"#1a1a1a",hoverBackground:"#1f1f1f",border:"#2a2a2a",text:"#e5e5e5",textSecondary:"#a3a3a3",buttonBackground:"#1f1f1f",buttonBackgroundHover:"#2a2a2a",buttonBorder:"#333333",buttonText:"#e5e5e5",buttonPrimary:"#3b82f6",buttonPrimaryHover:"#2563eb",success:"#22c55e",successBackground:"#052e16",error:"#f87171",errorBackground:"#450a0a",sqlKeyword:"#4ade80",sqlFunction:"#c084fc",sqlString:"#f87171",sqlNumber:"#60a5fa",sqlComment:"#9ca3af",sqlOperator:"#f87171",sqlIdentifier:"#f3f4f6",sqlPunctuation:"#d1d5db",collapsedBackground:"#1e293b",collapsedText:"#60a5fa",indentLine:"#374151"}},"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"}}},KT=E=>tr[E]||tr["github-light"],y=E=>E.flatMap(kT),kT=E=>Vt(qT(E)).map($T),$T=E=>E.replace(/ +/g," ").trim(),qT=E=>({type:"mandatory_block",items:EE(E,0)[0]}),EE=(E,t,r)=>{const n=[];for(;E[t];){const[s,a]=JT(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]},JT=(E,t)=>{const r=[];for(;;){const[n,s]=QT(E,t);if(n)r.push(n),t=s;else break}return r.length===1?[r[0],t]:[{type:"concatenation",items:r},t]},QT=(E,t)=>{if(E[t]==="{")return ZT(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]}},ZT=(E,t)=>{const[r,n]=EE(E,t,"}");return[{type:"mandatory_block",items:r},n]},jT=(E,t)=>{const[r,n]=EE(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(zT,[""]);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}`)},zT=(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 Er=E=>({type:$.EOF,raw:"«EOF»",text:"«EOF»",start:E}),It=Er(1/0),ft=E=>t=>t.type===E.type&&t.text===E.text,ut={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})},rr=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,eo=E=>E===$.AND||E===$.OR||E===$.XOR,to=["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"],Eo=["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"],ro=["ARRAY","BOOL","BYTES","DATE","DATETIME","GEOGRAPHY","INTERVAL","INT64","INT","SMALLINT","INTEGER","BIGINT","TINYINT","BYTEINT","NUMERIC","DECIMAL","BIGNUMERIC","BIGDECIMAL","FLOAT64","STRING","STRUCT","TIME","TIMEZONE"],no=y(["SELECT [ALL | DISTINCT] [AS STRUCT | AS VALUE]"]),so=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"]),nr=y(["CREATE [OR REPLACE] [TEMP|TEMPORARY|SNAPSHOT|EXTERNAL] TABLE [IF NOT EXISTS]"]),rE=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"]),To=y(["UNION {ALL | DISTINCT}","EXCEPT DISTINCT","INTERSECT DISTINCT"]),oo=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),ao=y(["TABLESAMPLE SYSTEM","ANY TYPE","ALL COLUMNS","NOT DETERMINISTIC","{ROWS | RANGE} BETWEEN","IS [NOT] DISTINCT FROM"]),io=y([]),Ao={name:"bigquery",tokenizerOptions:{reservedSelect:no,reservedClauses:[...so,...rE,...nr],reservedSetOperations:To,reservedJoins:oo,reservedKeywordPhrases:ao,reservedDataTypePhrases:io,reservedKeywords:Eo,reservedDataTypes:ro,reservedFunctionNames:to,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:Ro},formatOptions:{onelineClauses:[...nr,...rE],tabularOnelineClauses:rE}};function Ro(E){return So(No(E))}function So(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 No(E){var t;const r=[];for(let n=0;n<E.length;n++){const s=E[n];if((ut.ARRAY(s)||ut.STRUCT(s))&&((t=E[n+1])===null||t===void 0?void 0:t.text)==="<"){const a=Io(E,n+1),A=E.slice(n,a+1);r.push({type:$.IDENTIFIER,raw:A.map(sr("raw")).join(""),text:A.map(sr("text")).join(""),start:s.start}),n=a}else r.push(s)}return r}const sr=E=>t=>t.type===$.IDENTIFIER||t.type===$.COMMA?t[E]+" ":t[E];function Io(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 uo=["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"],Oo=["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"],lo=["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"],Co=y(["SELECT [DISTINCT]","MODIFY QUERY SELECT [DISTINCT]"]),co=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]"]),Tr=y(["CREATE [OR REPLACE] [TEMPORARY] TABLE [IF NOT EXISTS]"]),nE=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"]),_o=y(["UNION [ALL | DISTINCT]","PARALLEL WITH"]),Lo=y(["[GLOBAL] [INNER|LEFT|RIGHT|FULL|CROSS] [OUTER|SEMI|ANTI|ANY|ALL|ASOF] JOIN","[LEFT] ARRAY JOIN"]),Do=y(["{ROWS | RANGE} BETWEEN","ALTER MATERIALIZE STATISTICS"]),po={name:"clickhouse",tokenizerOptions:{reservedSelect:Co,reservedClauses:[...co,...Tr,...nE],reservedSetOperations:_o,reservedJoins:Lo,reservedKeywordPhrases:Do,reservedKeywords:Oo,reservedDataTypes:lo,reservedFunctionNames:uo,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:Po},formatOptions:{onelineClauses:[...Tr,...nE],tabularOnelineClauses:nE}};function Po(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}):ut.SET(t)&&n.type===$.OPEN_PAREN?Object.assign(Object.assign({},t),{type:$.RESERVED_FUNCTION_NAME}):t})}const fo=["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"],ho=["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"],Mo=["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"],Uo=y(["SELECT [ALL | DISTINCT]"]),mo=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"]),or=y(["CREATE [GLOBAL TEMPORARY | EXTERNAL] TABLE [IF NOT EXISTS]"]),sE=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"]),Bo=y(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),go=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),yo=y(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),Go=y([]),Fo={name:"db2",tokenizerOptions:{reservedSelect:Uo,reservedClauses:[...mo,...or,...sE],reservedSetOperations:Bo,reservedJoins:go,reservedKeywordPhrases:yo,reservedDataTypePhrases:Go,reservedKeywords:ho,reservedDataTypes:Mo,reservedFunctionNames:fo,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:[...or,...sE],tabularOnelineClauses:sE}},Ho=["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"],bo=["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"],xo=["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"],Yo=y(["SELECT [ALL | DISTINCT]"]),Vo=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"]),ar=y(["CREATE [OR REPLACE] TABLE"]),TE=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}"]),vo=y(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),wo=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT | RIGHT] EXCEPTION JOIN","{INNER | CROSS} JOIN"]),Wo=y(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),Xo=y([]),Ko={name:"db2i",tokenizerOptions:{reservedSelect:Yo,reservedClauses:[...Vo,...ar,...TE],reservedSetOperations:vo,reservedJoins:wo,reservedKeywordPhrases:Wo,reservedDataTypePhrases:Xo,reservedKeywords:bo,reservedDataTypes:xo,reservedFunctionNames:Ho,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:[...ar,...TE],tabularOnelineClauses:TE}},ko=["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"],$o=["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"],qo=["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"],Jo=y(["SELECT [ALL | DISTINCT]"]),Qo=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"]),ir=y(["CREATE [OR REPLACE] [TEMPORARY | TEMP] TABLE [IF NOT EXISTS]"]),oE=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]"]),Zo=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"]),zo=y(["{ROWS | RANGE | GROUPS} BETWEEN","SIMILAR TO","IS [NOT] DISTINCT FROM"]),ea=y(["TIMESTAMP WITH TIME ZONE"]),ta={name:"duckdb",tokenizerOptions:{reservedSelect:Jo,reservedClauses:[...Qo,...ir,...oE],reservedSetOperations:Zo,reservedJoins:jo,reservedKeywordPhrases:zo,reservedDataTypePhrases:ea,supportsXor:!0,reservedKeywords:$o,reservedDataTypes:qo,reservedFunctionNames:ko,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:[...ir,...oE],tabularOnelineClauses:oE}},Ea=["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"],ra=["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"],na=["ARRAY","BIGINT","BINARY","BOOLEAN","CHAR","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MAP","NUMERIC","PRECISION","SMALLINT","STRUCT","TIMESTAMP","VARCHAR"],sa=y(["SELECT [ALL | DISTINCT]"]),Ta=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"]),Ar=y(["CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS]"]),aE=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"]),oa=y(["UNION [ALL | DISTINCT]"]),aa=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","LEFT SEMI JOIN"]),ia=y(["{ROWS | RANGE} BETWEEN"]),Aa=y([]),Ra={name:"hive",tokenizerOptions:{reservedSelect:sa,reservedClauses:[...Ta,...Ar,...aE],reservedSetOperations:oa,reservedJoins:aa,reservedKeywordPhrases:ia,reservedDataTypePhrases:Aa,reservedKeywords:ra,reservedDataTypes:na,reservedFunctionNames:Ea,extraParens:["[]"],stringTypes:['""-bs',"''-bs"],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||"]},formatOptions:{onelineClauses:[...Ar,...aE],tabularOnelineClauses:aE}};function vt(E){return E.map((t,r)=>{const n=E[r+1]||It;if(ut.SET(t)&&n.text==="(")return Object.assign(Object.assign({},t),{type:$.RESERVED_FUNCTION_NAME});const s=E[r-1]||It;return ut.VALUES(t)&&s.text==="="?Object.assign(Object.assign({},t),{type:$.RESERVED_FUNCTION_NAME}):t})}const Sa=["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"],Na=["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"],Ia=["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"],ua=y(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),Oa=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"]),Rr=y(["CREATE [OR REPLACE] [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 [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"]),la=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]","MINUS [ALL | DISTINCT]"]),Ca=y(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),ca=y(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),_a=y([]),La={name:"mariadb",tokenizerOptions:{reservedSelect:ua,reservedClauses:[...Oa,...Rr,...iE],reservedSetOperations:la,reservedJoins:Ca,reservedKeywordPhrases:ca,reservedDataTypePhrases:_a,supportsXor:!0,reservedKeywords:Sa,reservedDataTypes:Na,reservedFunctionNames:Ia,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:[...Rr,...iE],tabularOnelineClauses:iE}},Da=["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"],pa=["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"],da=["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"],Pa=y(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),fa=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 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"]),ha=y(["UNION [ALL | DISTINCT]"]),Ma=y(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),Ua=y(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),ma=y([]),Ba={name:"mysql",tokenizerOptions:{reservedSelect:Pa,reservedClauses:[...fa,...Sr,...AE],reservedSetOperations:ha,reservedJoins:Ma,reservedKeywordPhrases:Ua,reservedDataTypePhrases:ma,supportsXor:!0,reservedKeywords:Da,reservedDataTypes:pa,reservedFunctionNames:da,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}},ga=["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"],ya=["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"],Ga=["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"],Fa=y(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),Ha=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"]),Nr=y(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),RE=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"]),ba=y(["UNION [ALL | DISTINCT]"]),xa=y(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),Ya=y(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),Va=y([]),va={name:"tidb",tokenizerOptions:{reservedSelect:Fa,reservedClauses:[...Ha,...Nr,...RE],reservedSetOperations:ba,reservedJoins:xa,reservedKeywordPhrases:Ya,reservedDataTypePhrases:Va,supportsXor:!0,reservedKeywords:ga,reservedDataTypes:ya,reservedFunctionNames:Ga,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:[...Nr,...RE],tabularOnelineClauses:RE}},wa=["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"],Wa=["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"],Xa=[],Ka=y(["SELECT [ALL | DISTINCT]"]),ka=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"]),Ir=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"]),$a=y(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),qa=y(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","INNER JOIN"]),Ja=y(["{ROWS | RANGE | GROUPS} BETWEEN"]),Qa=y([]),Za={name:"n1ql",tokenizerOptions:{reservedSelect:Ka,reservedClauses:[...ka,...Ir],reservedSetOperations:$a,reservedJoins:qa,reservedKeywordPhrases:Ja,reservedDataTypePhrases:Qa,supportsXor:!0,reservedKeywords:Wa,reservedDataTypes:Xa,reservedFunctionNames:wa,stringTypes:['""-bs',"''-bs"],identTypes:["``"],extraParens:["[]","{}"],paramTypes:{positional:!0,numbered:["$"],named:["$"]},lineCommentTypes:["#","--"],operators:["%","==",":","||"]},formatOptions:{onelineClauses:Ir}},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"],za=["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"],ei=["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"],ti=y(["SELECT [ALL | DISTINCT | UNIQUE]"]),Ei=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"]),ur=y(["CREATE [GLOBAL TEMPORARY | PRIVATE TEMPORARY | SHARDED | DUPLICATED | IMMUTABLE BLOCKCHAIN | BLOCKCHAIN | IMMUTABLE] TABLE"]),SE=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"]),ri=y(["UNION [ALL]","MINUS","INTERSECT"]),ni=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | OUTER} APPLY"]),si=y(["ON {UPDATE | DELETE} [SET NULL]","ON COMMIT","{ROWS | RANGE} BETWEEN"]),Ti=y([]),oi={name:"plsql",tokenizerOptions:{reservedSelect:ti,reservedClauses:[...Ei,...ur,...SE],reservedSetOperations:ri,reservedJoins:ni,reservedKeywordPhrases:si,reservedDataTypePhrases:Ti,supportsXor:!0,reservedKeywords:ja,reservedDataTypes:za,reservedFunctionNames:ei,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:ai},formatOptions:{alwaysDenseOperators:["@"],onelineClauses:[...ur,...SE],tabularOnelineClauses:SE}};function ai(E){let t=It;return E.map(r=>ut.SET(r)&&ut.BY(t)?Object.assign(Object.assign({},r),{type:$.RESERVED_KEYWORD}):(rr(r.type)&&(t=r),r))}const ii=["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"],Ai=["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"],Ri=["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"],Si=y(["SELECT [ALL | DISTINCT]"]),Ni=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]"]),NE=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"]),Ii=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),ui=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),Oi=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"]),li=y(["[TIMESTAMP | TIME] {WITH | WITHOUT} TIME ZONE"]),Ci={name:"postgresql",tokenizerOptions:{reservedSelect:Si,reservedClauses:[...Ni,...Or,...NE],reservedSetOperations:Ii,reservedJoins:ui,reservedKeywordPhrases:Oi,reservedDataTypePhrases:li,reservedKeywords:Ai,reservedDataTypes:Ri,reservedFunctionNames:ii,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,...NE],tabularOnelineClauses:NE}},ci=["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"],_i=["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"],Li=["ARRAY","BIGINT","BPCHAR","CHAR","CHARACTER VARYING","CHARACTER","DECIMAL","INT","INT2","INT4","INT8","INTEGER","NCHAR","NUMERIC","NVARCHAR","SMALLINT","TEXT","VARBYTE","VARCHAR"],Di=y(["SELECT [ALL | DISTINCT]"]),pi=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]"]),IE=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"]),di=y(["UNION [ALL]","EXCEPT","INTERSECT","MINUS"]),Pi=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),fi=y(["NULL AS","DATA CATALOG","HIVE METASTORE","{ROWS | RANGE} BETWEEN"]),hi=y([]),Mi={name:"redshift",tokenizerOptions:{reservedSelect:Di,reservedClauses:[...pi,...lr,...IE],reservedSetOperations:di,reservedJoins:Pi,reservedKeywordPhrases:fi,reservedDataTypePhrases:hi,reservedKeywords:_i,reservedDataTypes:Li,reservedFunctionNames:ci,extraParens:["[]"],stringTypes:["''-qq"],identTypes:['""-qq'],identChars:{first:"#"},paramTypes:{numbered:["$"]},operators:["^","%","@","|/","||/","&","|","~","<<",">>","||","::"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...lr,...IE],tabularOnelineClauses:IE}},Ui=["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"],mi=["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"],Bi=["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"],gi=y(["SELECT [ALL | DISTINCT]"]),yi=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"]),Cr=y(["CREATE [EXTERNAL] TABLE [IF NOT EXISTS]"]),uE=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"]),Gi=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),Fi=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"]),Hi=y(["ON DELETE","ON UPDATE","CURRENT ROW","{ROWS | RANGE} BETWEEN"]),bi=y([]),xi={name:"spark",tokenizerOptions:{reservedSelect:gi,reservedClauses:[...yi,...Cr,...uE],reservedSetOperations:Gi,reservedJoins:Fi,reservedKeywordPhrases:Hi,reservedDataTypePhrases:bi,supportsXor:!0,reservedKeywords:Ui,reservedDataTypes:mi,reservedFunctionNames:Bi,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:Yi},formatOptions:{onelineClauses:[...Cr,...uE],tabularOnelineClauses:uE}};function Yi(E){return E.map((t,r)=>{const n=E[r-1]||It,s=E[r+1]||It;return ut.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 Vi=["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"],vi=["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"],wi=["ANY","ARRAY","BLOB","CHARACTER","DECIMAL","INT","INTEGER","NATIVE CHARACTER","NCHAR","NUMERIC","NVARCHAR","REAL","TEXT","VARCHAR","VARYING CHARACTER"],Wi=y(["SELECT [ALL | DISTINCT]"]),Xi=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"]),Ki=y(["UNION [ALL]","EXCEPT","INTERSECT"]),ki=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),$i=y(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN","DO UPDATE"]),qi=y([]),Ji={name:"sqlite",tokenizerOptions:{reservedSelect:Wi,reservedClauses:[...Xi,...cr,...OE],reservedSetOperations:Ki,reservedJoins:ki,reservedKeywordPhrases:$i,reservedDataTypePhrases:qi,reservedKeywords:vi,reservedDataTypes:wi,reservedFunctionNames:Vi,stringTypes:["''-qq",{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``","[]"],paramTypes:{positional:!0,numbered:["?"],named:[":","@","$"]},operators:["%","~","&","|","<<",">>","==","->","->>","||"]},formatOptions:{onelineClauses:[...cr,...OE],tabularOnelineClauses:OE}},Qi=["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"],Zi=["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"],zi=y(["SELECT [ALL | DISTINCT]"]),eA=y(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET"]),_r=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"]),tA=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),EA=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),rA=y(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),nA=y([]),sA={name:"sql",tokenizerOptions:{reservedSelect:zi,reservedClauses:[...eA,..._r,...lE],reservedSetOperations:tA,reservedJoins:EA,reservedKeywordPhrases:rA,reservedDataTypePhrases:nA,reservedKeywords:Zi,reservedDataTypes:ji,reservedFunctionNames:Qi,stringTypes:[{quote:"''-qq-bs",prefixes:["N","U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``"],paramTypes:{positional:!0},operators:["||"]},formatOptions:{onelineClauses:[..._r,...lE],tabularOnelineClauses:lE}},TA=["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"],oA=["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"],aA=["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"],iA=y(["SELECT [ALL | DISTINCT]"]),AA=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"]),Lr=y(["CREATE TABLE [IF NOT EXISTS]"]),CE=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"]),RA=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),SA=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),NA=y(["{ROWS | RANGE | GROUPS} BETWEEN","IS [NOT] DISTINCT FROM"]),IA=y([]),uA={name:"trino",tokenizerOptions:{reservedSelect:iA,reservedClauses:[...AA,...Lr,...CE],reservedSetOperations:RA,reservedJoins:SA,reservedKeywordPhrases:NA,reservedDataTypePhrases:IA,reservedKeywords:oA,reservedDataTypes:aA,reservedFunctionNames:TA,extraParens:["[]","{}"],stringTypes:[{quote:"''-qq",prefixes:["U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq'],paramTypes:{positional:!0},operators:["%","->","=>",":","||","|","^","$"]},formatOptions:{onelineClauses:[...Lr,...CE],tabularOnelineClauses:CE}},OA=["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"],lA=["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"],CA=["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"],cA=y(["SELECT [ALL | DISTINCT]"]),_A=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"]),Dr=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"]),LA=y(["UNION [ALL]","EXCEPT","INTERSECT"]),DA=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","{CROSS | OUTER} APPLY"]),pA=y(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),dA=y([]),PA={name:"transactsql",tokenizerOptions:{reservedSelect:cA,reservedClauses:[..._A,...Dr,...cE],reservedSetOperations:LA,reservedJoins:DA,reservedKeywordPhrases:pA,reservedDataTypePhrases:dA,reservedKeywords:lA,reservedDataTypes:CA,reservedFunctionNames:OA,nestedBlockComments:!0,stringTypes:[{quote:"''-qq",prefixes:["N"]},"{}"],identTypes:['""-qq',"[]"],identChars:{first:"#@",rest:"#@$"},paramTypes:{named:["@"],quoted:["@"]},operators:["%","&","|","^","~","!<","!>","+=","-=","*=","/=","%=","|=","&=","^=","::",":"],propertyAccessOperators:[".."]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...Dr,...cE],tabularOnelineClauses:cE}},fA=["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"],hA=["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"],MA=["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"],UA=y(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),mA=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"]),pr=y(["CREATE [ROWSTORE] [REFERENCE | TEMPORARY | GLOBAL TEMPORARY] TABLE [IF NOT EXISTS]"]),_E=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"]),BA=y(["UNION [ALL | DISTINCT]","EXCEPT","INTERSECT","MINUS"]),gA=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),yA=y(["ON DELETE","ON UPDATE","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),GA=y([]),FA={name:"singlestoredb",tokenizerOptions:{reservedSelect:UA,reservedClauses:[...mA,...pr,..._E],reservedSetOperations:BA,reservedJoins:gA,reservedKeywordPhrases:yA,reservedDataTypePhrases:GA,reservedKeywords:fA,reservedDataTypes:hA,reservedFunctionNames:MA,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:[...pr,..._E],tabularOnelineClauses:_E}},HA=["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"],bA=["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"],xA=["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"],YA=y(["SELECT [ALL | DISTINCT]"]),VA=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"]),dr=y(["CREATE [OR REPLACE] [VOLATILE] TABLE [IF NOT EXISTS]","CREATE [OR REPLACE] [LOCAL | GLOBAL] {TEMP|TEMPORARY} TABLE [IF NOT EXISTS]"]),LE=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"]),vA=y(["UNION [ALL]","MINUS","EXCEPT","INTERSECT"]),wA=y(["[INNER] JOIN","[NATURAL] {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | NATURAL} JOIN"]),WA=y(["{ROWS | RANGE} BETWEEN","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]"]),XA=y([]),KA={name:"snowflake",tokenizerOptions:{reservedSelect:YA,reservedClauses:[...VA,...dr,...LE],reservedSetOperations:vA,reservedJoins:wA,reservedKeywordPhrases:WA,reservedDataTypePhrases:XA,reservedKeywords:bA,reservedDataTypes:xA,reservedFunctionNames:HA,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:[...dr,...LE],tabularOnelineClauses:LE}},kA=Object.freeze(Object.defineProperty({__proto__:null,bigquery:Ao,clickhouse:po,db2:Fo,db2i:Ko,duckdb:ta,hive:Ra,mariadb:La,mysql:Ba,n1ql:Za,plsql:oi,postgresql:Ci,redshift:Mi,singlestoredb:FA,snowflake:KA,spark:xi,sql:sA,sqlite:Ji,tidb:va,transactsql:PA,trino:uA},Symbol.toStringTag,{value:"Module"})),yt=E=>E[E.length-1],Pr=E=>E.sort((t,r)=>r.length-t.length||t.localeCompare(r)),wt=E=>E.replace(/\s+/gu," "),DE=E=>/\n/.test(E),Et=E=>E.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),fr=/\s+/uy,Dt=E=>new RegExp(`(?:${E})`,"uy"),$A=E=>E.split("").map(t=>/ /gu.test(t)?"\\s+":`[${t.toUpperCase()}${t.toLowerCase()}]`).join(""),qA=E=>E+"(?:-"+E+")*",JA=({prefixes:E,requirePrefix:t})=>`(?:${E.map($A).join("|")}${t?"":"|"})`,QA=E=>new RegExp(`(?:${E.map(Et).join("|")}).*?(?=\r
|
|
19
|
+
`):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}It.prototype.build=function(E){return this.options.preserveOrder?UT(E,this.options):(Array.isArray(E)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(E={[this.options.arrayNodeName]:E}),this.j2x(E,0,[]).val)},It.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 N=this.options.tagValueProcessor(A,""+E[A]);s+=this.replaceEntitiesValue(N)}else s+=this.buildTextValNode(E[A],A,"",t)}else if(Array.isArray(E[A])){const C=E[A].length;let N="",i="";for(let u=0;u<C;u++){const l=E[A][u];if(!(typeof l>"u"))if(l===null)A[0]==="?"?s+=this.indentate(t)+"<"+A+"?"+this.tagEndChar:s+=this.indentate(t)+"<"+A+"/"+this.tagEndChar;else if(typeof l=="object")if(this.options.oneListGroup){const d=this.j2x(l,t+1,r.concat(A));N+=d.val,this.options.attributesGroupName&&l.hasOwnProperty(this.options.attributesGroupName)&&(i+=d.attrStr)}else N+=this.processTextOrObjNode(l,A,t,r);else if(this.options.oneListGroup){let d=this.options.tagValueProcessor(A,l);d=this.replaceEntitiesValue(d),N+=d}else N+=this.buildTextValNode(l,A,"",t)}this.options.oneListGroup&&(N=this.buildObjectNode(N,A,i,t)),s+=N}else if(this.options.attributesGroupName&&A===this.options.attributesGroupName){const C=Object.keys(E[A]),N=C.length;for(let i=0;i<N;i++)n+=this.buildAttrPairStr(C[i],""+E[A][C[i]])}else s+=this.processTextOrObjNode(E[A],A,t,r);return{attrStr:n,val:s}},It.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 yT(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)}It.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}},It.prototype.closeTag=function(E){let t="";return this.options.unpairedTags.indexOf(E)!==-1?this.options.suppressUnpairedNode||(t="/"):this.options.suppressEmptyNode?t="/":t=`></${E}`,t},It.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}},It.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 GT(E){return this.options.indentBy.repeat(E)}function FT(E){return E.startsWith(this.options.attributeNamePrefix)&&E!==this.options.textNodeName?E.substr(this.attrPrefixLen):!1}const HT={validate:JE},bT={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},xT={ignoreAttributes:!1,attributeNamePrefix:"@_",textNodeName:"#text",format:!0,indentBy:" ",suppressEmptyNode:!1,suppressBooleanAttributes:!1,suppressUnpairedNode:!1},YT=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=u=>r.some(l=>u>=l.start&&u<l.end),a=/&([a-zA-Z0-9#]+);/g,A=["lt","gt","amp","quot","apos"];let C,N=1,i=0;for(;(C=a.exec(E))!==null;){const u=C[1],l=C.index;if(s(l))continue;const d=E.substring(i,l);if(N+=(d.match(/\n/g)||[]).length,i=l,u.startsWith("#")){const M=u.substring(1);if(M.startsWith("x")||M.startsWith("X")){const m=M.substring(1);if(!/^[0-9a-fA-F]+$/.test(m))return{valid:!1,error:`Line ${N}: Invalid hexadecimal character reference '&${u};'`}}else if(!/^[0-9]+$/.test(M))return{valid:!1,error:`Line ${N}: Invalid numeric character reference '&${u};'`};continue}if(!A.includes(u))return{valid:!1,error:`Line ${N}: Invalid entity reference '&${u};'. Valid predefined entities are: < > & " '`}}return{valid:!0}},VT=E=>{try{const t=HT.validate(E,{allowBooleanAttributes:!0});if(t!==!0)return{valid:!1,error:`Line ${t.err.line}: ${t.err.msg}`};const r=YT(E);return r.valid?{valid:!0}:r}catch(t){return{valid:!1,error:t instanceof Error?t.message:"Unknown validation error"}}},nE=(E,t)=>{try{return new hT({...bT,...t}).parse(E)}catch(r){throw new Error(`XML 解析失败: ${r instanceof Error?r.message:"Unknown error"}`)}},sE=(E,t)=>{try{let n=new It({...xT,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"}`)}},vT=(E,t)=>Array.isArray(E)?At(E,{format:!1,originalXml:t}):sE(E,{format:!1,showDeclaration:!1}),wT=(E,t)=>{const r=nE(E);return Array.isArray(r)?At(r,{indent:t?.indentBy,originalXml:E}):sE(r,t)},WT=(E,t)=>{const r=sr(t),n=new Map,s=a=>{for(const A of a){const C=Object.keys(A).find(u=>!u.startsWith(":")&&!u.startsWith("#")&&!u.startsWith("__")&&!u.startsWith("?"));if(!C)continue;const N=n.get(C)??0;n.set(C,N+1),A[":selfClosing"]=r.get(C)?.[N]??!1;const i=A[C];Array.isArray(i)&&i.length>0&&s(i)}};s(E)},XT=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},sr=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 N=E[a];if(A)N===C&&(A=!1);else if(N==='"'||N==="'")A=!0,C=N;else if(N===">"){let i=a-1;for(;i>r&&(E[i]===" "||E[i]===" "||E[i]===`
|
|
21
|
+
`||E[i]==="\r");)i--;const u=E[i]==="/";t.has(s)||t.set(s,[]),t.get(s).push(u),r=a+1;break}a++}if(a>=E.length)break;continue}}r++}return t},At=(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 C=t.selfClosingTags,N=t.selfClosingOccurrences,i=t.selfClosingCounters;n===0&&t.originalXml&&(N=sr(t.originalXml),i=new Map);let u="";for(const l of E){if(l["?xml"]){const V=l[":@"]||{},L=Object.entries(V).map(([X,B])=>`${X.startsWith("@_")?X.substring(2):X}="${B}"`).join(" ");u+=`<?xml ${L}?>${A}`;continue}if(l["#comment"]){const V=l["#comment"];if(Array.isArray(V)&&V.length>0){const L=V[0]["#text"]||V[0];u+=`${a}<!--${L}-->${A}`}continue}const d=Object.keys(l).find(V=>!V.startsWith(":")&&!V.startsWith("#")&&!V.startsWith("__"));if(!d)continue;let M=0;N&&i&&(M=i.get(d)??0,i.set(d,M+1));const m=l[d],v=l[":@"]||{},f=Object.entries(v).map(([V,L])=>`${V.startsWith("@_")?V.substring(2):V}="${L}"`).join(" "),k=f?" "+f:"";if(!Array.isArray(m)||m.length===0){let V;N?V=N.get(d)?.[M]??!1:V=!!(C&&C.has(d)),V?u+=`${a}<${d}${k}/>${A}`:u+=`${a}<${d}${k}></${d}>${A}`;continue}const Z=m.length===1&&m[0]["#text"]!==void 0,ee=Z?m[0]["#text"]:"",pe=m.some(V=>V.__cdata),Le=Z&&ee==="";if(pe){const V=m.find(L=>L.__cdata);if(V){const L=V.__cdata[0]["#text"]||"";u+=`${a}<${d}${k}><![CDATA[${L}]]></${d}>${A}`}}else Le?u+=`${a}<${d}${k}></${d}>${A}`:Z?u+=`${a}<${d}${k}>${ee}</${d}>${A}`:(u+=`${a}<${d}${k}>${A}`,u+=At(m,{indent:r,level:n+1,format:s,selfClosingTags:C,selfClosingOccurrences:N,selfClosingCounters:i}),u+=`${a}</${d}>${A}`)}return u},KT={class:"xml-format__content"},kT={key:0,class:"xml-format__error"},$T={key:1,class:"xml-format__error"},qT={key:2,class:"xml-format__viewer"},JT=ht(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(J=>({"56635be8":k.value.colors.background,"106ac08b":k.value.colors.text,"07c07b2c":k.value.colors.error,"821d1190":k.value.colors.errorBackground}));const n=E,s=r,a=T.ref(null),A=T.ref(""),C=T.ref(new Set),N=T.ref(null),i=T.ref(""),u=T.ref(""),l=T.ref(new Set),d=T.ref(!1),M=T.computed(()=>A.value===""),m=J=>{if(!J||typeof J!="object")return J;if(Array.isArray(J)){const P=J.map(j=>m(j)),U=[],g=[];P.forEach((j,ie)=>{if(!j||typeof j!="object"){g.push({item:j,originalIndex:ie});return}const Ne=Object.keys(j),_e=Ne.find(b=>!b.startsWith("?")&&!b.startsWith(":")&&!b.startsWith("#")&&!b.startsWith("__"))||Ne[0]||"";_e.startsWith("#")||_e.startsWith("__")?g.push({item:j,originalIndex:ie}):_e.startsWith("?")?g.push({item:j,originalIndex:ie}):U.push({item:j,originalIndex:ie})}),U.sort((j,ie)=>{const Ne=fe=>{const c=Object.keys(fe);for(const z of c)if(!z.startsWith("?")&&!z.startsWith(":")&&!z.startsWith("#")&&!z.startsWith("__"))return z;return c[0]||""},_e=Ne(j.item),b=Ne(ie.item);return _e.localeCompare(b)});const $=[];let q=0;for(let j=0;j<P.length;j++){const ie=g.find(Ne=>Ne.originalIndex===j);ie?$.push(ie.item):q<U.length&&($.push(U[q].item),q++)}return $}const Ee={},p=Object.keys(J).sort((P,U)=>{const g=P.startsWith("?")||P.startsWith(":")||P.startsWith("#")||P.startsWith("__"),$=U.startsWith("?")||U.startsWith(":")||U.startsWith("#")||U.startsWith("__"),q={"?xml":0,":@":1,"#text":2,__cdata:3,"#cdata":3,"#comment":4};if(g&&$){const j=q[P]??99,ie=q[U]??99;return j-ie}else return g?-1:$?1:P.localeCompare(U)});for(const P of p){const U=J[P];if(P===":@"&&U&&typeof U=="object"&&!Array.isArray(U)){const g={},$=Object.keys(U).sort();for(const q of $)g[q]=U[q];Ee[P]=g}else Ee[P]=m(U)}return Ee},v=T.computed(()=>{const J=N.value!==null?N.value:a.value;return!J||!d.value?J:m(J)}),f=T.computed(()=>i.value?null:v.value),k=T.computed(()=>Ys(n.theme)),Z=T.computed(()=>{const J=f.value;return!J||!Array.isArray(J)?[]:J.map((Ee,p)=>({node:Ee,originalIndex:p})).filter(Ee=>!Ee.node["?xml"])}),ee=T.computed(()=>{const J=f.value;if(!J||!Array.isArray(J))return null;const Ee=J.find(U=>U["?xml"]);if(!Ee||!Ee[":@"])return null;const p=Ee[":@"],P=[];return p["@_version"]&&P.push(`version="${p["@_version"]}"`),p["@_encoding"]&&P.push(`encoding="${p["@_encoding"]}"`),p["@_standalone"]&&P.push(`standalone="${p["@_standalone"]}"`),P.length>0?`<?xml ${P.join(" ")}?>`:null}),pe=T.computed(()=>Z.value),Le=J=>{if(!J||!J.trim()){A.value="",a.value=null,u.value="",N.value=null,i.value="";return}try{const Ee=VT(J);if(!Ee.valid){A.value=Ee.error||"Invalid XML",a.value=null,u.value="",l.value=new Set;return}u.value=J,l.value=XT(J),a.value=nE(J),Array.isArray(a.value)&&WT(a.value,J),A.value="",N.value=null,i.value="",T.nextTick(()=>{L()})}catch(Ee){A.value=Ee instanceof Error?Ee.message:"Unknown parse error",a.value=null,u.value="",N.value=null,i.value=""}},V=J=>{C.value.has(J)?C.value.delete(J):C.value.add(J)},L=()=>{const J=new Set,Ee=(p,P="")=>{Array.isArray(p)&&p.forEach((U,g)=>{const $=Object.keys(U).find(ie=>!ie.startsWith(":")&&!ie.startsWith("#"));if(!$)return;const q=P?`${P}.${$}[${g}]`:`${$}[${g}]`;J.add(q);const j=U[$];Array.isArray(j)&&Ee(j,q+"."+$)})};Z.value.forEach(({node:p,originalIndex:P})=>{const U=Object.keys(p).find(g=>!g.startsWith(":")&&!g.startsWith("#"));if(U){const g=`${U}[${P}]`;J.add(g);const $=p[U];Array.isArray($)&&Ee($,g+"."+U)}}),C.value=J,s("expand-all")},X=()=>{C.value.clear(),s("collapse-all")},B=async()=>{if(M.value)try{const J=f.value||a.value;if(!J)return;const Ee=Array.isArray(J)?At(J,{indent:" ",originalXml:u.value||void 0}):sE(J,{format:!0,indentBy:" "});await navigator.clipboard.writeText(Ee),s("copy-success",Ee)}catch(J){const Ee=J instanceof Error?J:new Error("Copy failed");s("copy-error",Ee),console.error("Failed to copy XML:",J)}},H=()=>{if(!(!M.value||!a.value))try{const J=vT(a.value,n.modelValue);s("update:modelValue",J),s("compress",J)}catch(J){console.error("Failed to compress XML:",J)}},ne=()=>{if(M.value)try{const J=wT(n.modelValue,{format:!0,indentBy:" "});s("update:modelValue",J),s("format",J)}catch(J){console.error("Failed to format XML:",J)}},te=J=>{if(!J||!J.expression.trim()){Q();return}if(!a.value||!u.value){i.value="No valid XML data to filter";return}try{const p=new KE.DOMParser().parseFromString(u.value,"text/xml"),P=qn.select(J.expression,p);if(!P||Array.isArray(P)&&P.length===0){N.value=[],i.value="";return}const U=new KE.XMLSerializer;let g="";Array.isArray(P)?(g=`<result>
|
|
23
|
+
`,P.forEach($=>{$.nodeType===1?g+=" "+U.serializeToString($)+`
|
|
24
|
+
`:$.nodeType===2?g+=` <attribute name="${$.name}" value="${$.value}"/>
|
|
25
|
+
`:$.nodeType===3&&(g+=` <text>${$.nodeValue}</text>
|
|
26
|
+
`)}),g+="</result>"):g=U.serializeToString(P),N.value=nE(g),i.value="",T.nextTick(()=>{L()})}catch(Ee){i.value=Ee instanceof Error?Ee.message:"Filter execution error",N.value=null}},Q=()=>{N.value=null,i.value="",T.nextTick(()=>{L()})},ce=()=>{d.value=!0,T.nextTick(()=>{L()})},W=()=>{d.value=!1,T.nextTick(()=>{L()})},re=J=>typeof J=="string"?J:JSON.stringify(J,null,2)??"undefined",Se=async J=>{try{const Ee=re(J);await navigator.clipboard.writeText(Ee),s("copy-success",Ee)}catch(Ee){const p=Ee instanceof Error?Ee:new Error("Copy failed");s("copy-error",p),console.error("Failed to copy value:",Ee)}},ue=(J,Ee,p)=>{if(!(!a.value||!Array.isArray(a.value)))try{const P=J.split(/\./).filter(Boolean);let U=a.value;for(let $=0;$<P.length;$++){const q=P[$],j=q.match(/^(.+?)\[(\d+)\]$/);if(j){const ie=j[1],Ne=parseInt(j[2]);if($===P.length-1){if(Array.isArray(U)&&U[Ne]){const _e=U[Ne];if(_e[Ee]){const b=_e[Ee];delete _e[Ee],_e[p]=b,l.value.has(Ee)&&(l.value.delete(Ee),l.value.add(p))}}}else Array.isArray(U)&&U[Ne]&&(U=U[Ne])}else U[q]&&(U=U[q])}const g=At(a.value,{indent:" ",originalXml:u.value||void 0});s("update:modelValue",g)}catch(P){console.error("Failed to update tag name:",P)}},le=(J,Ee,p)=>{if(!(!a.value||!Array.isArray(a.value)))try{const P=J.split(/\./).filter(Boolean);let U=a.value;for(let $=0;$<P.length;$++){const q=P[$],j=q.match(/^(.+?)\[(\d+)\]$/);if(j){const ie=j[1],Ne=parseInt(j[2]);if($===P.length-1){if(Array.isArray(U)&&U[Ne]){const b=U[Ne][":@"];if(b&&b[`@_${Ee}`]!==void 0){const fe=b[`@_${Ee}`];delete b[`@_${Ee}`],b[`@_${p}`]=fe}}}else Array.isArray(U)&&U[Ne]&&(U=U[Ne])}else U[q]&&(U=U[q])}const g=At(a.value,{indent:" ",originalXml:u.value||void 0});s("update:modelValue",g)}catch(P){console.error("Failed to update attribute name:",P)}},he=(J,Ee,p)=>{if(!(!a.value||!Array.isArray(a.value)))try{const P=J.split(/\./).filter(Boolean);let U=a.value;for(let $=0;$<P.length;$++){const q=P[$],j=q.match(/^(.+?)\[(\d+)\]$/);if(j){const ie=j[1],Ne=parseInt(j[2]);if($===P.length-1){if(Array.isArray(U)&&U[Ne]){const b=U[Ne][":@"];b&&b[`@_${Ee}`]!==void 0&&(b[`@_${Ee}`]=p)}}else Array.isArray(U)&&U[Ne]&&(U=U[Ne])}else U[q]&&(U=U[q])}const g=At(a.value,{indent:" ",originalXml:u.value||void 0});s("update:modelValue",g)}catch(P){console.error("Failed to update attribute value:",P)}},Te=(J,Ee)=>{if(!(!a.value||!Array.isArray(a.value)))try{const p=J.split(/\./).filter(Boolean);let P=a.value,U="";for(let $=0;$<p.length;$++){const q=p[$],j=q.match(/^(.+?)\[(\d+)\]$/);if(j){const ie=j[1],Ne=parseInt(j[2]);if($===p.length-1){if(Array.isArray(P)&&P[Ne]){const _e=P[Ne];if(U=Object.keys(_e).find(b=>!b.startsWith(":")&&!b.startsWith("#"))||"",U&&Array.isArray(_e[U])){const b=_e[U],fe=b.findIndex(c=>c["#text"]!==void 0);fe!==-1?b[fe]["#text"]=Ee:b.push({"#text":Ee})}}}else Array.isArray(P)&&P[Ne]&&(P=P[Ne])}else P[q]&&(P=P[q])}const g=At(a.value,{indent:" ",originalXml:u.value||void 0});s("update:modelValue",g)}catch(p){console.error("Failed to update text content:",p)}},ge=(J,Ee)=>{if(!(!a.value||!Array.isArray(a.value)))try{const p=J.split(/\./).filter(Boolean);let P=a.value;for(let g=0;g<p.length;g++){const $=p[g],q=$.match(/^(.+?)\[(\d+)\]$/);if(q){const j=q[1],ie=parseInt(q[2]);if(g===p.length-1){if(Array.isArray(P)&&P[ie]){const Ne=P[ie],_e=Object.keys(Ne).find(b=>!b.startsWith(":")&&!b.startsWith("#"));if(_e&&Array.isArray(Ne[_e])){const b=Ne[_e],fe=b.findIndex(c=>c.__cdata!==void 0);if(fe!==-1){const c=b[fe];Array.isArray(c.__cdata)&&c.__cdata[0]&&(c.__cdata[0]["#text"]=Ee)}else b.push({__cdata:[{"#text":Ee}]})}}}else Array.isArray(P)&&P[ie]&&(P=P[ie])}else P[$]&&(P=P[$])}const U=At(a.value,{indent:" ",originalXml:u.value||void 0});s("update:modelValue",U)}catch(p){console.error("Failed to update CDATA content:",p)}};return T.watch(()=>n.modelValue,J=>{Le(J)},{immediate:!0}),t({copyXml:B,compressSource:H,formatSource:ne,expandAll:L,collapseAll:X,toggleExpand:V,filter:te,clearFilter:Q,sort:ce,clearSort:W,isSorted:()=>d.value,isValidXml:()=>M.value,getParsedXml:()=>a.value,getFilteredXml:()=>N.value,getExpandedNodes:()=>C.value,getParseError:()=>A.value,getFilterError:()=>i.value,parseXmlString:J=>Le(J),copyValue:J=>Se(J),getValue:J=>re(J)}),(J,Ee)=>(T.openBlock(),T.createElementBlock("div",{class:T.normalizeClass(["xml-format",`xml-format--${k.value.name}`])},[T.createElementVNode("div",KT,[M.value?i.value?(T.openBlock(),T.createElementBlock("div",$T,[Ee[1]||(Ee[1]=T.createElementVNode("h4",null,"Filter Error:",-1)),T.createElementVNode("pre",null,T.toDisplayString(i.value),1)])):(T.openBlock(),T.createElementBlock("div",qT,[ee.value?(T.openBlock(),T.createElementBlock("div",{key:0,class:"xml-declaration",style:T.normalizeStyle({color:k.value.colors.xmlDeclaration})},T.toDisplayString(ee.value),5)):T.createCommentVNode("",!0),(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(pe.value,(p,P)=>(T.openBlock(),T.createBlock(xs,{key:P,node:p.node,index:p.originalIndex,level:0,expanded:C.value,theme:k.value,selfClosingTags:l.value,onToggleExpand:V,onCopy:Se,"onUpdate:tagName":ue,"onUpdate:attributeName":le,"onUpdate:attributeValue":he,"onUpdate:textContent":Te,"onUpdate:cdataContent":ge},null,8,["node","index","expanded","theme","selfClosingTags"]))),128))])):(T.openBlock(),T.createElementBlock("div",kT,[Ee[0]||(Ee[0]=T.createElementVNode("h4",null,"XML Parse Error:",-1)),T.createElementVNode("pre",null,T.toDisplayString(A.value),1)]))])],2))}}),[["__scopeId","data-v-afd6c257"]]),Tr={"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"}},"min-dark":{name:"min-dark",colors:{background:"#111111",surfaceBackground:"#1a1a1a",hoverBackground:"#1f1f1f",border:"#2a2a2a",text:"#e5e5e5",textSecondary:"#a3a3a3",buttonBackground:"#1f1f1f",buttonBackgroundHover:"#2a2a2a",buttonBorder:"#333333",buttonText:"#e5e5e5",buttonPrimary:"#3b82f6",buttonPrimaryHover:"#2563eb",success:"#22c55e",successBackground:"#052e16",error:"#f87171",errorBackground:"#450a0a",sqlKeyword:"#4ade80",sqlFunction:"#c084fc",sqlString:"#f87171",sqlNumber:"#60a5fa",sqlComment:"#9ca3af",sqlOperator:"#f87171",sqlIdentifier:"#f3f4f6",sqlPunctuation:"#d1d5db",collapsedBackground:"#1e293b",collapsedText:"#60a5fa",indentLine:"#374151"}},"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"}}},QT=E=>Tr[E]||Tr["github-light"],y=E=>E.flatMap(ZT),ZT=E=>wt(zT(E)).map(jT),jT=E=>E.replace(/ +/g," ").trim(),zT=E=>({type:"mandatory_block",items:TE(E,0)[0]}),TE=(E,t,r)=>{const n=[];for(;E[t];){const[s,a]=eo(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]},eo=(E,t)=>{const r=[];for(;;){const[n,s]=to(E,t);if(n)r.push(n),t=s;else break}return r.length===1?[r[0],t]:[{type:"concatenation",items:r},t]},to=(E,t)=>{if(E[t]==="{")return Eo(E,t+1);if(E[t]==="[")return ro(E,t+1);{let r="";for(;E[t]&&/[A-Za-z0-9_ ]/.test(E[t]);)r+=E[t],t++;return[r,t]}},Eo=(E,t)=>{const[r,n]=TE(E,t,"}");return[{type:"mandatory_block",items:r},n]},ro=(E,t)=>{const[r,n]=TE(E,t,"]");return[{type:"optional_block",items:r},n]},wt=E=>{if(typeof E=="string")return[E];if(E.type==="concatenation")return E.items.map(wt).reduce(no,[""]);if(E.type==="mandatory_block")return E.items.flatMap(wt);if(E.type==="optional_block")return["",...E.items.flatMap(wt)];throw new Error(`Unknown node type: ${E}`)},no=(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 or=E=>({type:K.EOF,raw:"«EOF»",text:"«EOF»",start:E}),ut=or(1/0),Mt=E=>t=>t.type===E.type&&t.text===E.text,Ot={ARRAY:Mt({text:"ARRAY",type:K.RESERVED_DATA_TYPE}),BY:Mt({text:"BY",type:K.RESERVED_KEYWORD}),SET:Mt({text:"SET",type:K.RESERVED_CLAUSE}),STRUCT:Mt({text:"STRUCT",type:K.RESERVED_DATA_TYPE}),WINDOW:Mt({text:"WINDOW",type:K.RESERVED_CLAUSE}),VALUES:Mt({text:"VALUES",type:K.RESERVED_CLAUSE})},ar=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,so=E=>E===K.AND||E===K.OR||E===K.XOR,To=["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"],oo=["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"],ao=["ARRAY","BOOL","BYTES","DATE","DATETIME","GEOGRAPHY","INTERVAL","INT64","INT","SMALLINT","INTEGER","BIGINT","TINYINT","BYTEINT","NUMERIC","DECIMAL","BIGNUMERIC","BIGDECIMAL","FLOAT64","STRING","STRUCT","TIME","TIMEZONE"],io=y(["SELECT [ALL | DISTINCT] [AS STRUCT | AS VALUE]"]),Ao=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"]),ir=y(["CREATE [OR REPLACE] [TEMP|TEMPORARY|SNAPSHOT|EXTERNAL] TABLE [IF NOT EXISTS]"]),oE=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"]),So=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),No=y(["TABLESAMPLE SYSTEM","ANY TYPE","ALL COLUMNS","NOT DETERMINISTIC","{ROWS | RANGE} BETWEEN","IS [NOT] DISTINCT FROM"]),Io=y([]),uo={name:"bigquery",tokenizerOptions:{reservedSelect:io,reservedClauses:[...Ao,...oE,...ir],reservedSetOperations:Ro,reservedJoins:So,reservedKeywordPhrases:No,reservedDataTypePhrases:Io,reservedKeywords:oo,reservedDataTypes:ao,reservedFunctionNames:To,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:Oo},formatOptions:{onelineClauses:[...ir,...oE],tabularOnelineClauses:oE}};function Oo(E){return lo(Co(E))}function lo(E){let t=ut;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 Co(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=co(E,n+1),A=E.slice(n,a+1);r.push({type:K.IDENTIFIER,raw:A.map(Ar("raw")).join(""),text:A.map(Ar("text")).join(""),start:s.start}),n=a}else r.push(s)}return r}const Ar=E=>t=>t.type===K.IDENTIFIER||t.type===K.COMMA?t[E]+" ":t[E];function co(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 _o=["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"],Lo=["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"],Do=["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"],po=y(["SELECT [DISTINCT]","MODIFY QUERY SELECT [DISTINCT]"]),Po=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]"]),Rr=y(["CREATE [OR REPLACE] [TEMPORARY] TABLE [IF NOT EXISTS]"]),aE=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"]),fo=y(["UNION [ALL | DISTINCT]","PARALLEL WITH"]),ho=y(["[GLOBAL] [INNER|LEFT|RIGHT|FULL|CROSS] [OUTER|SEMI|ANTI|ANY|ALL|ASOF] JOIN","[LEFT] ARRAY JOIN"]),Mo=y(["{ROWS | RANGE} BETWEEN","ALTER MATERIALIZE STATISTICS"]),Uo={name:"clickhouse",tokenizerOptions:{reservedSelect:po,reservedClauses:[...Po,...Rr,...aE],reservedSetOperations:fo,reservedJoins:ho,reservedKeywordPhrases:Mo,reservedKeywords:Lo,reservedDataTypes:Do,reservedFunctionNames:_o,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:mo},formatOptions:{onelineClauses:[...Rr,...aE],tabularOnelineClauses:aE}};function mo(E){return E.map((t,r)=>{const n=E[r+1]||ut,s=E[r-1]||ut;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 Bo=["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"],go=["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"],yo=["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"],Go=y(["SELECT [ALL | DISTINCT]"]),Fo=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"]),Sr=y(["CREATE [GLOBAL TEMPORARY | EXTERNAL] TABLE [IF NOT EXISTS]"]),iE=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"]),Ho=y(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),bo=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN"]),xo=y(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),Yo=y([]),Vo={name:"db2",tokenizerOptions:{reservedSelect:Go,reservedClauses:[...Fo,...Sr,...iE],reservedSetOperations:Ho,reservedJoins:bo,reservedKeywordPhrases:xo,reservedDataTypePhrases:Yo,reservedKeywords:go,reservedDataTypes:yo,reservedFunctionNames:Bo,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:[...Sr,...iE],tabularOnelineClauses:iE}},vo=["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"],wo=["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"],Wo=["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"],Xo=y(["SELECT [ALL | DISTINCT]"]),Ko=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"]),Nr=y(["CREATE [OR REPLACE] TABLE"]),AE=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}"]),ko=y(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),$o=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","[LEFT | RIGHT] EXCEPTION JOIN","{INNER | CROSS} JOIN"]),qo=y(["ON DELETE","ON UPDATE","SET NULL","{ROWS | RANGE} BETWEEN"]),Jo=y([]),Qo={name:"db2i",tokenizerOptions:{reservedSelect:Xo,reservedClauses:[...Ko,...Nr,...AE],reservedSetOperations:ko,reservedJoins:$o,reservedKeywordPhrases:qo,reservedDataTypePhrases:Jo,reservedKeywords:wo,reservedDataTypes:Wo,reservedFunctionNames:vo,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:[...Nr,...AE],tabularOnelineClauses:AE}},Zo=["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"],jo=["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"],zo=["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"],ea=y(["SELECT [ALL | DISTINCT]"]),ta=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"]),Ir=y(["CREATE [OR REPLACE] [TEMPORARY | TEMP] TABLE [IF NOT EXISTS]"]),RE=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]"]),Ea=y(["UNION [ALL | BY NAME]","EXCEPT [ALL]","INTERSECT [ALL]"]),ra=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"]),na=y(["{ROWS | RANGE | GROUPS} BETWEEN","SIMILAR TO","IS [NOT] DISTINCT FROM"]),sa=y(["TIMESTAMP WITH TIME ZONE"]),Ta={name:"duckdb",tokenizerOptions:{reservedSelect:ea,reservedClauses:[...ta,...Ir,...RE],reservedSetOperations:Ea,reservedJoins:ra,reservedKeywordPhrases:na,reservedDataTypePhrases:sa,supportsXor:!0,reservedKeywords:jo,reservedDataTypes:zo,reservedFunctionNames:Zo,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:[...Ir,...RE],tabularOnelineClauses:RE}},oa=["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"],aa=["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"],ia=["ARRAY","BIGINT","BINARY","BOOLEAN","CHAR","DATE","DECIMAL","DOUBLE","FLOAT","INT","INTEGER","INTERVAL","MAP","NUMERIC","PRECISION","SMALLINT","STRUCT","TIMESTAMP","VARCHAR"],Aa=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"]),ur=y(["CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS]"]),SE=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"]),Sa=y(["UNION [ALL | DISTINCT]"]),Na=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","LEFT SEMI JOIN"]),Ia=y(["{ROWS | RANGE} BETWEEN"]),ua=y([]),Oa={name:"hive",tokenizerOptions:{reservedSelect:Aa,reservedClauses:[...Ra,...ur,...SE],reservedSetOperations:Sa,reservedJoins:Na,reservedKeywordPhrases:Ia,reservedDataTypePhrases:ua,reservedKeywords:aa,reservedDataTypes:ia,reservedFunctionNames:oa,extraParens:["[]"],stringTypes:['""-bs',"''-bs"],identTypes:["``"],variableTypes:[{quote:"{}",prefixes:["$"],requirePrefix:!0}],operators:["%","~","^","|","&","<=>","==","!","||"]},formatOptions:{onelineClauses:[...ur,...SE],tabularOnelineClauses:SE}};function Wt(E){return E.map((t,r)=>{const n=E[r+1]||ut;if(Ot.SET(t)&&n.text==="(")return Object.assign(Object.assign({},t),{type:K.RESERVED_FUNCTION_NAME});const s=E[r-1]||ut;return Ot.VALUES(t)&&s.text==="="?Object.assign(Object.assign({},t),{type:K.RESERVED_FUNCTION_NAME}):t})}const la=["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"],Ca=["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"],ca=["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"],_a=y(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),La=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"]),Or=y(["CREATE [OR REPLACE] [TEMPORARY] TABLE [IF NOT EXISTS]"]),NE=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"]),Da=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]","MINUS [ALL | DISTINCT]"]),pa=y(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),da=y(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),Pa=y([]),fa={name:"mariadb",tokenizerOptions:{reservedSelect:_a,reservedClauses:[...La,...Or,...NE],reservedSetOperations:Da,reservedJoins:pa,reservedKeywordPhrases:da,reservedDataTypePhrases:Pa,supportsXor:!0,reservedKeywords:la,reservedDataTypes:Ca,reservedFunctionNames:ca,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:Wt},formatOptions:{onelineClauses:[...Or,...NE],tabularOnelineClauses:NE}},ha=["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"],Ma=["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"],Ua=["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"],ma=y(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),Ba=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"]),lr=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"]),ga=y(["UNION [ALL | DISTINCT]"]),ya=y(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),Ga=y(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),Fa=y([]),Ha={name:"mysql",tokenizerOptions:{reservedSelect:ma,reservedClauses:[...Ba,...lr,...IE],reservedSetOperations:ga,reservedJoins:ya,reservedKeywordPhrases:Ga,reservedDataTypePhrases:Fa,supportsXor:!0,reservedKeywords:ha,reservedDataTypes:Ma,reservedFunctionNames:Ua,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:Wt},formatOptions:{onelineClauses:[...lr,...IE],tabularOnelineClauses:IE}},ba=["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"],xa=["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"],Ya=["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"],Va=y(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),va=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"]),Cr=y(["CREATE [TEMPORARY] TABLE [IF NOT EXISTS]"]),uE=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"]),wa=y(["UNION [ALL | DISTINCT]"]),Wa=y(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),Xa=y(["ON {UPDATE | DELETE} [SET NULL]","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),Ka=y([]),ka={name:"tidb",tokenizerOptions:{reservedSelect:Va,reservedClauses:[...va,...Cr,...uE],reservedSetOperations:wa,reservedJoins:Wa,reservedKeywordPhrases:Xa,reservedDataTypePhrases:Ka,supportsXor:!0,reservedKeywords:ba,reservedDataTypes:xa,reservedFunctionNames:Ya,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:Wt},formatOptions:{onelineClauses:[...Cr,...uE],tabularOnelineClauses:uE}},$a=["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"],qa=["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"],Ja=[],Qa=y(["SELECT [ALL | DISTINCT]"]),Za=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"]),cr=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"]),ja=y(["UNION [ALL]","EXCEPT [ALL]","INTERSECT [ALL]"]),za=y(["JOIN","{LEFT | RIGHT} [OUTER] JOIN","INNER JOIN"]),ei=y(["{ROWS | RANGE | GROUPS} BETWEEN"]),ti=y([]),Ei={name:"n1ql",tokenizerOptions:{reservedSelect:Qa,reservedClauses:[...Za,...cr],reservedSetOperations:ja,reservedJoins:za,reservedKeywordPhrases:ei,reservedDataTypePhrases:ti,supportsXor:!0,reservedKeywords:qa,reservedDataTypes:Ja,reservedFunctionNames:$a,stringTypes:['""-bs',"''-bs"],identTypes:["``"],extraParens:["[]","{}"],paramTypes:{positional:!0,numbered:["$"],named:["$"]},lineCommentTypes:["#","--"],operators:["%","==",":","||"]},formatOptions:{onelineClauses:cr}},ri=["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"],ni=["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"],si=["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"],Ti=y(["SELECT [ALL | DISTINCT | UNIQUE]"]),oi=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"]),_r=y(["CREATE [GLOBAL TEMPORARY | PRIVATE TEMPORARY | SHARDED | DUPLICATED | IMMUTABLE BLOCKCHAIN | BLOCKCHAIN | IMMUTABLE] TABLE"]),OE=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"]),ai=y(["UNION [ALL]","MINUS","INTERSECT"]),ii=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | OUTER} APPLY"]),Ai=y(["ON {UPDATE | DELETE} [SET NULL]","ON COMMIT","{ROWS | RANGE} BETWEEN"]),Ri=y([]),Si={name:"plsql",tokenizerOptions:{reservedSelect:Ti,reservedClauses:[...oi,..._r,...OE],reservedSetOperations:ai,reservedJoins:ii,reservedKeywordPhrases:Ai,reservedDataTypePhrases:Ri,supportsXor:!0,reservedKeywords:ri,reservedDataTypes:ni,reservedFunctionNames:si,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:Ni},formatOptions:{alwaysDenseOperators:["@"],onelineClauses:[..._r,...OE],tabularOnelineClauses:OE}};function Ni(E){let t=ut;return E.map(r=>Ot.SET(r)&&Ot.BY(t)?Object.assign(Object.assign({},r),{type:K.RESERVED_KEYWORD}):(ar(r.type)&&(t=r),r))}const Ii=["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"],ui=["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"],Oi=["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"],li=y(["SELECT [ALL | DISTINCT]"]),Ci=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"]),Lr=y(["CREATE [GLOBAL | LOCAL] [TEMPORARY | TEMP | UNLOGGED] TABLE [IF NOT EXISTS]"]),lE=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"]),ci=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),_i=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),Li=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"]),Di=y(["[TIMESTAMP | TIME] {WITH | WITHOUT} TIME ZONE"]),pi={name:"postgresql",tokenizerOptions:{reservedSelect:li,reservedClauses:[...Ci,...Lr,...lE],reservedSetOperations:ci,reservedJoins:_i,reservedKeywordPhrases:Li,reservedDataTypePhrases:Di,reservedKeywords:ui,reservedDataTypes:Oi,reservedFunctionNames:Ii,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:[...Lr,...lE],tabularOnelineClauses:lE}},di=["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"],Pi=["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"],fi=["ARRAY","BIGINT","BPCHAR","CHAR","CHARACTER VARYING","CHARACTER","DECIMAL","INT","INT2","INT4","INT8","INTEGER","NCHAR","NUMERIC","NVARCHAR","SMALLINT","TEXT","VARBYTE","VARCHAR"],hi=y(["SELECT [ALL | DISTINCT]"]),Mi=y(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY","HAVING","QUALIFY","PARTITION BY","ORDER BY","LIMIT","OFFSET","INSERT INTO","VALUES","SET"]),Dr=y(["CREATE [TEMPORARY | TEMP | LOCAL TEMPORARY | LOCAL TEMP] TABLE [IF NOT EXISTS]"]),CE=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"]),Ui=y(["UNION [ALL]","EXCEPT","INTERSECT","MINUS"]),mi=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),Bi=y(["NULL AS","DATA CATALOG","HIVE METASTORE","{ROWS | RANGE} BETWEEN"]),gi=y([]),yi={name:"redshift",tokenizerOptions:{reservedSelect:hi,reservedClauses:[...Mi,...Dr,...CE],reservedSetOperations:Ui,reservedJoins:mi,reservedKeywordPhrases:Bi,reservedDataTypePhrases:gi,reservedKeywords:Pi,reservedDataTypes:fi,reservedFunctionNames:di,extraParens:["[]"],stringTypes:["''-qq"],identTypes:['""-qq'],identChars:{first:"#"},paramTypes:{numbered:["$"]},operators:["^","%","@","|/","||/","&","|","~","<<",">>","||","::"]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...Dr,...CE],tabularOnelineClauses:CE}},Gi=["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"],Fi=["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"],Hi=["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"],bi=y(["SELECT [ALL | DISTINCT]"]),xi=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"]),pr=y(["CREATE [EXTERNAL] TABLE [IF NOT EXISTS]"]),cE=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"]),Yi=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),Vi=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"]),vi=y(["ON DELETE","ON UPDATE","CURRENT ROW","{ROWS | RANGE} BETWEEN"]),wi=y([]),Wi={name:"spark",tokenizerOptions:{reservedSelect:bi,reservedClauses:[...xi,...pr,...cE],reservedSetOperations:Yi,reservedJoins:Vi,reservedKeywordPhrases:vi,reservedDataTypePhrases:wi,supportsXor:!0,reservedKeywords:Gi,reservedDataTypes:Fi,reservedFunctionNames:Hi,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:Xi},formatOptions:{onelineClauses:[...pr,...cE],tabularOnelineClauses:cE}};function Xi(E){return E.map((t,r)=>{const n=E[r-1]||ut,s=E[r+1]||ut;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 Ki=["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"],ki=["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"],$i=["ANY","ARRAY","BLOB","CHARACTER","DECIMAL","INT","INTEGER","NATIVE CHARACTER","NCHAR","NUMERIC","NVARCHAR","REAL","TEXT","VARCHAR","VARYING CHARACTER"],qi=y(["SELECT [ALL | DISTINCT]"]),Ji=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"]),dr=y(["CREATE [TEMPORARY | TEMP] TABLE [IF NOT EXISTS]"]),_E=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"]),Qi=y(["UNION [ALL]","EXCEPT","INTERSECT"]),Zi=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),ji=y(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE | GROUPS} BETWEEN","DO UPDATE"]),zi=y([]),eA={name:"sqlite",tokenizerOptions:{reservedSelect:qi,reservedClauses:[...Ji,...dr,..._E],reservedSetOperations:Qi,reservedJoins:Zi,reservedKeywordPhrases:ji,reservedDataTypePhrases:zi,reservedKeywords:ki,reservedDataTypes:$i,reservedFunctionNames:Ki,stringTypes:["''-qq",{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``","[]"],paramTypes:{positional:!0,numbered:["?"],named:[":","@","$"]},operators:["%","~","&","|","<<",">>","==","->","->>","||"]},formatOptions:{onelineClauses:[...dr,..._E],tabularOnelineClauses:_E}},tA=["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"],EA=["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"],rA=["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"],nA=y(["SELECT [ALL | DISTINCT]"]),sA=y(["WITH [RECURSIVE]","FROM","WHERE","GROUP BY [ALL | DISTINCT]","HAVING","WINDOW","PARTITION BY","ORDER BY","LIMIT","OFFSET","FETCH {FIRST | NEXT}","INSERT INTO","VALUES","SET"]),Pr=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"]),TA=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),oA=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),aA=y(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),iA=y([]),AA={name:"sql",tokenizerOptions:{reservedSelect:nA,reservedClauses:[...sA,...Pr,...LE],reservedSetOperations:TA,reservedJoins:oA,reservedKeywordPhrases:aA,reservedDataTypePhrases:iA,reservedKeywords:EA,reservedDataTypes:rA,reservedFunctionNames:tA,stringTypes:[{quote:"''-qq-bs",prefixes:["N","U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq',"``"],paramTypes:{positional:!0},operators:["||"]},formatOptions:{onelineClauses:[...Pr,...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"],SA=["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"],NA=["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"],IA=y(["SELECT [ALL | DISTINCT]"]),uA=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"]),fr=y(["CREATE TABLE [IF NOT EXISTS]"]),DE=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"]),OA=y(["UNION [ALL | DISTINCT]","EXCEPT [ALL | DISTINCT]","INTERSECT [ALL | DISTINCT]"]),lA=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL [INNER] JOIN","NATURAL {LEFT | RIGHT | FULL} [OUTER] JOIN"]),CA=y(["{ROWS | RANGE | GROUPS} BETWEEN","IS [NOT] DISTINCT FROM"]),cA=y([]),_A={name:"trino",tokenizerOptions:{reservedSelect:IA,reservedClauses:[...uA,...fr,...DE],reservedSetOperations:OA,reservedJoins:lA,reservedKeywordPhrases:CA,reservedDataTypePhrases:cA,reservedKeywords:SA,reservedDataTypes:NA,reservedFunctionNames:RA,extraParens:["[]","{}"],stringTypes:[{quote:"''-qq",prefixes:["U&"]},{quote:"''-raw",prefixes:["X"],requirePrefix:!0}],identTypes:['""-qq'],paramTypes:{positional:!0},operators:["%","->","=>",":","||","|","^","$"]},formatOptions:{onelineClauses:[...fr,...DE],tabularOnelineClauses:DE}},LA=["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"],DA=["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"],pA=["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"],dA=y(["SELECT [ALL | DISTINCT]"]),PA=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"]),hr=y(["CREATE TABLE"]),pE=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"]),fA=y(["UNION [ALL]","EXCEPT","INTERSECT"]),hA=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","{CROSS | OUTER} APPLY"]),MA=y(["ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]","{ROWS | RANGE} BETWEEN"]),UA=y([]),mA={name:"transactsql",tokenizerOptions:{reservedSelect:dA,reservedClauses:[...PA,...hr,...pE],reservedSetOperations:fA,reservedJoins:hA,reservedKeywordPhrases:MA,reservedDataTypePhrases:UA,reservedKeywords:DA,reservedDataTypes:pA,reservedFunctionNames:LA,nestedBlockComments:!0,stringTypes:[{quote:"''-qq",prefixes:["N"]},"{}"],identTypes:['""-qq',"[]"],identChars:{first:"#@",rest:"#@$"},paramTypes:{named:["@"],quoted:["@"]},operators:["%","&","|","^","~","!<","!>","+=","-=","*=","/=","%=","|=","&=","^=","::",":"],propertyAccessOperators:[".."]},formatOptions:{alwaysDenseOperators:["::"],onelineClauses:[...hr,...pE],tabularOnelineClauses:pE}},BA=["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"],gA=["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"],yA=["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"],GA=y(["SELECT [ALL | DISTINCT | DISTINCTROW]"]),FA=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"]),Mr=y(["CREATE [ROWSTORE] [REFERENCE | TEMPORARY | GLOBAL TEMPORARY] TABLE [IF NOT EXISTS]"]),dE=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"]),HA=y(["UNION [ALL | DISTINCT]","EXCEPT","INTERSECT","MINUS"]),bA=y(["JOIN","{LEFT | RIGHT | FULL} [OUTER] JOIN","{INNER | CROSS} JOIN","NATURAL {LEFT | RIGHT} [OUTER] JOIN","STRAIGHT_JOIN"]),xA=y(["ON DELETE","ON UPDATE","CHARACTER SET","{ROWS | RANGE} BETWEEN","IDENTIFIED BY"]),YA=y([]),VA={name:"singlestoredb",tokenizerOptions:{reservedSelect:GA,reservedClauses:[...FA,...Mr,...dE],reservedSetOperations:HA,reservedJoins:bA,reservedKeywordPhrases:xA,reservedDataTypePhrases:YA,reservedKeywords:BA,reservedDataTypes:gA,reservedFunctionNames:yA,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:Wt},formatOptions:{alwaysDenseOperators:["::","::$","::%"],onelineClauses:[...Mr,...dE],tabularOnelineClauses:dE}},vA=["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"],wA=["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"],WA=["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"],XA=y(["SELECT [ALL | DISTINCT]"]),KA=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"]),Ur=y(["CREATE [OR REPLACE] [VOLATILE] TABLE [IF NOT EXISTS]","CREATE [OR REPLACE] [LOCAL | GLOBAL] {TEMP|TEMPORARY} TABLE [IF NOT EXISTS]"]),PE=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"]),kA=y(["UNION [ALL]","MINUS","EXCEPT","INTERSECT"]),$A=y(["[INNER] JOIN","[NATURAL] {LEFT | RIGHT | FULL} [OUTER] JOIN","{CROSS | NATURAL} JOIN"]),qA=y(["{ROWS | RANGE} BETWEEN","ON {UPDATE | DELETE} [SET NULL | SET DEFAULT]"]),JA=y([]),QA={name:"snowflake",tokenizerOptions:{reservedSelect:XA,reservedClauses:[...KA,...Ur,...PE],reservedSetOperations:kA,reservedJoins:$A,reservedKeywordPhrases:qA,reservedDataTypePhrases:JA,reservedKeywords:wA,reservedDataTypes:WA,reservedFunctionNames:vA,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:[...Ur,...PE],tabularOnelineClauses:PE}},ZA=Object.freeze(Object.defineProperty({__proto__:null,bigquery:uo,clickhouse:Uo,db2:Vo,db2i:Qo,duckdb:Ta,hive:Oa,mariadb:fa,mysql:Ha,n1ql:Ei,plsql:Si,postgresql:pi,redshift:yi,singlestoredb:VA,snowflake:QA,spark:Wi,sql:AA,sqlite:eA,tidb:ka,transactsql:mA,trino:_A},Symbol.toStringTag,{value:"Module"})),Ft=E=>E[E.length-1],mr=E=>E.sort((t,r)=>r.length-t.length||t.localeCompare(r)),Xt=E=>E.replace(/\s+/gu," "),fE=E=>/\n/.test(E),Et=E=>E.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&"),Br=/\s+/uy,pt=E=>new RegExp(`(?:${E})`,"uy"),jA=E=>E.split("").map(t=>/ /gu.test(t)?"\\s+":`[${t.toUpperCase()}${t.toLowerCase()}]`).join(""),zA=E=>E+"(?:-"+E+")*",eR=({prefixes:E,requirePrefix:t})=>`(?:${E.map(jA).join("|")}${t?"":"|"})`,tR=E=>new RegExp(`(?:${E.map(Et).join("|")}).*?(?=\r
|
|
27
27
|
|\r|
|
|
28
|
-
|$)`,"uy"),
|
|
28
|
+
|$)`,"uy"),gr=(E,t=[])=>{const r=E==="open"?0:1,n=["()",...t].map(s=>s[r]);return pt(n.map(Et).join("|"))},yr=E=>pt(`${mr(E).map(Et).join("|")}`),ER=({rest:E,dashes:t})=>E||t?`(?![${E||""}${t?"-":""}])`:"",Rt=(E,t={})=>{if(E.length===0)return/^\b$/u;const r=ER(t),n=mr(E).map(Et).join("|").replace(/ /gu,"\\s+");return new RegExp(`(?:${n})${r}\\b`,"iuy")},hE=(E,t)=>{if(!E.length)return;const r=E.map(Et).join("|");return pt(`(?:${r})(?:${t})`)},rR=()=>{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("|")})'`},Gr={"``":"(?:`[^`]*`)+","[]":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''":rR()},Fr=E=>typeof E=="string"?Gr[E]:"regex"in E?E.regex:eR(E)+Gr[E.quote],nR=E=>pt(E.map(t=>"regex"in t?t.regex:Fr(t)).join("|")),Hr=E=>E.map(Fr).join("|"),br=E=>pt(Hr(E)),sR=(E={})=>pt(xr(E)),xr=({first:E,rest:t,dashes:r,allowFirstCharNumber:n}={})=>{const s="\\p{Alphabetic}\\p{Mark}_",a="\\p{Decimal_Number}",A=Et(E??""),C=Et(t??""),N=n?`[${s}${a}${A}][${s}${a}${C}]*`:`[${s}${A}][${s}${a}${C}]*`;return r?zA(N):N};function Yr(E,t){const r=E.slice(0,t).split(/\n/);return{line:r.length,col:r[r.length-1].length+1}}class TR{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(){
|
|
30
|
+
If possible, please select a more specific dialect (like sqlite, postgresql, etc).`:`SQL dialect used: "${this.dialectName}".`}getWhitespace(){Br.lastIndex=this.index;const t=Br.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 Vr=/\/\*/uy,oR=/[\s\S]/uy,aR=/\*\//uy;class iR{constructor(){this.lastIndex=0}exec(t){let r="",n,s=0;if(n=this.matchSection(Vr,t))r+=n,s++;else return null;for(;s>0;)if(n=this.matchSection(Vr,t))r+=n,s++;else if(n=this.matchSection(aR,t))r+=n,s--;else if(n=this.matchSection(oR,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 AR{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 TR(n,this.dialectName).tokenize(t);return this.cfg.postProcess?this.cfg.postProcess(s):s}buildRulesBeforeParams(t){var r,n,s;return this.validRules([{type:K.DISABLE_COMMENT,regex:/(\/\* *sql-formatter-disable *\*\/[\s\S]*?(?:\/\* *sql-formatter-enable *\*\/|$))/uy},{type:K.BLOCK_COMMENT,regex:t.nestedBlockComments?new iR:/(\/\*[^]*?\*\/)/uy},{type:K.LINE_COMMENT,regex:tR((r=t.lineCommentTypes)!==null&&r!==void 0?r:["--"])},{type:K.QUOTED_IDENTIFIER,regex:br(t.identTypes)},{type:K.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:K.RESERVED_KEYWORD_PHRASE,regex:Rt((n=t.reservedKeywordPhrases)!==null&&n!==void 0?n:[],t.identChars),text:xe},{type:K.RESERVED_DATA_TYPE_PHRASE,regex:Rt((s=t.reservedDataTypePhrases)!==null&&s!==void 0?s:[],t.identChars),text:xe},{type:K.CASE,regex:/CASE\b/iuy,text:xe},{type:K.END,regex:/END\b/iuy,text:xe},{type:K.BETWEEN,regex:/BETWEEN\b/iuy,text:xe},{type:K.LIMIT,regex:t.reservedClauses.includes("LIMIT")?/LIMIT\b/iuy:void 0,text:xe},{type:K.RESERVED_CLAUSE,regex:Rt(t.reservedClauses,t.identChars),text:xe},{type:K.RESERVED_SELECT,regex:Rt(t.reservedSelect,t.identChars),text:xe},{type:K.RESERVED_SET_OPERATION,regex:Rt(t.reservedSetOperations,t.identChars),text:xe},{type:K.WHEN,regex:/WHEN\b/iuy,text:xe},{type:K.ELSE,regex:/ELSE\b/iuy,text:xe},{type:K.THEN,regex:/THEN\b/iuy,text:xe},{type:K.RESERVED_JOIN,regex:Rt(t.reservedJoins,t.identChars),text:xe},{type:K.AND,regex:/AND\b/iuy,text:xe},{type:K.OR,regex:/OR\b/iuy,text:xe},{type:K.XOR,regex:t.supportsXor?/XOR\b/iuy:void 0,text:xe},...t.operatorKeyword?[{type:K.OPERATOR,regex:/OPERATOR *\([^)]+\)/iuy}]:[],{type:K.RESERVED_FUNCTION_NAME,regex:Rt(t.reservedFunctionNames,t.identChars),text:xe},{type:K.RESERVED_DATA_TYPE,regex:Rt(t.reservedDataTypes,t.identChars),text:xe},{type:K.RESERVED_KEYWORD,regex:Rt(t.reservedKeywords,t.identChars),text:xe}])}buildRulesAfterParams(t){var r,n;return this.validRules([{type:K.VARIABLE,regex:t.variableTypes?nR(t.variableTypes):void 0},{type:K.STRING,regex:br(t.stringTypes)},{type:K.IDENTIFIER,regex:sR(t.identChars)},{type:K.DELIMITER,regex:/[;]/uy},{type:K.COMMA,regex:/[,]/y},{type:K.OPEN_PAREN,regex:gr("open",t.extraParens)},{type:K.CLOSE_PAREN,regex:gr("close",t.extraParens)},{type:K.OPERATOR,regex:yr(["+","-","/",">","<","=","<>","<=",">=","!=",...(r=t.operators)!==null&&r!==void 0?r:[]])},{type:K.ASTERISK,regex:/[*]/uy},{type:K.PROPERTY_ACCESS_OPERATOR,regex:yr([".",...(n=t.propertyAccessOperators)!==null&&n!==void 0?n:[]])}])}buildParamRules(t,r){var n,s,a,A,C;const N={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:K.NAMED_PARAMETER,regex:hE(N.named,xr(t.paramChars||t.identChars)),key:i=>i.slice(1)},{type:K.QUOTED_PARAMETER,regex:hE(N.quoted,Hr(t.identTypes)),key:i=>(({tokenKey:u,quoteChar:l})=>u.replace(new RegExp(Et("\\"+l),"gu"),l))({tokenKey:i.slice(2,-1),quoteChar:i.slice(-1)})},{type:K.NUMBERED_PARAMETER,regex:hE(N.numbered,"[0-9]+"),key:i=>i.slice(1)},{type:K.POSITIONAL_PARAMETER,regex:N.positional?/[?]/y:void 0},...N.custom.map(i=>{var u;return{type:K.CUSTOM_PARAMETER,regex:pt(i.regex),key:(u=i.key)!==null&&u!==void 0?u:l=>l}})])}validRules(t){return t.filter(r=>!!r.regex)}}const xe=E=>Xt(E.toUpperCase()),vr=new Map,RR=E=>{let t=vr.get(E);return t||(t=SR(E),vr.set(E,t)),t},SR=E=>({tokenizer:new AR(E.tokenizerOptions,E.name),formatOptions:NR(E.formatOptions)}),NR=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 IR(E){return E.indentStyle==="tabularLeft"||E.indentStyle==="tabularRight"?" ".repeat(10):E.useTabs?" ":" ".repeat(E.tabWidth)}function Ut(E){return E.indentStyle==="tabularLeft"||E.indentStyle==="tabularRight"}class uR{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 Kt={exports:{}},lR=Kt.exports,wr;function CR(){return wr||(wr=1,function(E){(function(t,r){E.exports?E.exports=r():t.nearley=r()})(lR,function(){function t(i,u,l){return this.id=++t.highestId,this.name=i,this.symbols=u,this.postprocess=l,this}t.highestId=0,t.prototype.toString=function(i){var u=typeof i>"u"?this.symbols.map(N).join(" "):this.symbols.slice(0,i).map(N).join(" ")+" ● "+this.symbols.slice(i).map(N).join(" ");return this.name+" → "+u};function r(i,u,l,d){this.rule=i,this.dot=u,this.reference=l,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 u=new r(this.rule,this.dot+1,this.reference,this.wantedBy);return u.left=this,u.right=i,u.isComplete&&(u.data=u.build(),u.right=void 0),u},r.prototype.build=function(){var i=[],u=this;do i.push(u.right.data),u=u.left;while(u.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,u){this.grammar=i,this.index=u,this.states=[],this.wants={},this.scannable=[],this.completed={}}n.prototype.process=function(i){for(var u=this.states,l=this.wants,d=this.completed,M=0;M<u.length;M++){var m=u[M];if(m.isComplete){if(m.finish(),m.data!==A.fail){for(var v=m.wantedBy,f=v.length;f--;){var k=v[f];this.complete(k,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(l[Z]){if(l[Z].push(m),d.hasOwnProperty(Z))for(var ee=d[Z],f=0;f<ee.length;f++){var pe=ee[f];this.complete(m,pe)}}else l[Z]=[m],this.predict(Z)}}},n.prototype.predict=function(i){for(var u=this.grammar.byName[i]||[],l=0;l<u.length;l++){var d=u[l],M=this.wants[i],m=new r(d,0,this.index,M);this.states.push(m)}},n.prototype.complete=function(i,u){var l=i.nextState(u);this.states.push(l)};function s(i,u){this.rules=i,this.start=u||this.rules[0].name;var l=this.byName={};this.rules.forEach(function(d){l.hasOwnProperty(d.name)||(l[d.name]=[]),l[d.name].push(d)})}s.fromCompiled=function(d,u){var l=d.Lexer;d.ParserStart&&(u=d.ParserStart,d=d.ParserRules);var d=d.map(function(m){return new t(m.name,m.symbols,m.postprocess)}),M=new s(d,u);return M.lexer=l,M};function a(){this.reset("")}a.prototype.reset=function(i,u){this.buffer=i,this.index=0,this.line=u?u.line:1,this.lastLineBreak=u?-u.col:0},a.prototype.next=function(){if(this.index<this.buffer.length){var i=this.buffer[this.index++];return i===`
|
|
31
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,u){var l=this.buffer;if(typeof l=="string"){var d=l.split(`
|
|
32
32
|
`).slice(Math.max(0,this.line-5),this.line),M=l.indexOf(`
|
|
33
|
-
`,this.index);M===-1&&(M=l.length);var
|
|
33
|
+
`,this.index);M===-1&&(M=l.length);var m=this.index-this.lastLineBreak,v=String(this.line).length;return u+=" at line "+this.line+" col "+m+`:
|
|
34
34
|
|
|
35
|
-
`,u+=d.map(function(
|
|
35
|
+
`,u+=d.map(function(k,Z){return f(this.line-d.length+Z+1,v)+" "+k},this).join(`
|
|
36
36
|
`),u+=`
|
|
37
|
-
`+
|
|
38
|
-
`,u}else return u+" at index "+(this.index-1);function
|
|
37
|
+
`+f("",v+m)+`^
|
|
38
|
+
`,u}else return u+" at index "+(this.index-1);function f(k,Z){var ee=String(k);return Array(Z-ee.length+1).join(" ")+ee}};function A(i,u,l){if(i instanceof s)var d=i,l=u;else var d=s.fromCompiled(i,u);this.grammar=d,this.options={keepHistory:!1,lexer:d.lexer||new a};for(var M in l||{})this.options[M]=l[M];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 u=this.lexer;u.reset(i,this.lexerState);for(var l;;){try{if(l=u.next(),!l)break}catch(L){var v=new n(this.grammar,this.current+1);this.table.push(v);var d=new Error(this.reportLexerError(L));throw d.offset=this.current,d.token=L.token,d}var M=this.table[this.current];this.options.keepHistory||delete this.table[this.current-1];var m=this.current+1,v=new n(this.grammar,m);this.table.push(v);for(var f=l.text!==void 0?l.text:l.value,k=u.constructor===a?l.value:l,Z=M.scannable,ee=Z.length;ee--;){var pe=Z[ee],Le=pe.rule.symbols[pe.dot];if(Le.test?Le.test(k):Le.type?Le.type===l.type:Le.literal===f){var V=pe.nextState({data:k,token:l,isToken:!0,reference:m-1});v.states.push(V)}}if(v.process(),v.states.length===0){var d=new Error(this.reportError(l));throw d.offset=this.current,d.token=l,d}this.options.keepHistory&&(M.lexerState=u.save()),this.current++}return M&&(this.lexerState=u.save()),this.results=this.finish(),this},A.prototype.reportLexerError=function(i){var u,l,d=i.token;return d?(u="input "+JSON.stringify(d.text[0])+" (lexer error)",l=this.lexer.formatError(d,"Syntax error")):(u="input (lexer error)",l=i.message),this.reportErrorCommon(l,u)},A.prototype.reportError=function(i){var u=(i.type?i.type+" token: ":"")+JSON.stringify(i.value!==void 0?i.value:i),l=this.lexer.formatError(i,"Syntax error");return this.reportErrorCommon(l,u)},A.prototype.reportErrorCommon=function(i,u){var l=[];l.push(i);var d=this.table.length-2,M=this.table[d],m=M.states.filter(function(f){var k=f.rule.symbols[f.dot];return k&&typeof k!="string"});if(m.length===0)l.push("Unexpected "+u+`. I did not expect any more input. Here is the state of my parse table:
|
|
39
39
|
`),this.displayStateStack(M.states,l);else{l.push("Unexpected "+u+`. Instead, I was expecting to see one of the following:
|
|
40
|
-
`);var
|
|
41
|
-
`)},A.prototype.displayStateStack=function(i,u){for(var l,d=0,M=0;M<i.length;M++){var U=i[M],w=U.rule.toString(U.dot);w===l?d++:(d>0&&u.push(" ^ "+d+" more lines identical to this"),d=0,u.push(" "+w)),l=w}},A.prototype.getSymbolDisplay=function(i){return C(i)},A.prototype.buildFirstStateStack=function(i,u){if(u.indexOf(i)!==-1)return null;if(i.wantedBy.length===0)return[i];var l=i.wantedBy[0],d=[i].concat(u),M=this.buildFirstStateStack(l,d);return M===null?null:[i].concat(M)},A.prototype.save=function(){var i=this.table[this.current];return i.lexerState=this.lexerState,i},A.prototype.restore=function(i){var u=i.index;this.current=u,this.table[u]=i,this.table.splice(u+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=[],u=this.grammar.start,l=this.table[this.table.length-1];return l.states.forEach(function(d){d.rule.name===u&&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 u=typeof i;if(u==="string")return i;if(u==="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 N(i){var u=typeof i;if(u==="string")return i;if(u==="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 NR=SR();const IR=BE(NR);function uR(E){return E.map(lR).map(CR).map(cR).map(_R).map(LR)}const lR=(E,t,r)=>{if(rr(E.type)){const n=DR(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},CR=(E,t,r)=>{if(E.type===$.RESERVED_FUNCTION_NAME){const n=Mt(r,t);if(!n||!xr(n))return Object.assign(Object.assign({},E),{type:$.IDENTIFIER,text:E.raw})}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:$.RESERVED_PARAMETERIZED_DATA_TYPE})}return E},_R=(E,t,r)=>{if(E.type===$.IDENTIFIER){const n=Mt(r,t);if(n&&Yr(n))return Object.assign(Object.assign({},E),{type:$.ARRAY_IDENTIFIER})}return E},LR=(E,t,r)=>{if(E.type===$.RESERVED_DATA_TYPE){const n=Mt(r,t);if(n&&Yr(n))return Object.assign(Object.assign({},E),{type:$.ARRAY_KEYWORD})}return E},DR=(E,t)=>Mt(E,t,-1),Mt=(E,t,r=1)=>{let n=1;for(;E[t+n*r]&&pR(E[t+n*r]);)n++;return E[t+n*r]},xr=E=>E.type===$.OPEN_PAREN&&E.text==="(",Yr=E=>E.type===$.OPEN_PAREN&&E.text==="[",pR=E=>E.type===$.BLOCK_COMMENT||E.type===$.LINE_COMMENT;class Vr{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}=Gr(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 dE(E){return E[0]}const Pe=new Vr(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),dR=(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},PR={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:dE},{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:dE},{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:dR(r,{leading:t,trailing:n}),andKw:Ye(s),expr2:[Ve(A,{leading:a})]})},{name:"case_expression$ebnf$1",symbols:["expression_chain_"],postprocess:dE},{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:fR,Grammar:hR}=IR;function MR(E){let t={};const r=new Vr(s=>[...uR(E.tokenize(s,t)),Er(s.length)]),n=new fR(hR.fromCompiled(PR),{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 K.SINGLE_INDENT:return this.indentation.getSingleIndent();default:return t}}}const UR=E=>E===K.SPACE||E===K.SINGLE_INDENT,mR=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 Xr(E){return eo(E)||E===$.RESERVED_CLAUSE||E===$.RESERVED_SELECT||E===$.RESERVED_SET_OPERATION||E===$.RESERVED_JOIN||E===$.LIMIT}const PE="top-level",BR="block-level";class Kr{constructor(t){this.indent=t,this.indentTypes=[]}getSingleIndent(){return this.indent}getLevel(){return this.indentTypes.length}increaseTopLevel(){this.indentTypes.push(PE)}increaseBlockLevel(){this.indentTypes.push(BR)}decreaseTopLevel(){this.indentTypes.length>0&&yt(this.indentTypes)===PE&&this.indentTypes.pop()}decreaseBlockLevel(){for(;this.indentTypes.length>0&&this.indentTypes.pop()===PE;);}}class gR extends wr{constructor(t){super(new Kr("")),this.expressionWidth=t,this.length=0,this.trailingSpace=!1}add(...t){if(t.forEach(r=>this.addToLength(r)),this.length>this.expressionWidth)throw new fE;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 fE;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 fE 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){DE(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 DE(t.text)||DE(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 gR(this.cfg.expressionWidth),inline:!0}).format(t)}catch(n){if(n instanceof fE){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 Xr(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 Xr(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 yR{constructor(t,r){this.dialect=t,this.cfg=r,this.params=new AR(this.cfg.params)}format(t){const r=this.parse(t);return this.formatAst(r).trimEnd()}parse(t){return MR(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
|
|
40
|
+
`);var v=m.map(function(f){return this.buildFirstStateStack(f,[])||[f]},this);v.forEach(function(f){var k=f[0],Z=k.rule.symbols[k.dot],ee=this.getSymbolDisplay(Z);l.push("A "+ee+" based on:"),this.displayStateStack(f,l)},this)}return l.push(""),l.join(`
|
|
41
|
+
`)},A.prototype.displayStateStack=function(i,u){for(var l,d=0,M=0;M<i.length;M++){var m=i[M],v=m.rule.toString(m.dot);v===l?d++:(d>0&&u.push(" ^ "+d+" more lines identical to this"),d=0,u.push(" "+v)),l=v}},A.prototype.getSymbolDisplay=function(i){return C(i)},A.prototype.buildFirstStateStack=function(i,u){if(u.indexOf(i)!==-1)return null;if(i.wantedBy.length===0)return[i];var l=i.wantedBy[0],d=[i].concat(u),M=this.buildFirstStateStack(l,d);return M===null?null:[i].concat(M)},A.prototype.save=function(){var i=this.table[this.current];return i.lexerState=this.lexerState,i},A.prototype.restore=function(i){var u=i.index;this.current=u,this.table[u]=i,this.table.splice(u+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=[],u=this.grammar.start,l=this.table[this.table.length-1];return l.states.forEach(function(d){d.rule.name===u&&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 u=typeof i;if(u==="string")return i;if(u==="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 N(i){var u=typeof i;if(u==="string")return i;if(u==="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}})}(Kt)),Kt.exports}var cR=CR();const _R=HE(cR);function LR(E){return E.map(DR).map(pR).map(dR).map(PR).map(fR)}const DR=(E,t,r)=>{if(ar(E.type)){const n=hR(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},pR=(E,t,r)=>{if(E.type===K.RESERVED_FUNCTION_NAME){const n=mt(r,t);if(!n||!Wr(n))return Object.assign(Object.assign({},E),{type:K.IDENTIFIER,text:E.raw})}return E},dR=(E,t,r)=>{if(E.type===K.RESERVED_DATA_TYPE){const n=mt(r,t);if(n&&Wr(n))return Object.assign(Object.assign({},E),{type:K.RESERVED_PARAMETERIZED_DATA_TYPE})}return E},PR=(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},fR=(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},hR=(E,t)=>mt(E,t,-1),mt=(E,t,r=1)=>{let n=1;for(;E[t+n*r]&&MR(E[t+n*r]);)n++;return E[t+n*r]},Wr=E=>E.type===K.OPEN_PAREN&&E.text==="(",Xr=E=>E.type===K.OPEN_PAREN&&E.text==="[",MR=E=>E.type===K.BLOCK_COMMENT||E.type===K.LINE_COMMENT;class Kr{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 Ce;(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"})(Ce=Ce||(Ce={}));function ME(E){return E[0]}const Pe=new Kr(E=>[]),dt=([[E]])=>E,Ye=E=>({type:Ce.keyword,tokenType:E.type,text:E.text,raw:E.raw}),kr=E=>({type:Ce.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),UR=(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},mR={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:Ce.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:dt},{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:ME},{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:Ce.limit_clause,limitKw:Ve(Ye(E),{trailing:t}),offset:r,count:a}}else return{type:Ce.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:Ce.clause,nameKw:Ye(E),children:[t,...r]})},{name:"select_clause",symbols:[Pe.has("RESERVED_SELECT")?{type:"RESERVED_SELECT"}:RESERVED_SELECT],postprocess:([E])=>({type:Ce.clause,nameKw:Ye(E),children:[]})},{name:"all_columns_asterisk",symbols:[Pe.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK],postprocess:()=>({type:Ce.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:Ce.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:Ce.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:ME},{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:dt},{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:dt},{name:"expression$subexpression$1",symbols:["andless_expression"]},{name:"expression$subexpression$1",symbols:["logic_operator"]},{name:"expression",symbols:["expression$subexpression$1"],postprocess:dt},{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:dt},{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:dt},{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:dt},{name:"array_subscript",symbols:[Pe.has("ARRAY_IDENTIFIER")?{type:"ARRAY_IDENTIFIER"}:ARRAY_IDENTIFIER,"_","square_brackets"],postprocess:([E,t,r])=>({type:Ce.array_subscript,array:Ve({type:Ce.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:Ce.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:Ce.function_call,nameKw:Ve(Ye(E),{trailing:t}),parenthesis:r})},{name:"parenthesis",symbols:[{literal:"("},"expressions_or_clauses",{literal:")"}],postprocess:([E,t,r])=>({type:Ce.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:Ce.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:Ce.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:Ce.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:Ce.between_predicate,betweenKw:Ye(E),expr1:UR(r,{leading:t,trailing:n}),andKw:Ye(s),expr2:[Ve(A,{leading:a})]})},{name:"case_expression$ebnf$1",symbols:["expression_chain_"],postprocess:ME},{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:Ce.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:Ce.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:Ce.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:Ce.comma})},{name:"asterisk$subexpression$1",symbols:[Pe.has("ASTERISK")?{type:"ASTERISK"}:ASTERISK]},{name:"asterisk",symbols:["asterisk$subexpression$1"],postprocess:([[E]])=>({type:Ce.operator,text:E.text})},{name:"operator$subexpression$1",symbols:[Pe.has("OPERATOR")?{type:"OPERATOR"}:OPERATOR]},{name:"operator",symbols:["operator$subexpression$1"],postprocess:([[E]])=>({type:Ce.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:Ce.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:Ce.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:Ce.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]])=>kr(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:Ce.parameterized_data_type,dataType:Ve(kr(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:Ce.line_comment,text:E.text,precedingWhitespace:E.precedingWhitespace})},{name:"comment",symbols:[Pe.has("BLOCK_COMMENT")?{type:"BLOCK_COMMENT"}:BLOCK_COMMENT],postprocess:([E])=>({type:Ce.block_comment,text:E.text,precedingWhitespace:E.precedingWhitespace})},{name:"comment",symbols:[Pe.has("DISABLE_COMMENT")?{type:"DISABLE_COMMENT"}:DISABLE_COMMENT],postprocess:([E])=>({type:Ce.disable_comment,text:E.text,precedingWhitespace:E.precedingWhitespace})}],ParserStart:"main"},{Parser:BR,Grammar:gR}=_R;function yR(E){let t={};const r=new Kr(s=>[...LR(E.tokenize(s,t)),or(s.length)]),n=new BR(gR.fromCompiled(mR),{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 w;(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"})(w=w||(w={}));class $r{constructor(t){this.indentation=t,this.items=[]}add(...t){for(const r of t)switch(r){case w.SPACE:this.items.push(w.SPACE);break;case w.NO_SPACE:this.trimHorizontalWhitespace();break;case w.NO_NEWLINE:this.trimWhitespace();break;case w.NEWLINE:this.trimHorizontalWhitespace(),this.addNewline(w.NEWLINE);break;case w.MANDATORY_NEWLINE:this.trimHorizontalWhitespace(),this.addNewline(w.MANDATORY_NEWLINE);break;case w.INDENT:this.addIndentation();break;case w.SINGLE_INDENT:this.items.push(w.SINGLE_INDENT);break;default:this.items.push(r)}}trimHorizontalWhitespace(){for(;GR(Ft(this.items));)this.items.pop()}trimWhitespace(){for(;FR(Ft(this.items));)this.items.pop()}addNewline(t){if(this.items.length>0)switch(Ft(this.items)){case w.NEWLINE:this.items.pop(),this.items.push(t);break;case w.MANDATORY_NEWLINE:break;default:this.items.push(t);break}}addIndentation(){for(let t=0;t<this.indentation.getLevel();t++)this.items.push(w.SINGLE_INDENT)}toString(){return this.items.map(t=>this.itemToString(t)).join("")}getLayoutItems(){return this.items}itemToString(t){switch(t){case w.SPACE:return" ";case w.NEWLINE:case w.MANDATORY_NEWLINE:return`
|
|
43
|
+
`;case w.SINGLE_INDENT:return this.indentation.getSingleIndent();default:return t}}}const GR=E=>E===w.SPACE||E===w.SINGLE_INDENT,FR=E=>E===w.SPACE||E===w.SINGLE_INDENT||E===w.NEWLINE;function qr(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 Jr(E){return so(E)||E===K.RESERVED_CLAUSE||E===K.RESERVED_SELECT||E===K.RESERVED_SET_OPERATION||E===K.RESERVED_JOIN||E===K.LIMIT}const UE="top-level",HR="block-level";class Qr{constructor(t){this.indent=t,this.indentTypes=[]}getSingleIndent(){return this.indent}getLevel(){return this.indentTypes.length}increaseTopLevel(){this.indentTypes.push(UE)}increaseBlockLevel(){this.indentTypes.push(HR)}decreaseTopLevel(){this.indentTypes.length>0&&Ft(this.indentTypes)===UE&&this.indentTypes.pop()}decreaseBlockLevel(){for(;this.indentTypes.length>0&&this.indentTypes.pop()===UE;);}}class bR extends $r{constructor(t){super(new Qr("")),this.expressionWidth=t,this.length=0,this.trailingSpace=!1}add(...t){if(t.forEach(r=>this.addToLength(r)),this.length>this.expressionWidth)throw new mE;super.add(...t)}addToLength(t){if(typeof t=="string")this.length+=t.length,this.trailingSpace=!1;else{if(t===w.MANDATORY_NEWLINE||t===w.NEWLINE)throw new mE;t===w.INDENT||t===w.SINGLE_INDENT||t===w.SPACE?this.trailingSpace||(this.length++,this.trailingSpace=!0):(t===w.NO_NEWLINE||t===w.NO_SPACE)&&this.trailingSpace&&(this.trailingSpace=!1,this.length--)}}}class mE extends Error{}class kt{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 Ce.function_call:return this.formatFunctionCall(t);case Ce.parameterized_data_type:return this.formatParameterizedDataType(t);case Ce.array_subscript:return this.formatArraySubscript(t);case Ce.property_access:return this.formatPropertyAccess(t);case Ce.parenthesis:return this.formatParenthesis(t);case Ce.between_predicate:return this.formatBetweenPredicate(t);case Ce.case_expression:return this.formatCaseExpression(t);case Ce.case_when:return this.formatCaseWhen(t);case Ce.case_else:return this.formatCaseElse(t);case Ce.clause:return this.formatClause(t);case Ce.set_operation:return this.formatSetOperation(t);case Ce.limit_clause:return this.formatLimitClause(t);case Ce.all_columns_asterisk:return this.formatAllColumnsAsterisk(t);case Ce.literal:return this.formatLiteral(t);case Ce.identifier:return this.formatIdentifier(t);case Ce.parameter:return this.formatParameter(t);case Ce.operator:return this.formatOperator(t);case Ce.comma:return this.formatComma(t);case Ce.line_comment:return this.formatLineComment(t);case Ce.block_comment:return this.formatBlockComment(t);case Ce.disable_comment:return this.formatBlockComment(t);case Ce.data_type:return this.formatDataType(t);case Ce.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 Ce.data_type:r=this.showDataType(t.array);break;case Ce.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(w.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(w.NO_SPACE,t.closeParen,w.SPACE)):(this.layout.add(t.openParen,w.NEWLINE),Ut(this.cfg)?(this.layout.add(w.INDENT),this.layout=this.formatSubExpression(t.children)):(this.layout.indentation.increaseBlockLevel(),this.layout.add(w.INDENT),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseBlockLevel()),this.layout.add(w.NEWLINE,w.INDENT,t.closeParen,w.SPACE))}formatBetweenPredicate(t){this.layout.add(this.showKw(t.betweenKw),w.SPACE),this.layout=this.formatSubExpression(t.expr1),this.layout.add(w.NO_SPACE,w.SPACE,this.showNonTabularKw(t.andKw),w.SPACE),this.layout=this.formatSubExpression(t.expr2),this.layout.add(w.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(w.NEWLINE,w.INDENT),this.formatNode(t.endKw)}formatCaseWhen(t){this.layout.add(w.NEWLINE,w.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(w.NEWLINE,w.INDENT),this.formatNode(t.elseKw),this.layout=this.formatSubExpression(t.result)}formatClause(t){this.isOnelineClause(t)?this.formatClauseInOnelineStyle(t):Ut(this.cfg)?this.formatClauseInTabularStyle(t):this.formatClauseInIndentedStyle(t)}isOnelineClause(t){return Ut(this.cfg)?this.dialectCfg.tabularOnelineClauses[t.nameKw.text]:this.dialectCfg.onelineClauses[t.nameKw.text]}formatClauseInIndentedStyle(t){this.layout.add(w.NEWLINE,w.INDENT,this.showKw(t.nameKw),w.NEWLINE),this.layout.indentation.increaseTopLevel(),this.layout.add(w.INDENT),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatClauseInOnelineStyle(t){this.layout.add(w.NEWLINE,w.INDENT,this.showKw(t.nameKw),w.SPACE),this.layout=this.formatSubExpression(t.children)}formatClauseInTabularStyle(t){this.layout.add(w.NEWLINE,w.INDENT,this.showKw(t.nameKw),w.SPACE),this.layout.indentation.increaseTopLevel(),this.layout=this.formatSubExpression(t.children),this.layout.indentation.decreaseTopLevel()}formatSetOperation(t){this.layout.add(w.NEWLINE,w.INDENT,this.showKw(t.nameKw),w.NEWLINE),this.layout.add(w.INDENT),this.layout=this.formatSubExpression(t.children)}formatLimitClause(t){this.withComments(t.limitKw,()=>{this.layout.add(w.NEWLINE,w.INDENT,this.showKw(t.limitKw))}),this.layout.indentation.increaseTopLevel(),Ut(this.cfg)?this.layout.add(w.SPACE):this.layout.add(w.NEWLINE,w.INDENT),t.offset?(this.layout=this.formatSubExpression(t.offset),this.layout.add(w.NO_SPACE,",",w.SPACE),this.layout=this.formatSubExpression(t.count)):this.layout=this.formatSubExpression(t.count),this.layout.indentation.decreaseTopLevel()}formatAllColumnsAsterisk(t){this.layout.add("*",w.SPACE)}formatLiteral(t){this.layout.add(t.text,w.SPACE)}formatIdentifier(t){this.layout.add(this.showIdentifier(t),w.SPACE)}formatParameter(t){this.layout.add(this.params.get(t),w.SPACE)}formatOperator({text:t}){this.cfg.denseOperators||this.dialectCfg.alwaysDenseOperators.includes(t)?this.layout.add(w.NO_SPACE,t):t===":"?this.layout.add(w.NO_SPACE,t,w.SPACE):this.layout.add(t,w.SPACE)}formatComma(t){this.inline?this.layout.add(w.NO_SPACE,",",w.SPACE):this.layout.add(w.NO_SPACE,",",w.NEWLINE,w.INDENT)}withComments(t,r){this.formatComments(t.leadingComments),r(),this.formatComments(t.trailingComments)}formatComments(t){t&&t.forEach(r=>{r.type===Ce.line_comment?this.formatLineComment(r):this.formatBlockComment(r)})}formatLineComment(t){fE(t.precedingWhitespace||"")?this.layout.add(w.NEWLINE,w.INDENT,t.text,w.MANDATORY_NEWLINE,w.INDENT):this.layout.getLayoutItems().length>0?this.layout.add(w.NO_NEWLINE,w.SPACE,t.text,w.MANDATORY_NEWLINE,w.INDENT):this.layout.add(t.text,w.MANDATORY_NEWLINE,w.INDENT)}formatBlockComment(t){t.type===Ce.block_comment&&this.isMultilineBlockComment(t)?(this.splitBlockComment(t.text).forEach(r=>{this.layout.add(w.NEWLINE,w.INDENT,r)}),this.layout.add(w.NEWLINE,w.INDENT)):this.layout.add(t.text,w.SPACE)}isMultilineBlockComment(t){return fE(t.text)||fE(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(Ft(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 kt({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 kt({cfg:this.cfg,dialectCfg:this.dialectCfg,params:this.params,layout:new bR(this.cfg.expressionWidth),inline:!0}).format(t)}catch(n){if(n instanceof mE){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){Ut(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(w.NEWLINE,w.INDENT,this.showKw(t),w.SPACE),this.layout.indentation.increaseTopLevel()):this.layout.add(w.NEWLINE,w.INDENT,this.showKw(t),w.SPACE)}formatKeyword(t){this.layout.add(this.showKw(t),w.SPACE)}formatLogicalOperator(t){this.cfg.logicalOperatorNewline==="before"?Ut(this.cfg)?(this.layout.indentation.decreaseTopLevel(),this.layout.add(w.NEWLINE,w.INDENT,this.showKw(t),w.SPACE),this.layout.indentation.increaseTopLevel()):this.layout.add(w.NEWLINE,w.INDENT,this.showKw(t),w.SPACE):this.layout.add(this.showKw(t),w.NEWLINE,w.INDENT)}formatDataType(t){this.layout.add(this.showDataType(t),w.SPACE)}showKw(t){return Jr(t.tokenType)?qr(this.showNonTabularKw(t),this.cfg.indentStyle):this.showNonTabularKw(t)}showNonTabularKw(t){switch(this.cfg.keywordCase){case"preserve":return Xt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}showFunctionKw(t){return Jr(t.tokenType)?qr(this.showNonTabularFunctionKw(t),this.cfg.indentStyle):this.showNonTabularFunctionKw(t)}showNonTabularFunctionKw(t){switch(this.cfg.functionCase){case"preserve":return Xt(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 Xt(t.raw);case"upper":return t.text;case"lower":return t.text.toLowerCase()}}}class xR{constructor(t,r){this.dialect=t,this.cfg=r,this.params=new uR(this.cfg.params)}format(t){const r=this.parse(t);return this.formatAst(r).trimEnd()}parse(t){return yR(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 kt({cfg:this.cfg,dialectCfg:this.dialect.formatOptions,params:this.params,layout:new $r(new Qr(IR(this.cfg)))}).format(t.children);return t.hasSemicolon&&(this.cfg.newlineBeforeSemicolon?r.add(w.NEWLINE,";"):r.add(w.NO_NEWLINE,";")),r.toString()}}class $t extends Error{}function YR(E){const t=["multilineLists","newlineBeforeOpenParen","newlineBeforeCloseParen","aliasAs","commaPosition","tabulateAlias"];for(const r of t)if(r in E)throw new $t(`${r} config is no more supported.`);if(E.expressionWidth<=0)throw new $t(`expressionWidth config must be positive number. Received ${E.expressionWidth} instead.`);if(E.params&&!VR(E.params)&&console.warn('WARNING: All "params" option values should be strings.'),E.paramTypes&&!vR(E.paramTypes))throw new $t("Empty regex given in custom paramTypes. That would result in matching infinite amount of parameters.");return E}function VR(E){return(E instanceof Array?E:Object.values(E)).every(r=>typeof r=="string")}function vR(E){return E.custom&&Array.isArray(E.custom)?E.custom.every(t=>t.regex!==""):!0}var wR=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 Zr={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"},jr=Object.keys(Zr),WR={tabWidth:2,useTabs:!1,keywordCase:"preserve",identifierCase:"preserve",dataTypeCase:"preserve",functionCase:"preserve",indentStyle:"standard",logicalOperatorNewline:"before",expressionWidth:50,linesBetweenQueries:1,denseOperators:!1,newlineBeforeSemicolon:!1},zr=(E,t={})=>{if(typeof t.language=="string"&&!jr.includes(t.language))throw new $t(`Unsupported SQL dialect: ${t.language}`);const r=Zr[t.language||"sql"];return XR(E,Object.assign(Object.assign({},t),{dialect:ZA[r]}))},XR=(E,t)=>{var{dialect:r}=t,n=wR(t,["dialect"]);if(typeof E!="string")throw new Error("Invalid query argument. Expected string, instead got "+typeof E);const s=YR(Object.assign(Object.assign({},WR),n));return new xR(RR(r),s).format(E)},en=["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"],KR=["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"],qt="sql",kR=new Set(jr),tn=(E=qt)=>{const t=String(E).trim().toLowerCase();if(!kR.has(t))throw new Error(`Unsupported SQL dialect: ${E}`);return t},$R=(E,t=qt)=>{try{if(!E||!E.trim())return{valid:!1,error:"SQL string is empty"};const r=E.toUpperCase().trim();if(!en.some(N=>new RegExp(`\\b${N}\\b`).test(r)))return{valid:!1,error:"No valid SQL keywords found"};let s=0,a=!1,A="";for(let N=0;N<E.length;N++){const i=E[N],u=N>0?E[N-1]:"";if((i==="'"||i==='"')&&u!=="\\"&&(a?i===A&&(a=!1,A=""):(a=!0,A=i)),!a&&(i==="("&&s++,i===")"&&s--,s<0))return{valid:!1,error:"Mismatched parentheses: unexpected closing parenthesis"}}if(s!==0)return{valid:!1,error:`Mismatched parentheses: ${s} unclosed opening parenthesis`};const C=tn(t);return zr(E,{language:C}),{valid:!0}}catch(r){return{valid:!1,error:r instanceof Error?r.message:"Unknown validation error"}}},qR=(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="",N=!1,i="",u=0;for(;u<s.length;){const f=s[u],k=u>0?s[u-1]:"";if((f==="'"||f==='"')&&k!=="\\"&&(N?f===i&&(N=!1):(N=!0,i=f)),N)A>0&&(C+=f);else if(f==="(")A===0?C=f:C+=f,A++;else if(f===")")C+=f,A--,A===0&&C.trim()&&(a.push(C.trim()),C="");else{if(f===";"&&A===0)break;A>0&&(C+=f)}u++}if(a.length===0)return E;const l=" ".repeat(t),d=a.map(f=>{const k=f.slice(1,-1),Z=[];let ee="",pe=0,Le=!1,V="";for(let X=0;X<k.length;X++){const B=k[X],H=X>0?k[X-1]:"";if((B==="'"||B==='"')&&H!=="\\"&&(Le?B===V&&(Le=!1):(Le=!0,V=B)),!Le&&(B==="("&&pe++,B===")"&&pe--,B===","&&pe===0)){Z.push(ee.trim()),ee="";continue}ee+=B}ee.trim()&&Z.push(ee.trim());const L=Z.map((X,B)=>{const H=B<Z.length-1?",":"";return`${l}${l}${X}${H}`}).join(`
|
|
45
45
|
`);return`${l}(
|
|
46
46
|
${L}
|
|
47
|
-
${l})`}),M=d.map((
|
|
48
|
-
`);let
|
|
49
|
-
`+M+
|
|
50
|
-
$1ON `)
|
|
47
|
+
${l})`}),M=d.map((f,k)=>{const Z=k<d.length-1?",":";";return f+Z}).join(`
|
|
48
|
+
`);let m=u;m<s.length&&s[m]===";"&&m++;const v=s.slice(m);return n.trimEnd()+`
|
|
49
|
+
`+M+v},BE=(E,t)=>{try{const r=tn(t?.dialect??qt),n=t?.tabWidth||2,s=t?.keywordCase||"upper",a=t?.useTabs||!1,A=t?.linesBetweenQueries||1;let C=zr(E,{language:r,tabWidth:n,keywordCase:s,useTabs:a,linesBetweenQueries:A,indentStyle:"standard"});return/\bINSERT\s+INTO\b/i.test(C)&&/\bVALUES\b/i.test(C)&&(C=qR(C,n)),C}catch(r){const n=r instanceof Error?r.message:"Unknown formatting error";throw new Error(`SQL formatting error: ${n}`)}},JR=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}},QR=(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,N=0,i="",u=!1,l="";for(let d=0;d<A.length;d++){const M=A[d],m=d>0?A[d-1]:"";if((M==="'"||M==='"')&&m!=="\\"&&(u?M===l&&(u=!1):(u=!0,l=M)),u)N>0&&(i+=M);else if(M==="("&&N===0)N++,i=M;else if(M==="(")N++,i+=M;else if(M===")"){if(i+=M,N--,N===0){let v=d+1,f="";for(;v<A.length;){const Z=A[v];if(Z===","||Z===";"){f=Z;break}else if(!/\s/.test(Z))break;v++}const k=i.trim();k&&(r.push({type:"VALUE_TUPLE",content:k+f,raw:k+f,collapsible:!0,path:`clause-${t}-value-${C}`}),C++),i="",f&&(d=v)}}else N>0&&(i+=M)}return r},ZR=(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 `),jR=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},zR=E=>{const t=[];let r=0,n=-1,s=!1,a="";for(let A=0;A<E.length;A++){const C=E[A],N=A>0?E[A-1]:"";if((C==="'"||C==='"')&&N!=="\\"){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},eS=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},tS=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=
|
|
53
|
-
`,i.close-1)+1,d=l>i.open,M=d?l-1:i.close,
|
|
54
|
-
`);let s=null,a=[],A=[],C=0;const N=[...
|
|
55
|
-
`);if(u=
|
|
52
|
+
`);if(!n)return;const a=zR(n).filter(i=>eS(n.slice(i.open+1,i.close)));if(a.length===0)return;const A=[];let C=0;const N=E.path||"clause";a.forEach((i,u)=>{i.open+1>C&&A.push({kind:"text",text:n.slice(C,i.open+1)});const l=n.lastIndexOf(`
|
|
53
|
+
`,i.close-1)+1,d=l>i.open,M=d?l-1:i.close,m=n.slice(i.open+1,M),v=En(m,`${N}-sub${u}-`);for(const f of v)A.push({kind:"clause",clause:f});C=d?l:i.close}),C<n.length&&A.push({kind:"text",text:n.slice(C)}),E.body=A},En=(E,t)=>{const r=[],n=E.split(`
|
|
54
|
+
`);let s=null,a=[],A=[],C=0;const N=[...KR].sort((u,l)=>l.length-u.length),i=()=>{if(!s||a.length===0)return;let u=a.join(`
|
|
55
|
+
`);if(u=ZR(s.type,u),s.content=u,s.raw=u,s.type==="INSERT INTO"&&/\bVALUES\b/i.test(u)){const l=u.match(/^(.*?\bINSERT\s+INTO\s+[^(]+\s*\([^)]+\))/is);if(l){const d={type:"INSERT INTO",content:l[1].trim(),raw:l[1].trim(),collapsible:!0,path:`${t}clause-${r.length}`};r.push(d);const M=u.slice(l[1].length).trim(),m=r.length,v=QR(M,m);for(let f=0;f<v.length;f++)v[f].path=`${t}clause-${m+f}`;r.push(...v);return}}tS(s),r.push(s)};for(const u of n){const l=u.trim();if(!l){s&&a.push(u);continue}if(l.startsWith("--")||l.startsWith("/*")){s?a.push(u):A.push(u);continue}let M=!1,m="UNKNOWN";if(C===0){for(const v of N)if(new RegExp(`^${v}\\b`,"i").test(l)){M=!0,m=v.toUpperCase();break}}M?(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=[u],s={type:
|
|
57
|
+
`),collapsible:!1,path:`${t}clause-${r.length}`}),A=[]),a=[u],s={type:m,content:"",raw:"",collapsible:!0,path:`${t}clause-${r.length}`}):s?a.push(u):(a=[...A,u],A=[],s={type:"UNKNOWN",content:"",raw:"",collapsible:!1,path:`${t}clause-${r.length}`}),C=Math.max(0,C+jR(u))}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},
|
|
60
|
-
`);for(const
|
|
61
|
-
`);if(
|
|
62
|
-
`)}),N=T.computed(()=>r.clause.body&&r.clause.body.length>0?!0:!!C.value),i=
|
|
63
|
-
`)}const
|
|
64
|
-
`)}const Q=ne.value.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'");return`<span style="color: ${
|
|
59
|
+
`),collapsible:!1,path:`${t}clause-${r.length}`}),r},ES=(E,t=qt)=>{const r=BE(E,{dialect:t,keywordCase:"upper"});return{clauses:En(r,""),raw:E}},rn=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 N=r.match(/^(--[^\n]*)/);if(N){t.push({type:"comment",value:N[1]}),r=r.slice(N[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 u=r.match(/^(["'])(?:(?=(\\?))\2.)*?\1/);if(u){t.push({type:"string",value:u[0]}),r=r.slice(u[0].length);continue}const l=r.match(/^(\d+\.?\d*|\.\d+)/);if(l){t.push({type:"number",value:l[1]}),r=r.slice(l[1].length);continue}for(const M of s)if(r.startsWith(M)){t.push({type:"operator",value:M}),r=r.slice(M.length),A=!0;break}if(A)continue;for(const M of a)if(r.startsWith(M)){t.push({type:"punctuation",value:M}),r=r.slice(M.length),A=!0;break}if(A)continue;const d=r.match(/^([a-zA-Z_][a-zA-Z0-9_]*)/);if(d){const M=d[1],m=M.toUpperCase();en.includes(m)?t.push({type:"keyword",value:M}):n.includes(m)?t.push({type:"function",value:M}):t.push({type:"identifier",value:M}),r=r.slice(M.length);continue}t.push({type:"punctuation",value:r[0]}),r=r.slice(1)}return t},rS={class:"sql-clause-node"},nS=["title"],sS={class:"sql-clause-node__code"},TS=["innerHTML"],oS={key:0,class:"sql-clause-node__body"},aS=["title"],iS=["innerHTML"],AS=["title"],RS=["innerHTML"],SS=ht(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 v of m)if(v.trim())return v;return""}),C=T.computed(()=>{const m=r.clause.content.split(`
|
|
61
|
+
`);if(m.length<=1)return"";let v=0;for(let f=0;f<m.length;f++)if(m[f].trim()){v=f;break}return m.slice(v+1).join(`
|
|
62
|
+
`)}),N=T.computed(()=>r.clause.body&&r.clause.body.length>0?!0:!!C.value),i=m=>{const v=rn(m),f=r.theme.colors;return v.map(k=>{let Z=f.text;switch(k.type){case"keyword":Z=f.sqlKeyword;break;case"function":Z=f.sqlFunction;break;case"string":Z=f.sqlString;break;case"number":Z=f.sqlNumber;break;case"comment":Z=f.sqlComment;break;case"operator":Z=f.sqlOperator;break;case"identifier":Z=f.sqlIdentifier;break;case"punctuation":Z=f.sqlPunctuation;break;case"whitespace":return k.value.replace(/ /g," ").replace(/\n/g,`
|
|
63
|
+
`)}const ee=k.value.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'");return`<span style="color: ${Z}">${ee}</span>`}).join("")},u=T.computed(()=>{const m=r.clause.body;if(!m||m.length===0)return null;let v="",f=!1;for(const X of m)if(X.kind==="text"){const B=X.text.indexOf("(");if(B>=0){v+=X.text.slice(0,B),f=!0;break}v+=X.text}else return null;if(!f)return null;let k="";for(let X=m.length-1;X>=0;X--){const B=m[X];if(B.kind==="text"){const H=B.text.lastIndexOf(")");if(H>=0){k=B.text.slice(H+1)+k;break}k=B.text+k}else break}const Z=v.replace(/\s+/g," ").trim(),ee=k.replace(/\s+/g," ").trim(),pe=A.value,Le=(pe.match(/^\s*/)||[""])[0],L=[pe.trimStart()];return Z&&L.push(Z),L.push("(...)"),ee&&L.push(ee),`${Le}${L.join(" ")}`}),l=T.computed(()=>{if(r.clause.collapsible&&!a.value&&N.value){const m=u.value;if(m)return i(m);const v=i(A.value),f=r.theme.colors.textSecondary;return`${v}<span style="color: ${f}; opacity: 0.6; font-style: italic; margin-left: 4px;"> ...</span>`}return i(A.value)}),d=()=>{r.clause.collapsible&&n("toggle",s.value)},M=m=>{if(!r.clause.collapsible)return;const v=m.target;if(!v)return;const f=(v.textContent||"").trim();(f==="("||f===")")&&n("toggle",s.value)};return(m,v)=>{const f=T.resolveComponent("SqlClauseNode",!0);return T.openBlock(),T.createElementBlock("div",rS,[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",sS,[T.createElementVNode("code",{innerHTML:l.value},null,8,TS)])],10,nS),a.value&&N.value?(T.openBlock(),T.createElementBlock("div",oS,[m.clause.body&&m.clause.body.length>0?(T.openBlock(!0),T.createElementBlock(T.Fragment,{key:0},T.renderList(m.clause.body,(k,Z)=>(T.openBlock(),T.createElementBlock(T.Fragment,{key:Z},[k.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:v[0]||(v[0]=ee=>M(ee))},[T.createElementVNode("code",{innerHTML:i(k.text)},null,8,iS)],10,aS)):(T.openBlock(),T.createBlock(f,{key:1,clause:k.clause,"expanded-clauses":m.expandedClauses,theme:m.theme,onToggle:v[1]||(v[1]=ee=>m.$emit("toggle",ee))},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:v[2]||(v[2]=k=>M(k))},[T.createElementVNode("code",{innerHTML:i(C.value)},null,8,RS)],10,AS))])):T.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-8b9383dc"]]),NS={class:"sql-format__content"},IS={key:0,class:"sql-format__error"},uS={key:1,class:"sql-format__viewer"},OS={key:0,class:"sql-format__clauses"},lS={key:1,class:"sql-format__code"},CS=["innerHTML"],cS=ht(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(X=>({eb378acc:d.value.colors.background,f6f4a8ce:d.value.colors.text,"151cb76a":d.value.colors.errorBackground,"0b62391c":d.value.colors.error}));const n=X=>{const B=[],H=ne=>{for(const te of ne)if(te.path&&B.push(te.path),te.body)for(const Q of te.body)Q.kind==="clause"&&H([Q.clause])};return H(X),B},s=E,a=r,A=T.ref(""),C=T.ref(s.dialect),N=T.ref([]),i=T.ref(new Set),u=T.ref(""),l=T.computed(()=>A.value===""),d=T.computed(()=>QT(s.theme)),M=X=>{if(!X||!X.trim()){A.value="",N.value=[],i.value.clear();return}try{const B=$R(X,C.value);if(!B.valid){A.value=B.error||"Invalid SQL",N.value=[],u.value="";return}const H=ES(X,C.value);N.value=H.clauses,u.value=BE(X,{dialect:C.value,tabWidth:s.tabWidth}),i.value=new Set(n(H.clauses)),A.value=""}catch(B){A.value=B instanceof Error?B.message:"Unknown parse error",N.value=[],u.value=""}},m=X=>{const B=rn(X),H=d.value.colors;return B.map(ne=>{let te=H.text;switch(ne.type){case"keyword":te=H.sqlKeyword;break;case"function":te=H.sqlFunction;break;case"string":te=H.sqlString;break;case"number":te=H.sqlNumber;break;case"comment":te=H.sqlComment;break;case"operator":te=H.sqlOperator;break;case"identifier":te=H.sqlIdentifier;break;case"punctuation":te=H.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: ${te}">${Q}</span>`}).join("")},v=X=>{i.value.has(X)?i.value.delete(X):i.value.add(X),i.value=new Set(i.value)},f=()=>{i.value=new Set(n(N.value)),a("expand-all")},k=()=>{i.value=new Set,a("collapse-all")},Z=()=>u.value||s.modelValue,ee=async()=>{if(l.value)try{const X=Z();await navigator.clipboard.writeText(X),a("copy-success",X)}catch(X){const B=X instanceof Error?X:new Error("Failed to copy");a("copy-error",B)}},pe=()=>{if(l.value)try{const X=BE(s.modelValue,{dialect:C.value,tabWidth:s.tabWidth});a("update:modelValue",X),a("format",X)}catch(X){console.error("Format error:",X)}},Le=()=>{if(l.value)try{const X=JR(s.modelValue);a("update:modelValue",X),a("compress",X)}catch(X){console.error("Compress error:",X)}},V=()=>null,L=()=>A.value;return T.watch(()=>s.modelValue,X=>{M(X)},{immediate:!0}),T.watch(()=>s.dialect,X=>{C.value=X,M(s.modelValue)}),t({copySql:ee,formatSource:pe,compressSource:Le,expandAll:f,collapseAll:k,toggleExpand:v,isValidSql:()=>l.value,getParsedSql:V,getParseError:L,getValue:Z}),(X,B)=>(T.openBlock(),T.createElementBlock("div",{class:T.normalizeClass(["sql-format",`sql-format--${d.value.name}`])},[T.createElementVNode("div",NS,[l.value?(T.openBlock(),T.createElementBlock("div",uS,[N.value.length>0?(T.openBlock(),T.createElementBlock("div",OS,[(T.openBlock(!0),T.createElementBlock(T.Fragment,null,T.renderList(N.value,H=>(T.openBlock(),T.createBlock(SS,{key:H.path,clause:H,"expanded-clauses":i.value,theme:d.value,onToggle:v},null,8,["clause","expanded-clauses","theme"]))),128))])):(T.openBlock(),T.createElementBlock("pre",lS,[T.createElementVNode("code",{innerHTML:m(s.modelValue)},null,8,CS)]))])):(T.openBlock(),T.createElementBlock("div",IS,[B[0]||(B[0]=T.createElementVNode("h4",null,"SQL Parse Error:",-1)),T.createElementVNode("pre",null,T.toDisplayString(A.value),1)]))])],2))}}),[["__scopeId","data-v-d9005677"]]),_S=[FE],LS={install:E=>{_S.forEach(t=>{const r=t.name||t.__name||"UnknownComponent";E.component(r,t)})}};rt.JsonFormat=FE,rt.SqlFormat=cS,rt.XmlFormat=JT,rt.default=LS,Object.defineProperties(rt,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|